I'm testing with an internal cluster, 3 nodes on the same VM.
Env: Ubuntu 18.04.3 LTS, elasticsearch-7.3.2-amd64.deb (Debian)
To simulate multiple nodes, I've replicated the
/etc/elasticsearch directory, results are as follows:
Here's the config for one of the elasticsearch.yml files (ie:
cluster.name: new-tokyo node.name: akira path.data: /opt/elasticsearch-data path.logs: /opt/elasticsearch-logs network.host: 0.0.0.0 http.port: 9200 cluster.initial_master_nodes: ["akira", "tetsuo", "kaneda"] node.max_local_storage_nodes: 3
The only difference between the 3
elasticsearch.yml files is:
node.namevalue (akira, tetsuo, kaneda)
http.portvalue (9200, 9201, 9202)
jvm.options is identical for all three nodes. (512m)
If I start the nodes and pass the value from the command line (ie:
ES_PATH_CONF=/etc/elasticsearch-node-2/) then the node names are unique.
If I setup and start elasticsearch as a service (ie:
systemctl start elasticsearch.service), the node names are all the same,
Whats particularly confusing is that I can change other values, such as
http.port and the change is reflected (once restarted). Is this data cached somewhere? I've tried trashing the data folder (stock location
/var/lib/elasticsearch/nodes and my custom location
/opt/elasticsearch-data/nodes/), to no avail, and have literally spent days trying to figure this out, and have tried with 7.3, and 7.4. Any assistance is appreciated, thanks.