ElasticSearch(v2)でCuratorを使う

  • 2
    いいね
  • 0
    コメント

indexの内容を消したい時

curatorとは、Elastic searchのindexの操作やスナップショットを管理できる機能を持っています。
運用していてそろそろこれを動かそうと思ったらv4以前とv4ではコマンドが変わっていてそのままだと動きません。WEB上にもv4系の情報は少なめ。

今まではこういう設定をしていたかと思います。

curator --host 127.0.0.1 close indices --prefix logstash --older-than  7 --time-unit days --timestring %Y.%m.%d

2016.12.23現在の最新はv4.2
pip/apt/yum/zip/msiでインストールできます。

コマンドラインリファレンス

pip install elasticsearch-curator

ymlファイルで管理できるようになっていた。

こんな感じで書く

actions:
  1:
    action: close
    description: Close indices older than 30 days (based on index name), for logstash
    options:
      delete_aliases: False
      timeout_override:
      continue_if_exception: False
      disable_action: True
    filters:
    - filtertype: pattern
      kind: prefix
      value: logstash-
      exclude:
    - filtertype: age
      source: name
      direction: older
      timestring: '%Y.%m.%d'
      unit: days
      unit_count: 30 #何日前
      exclude:

今までコマンドでやっていたからコマンドでやりたい

こんな風に設定しています

細かく設定したい時はymlで設定する方が良いかも。

/$PATH/curator_cli --config /path/to/curator.yml

または、cronなどにはこのように設定している。

/$PATH/curator_cli --host 127.0.0.1 delete_indices --filter_list '[{"filtertype":"age","source":"creation_date","direction":"older","unit":"days","unit_count":120},{"filtertype":"pattern","kind":"prefix","value":"logstash"}]' >/dev/null 2>&1