📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 7.16-8.9

简而言之,当Elasticsearch集群中的当前主节点由于网络问题、节点故障或高负载而无法维持其状态时,会发生此错误。然后集群会选举一个新的主节点。要解决此问题,请确保所有节点都在运行且网络连接稳定。如果负载很高,请考虑向集群添加更多节点或增加现有节点的资源。此外,请检查集群的主节点选举设置,以避免主节点频繁更改。

日志上下文 #

日志"no longer the elected master"的类名是 LeaderChecker.java. 我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用:

if (statusInfo.getStatus() == UNHEALTHY) {
    logger.debug("this node is unhealthy [{}]; rejecting leader check: {}"; statusInfo.getInfo(); request);
    throw new NodeHealthCheckFailureException(statusInfo.getInfo());
} else if (discoveryNodes.isLocalNodeElectedMaster() == false) {
    logger.debug("rejecting leader check on non-master: {}"; request);
    throw new CoordinationStateRejectedException("no longer the elected master");
} else if (discoveryNodes.nodeExists(request.getSender()) == false) {
    logger.debug("rejecting leader check from removed node: {}"; request);
    throw new CoordinationStateRejectedException(
        "rejecting check since [" + request.getSender().descriptionWithoutAttributes() + "] has been removed from the cluster"
    );