この記事は795文字で約2分で読めます
ZabbixでElasticsearchのクラスタを監視したい、したくない?
Elasticsearchのノードを先日1つ追加しましたので、ちょい傾向とかを確認しようと思いZabbixで監視できるテンプレートとかを作ってみました。
Table of Contents
使い方
Elastic_zabに同梱しているelastic.shをZabbixサーバーのexternalscriptsディレクトリに配置します。実行権限もZabbixユーザーにします。
$ git clone https://github.com/tubone24/Elastic_zab
$ cp -p Elastic_zab/elastic.sh /usr/lib/zabbix/externalscripts/
$ chown zabbix. /usr/lib/zabbix/externalscripts/elastic.sh
$ chmod 751 /usr/lib/zabbix/externalscripts/elastic.sh
Zabbixにテンプレートをインストールする
Zabbix画面の設定のテンプレートからelasticsearch_zab.xmlをインポートします。
うまくインストールできれば、テンプレート一覧にElastic clusterが出現します。
Elasticsearchのノードにテンプレートを当てる
Elasticsearchのノードにテンプレートを当てます。
合わせて、ElasticsearchのIPとポートをマクロで設定しておきます。
設定するマクロは以下の2つです。
- {$ESIP} = ElasticsearchのIPもしくはDNSネームを設定します。
- {$ESPORT} = Elasticsearchのポートを設定します。
監視する
うまく監視できるとこんなグラフができます。
おまけ Zabbixの予測関数を使ってみた
いくつかの監視アイテムはforecastやtimeleftといったZabbixの関数を利用しています。
予測は線形としています。
予測値はトリガー設定していないのでお好みでトリガーを設定するのもいいのではないでしょうか。
こんな感じで計算アイテムで簡単に実装できるのが魅力ですね。