ES集群负载高导致状态red,如何处理?
主分片所在的节点异常会导致集群red。您可以通过GET /_cat/indices?v命令查看索引分片的分布情况,定位到red索引,并按照以下常见原因和解决方案排查解决。常见原因解决方案负载不均导致集群资源不足。建议您优化分片负载,调整主+副分片为集群数据节点的整数倍,详细信息请参见shard分配不均,如何调整?。集群中包含无用的索引数据。建议定时清理无用的索引数据,尤其是以.monitor开头的索引监控数据,具体操作请参见配置Monitoring监控日志。分片未分配。通过GET /_cluster/allocation/explain?pretty命令查看分片未分配的原因,根据具体原因进行处理。处理后,可通过POST /_cluster/reroute?retry_failed=true命令,重新分配分片。缓存导致资源占用。建议使用POST //_cache/clear?fielddata=true命令清理缓存。在进行升配等集群变更操作。建议中断当前变更,在升配页面选择强制变更,具体操作请参见升配集群。实例规格较低资源不足,例如1核2 GB、2核4 GB等规格。建议升配集群,具体操作请参见升配集群。您也可以通过Kibana监控或阿里云Elasticsearch的高级监控报警功能排查异常,高级监控报警功能的详细信息请参见高级监控报警概述。ES的常见问题可以参考阿里云Elasticsearch实例FAQ。
赞0
踩0