Elasticsearch终端命令行用法大全
| API | 作用 | 使用场景 |
|---|---|---|
| curl localhost:9200/_cluster/health?pretty | 查看ES健康状态 | |
| curl localhost:9200/_cluster/settings?pretty | 查看ES集群的设置 | 其中persistent为永久设置,重启仍然有效;trainsient为临时设置,重启失效 |
| curl localhost:9200/_cat/nodes?v | 查看ES在线的节点 | 存在节点缺失的情况可用该命令查看缺失节点为哪些 |
| curl localhost:9200/_cat/master | 查看ES的主节点 | |
| curl localhost:9200/_cat/indicescurl localhost:9200/_cat/indices/{index} | 查看所有索引,查看具体某个索引 | |
| curl localhost:9200/_cat/shardscurl localhost:9200/_cat/shards/{index} | 查看所有分片,查看具体某个索引的分片 | |
| curl localhost:9200/_cat/recoverycurl localhost:9200/_cat/recovery/{index} | 查看所有分片的恢复状况,查看具体某个索引的分片恢复状况 | 可使用该命令查看initializing分片的恢复进度 |
| curl -XPUT "localhost:9200/_all/_settings" -d '{"index":{"routing.allocation.total_shards_per_node":"2"}}' | 修改索引在一个节点上可以分配的分片个数 | 若主副分片数与节点数相同,则设置为2;若主副分片数为节点数的80%, 则设置为1 |
| curl -XPUT "localhost:9200/_cluster/settings" -d '{"transient":{"cluster.routing.allocation.node_concurrent_recoveries":"60"}}' | 修改每个节点可同时恢复的分片个数 | 在有大量unassigned分片时,为加快恢复速度可将该值调整为60,在集群green后修改回默认值20 |
| curl -XPUT "localhost:9200/_cluster/settings" -d '{"transient":{"cluster.routing.allocation.balance.disk.enabled":"true"}}' curl -XPUT "localhost:9200/_cluster/settings" -d '{"transient":{"cluster.routing.rebalance.enable":"all"}}' curl -XPUT "localhost:9200/_cluster/settings" -d '{"transient":{"cluster.routing.allocation.balance.disk.enabled":"false"}}' curl -XPUT "localhost:9200/_cluster/settings" -d '{"transient":{"cluster.routing.rebalance.enable":"none"}}' | 开启磁盘平衡 关闭磁盘平衡 | 存在多个unassigned分片时,若仍存在relocating分片,可暂时关闭磁盘平衡,待unassigned分片减少至0时,需重新开启磁盘平衡 |
| curl -XPUT "localhost:9200/_all/_settings" -d '{"settings":{"index.unassigned.node_left.delayed_timeout":"1m"}}' | 修改分片延迟分配的时间 | 若delayed_unassigned_shards一直卡住,则需修改延迟时间为1m,delayed_unassigned_shards降低后应将延迟时间修改回默认120h |
| curl -XPUT "localhost:9200/_cluster/settings" -d '{"transient":{"priority.allocation.enabled":"false"}}' | 修改分片分配优先级 | initializing分片很少,可能是因为集群在优先分片当天的索引,当天索引进入initializing状态后,才会去分其他索引。可修改该值为false |
| curl -XPUT "localhost:9200/_cluster/settings" -d '{"persistent":{"action.destructive_requires_name":true}}' | 修改通配符设置 | 在有这个设置的时候无法使用通配符来批量打开/关闭/删除索引 |
| curl localhost:9200/_cluster/allocation/explain?pretty -d '{"index": "{index}","shard": {shard},"primary": false}' | 查看分片未分配原因 | ES5.1.1版本存在unassigned分片,使用该api查看具体原因 |
| curl localhost:9200/_cat/shards?h=index,shard,prirep,state,unassigned.* \| grep UNASSIGNED | 查看分片未分配原因 | ES2.0版本无上述查询分片无法分配原因的api, 可使用此命令查看 |
| 脚本名称 | 使用方法 | 作用 | 使用场景 |
|---|---|---|---|
| elasticsearch.sh | sh elasticsearch.sh startsh elasticsearch.sh stop | start参数启动本台服务器上的ES,stop参数停止本台服务器上的ES | 只需启动或停止一台服务器的ES服务 |
| skybuilder.sh | sh skybuilder.sh startsh skybuilder.sh stop | start参数启动本台服务器上的skybuilder,stop参数停止本台服务器上的skybuilder | 只需启动或停止一台服务器的skybuilder服务 |
| run.sh | sh run.sh es.startsh run.sh es.stop | es.start参数启动所有服务器上的ES,es.stop参数停止所有服务器上的ES | 需要启动或停止所有服务器的ES服务 |
| sh run.sh sky.startsh run.sh sky.stop | sky.start参数启动所有服务器上的skybuilder,sky.stop参数停止所有服务器上的skybuilder | 需要启动或停止所有服务器的skybuilder服务 | |
| service.sh | sh service.sh startsh service.sh stopsh service.sh restartsh service.sh addCronsh service.sh removeCron | start参数启动ES集群和skybuilder,并重新加载crontab,stop参数停止ES集群和skybuilder,并移除crontab,restart参数重启ES集群和skybuilder,并重新加载crontab集群所有服务器添加crontab集群所有服务器移除crontab | 需要启动/停止/重启所有服务器的ES服务和skybuilder服务需要加载/移除所有服务器的crontab |
| index.sh | sh index.sh health | 查看集群健康度 | 可使用watch sh index.sh health持续观察 |
| sh index.sh index.currsh index.sh -v index.curr | 查看集群当天的索引,-v参数可选不加-v只显示索引名称和状态,加-v显示索引的全部信息 | ||
| sh index.sh index.allsh index.sh -v index.all | 查看集群所有的索引,-v参数可选不加-v只显示索引名称和状态,加-v显示索引的全部信息 | ||
| sh index.sh -i curr create.allsh index.sh -i next create.all | curr参数创建当天的索引,next参数创建下一天的索引。已经创建的索引不会再重复创建。 | crontab失效导致索引未成功创建;手动删除异常索引后重新创建 | |
| sh index.sh open.allsh index.sh close.all | open.all参数打开所有的索引,close.all参数关闭所有的索引 | ||
| sh index.sh template.update | 更新集群的模板 | 更新的template/skyeye下的模板文件后需执行;或者是mapping存在问题,可执行重新刷新模板 | |
| sh index.sh relocate.enablesh index.sh relocate.disable | relocate.enable参数为开启集群平衡,relocate.disable参数为关闭集群平衡 | 在集群yellow/red的状态下如果存在relocate操作会增加集群压力,可临时关闭,待green后再开启 | |
| sh index.sh recov.run | 查看所有索引的recovery状况 | 在集群恢复green的过程中,可使用该脚本查看initializing分片的恢复进度 | |
| gen_es_config.sh | sh gen_es_config.sh | 依据conf/config.ini和conf/elasticsearch.ini生成ES各个节点的elasticsearch.yml配置文件 | 更改conf/config.ini或者conf/elasticsearch.ini后需执行 |
| gen_sky_config.sh | sh gen_sky_config.sh | 依据template/skyeye/skybuilder.txt文件生成skybuilder的 .conf 配置文件 | 通过template/skyeye/skybuilder.txt调整skybuilder入库线程后需执行 |
| common_util.sh | common_util.sh loadCroncommon_util.sh removeCron | 单台服务器加载crontab定时任务,任务列表为conf/crontab.txt单台服务器移除crontab定时任务 | 单台服务器crontab丢失时需手动执行重新加载 |
1、平衡集群分片
curl -sXPUT "http://localhost:9200/*2019.04.20/_settings" -d '{"index.routing.allocation.total_shards_per_node":3}'
2、查询集群线程池
curl -sXGET "http://localhost:9200/_cat/thread_pool" | awk '{if($3>0)print $0}'
3、集群执行segment合并
ES5.X: curl -X POST "localhost:9200/_all/_forcemerge?max_num_segments=1"
ES2.X: curl -X POST "localhost:9200/situation-event/_optimize?max_num_segments=1"
4、查看segment合并效果
curl "http://localhost:9200/_cat/indices?h=health,status,index,pri,rep,docs.count,segments.count,uuid,docs.deleted"| awk '{if($4*(1+$5) != $7){print $0}}' | wc -l
5、设置添加删除节点或负载均衡时并发恢复线程的个数
curl -sXPUT "http://localhost:9200/_cluster/settings" -d '{"transient":{"cluster.routing.allocation.node_concurrent_recoveries":"20"}}'
6、查询某个索引的分配情况
curl -XGET localhost:9200/_cluster/allocation/explain?pretty -d '{"index":"skyeye-udpflow-2019.04.12","shard":1,"primary":true}'
7、查看集群健康状态
curl http://127.0.0.1:9200/_cluster/health?pretty
8、集群状态信息
curl -XGET 'http://localhost:9200/_cluster/stats?human&pretty'
9、节点监控
curl http://127.0.0.1:9200/_nodes/stats?pretty
10、索引监控
curl http://127.0.0.1:9200/_stats?pretty
10、打开/关闭索引
curl -XPOST http://127.0.0.1:9200/my_index/_close
curl -XPOST http://127.0.0.1:9200/my_index/_open
11、查看磁盘占用情况
curl 127.0.0.1:9200/_cat/allocation?v
13、查看集群恢复状态
curl -XGET http://localhost:9200/_recovery?pretty=true
curl -XGET localhost:9200/_cat/recovery | grep -v done | wc -l
14、查看fielddata占用情况
curl -XGET localhost:9200/_cat/fielddata?v
15、查询访问node和shard
curl -XPOST localhost:9200/[索引]/_search_shards -d '[查询语句]'
16、Elasticsearch导出导入文件
导入导出脚本:

