我正在使用ES 2.3.3和Logstash 2.3.3。我一直在使用Logstash发送数据并将它们映射到ES进行索引,即logstash- {Date}。我只想保留最近1年的文件。应删除一年内的任何索引。我之前使用的是3.5.1。我删除索引的方法是每天输入一个命令。
curator --host 10.0.0.2 delete indices --older-than 30 --time-unit days \
--timestring '%Y.%m.%d'
最近,我将策展人3.5.1升级为策展人4.然而,即使我已经阅读https://www.elastic.co/guide/en/elasticsearch/client/curator/current/command-line.html中的示例,我也找不到存储策展人的位置。因此,我想知道会在哪里配置文件是为什么会丢失action_file?这是否意味着我需要创建一个新的.curator目录以及我自己的curator.yml和action.yml文件?
在我创建了action.yml文件之后,我应该只关注https://www.elastic.co/guide/en/elasticsearch/client/curator/current/examples.html#ex_delete_indices并将此部分添加到我的action.yml文件中,以便删除一年内的logstash索引吗?
由于
答案 0 :(得分:6)
配置文件可以是任何位置,只要您使用--config
标志启动Curator:
curator --config /path/to/curator_config.yml
但是,如果你在将要运行Curator的用户的主目录中创建一个.curator
路径(通过cron,表面上是),它会在那里找到一个名为curator.yml
的文件,例如/home/username/.curator/curator.yml
在该位置正确配置该文件后,Curator将不需要--config
标记。
策展人只使用最后一个参数作为动作文件:
» curator --help
Usage: curator [OPTIONS] ACTION_FILE
Curator for Elasticsearch indices.
See http://elastic.co/guide/en/elasticsearch/client/curator/current
Options:
--config PATH Path to configuration file. Default: ~/.curator/curator.yml
--dry-run Do not perform any changes.
--version Show the version and exit.
--help Show this message and exit.
使用$HOME/.curator/curator.yml
中的默认配置文件运行Curator的示例如下:
curator /path/to/actionfile.yml
使用自定义配置文件:
curator --config /path/to/curator_config.yml /path/to/actionfile.yml
在动作文件之后,示例是一个很好的起点。您可以随意尝试新配置,但请务必在执行此操作时使用--dry-run
标记,以防止在测试时采取任何操作。
答案 1 :(得分:1)
策展人还附带了curator_cli,你可以在命令之下快速运行。
curator_cli --host https://full-url:port delete_indices --ignore_empty_list --filter_list '[{"filtertype":"pattern","kind":"prefix","value":"logstash-"}]'