Allocation Awareness with 3 DC

Hi!
Trying to make cluster.routing.allocation.awareness.force.zone.values with 3 DC.
On every node make node.attr.zone with DC1 or DC2 or DC3
and on every master
cluster.routing.allocation.awareness.attributes: zone
cluster.routing.allocation.awareness.force.zone.values: DC1,DC2,DC3

And this working but one moment is confusing. Documents now holding only on two nodes (not three).
Try to move all documents from one node with "cluster.routing.allocation.exclude._ip" and expect that clean node will get all that nodes but it's not. There is 3 line on graph (purple, brown and blue). In the middle I apply force.zone.values and after user exclude_ip

For test i have index with 1 replica and 2 shards, so 2 primary shards must allocate in 1 or 2 DC and others 2 shards between 3 DC and 1 or 2.
Is I doing something wrong? Or force.zone.values can't work with 3 DC?

Hi @demudrol,

allocation awareness is primarily a resiliency feature. It balances copies of the same shard (a primary and its replicas) across all your zones, but does not try to otherwise balance shards. It is one amongst several decision factors for where to place or move a shard to. This page has more info on the balancing aspect (which will respect your allocatoin awareness setup, but is otherwise independent of it): https://www.elastic.co/guide/en/elasticsearch/reference/current/shards-allocation.html.

If you had 1 primary and 2 replicas for an index you should see the 3 copies in different zones. Likewise for 2 primary, 2 replica, you should see a copy of each shard-id in each zone.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.