I have 14 node elasticsearch cluster in which all nodes are data,master,client. Now i want to have separate master nodes. How do i achieve this without causing splitbrain or down time. I can bring one node at one time down. Suggestions please.
Thank you so much. I would like to do
step 1: Add 3 master only nodes to the cluster
step 2: update each node other than master only node to be data only node(one node at one time).
I did same, on small level. I had five node cluster all data-master
I wanted one node as master only as it has low disk space and was using for something else as well.
this is what I did.
I ran following
PUT /_cluster/settings
{
"transient" :{
"cluster.routing.allocation.exclude._ip" : "<ip_of_nodewho is getting out>"
}
}
if above does not work you can use name
PUT /_cluster/settings
{
"transient" :{
"cluster.routing.allocation.exclude._name" : "<name of node is getting out>"
}
}
then once is is empty of all data. shut it down.
change elasticsearch.yml file and have this.
node.master: true
node.data: false
restarted node and now it is master only.
once all is done
I did this
PUT /_cluster/settings
{
"transient" :{
"cluster.routing.allocation.exclude._name" : ""
}
}
Thanks @elasticforme .
I do not want to make existing nodes to be master. I will take them down and make data only node.
I am going to add additional 3 master only nodes.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.