当使用elasticsearch做为日志系统的后端存储,时间一长的话日志量也是个很可观的数字, 因此需要定时清除,之前一直都是自己写脚本做管理, 后面需要维护的索引越来越多后觉得力不从心, 而curator做为es官方推出的索引管理工具, 使用起来还是很方便的
curator的github在这里
Install
curator是使用python写的工具, 可以直接使用pip安装
1 | pip install elasticsearch-curator |
当然 ,在也使用yum 安装
1 | yum install elasticsearch-curator |
配置文件
curator的配置文件非常简单, 典型的配置如下:
1 |
|
注意: 配置文件中如果某个key的value值为空, 直接留空即可, 不能写None(会被当成字符串)
配置文件中指定es集群中某个节点的地址即可, 关键是需要定义action配置文件, 即执行的动作
Action文件
官网的github上列出了一些常用的action供参考, 详情请参考这里
典型的action配置文件如下:
1 |
|
说明:
action中是以字数编码指定action的个数的
第1个action的作用为: 删除60天之前的索引, 使用正则表达式指定了索引的范围
第2个action的作用为: 关闭30天之前的索引, 使用正则表达式指定了索引的范围
当然,action还有其它的选项,可参考github.
定期执行
定义好config及action文件后,即可加入crontab定期执行.
1 | 0 2 * * * /usr/bin/curator --config /data/es/curator/config.yml /data/es/curator/action.yml |