I can't add a new node to my cluster

Hi.

I currently have a two node cluster, each node is separated on a different host. I want to add a third node to the cluster, but it does not start, it has never started. Next I leave the configuration of the nodes:

Node1 in host1:

cluster.name: my_cluster
node.name: node1
node.master: true
node.data: true
node.ingest: true
path.data: /mnt/almacenamiento/elasticsearch_data/data2
path.logs: /mnt/almacenamiento/elasticsearch_data/logs
bootstrap.memory_lock: true
network.host: 0.0.0.0
transport.host: 0.0.0.0
transport.tcp.port: 9300
path.repo: ["/media/backup01"]
cluster.initial_master_nodes: ["node1","node2","node3"]
discovery.seed_hosts: ["ip-host2:9300","ip-host1:9300","ip-host3:9300"]

Node2 in host2:

cluster.name: my_cluster
node.name: node2
node.master: true
node.data: true
node.ingest: true
path.data: /mnt/discodatos01/elasticsearch_data/data2
path.logs: /mnt/discodatos01/elasticsearch_data/logs
bootstrap.memory_lock: true
network.host: 0.0.0.0
transport.host: 0.0.0.0
transport.tcp.port: 9300
cluster.initial_master_nodes: ["node1","node2","node3"]
path.repo: ["/media/backup01"]
discovery.seed_hosts: ["ip-host1:9300","ip-host2:9300","ip-host3:9300"]

These first two nodes do start with this configuration and continue to form the cluster in green.

Node3 in host3 (new node):

cluster.name: my_cluster
node.name: node3
node.master: true
node.data: true
node.ingest: true
path.data: /mnt/almacenamiento/elasticsearch_data/data
path.logs: /mnt/almacenamiento/elasticsearch_data/logs
bootstrap.memory_lock: true
network.host: 0.0.0.0
transport.host: 0.0.0.0
transport.tcp.port: 9300
path.repo: ["/media/backup01"]
discovery.seed_hosts: ["ip-host2:9300", "ip-host1:9300", "ip-host3:9300"]
cluster.initial_master_nodes: ["node1", "node2", "node3"]

Next I leave the output of the log of node 3:

[2020-06-23T11:22:02,156][INFO ][o.e.x.s.a.s.FileRolesStore] [node3] parsed [0] roles from file [/etc/elasticsearch/roles.yml]
[2020-06-23T11:22:02,913][INFO ][o.e.x.m.p.l.CppLogMessageHandler] [nodee3] [controller/12705] [Main.cc@110] controller (64 bit): Version 7.6.1 (Build 6eb6e036390036) Copyright (c) 2020 Elasticsearch BV
[2020-06-23T11:22:03,525][DEBUG][o.e.a.ActionModule       ] [node3] Using REST wrapper from plugin org.elasticsearch.xpack.security.Security
[2020-06-23T11:22:03,692][INFO ][o.e.d.DiscoveryModule    ] [node3] using discovery type [zen] and seed hosts providers [settings]
[2020-06-23T11:22:04,592][INFO ][o.e.n.Node               ] [node3] initialized
[2020-06-23T11:22:04,592][INFO ][o.e.n.Node               ] [node3] starting ...
[2020-06-23T11:22:04,713][INFO ][o.e.t.TransportService   ] [node3] publish_address {ip-host3:9300}, bound_addresses {[::]:9300}
[2020-06-23T11:22:05,024][INFO ][o.e.b.BootstrapChecks    ] [node3] bound or publishing to a non-loopback address, enforcing bootstrap checks
[2020-06-23T11:22:05,027][ERROR][o.e.b.Bootstrap          ] [node3] node validation exception
[1] bootstrap checks failed
[1]: memory locking requested for elasticsearch process but memory is not locked

The node has never started and I always get the same "Node validation exception" error message.

Where ip-hostX appears, the host IP is actually set.

I hope your help. Thank you very much.

Regards.

What happens when you start up Node2 and Node 3? Do they connect? What happens when you only start Node3?

Hi.
In both cases the same error message "Node validation exception" appears.
Thank you.
Regards.

Maybe this is the actual problem. Check this
Elastic Documentation

Thank you very much for the help. It works now.

Regards.

Awesome. Please mark my answer as the solution so that others can find it more easily. :slight_smile:

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.