概要
Zabbix で Redis の監視を簡単にできないかなと探していたら便利そうなテンプレートがあったので使ってみました
ということで zbx_redis_template を使ってみました
環境
- CentOS 6.6
- Redis 3.0.3
- Zabbix 2.0.3
- Python 2.6.3
- pip 7.1.0
事前作業
Zabbix Agent および Server のインストールと設定
Redis のインストールと設定
は完了させておいてください
ここでは紹介しません
Zabbix Agent は公式から rpm を取得してインストールしました、Redis は Remi を追加して yum インストールしています
Redis サーバを Zabbix ですでに監視可能な状態であることを前提にしています
Redis 側の設定
監視対象の Redis サーバ上に監視に必要な設定をしていきます
pip インストール
- yum -y install python-pip
- pip install redis
- pip install redis argparse
zabbix_agentd.conf 修正
- cd /etc/zabbix/zabbix_agentd.d
- wget https://raw.githubusercontent.com/blacked/zbx_redis_template/master/zbx_redis.conf
- vim zbx_redis.conf
- UserParameter=redis[*],/etc/zabbix/script/redis/zbx_redis_stats.py $1 $2 $3
- mkdir -p /etc/zabbix/script/redis
- cd /etc/zabbix/script/redis
- vim zbx_redis_stats.py
- zabbix_host = ‘localhost’
- zabbix_port = 10051
- chmod +x zbx_redis_stats.py
- service zabbix-agent restart
Zabbix Server 設定
Zabbix Server の GUI を操作していきます
GUI が操作できるマシン上で作業してください
git clone https://github.com/blacked/zbx_redis_template.git
でテンプレートをダウンロードしてください
テンプレートをダウンロードしたら GUI を開いて
設定 -> テンプレート -> インポート
で参照からダンロードテンプレートの中からzbx_redis_templates.xml を選択してください
これで作業自体は完了です
問題なく動作すれば Redis の情報が Zabbix Server に登録されはじめます
トラブルシュート
自分が遭遇したトラブルシュートを紹介します
Not supported by Zabbix Agent
多くはこれにハマると思います
監視対象に配置した python スクリプトを直接実行してエラーにならないようにしましょう
python スクリプトは以下のように実行できます
/etc/zabbix/script/redis/zbx_redis_stats.py -p 16379 $1 $2 $3
まずこれでエラーが出なくならないようにしましょう
エラーになる場合大抵の理由は
- pipでライブラリのインストールが足りていない
- zbx_redis.confでポートの指定が足りていない
かなと思います
ライブラリのインストールは必要なものを pip intall してください
ポートの指定は zbx_redis.conf 内を以下のように変更することで可能です
/etc/zabbix/script/redis/zbx_redis_stats.py -p 16379 $1 $2 $3
エラーが出なくなったら再度テンプレートの監視設定を有効にする必要があるので、テンプレートから全アイテムにチェックして一括更新でステータスを無効 -> 有効にしてください
こうすることで再度アイテムのチェックが走ります
監視できない項目もある
おそらくバージョンの違いによるものだと思いますが自分の場合は「redis[{HOSTNAME}, dbsize, none]」の値が取得できませんでした
取得できない値は Zabbix Server 側に値があっても仕方ないのでテンプレートから削除しちゃってOKです
0 件のコメント:
コメントを投稿