一、集群检查常用命令
- 查询集群状态命令:
curl -XGET "http://ip:port/_cluster/health?pretty"
- 查询Es全局状态:
curl -XGET "http://ip:port/_cluster/stats?pretty"
- 查询集群设置
curl -XGET "http://ip:port/_cluster/settings?pretty"
- 查看集群文档总数
curl -XGET "http://ip:port/_cat/count?v"
- 查看集群文档总数
curl -XGET "http://ip:port/_cat/count?v"
- 查看集群别名组
curl -XGET "http://ip:port/_cat/aliases"
6.查看当前集群索引分片信息curl -XGET "http://ip:port/_cat/shards?v"注:查看某一个索引可用shards/索引名?v
7.查看集群实例存储详细信息curl -XGET "http://ip:port/_cat/allocation?v"
8.查看当前集群的所有实例curl -XGET "http://ip:port/_cat/nodes?v"
9.查看某索引分片转移进度curl -XGET "http://ip:port/_cat/recovery/索引名?v"
10.查看当前集群等待任务curl -XGET "http://ip:port/_cat/pending_tasks?v"
11.查看集群写入线程池任务curl -XGET "http://ip:port/_cat/thread_pool/bulk?v"
12.查看集群查询线程池任务curl -XGET "http://ip:port/_cat/thread_pool/search?v"
13.查看分片未分配的原因curl -XGET "http://127.0.0.1:24100/_cat/shards?v&h=index,shard,prirep,state,node,unassigned.reason" | grep UNASSIGNED
二、集群设置常用命令- 设置集群分片恢复参数
curl -XPUT"http://ip:httpport/_cluster/settings"-H'Content-Type: application/json' -d' { "transient": {"cluster.routing.allocation.node_initial_primaries_recoveries":60,"cluster.routing.allocation.node_concurrent_recoveries":30,"cluster.routing.allocation.cluster_concurrent_rebalance":30} }'
- 根据实例名称使EsNodeX实例下线:
curl -XPUT"http://ip:httpport/_cluster/settings" -H 'Content-Type: application/json' -d' {"transient": {"cluster.routing.allocation.exclude._name": "EsNode2@ip"} }'
- 根据ip使ES数据节点下线:
curl -XPUT"http://ip:httpport/_cluster/settings" -H 'Content-Type: application/json' -d' {"transient": {"cluster.routing.allocation.exclude._ip": "ip1,ip2,ip3"} }'
- 设置分片恢复过程中的最大带宽速度:
curl -XPUT "http://127.0.0.1:24100/_cluster/settings" -H 'Content-Type: application/json' -d'{ "transient":{"indices.recovery.max_bytes_per_sec":"500mb"}}'
- 重新分片为空的主分片
curl -XPOST"http://127.0.0.1:24100/_cluster/reroute?pretty" -H 'Content-Type:application/json' -d '{"commands": [{"allocate_empty_primary": {"index": "indexname","shard": 2,"node": "EsNode1@81.20.5.24","accept_data_loss":true}}]}'
- 重新分配主分片,会尝试将过期副本分片分片为主 。
curl -XPOST "http://127.0.0.1:24100/_cluster/reroute?pretty" -H 'Content-Type:application/json' -d '{"commands": [{"allocate_stale_primary": {"index": "index1","shard": 2,"node": "EsNode1@189.39.172.103","accept_data_loss":true}}]}'
- 清理ES所有缓存
curl -XPOST "http://ip:port/_cache/clear"
8.关闭分片自动平衡curl -XPUT "http://ip:port/_cluster/settings" -H 'Content-Type:application/json' -d '{"transient":{"cluster.routing.rebalance.enable":"none" }}'
9.手动刷新未分配的分片curl -XPOST "http://127.0.0.1:24100/_cluster/reroute?retry_failed=true"
三、索引查看常用命令- 查询索引mapping和settings
curl -XGET --tlsv1.2--negotiate -k -u : 'https://ip:port/my_index_name?pretty'
- 查询索引settings
curl -XGET--tlsv1.2--negotiate -k -u : 'https://ip:port/my_index_name/_settings?pretty'
3.查看分片未分配详细命令【ES集群检查常用命令】
curl -XGET "http://127.0.0.1:24100/_cluster/allocation/explain?pretty" -H 'Content-Type:application/json' -d '{"index": "indexname","shard": 17,"primary": true}'
4.修改索引只读字段属性为null,放开写入curl -XPUT"http://127.0.0.1:24100/*/_settings" -H 'Content-Type: application/json' -d '{"index.blocks.read_only_allow_delete": null}'
四、索引设置常用命令1.关闭索引curl -XPOST 'http://ip:port/my_index/_close?pretty'
2.打开索引curl -XPOST 'http://ip:port/my_index/_open?pretty'
3.修改索引刷新时间:curl -XPUT 'http://ip:port/my_index/_settings?pretty' -H 'Content-Type: application/json' -d'{"refresh_interval" : "60s"}'
4.修改translog文件保留时长 , 默认为12小时curl -XPUT 'http://ip:port/my_index/_settings?pretty' -H 'Content-Type: application/json' -d'{"index.translog.retention.age" : "30m"}'
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- docker swarm快速部署redis分布式集群
- java中的垃圾回收算法与垃圾回收器
- Hadoop集群简单入门
- 7 步保障 Kubernetes 集群安全
- 持续更新 c++算法竞赛常用板子集合
- 使用 etcdadm 快速、弹性部署 etcd 集群
- 痞子衡嵌入式:i.MXRT中FlexSPI外设不常用的读选通采样时钟源 - loopbackFromSckPad
- postman一些你不常用的实用技巧,竟然还能这么玩
- 十一 【Kubernetes】K8s笔记:Ingress 集群进出流量总管
- 云原生分布式 PostgreSQL+Citus 集群在 Sentry 后端的实践