步骤在官网有明确的描述,按照步骤一步一步操作,就可以实现。
官网地址:https://www.elastic.co/guide/en/elasticsearch/reference/current/getting-started-index-lifecycle-management.html
英语溜的直接看官网哈。
下面我们按照官网的配置指南一步步操作。
1、创建生命周期策略
点击创建进入生命周期配置页面:
最顶部是配置名称,下图就省略了。只说重点,看图。
- 1)打开高级配置。
- 2)选择删除按钮(如果你需要在生命周期管理的末尾删除索引的话。)
配置删除阶段。
2、创建索引模板
索引别名不配置!否则会出现错误。
错误日志:
Rollover alias [my_alias] can point to multiple indices, found duplicated alias [[my_alias]] in index template [delete_after_3_month]
所以,直接点击下一步,再点击完成。
3、让生命周期策略关联索引模板
界面操作如下:
点击引用策略后。可以在索引模板的索引设置中看到关联。
如果你熟悉ES指令,其实再第二步时,可以在索引设置(Index Setting)中就完成与生命周期策略的关联。配置内容与上图一致。
至此,我们完成了索引别名xxxx的生命周期管理。 接下来,还需要我们做一个引导,手动创建一个索引用于引导生命周期管理程序。如此,滚动索引的生命周期管理才能运转起来。
官网是这样描述的:
这样配置的目的是:设置第一个索引为写入索引。这样当你用别名写入文档时,会将文档写入第一个索引。
当滚动索引发生时,索引生命周期管理(ILM)会将新的索引指定为写入索引,并将引导索引设为只读。
由于我们在索引模板中配置了Mapping,所以手动创建的索引也会有Mapping信息。
手动添加数据,当第二个索引产生后,查询索引别名,就会发现,只有最新的索引是可以写入数据的。其他索引,只能读取数据。
所以,写入数据时用别名写入,也只会写入到最新索引。
这样,我们的滚动索引就配置好啦。
赶快试试吧。
欢迎留言讨论。