elasticsearch/docs/reference/index-modules/allocation/data_tier_allocation.asciidoc
Lee Hinman 539a614d9b
Deprecate single-tier allocation filtering settings (#72835)
* Deprecate single-tier allocation filtering settings

`(index|cluster).routing.allocation.(include|exclude|require)._tier` settings are now deprecated in
favor of using `index.routing.allocation.include._tier_preference`.

* Update deprecation message
2021-05-11 09:45:16 -06:00

58 lines
2.4 KiB
Text

[role="xpack"]
[[data-tier-shard-filtering]]
=== Index-level data tier allocation filtering
You can use index-level allocation settings to control which <<data-tiers, data tier>>
the index is allocated to. The data tier allocator is a
<<shard-allocation-filtering, shard allocation filter>> that uses two built-in
node attributes: `_tier` and `_tier_preference`.
These tier attributes are set using the data node roles:
* <<data-content-node, data_content>>
* <<data-hot-node, data_hot>>
* <<data-warm-node, data_warm>>
* <<data-cold-node, data_cold>>
* <<data-frozen-node, data_frozen>>
NOTE: The <<data-node, data>> role is not a valid data tier and cannot be used
for data tier filtering. The frozen tier stores <<partially-mounted,partially
mounted indices>> exclusively.
[discrete]
[[data-tier-allocation-filters]]
==== Data tier allocation settings
`index.routing.allocation.include._tier`::
Assign the index to a node whose `node.roles` configuration has at
least one of to the comma-separated values.
deprecated::[7.13, Filtering based on `include._tier`, `require._tier` and `exclude._tier` is deprecated, use <<tier-preference-allocation-filter,_tier_preference>> instead]
`index.routing.allocation.require._tier`::
Assign the index to a node whose `node.roles` configuration has _all_
of the comma-separated values.
deprecated::[7.13, Filtering based on `include._tier`, `require._tier` and `exclude._tier` is deprecated, use <<tier-preference-allocation-filter,_tier_preference>> instead]
`index.routing.allocation.exclude._tier`::
Assign the index to a node whose `node.roles` configuration has _none_ of the
comma-separated values.
deprecated::[7.13, Filtering based on `include._tier`, `require._tier` and `exclude._tier` is deprecated, use <<tier-preference-allocation-filter,_tier_preference>> instead]
[[tier-preference-allocation-filter]]
`index.routing.allocation.include._tier_preference`::
Assign the index to the first tier in the list that has an available node.
This prevents indices from remaining unallocated if no nodes are available
in the preferred tier.
For example, if you set `index.routing.allocation.include._tier_preference`
to `data_warm,data_hot`, the index is allocated to the warm tier if there
are nodes with the `data_warm` role. If there are no nodes in the warm tier,
but there are nodes with the `data_hot` role, the index is allocated to
the hot tier.