《Elastic Stack 实战手册》——三、产品能力——3.5 进阶篇——3.5.7.索引生命周期管理(1) https://developer.aliyun.com/article/1228516
四个阶段支持的行为
索引生命周期每个阶段支持的行为如下:
l Hot
l Set Priority
l Unfollow
l Force Merge
l Rollover
l Warm
l Set Priority
l Unfollow
l Read only
l Allocate
l Shrink
l Force Merge
l Migrate
l Cold
l Set Priority
l Unfollow
l Allocate
l Migrate
l Freeze
l Searchable Snapshot
l Delete
l Wait For Snapshot
l Delete
行为
Set Priority
设置索引的优先级,一旦进入到某阶段,就设置索引的优先级,节点重新启动后,优先级较高的索引将会优先恢复。
参数:
l priority: 正整数。
例如:设置 warm 阶段 index 的优先级为 50
PUT _ilm/policy/my_policy { "policy": { "phases": { "warm": { "actions": { "set_priority" : { "priority": 50 } } } } } }
Rollover
当 index 满足三个条件中的任何一个时,会将别名指向新生成的索引。
参数:
l max_age
l 达到索引创建的最大时间
l max_docs
l 达到指定的文档数后
l max_size
l index 达到指定的大小时,主分片的大小,不包含副本。
以上三个参数至少应该存在一个
例如:当前 index 主分片大小达到 100GB 或文档数超过 100000000 或者 index 创建超过 7天 生产新的 index
PUT _ilm/policy/my_policy { "policy": { "phases": { "hot": { "actions": { "rollover" : { "max_size": "100GB", "max_docs": 100000000, "max_age": "7d" } } } } } }
Unfollow
将 follow 索引转换为正常索引。
例如:
PUT _ilm/policy/my_policy { "policy": { "phases": { "hot": { "actions": { "unfollow" : {} } } } } }
Allocate
指定 index 的副本数,迁移 index 到某些节点,冷热节点数据迁移依赖此步骤。
参数:
l number_of_replicas
l 指定 index 的副本数
l include
l 将 index 迁移到具有指定属性之一的节点
l exclude
l 将 index 迁移到不包含指定属性的节点
l require
l 将 index 迁移到具有所有指定属性的节点
Note: include 满足其中一个就可以, require 必须全部满足。
例如:到达 warm 阶段将 index 的备份数设置为 2,并且将 index 迁移至属性 box_type 包含 hot, warm 且不包含 cold 的节点。
PUT _ilm/policy/my_policy { "policy": { "phases": { "warm": { "actions": { "allocate" : { "number_of_replicas" : 2, "include" : { "box_type": "hot" }, "exclude" : { "box_type": "cold" }, "require" : { "box_type": "hot,warm" } } } } } } }
《Elastic Stack 实战手册》——三、产品能力——3.5 进阶篇——3.5.7.索引生命周期管理(3) https://developer.aliyun.com/article/1228514