Elasticsearch curatorで不要Indexをまとめて削除

概要

fluentd + ElasticSearch + kibana を運用していますが
ある日ElasticSearchが動作しなくなる事象が発生しました。

過去indexが溜まりに溜まってメモリ不足というエラー。

logはS3にアップロードしているし、
不要なIndexは適宜削除して対策しました。

環境

  • CentOS Linux release 7.0.1406 (Core)
  • ElasticSearch 1.7.1
  • Python 2.7.5
  • pip 7.1.0

curator インストール

  • ElasticSearchをインストールしているサーバにて以下実施
1
# pip install curator

curator コマンド実行

  • ElasticSearchをインストールしているサーバにて以下実施
1
2
3
4
5
6
7
8
# 14日(2週間)経過でclose
curator --host localhost close indices --prefix logstash --older-than 14 --time-unit days --timestring %Y.%m.%d

# 35日(4週間)経過でdelete
curator --host localhost delete indices --prefix logstash --older-than 35 --time-unit days --timestring %Y.%m.%d

# 2日経過でbloom filter無効化
curator --host localhost bloom indices --prefix logstash --older-than 2 --time-unit days --timestring %Y.%m.%d

上記をjenkinsで SSH plugin
リモートサーバにログインして実行するよう、
設定して定期ポーリングで1日1回実行させてます。

以上

Author

Kenzo Tanaka

Posted on

2015-11-13

Updated on

2020-05-07

Licensed under

コメント