surajbs
(Suraj)
October 6, 2017, 2:57pm
1
Hi,
I am trying to run multiple nodes with different instances in same machine for load balancing in elasticsearch.
I have downloaded three elasticsearch files in the same machine and configured their elasticsearch.yml file with different settings. Please see below:
Elasticsearch - default configuration
Elasticsearch-node1
cluster.name : Animals
node.name : Snake
node.master: true
node.data: true
transport.tcp.port: 9300
http.port: 9200
discovery.zen.ping.unicast.hosts: ["Snake", "Baboon"]
Elasticsearch-node2
cluster.name : Animals
node.name : Baboon
node.master: false
node.data: true
transport.tcp.port: 9301
http.port: 9201
discovery.zen.ping.unicast.hosts: ["Snake", "Baboon"]
Please share your opinion and ideas on this.
Thank you.
A_B
October 6, 2017, 3:26pm
2
You don't really need three different binaries (at least on Linux). You can start separate processes with different config files and data paths...
I would leave all as node.master: true
. You are also using both for discovery.zen.ping.unicast.hosts:
Default is ports 9200/9300
so node1 (your second node) can't use those, bump them up with one for second and third node.
I'm running 5 nodes on same machine on 6 machines in total over two clusters. Definitely can be done
surajbs
(Suraj)
October 18, 2017, 4:07pm
3
Hi,
Thanks for the response.
I am able to create multiple instances with the nodes.
Please find my elasticsearch.yml config below.
Elasticsearch - default configuration
Elasticsearch-node1
cluster.name : Animals
node.name : Snake
node.master: true
node.data: true
path.data: "C:\elasticsearch-5.4.2-node1\elasticsearch-5.4.2\data"
path.logs: "C:\elasticsearch-5.4.2-node1\elasticsearch-5.4.2\logs"
http.port: 9201
discovery.zen.ping.unicast.hosts: ["127.0.0.1"]
Elasticsearch-node2
cluster.name : Animals
node.name : Baboon
node.master: false
node.data: true
path.data: "C:\elasticsearch-5.4.2-node2\elasticsearch-5.4.2\data"
path.logs: "C:\elasticsearch-5.4.2-node2\elasticsearch-5.4.2\logs"
http.port: 9202
discovery.zen.ping.unicast.hosts: ["127.0.0.1"]
FYI, the status is red in the cluster health.
And I am using logstash to load the csv file into elasticsearch for which I have used the below config. But I am not able to see the other instances(9201 and 9202) loading the data.
output
{
elasticsearch {
hosts => ["localhost:9200", "localhost:9201", "localhost:9202"]
index => "cmss"
document_type => "cms"
document_id => "%{id}"
}
}
Thank you.
surajbs
(Suraj)
October 18, 2017, 4:50pm
4
Hi,
Thanks for the response.
I am able to create multiple instances with the nodes.
Please find my elasticsearch.yml config below.
Elasticsearch - default configuration
Elasticsearch-node1
cluster.name : Animals
node.name : Snake
node.master: true
node.data: true
path.data: "C:\elasticsearch-5.4.2-node1\elasticsearch-5.4.2\data"
path.logs: "C:\elasticsearch-5.4.2-node1\elasticsearch-5.4.2\logs"
http.port: 9201
discovery.zen.ping.unicast.hosts: ["127.0.0.1"]
Elasticsearch-node2
cluster.name : Animals
node.name : Baboon
node.master: false
node.data: true
path.data: "C:\elasticsearch-5.4.2-node2\elasticsearch-5.4.2\data"
path.logs: "C:\elasticsearch-5.4.2-node2\elasticsearch-5.4.2\logs"
http.port: 9202
discovery.zen.ping.unicast.hosts: ["127.0.0.1"]
FYI, the status is red in the cluster health.
And I am using logstash to load the csv file into elasticsearch for which I have used the below config. But I am not able to see the other instances(9201 and 9202) loading the data.
output
{
elasticsearch {
hosts => ["localhost:9200", "localhost:9201", "localhost:9202"]
index => "cmss"
document_type => "cms"
document_id => "%{id}"
}
}
Thank you.
system
(system)
Closed
November 15, 2017, 4:51pm
5
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.