hi,
I have a 2 node cluster running 7.10.2. I have defined ILM policy to move index from hot-warm-cold phases. However the transition from warm to cold phase is not happening. I have not explicitly set any node roles. So I expect all nodes to perform all roles. But when I run explain on cluster allocation, I see below error that "index.routing.allocation.require" - cold condition was not met. How do I fix this issue?
Like i had mentioned earlier, i have not put any specific node roles. When I run _nodes, it shows that all nodes have data_cold role. Do I need to rerun the policy after upgrading ES so that policy will pick up new role names? Currently we have upgraded to 7.10.2, but the policy was created on 7.2.0 and then updated on 7.8.1. So you think that could be the issue?
This configuration is looking for a node attribute with name type and value cold. I believe you need to tag your nodes with the attribute type and the corresponding value (warm for warm nodes, cold for cold nodes etc) and update your policy to also use node attributes in the warm phase as well (as it's currently not defining any allocation rules in the allocate action so ILM will automatically inject a migrate action).
Also be aware that new indices will receive the _tier_preference routing automatically as described here - there're ways to opt out of this as well, described in the same post (you usually don't want to mix data tier allocation and custom node attribute values)
Alternatively you can migrate to only using node roles allocation (data tiers) as described in the migration guide.
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.