ElasticSearch 排障常用方法及优化 文章目录data节点报错: request peers timed out after 3008ms0,ES节点滚动重启1,Kibana常用命令(ES命令)2,集群状态,节点在线情况,集群参数配置3,查看异常索引、分片,分析异常原因,手动分配分片4, 处理 “NODE_LEFT” 导致分片无法分配5,降低集群恢复对业务影响data节点报错: request peers timed out after 3008ms# vim elasticsearch.yml, 重启该节点生效discovery.probe.connect_timeout:10s# 节点发现阶段(如选举主节点或加入集群)需要探测目标节点是否可达,默认3秒discovery.request_peers_timeout:15s# 节点在选举主节点或同步集群状态时,触发重试或故障转移,默认3秒#cluster.fault_detection.leader_check.timeout: 20s # 放宽健康检查超时,其他节点检测master节点,默认10s#cluster.fault_detection.follower_check.timeout: 20s #master节点检测其他节点,默认10s0,ES节点滚动重启# 禁用分片分配,防止节点下线触发分片重平衡,避免大规模数据迁移造成的I/O和网络压力PUT/_cluster/settings {"transient": {"cluster.routing.allocation.enable":"none"} }#变更完成后再设置为 all#若已关闭 allocation.enable: none,则 "cluster.routing.rebalance.enable": "none" 无论设为何值均无效1,Kibana常用命令(ES命令)-- 集群健康状态GET _cluster/health# 节点资源:role、heap、disk、cpu、loadGET _cat/nodes?vh=name,node.role,master,heap.percent,disk.percent,cpu,load_1m,uptime-- 各节点信息-- GET _cat/nodes?helpGET _cat/nodes?vh=ip,ram.percent,load_15m,master,disk.total,disk.used_percent,disk.avail,file_desc.percentGET _cat/nodes?vh=ip,name,node.role,master,cpu,disk.total,disk.used_percent,ram.max,ram.percent,heap.max,heap.percent,file_desc.max,file_desc.percent,load_15mformat=csv# 分片状态分布GET _cat/shards?vh=index,shard,prirep,state,node,unassigned.reasons=state# 为什么分配不出去/卡住GET _cluster/allocation/explain?pretty# master 任务堆积(超时基本看这个)GET _cluster/pending_tasks?pretty GET _cat/pending_tasks?v# 恢复进度与流量GET _cat/recovery?vactive_only=trueh=i,s,t,ty,stage,shost,thost,bytes,bytes_percent GET _cat/thread_pool?vh=node_name,name,active,queue,rejecteds=rejected:descGET _nodes/stats/jvm?filter_path=**.jvm.mem.heap_used_percent,**.