在索引生命周期管理 (ILM) 中跳过滚动更新
您可以使用索引生命周期管理来管理索引生命周期转换,而无需对索引进行滚动更新。例如,在处理非连续摄入的数据时,您可能更希望按设定的时间表(例如每月第一个星期一)创建新索引。在这种情况下,您仍然可以使用 ILM 策略让索引随着老化自动通过 生命周期阶段,并通过禁用滚动更新操作来控制何时创建新索引。
您可以将索引配置为跳过滚动更新,既可以作为 ILM 策略的一部分,也可以通过手动调整索引设置来实现。
当您在 Kibana 中 创建生命周期策略 时,可以选择启用或禁用滚动更新。
要更新 ILM 策略中的自动滚动更新设置
使用导航菜单或全局搜索字段转到 Index Lifecycle Policies 管理页面。
选择要更新的策略,然后从 Actions(操作)菜单中选择 Edit(编辑)。
在 Hot phase(热阶段)部分,展开高级设置。
更新 Enable rollover(启用滚动更新)选项以启用或禁用自动滚动更新。

当 index.lifecycle.indexing_complete 设置为 true 时,即使索引符合滚动更新条件,ILM 也不会对该索引执行滚动更新操作。当滚动更新操作成功完成后,ILM 会自动将此设置更新为 true。
如果您需要对常规生命周期策略进行例外处理并更新别名以强制执行滚动更新,但又希望 ILM 继续管理该索引,则可以手动更新此设置以跳过滚动更新。如果您使用滚动更新 API 而不是 ILM 策略来对索引进行滚动更新,则无需手动配置此设置。
如果索引的生命周期策略被移除,此设置也会被移除。
当 index.lifecycle.indexing_complete 设置为 true 时,ILM 会验证该索引是否不再是 index.lifecycle.rollover_alias 指定的别名的写索引。如果该索引仍是写索引,或者未设置滚动更新别名,则索引会移动到 ERROR 步骤。
例如,如果您需要在保持已索引数据符合所配置策略的同时,更改一系列新索引的名称,您可以:
- 为使用相同策略的新索引模式创建模板。
- 引导(Bootstrap)初始索引。
- 使用 别名 API 将别名的写索引更改为引导后的索引。
- 在旧索引上将
index.lifecycle.indexing_complete设置为true,以表明它不需要进行滚动更新。
ILM 会继续按照现有策略管理旧索引。新索引将根据新模板命名,并按照相同的策略进行管理,且不会中断。