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.
The reference manual includes comprehensive instructions on adding and removing master-eligible nodes and for repurposing existing nodes. You should add your new dedicated master nodes and then repurpose your existing nodes one-by-one.
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).
Does this look good? @DavidTurner
Yes, sounds good to me.
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
"cluster.routing.allocation.exclude._ip" : "<ip_of_nodewho is getting out>"
if above does not work you can use name
"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.
restarted node and now it is master only.
once all is done
I did this
"cluster.routing.allocation.exclude._name" : ""
that makes routing enable.
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.
© 2020. All Rights Reserved - Elasticsearch
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.