投资 公司 网站模板,广州骏域网站,网站建设微信营销公司,做物流网站有哪些功能本文是ES官方文档关于集群节点发现与互联互通的问题排查指南内容#xff0c;第二部分。
原文参考及相关内容#xff1a;
英文原文#xff08;官网#xff09;
第一部分-#xff08;1#xff09;
已选出主节点但状态不稳定#xff1f;
当一个节点赢得主节点选举时第二部分。
原文参考及相关内容
英文原文官网
第一部分-1
已选出主节点但状态不稳定
当一个节点赢得主节点选举时它会在日志中记录一条包含 “elected-as-master” 的消息。如果这种情况重复发生则说明当选为主节点的节点处于不稳定状态。在这种情况下应重点关注来自主节点候选节点的日志以了解为什么选举胜出者停止作为主节点并触发新一轮选举。
排查步骤
如果日志显示主节点由于超时或网络相关问题而不稳定那么请按照以下方式缩小问题范围进行排查。
垃圾回收暂停
垃圾回收暂停会记录在Elasticsearch默认生成的GC日志中同时也会通常被JvmMonitorService记录到主节点日志中。利用这些日志可以确认节点是否正在经历高堆内存使用率以及长时间的GC暂停。如果是这样的话对于高堆内存使用率的排查指南提供了一些进一步调查的建议但通常情况下你需要在堆内存高使用率期间捕获堆转储以便全面理解问题所在。
虚拟机暂停
虚拟机暂停同时也会影响同一主机上的其他进程。虚拟机暂停通常会导致系统时钟出现不连续性Elasticsearch会在其日志中报告这一现象。如果你看到有证据表明其他进程在同一时间暂停运行或者出现了意外的时钟不连续那么应当对运行Elasticsearch的基础架构进行深入调查。
数据包捕获
数据包捕获将揭示系统级和网络级的故障特别是在所有相关节点同时捕获网络流量时。你应该能够观察到节点间连接中的任何重传、丢包或其他延迟情况。通过获取Elasticsearch主进程的堆栈转储例如使用jstack工具或执行一段时间内的性能追踪例如使用Java Flight Recorder可以识别出等待特定线程可用时的长时间等待。
节点热点线程API
节点热点线程API有时能提供有用的信息但需注意该API在集群中的所有节点上都需要一定数量的transport_worker和generic线程。该API可能会受到你正试图诊断的问题的影响。相比之下jstack更加可靠因为它不需要任何JVM线程的支持。
参阅网络线程模型
参与发现和集群成员管理的线程主要是transport_worker和cluster_coordination线程它们不应出现长时间等待的情况。在Elasticsearch日志中尤其是来自org.elasticsearch.transport.InboundHandler的警告日志中也可能存在有关线程长时间等待的证据。有关更多信息请参阅网络线程模型文档。