Current setup hosted in aws ec2, self managed/hosted opensource version of elasticsearch
master-1 - us-east-1a
master-2 - us-east-1b
master-2 - us-east-1c
data-1 - us-east-1a
data-2 - us-east-1b
data-3 - us-east-1c
data-4 - us-east-1d
data-5 - us-east-1f
data-6 - us-east-1a
My plan
Adding below config to the elasticsearch.yml and restarting service one node at a time
data-1
node.attr.zone: us-east-1a
cluster.routing.allocation.awareness.attributes: zone
restart elasticsearch service
data-2
node.attr.zone: us-east-1b
cluster.routing.allocation.awareness.attributes: zone
restart elasticsearch service
data-3
node.attr.zone: us-east-1c
cluster.routing.allocation.awareness.attributes: zone
restart elasticsearch service
data-4
node.attr.zone: us-east-1d
cluster.routing.allocation.awareness.attributes: zone
restart elasticsearch service
data-5
node.attr.zone: us-east-1f
cluster.routing.allocation.awareness.attributes: zone
restart elasticsearch service
data-6
node.attr.zone: us-east-1a
cluster.routing.allocation.awareness.attributes: zone
restart elasticsearch service
run from kibana dev tools
PUT _cluster/settings
{
"persistent": {
"cluster.routing.allocation.awareness.attributes": "zone",
"cluster.routing.allocation.awareness.force.zone.values": "us-east-1a ,us-east-1b,us-east-1c,us-east-1d,us-east-1f"
}
}
Note: data-1 and data-6 are in the same az.
Does my plan look good with the above setup ? And should the same setting be applied for master nodes as well in similar manner to the data nodes ?
How can I validate after the above steps to make sure things are good ?