Node not part of the cluster ; ignoring. – How to solve related issues

Opster Team

Jan-20, Version: 1.7-8.0

Before you begin reading this guide, we recommend you run Elasticsearch Error Check-Up which analyzes 2 JSON files to detect many errors.

Briefly, this error occurs when a node tries to join an Elasticsearch cluster but is not able to do so due to incorrect network settings or other issues. This can lead to data loss or inconsistency, as the node is unable to participate in the cluster’s activities. To resolve this issue, one can try checking the network settings of the affected node, making sure that it is using the correct IP address and port number, or even restarting the node.

To easily locate the root cause and resolve this issue try AutoOps for Elasticsearch & OpenSearch. It diagnoses problems by analyzing hundreds of metrics collected by a lightweight agent and offers guidance for resolving them. Take a self-guided product tour to see for yourself (no registration required).

This guide will help you check for common problems that cause the log ” Node not part of the cluster ; ignoring. ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: client, cluster and node.

Log Context

Log “Node {} not part of the cluster {}; ignoring…” classname is TransportClientNodesService.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

                     transportService.sendRequest(connection; TransportLivenessAction.NAME; new LivenessRequest();
                        TransportRequestOptions.builder().withType(TransportRequestOptions.Type.STATE).withTimeout(pingTimeout).build();
                        handler);
                    final LivenessResponse livenessResponse = handler.txGet();
                    if (!ignoreClusterName && !clusterName.equals(livenessResponse.getClusterName())) {
                        logger.warn("node {} not part of the cluster {}; ignoring..."; listedNode; clusterName);
                        newFilteredNodes.add(listedNode);
                    } else {
                        // use discovered information but do keep the original transport address;
                        // so people can control which address is exactly used.
                        DiscoveryNode nodeWithInfo = livenessResponse.getDiscoveryNode();




 

Watch product tour

Try AutoOps to find & fix Elasticsearch problems

Analyze Your Cluster
Skip to content