elasticsearch索引生命周期管理

228 阅读1分钟

1、背景:

目前采集的是线上服务的日志,并按天创建索引,所以不需要配置滚动更新,只需要一个月后删除即可。 如果创建的索引文件只有一份,那么配置滚动更新,滚动更新创建的新索引将会添加到索引别名,满足滚动条件时,触发滚动更新,索引别名指向新的索引,旧的索引频率降低。

2、创建生命周期策略:

在StackManagement中创建索引生命周期策略:

点击创建策略 image.png 输入策略名称,启动删除阶段,点击高级设置,关闭滚动更新。 image.png 配置删除三十天前的数据: image.png

3、为索引映射模板添加生命周期策略:

在StackManagement中创建索引模板: image.png 步骤一: image.png 步骤二:

点击下一步直到索引设置: image.png 步骤三:

下一步到映射:

这一步比较重要,映射的就是自己在logstash中解析出的字段,必须自定义,否则es会进行字段类型推测,映射出来的字段杂乱且类型不匹配。自定义字段如图: image.png 步骤四:

配置索引别名,它的作用就是方便我们配置日志查看看板以及之后如果涉及索引重建的话,索引别名可以帮助我们进行零停机重建。 image.png

最后,创建模板: image.png 至此,配置了索引模板,之后es会对logstash发送来的字段进行我们指定的字段映射,且该模板配置了索引生命周期策略,之后就可以30天后删除调不需要的日志了。