参考链接:
ES常用命令 - 知乎
相关文章:
Elasticsearch终端命令行用法大全
API作用使用场景curl localhost:9200/_cluster/health?pretty查看ES健康状态curl localhost:9200/_cluster/settings?pretty查看ES集群的设置其中persistent为永久设置,重启仍然有效;trainsient为临时设置,重启失效curl localhost:9200/_ca…...
nacos版本升级注意事项
背景:nacos版本升级,1.0.1升级到2.1.2,nacos主要用作配置中心 1 从官网下载新版本nacos压缩包 2 由于1.x到2.x版本数据结构发生变化,无法沿用旧的数据库,所以新建一个数据库实例,来保存具体的nacos配置信息…...
JavaScript作用域与作用域链
JavaScript作用域与作用域链 JavaScript的作用域和作用域链是理解这门语言的关键概念之一。作用域指的是变量和函数在程序中可被访问的范围。作用域链是由函数的嵌套关系决定的变量对象的链式结构。 静态作用域与动态作用域 JavaScript使用静态作用域,也称为词法…...
MQTT异常掉线原因
一、业务场景 我们在使用MQTT协议的时候,有些伙伴可能会遇到MQTT客户端频繁掉线、上线问题 二、原因分析及异常处理 1.原因:使用相同的clientID 方案:全局使用的clientID保证唯一性,可以采用UUID等方式 2.原因: 当前用户没有Top…...
重新理解百度智能云:写在大模型开放后的24小时
在这些回答背后共同折射出的一个现实是——大模型不再是一个单选题,而更是一个综合题。在这个新的时代帆船上,产品、服务、安全、开放等全部都需要成为必需品,甚至是从企业的落地层面来看,这些更是刚需品。 作者| 皮爷 出品|产…...
Stable Diffusion 提示词技巧
文章目录 背景介绍如何写好提示词提示词的语法正向提示词负向提示词 随着AI技术的不断发展,越来越多的新算法涌现出来,例如Stable Diffusion、Midjourney、Dall-E等。相较于传统算法如GAN和VAE,这些新算法在生成高分辨率、高质量的图片方面表…...
VS2019编译curl库
下载: curl-7.61.0.tar.gz 编译: 解压到一个文件下,然后右键以管理员权限运行buildconf.bat 编译x64的库使用的是x64 Native Tools Command Prompt for VS 2019 本机工具命令提示,如果想编译x86的库,可以选择x86 Nat…...
yolov5自定义模型训练三
经过11个小时cpu训练完如下 在runs/train/expx里存放训练的结果, 测试是否可以检测ok 网上找的这张识别效果不是很好,通过加大训练次数和数据集的话精度可以提升。 训练后的权重也可以用视频源来识别, python detect.py --source 0 # webca…...
服务器中了mkp勒索病毒该怎么办?勒索病毒解密,数据恢复
mkp勒索病毒算的上是一种比较常见的勒索病毒类型了。它的感染数量上也常年排在前几名的位置。所以接下来就由云天数据恢复中心的技术工程师来对mkp勒索病毒做一个分析,以及中招以后应该怎么办。 一,中了mkp勒索病毒的表现 桌面以及多个文件夹当中都有一封…...
Docker环境搭建Prometheus实验环境
环境: OS:Centos7 Docker: 20.10.9 - Community Centos部署Docker 【Kubernetes】Centos中安装Docker和Minikube_云服务器安装docker和minikube_DivingKitten的博客-CSDN博客 一、拉取Prometheus镜像 ## 拉取镜像 docker pull prom/prometheus ## 启动p…...
Python Qt学习(七)Listview
源代码: # -*- coding: utf-8 -*-# Form implementation generated from reading ui file qt_listview.ui # # Created by: PyQt5 UI code generator 5.15.9 # # WARNING: Any manual changes made to this file will be lost when pyuic5 is # run again. Do not…...
哈希表HashMap(基于vector和list)
C数据结构与算法实现(目录) 1 什么是HashMap? 我们这里要实现的HashMap接口不会超过标准库的版本(是一个子集)。 HashMap是一种键值对容器(关联容器),又叫字典。 和其他容易一样…...
go中的函数
demo1:函数的几种定义方式 package mainimport ("errors""fmt" )/* 函数的用法 跟其他语言的区别:支持多个返回值*///函数定义方法1 func add(a, b int) int {return a b }//函数定义方法2 func add2(a, b int) (sun int) {sun a breturn s…...
小试 InsCode AI 创作助手
个人理解: 自ChatGPT新版现世,一直被视面替代人工工作的世大挑战,各类人工智能语言生成工目层出不穷,也在不断影响着我们日常的工作和生活 小试CSDN的InsCode AI: - 基本概念查询方便,与个人了解&…...
粉丝经验分享:13:00 开始的面试,13:06 就结束了,问题真是变态
🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…...
SASS的@规则
1,import sass扩展了import导入,对于css,import导入在页面加载的时候去下载导入的外部文件,而sass的导入,在编译成css文件的时候就将外部的sass文件导入合并编译成一个css文件。 他支持同时导入多个文件;…...
【C++初阶】模拟实现优先级队列priority_queue
👦个人主页:Weraphael ✍🏻作者简介:目前学习C和算法 ✈️专栏:C航路 🐋 希望大家多多支持,咱一起进步!😁 如果文章对你有帮助的话 欢迎 评论💬 点赞…...
如何为你的公司选择正确的AIGC解决方案?
如何为你的公司选择正确的AIGC解决方案? 摘要引言词汇解释(详细版本)详细介绍1. 确定需求2. 考虑技术能力3. 评估可行性4. 比较不同供应商 代码快及其注释注意事项知识总结 博主 默语带您 Go to New World. ✍ 个人主页—— 默语 的博客&…...
Windows下将nginx等可执行文件添加为服务
Windows下将nginx等可执行文件添加为服务 为什么将可执行文件添加为服务?将可执行文件添加为服务的步骤步骤 1:下载和安装 Nginx步骤 2:添加为服务方法一:使用 Windows 自带的 sc 命令方法二:使用 NSSM(Non…...
视觉SLAM14讲笔记-第4讲-李群与李代数
李代数的引出: 在优化问题中去解一个旋转矩阵,可能会有一些阻碍,因为它对加法导数不是很友好(旋转矩阵加上一个微小偏移量可能就不是一个旋转矩阵),因为旋转矩阵本身还有一些约束条件,那样再求…...
群晖 /dev/md0 根分区爆满 100% 排查清理全流程
解决群辉系统爆满安装不了套件 一、群辉安装套件报错 报错:系统分区的可用空间不足,请联络Synology支持小组来寻求帮助。这是因为系统分区(System Partition)空间不足,导致无法解压和安装该套件。与磁盘硬盘大小没有关…...
遥感影像解译实战:从目视解译八要素到精准分类
1. 遥感影像解译的底层逻辑 第一次接触遥感影像时,我盯着屏幕上的彩色方块发懵——这堆像素点怎么能看出是森林还是农田?后来才发现,解译就像玩"大家来找茬",关键要掌握八要素这把万能钥匙。大小、形状、阴影、颜色、纹…...
嵌入式IRC客户端库IrcBot:轻量、事件驱动、零malloc
1. 项目概述IrcBot 是一个面向嵌入式与轻量级系统设计的 IRC(Internet Relay Chat)协议客户端库,其核心目标并非替代桌面级 IRC 客户端(如 HexChat、WeeChat),而是为资源受限的嵌入式设备提供可裁剪、可集成…...
MCP23009 I²C GPIO扩展芯片驱动设计与实战
1. MCP23009通用I/O扩展芯片驱动库深度解析与工程实践MCP23009是Microchip公司推出的8位IC总线可编程通用输入/输出(GPIO)扩展器,专为资源受限的嵌入式系统设计。该芯片通过标准IC接口(支持标准模式100 kHz和快速模式400 kHz&…...
单细胞测序技术原理与应用进展
一、技术发展背景与核心价值单细胞测序技术是近年来生命科学领域最重要的突破性方法之一。与传统群体细胞测序不同,该技术能够在单个细胞分辨率上解析基因组、转录组及表观遗传组的异质性。这种精细化的分析能力,使得研究者得以揭示细胞发育过程中的动态…...
基于yolov8的路面缺陷检测系统
一、项目介绍 在城市化进程不断加速的大背景下,道路安全与维护的重要性日益凸显。传统人工巡检路面缺陷的方式,因其效率较低、主观性较强等问题,逐渐难以满足当下道路管理的实际需求。YOLOv8 算法在目标检测领域展现出了突出的性能࿰…...
拯救受损二维码:用QRazyBox实现高效恢复的4个实战策略
拯救受损二维码:用QRazyBox实现高效恢复的4个实战策略 【免费下载链接】qrazybox QR Code Analysis and Recovery Toolkit 项目地址: https://gitcode.com/gh_mirrors/qr/qrazybox QRazyBox是一款专业的二维码分析与恢复工具包(QR Code Analysis …...
不用Root!教你用ADB命令手动安装Google TTS中文语音包
免Root实现Google TTS中文语音引擎的完整部署指南 你是否遇到过在国产定制Android系统上无法使用Google文字转语音功能的困扰?许多厂商预装的语音引擎发音生硬,而Google TTS的中文语音包又常常因为系统限制无法正常安装。本文将带你绕过这些限制…...
腾讯云端Openclaw+飞书 多机器人配置全攻略(新手友好版)
前言:随着AI自动化工具的普及,Openclaw凭借强大的自主执行能力,成为很多人提升效率的首选;而飞书作为高效协同工具,其机器人功能可无缝融入日常工作流。当两者结合,配置多机器人实现分工协作(如…...
OpenClaw安全防护:Phi-3-mini操作权限管控方案
OpenClaw安全防护:Phi-3-mini操作权限管控方案 1. 为什么需要OpenClaw安全防护 上周我在调试一个自动化文档整理任务时,差点酿成大错。当时OpenClaw连接的Phi-3-mini模型误解了我的指令,试图删除整个工作目录下的文件。虽然及时终止了进程&…...
