Hai ZabbixマスターになりかけのAdachinです。
今までチャット系ツールはアトラシアンのhipchatを使用していたんですが、
slackに移行するぞ!となったので頑張って連携してみました!
とりあえず、slackはAPIが豊富で、UIもかわいいし、最強チャットツールに任命!
hipchatはよくサポートから落ちてるからゴメンナサイメールが来るのでなんとかしてほしいですね!(´・ω・`)
それ以外はBitbucketとかあるし、どっちでも良さそうですw
とりあえずどうやって連携しているか他のサイト見ても細かく書いていなかったので、
よくわからん人でもこのブログで分かった!となってくれれば幸いでございます。
※追記
zabbix3もzabbix2と基本設定内容は変わりないですが、slackユーザを使ってリモートコマンドを指定しなくてもできます。
■まずはincoming hookを取得
https://my.slack.com/services/new/incoming-webhook
上記のURLをアクセスする前にAlert系のgroupを作ってください。
そしてURLをアクセスしたら使用するgroupを選択し、Your Unique Webhook URLをメモします。
こんなやつ。
https://hooks.slack.com/services/HAHA/WHOHO/HEHEHE
slackでの作業はオシマイです。
■Zabbixサーバにてスクリプトファイルの設置
ZabbixのAlertScriptPathを/etc/zabbix/zabbix_server.confから確認します。
1 2 3 4 |
# grep AlertScriptsPath /etc/zabbix/zabbix_server.conf ### Option: AlertScriptsPath # AlertScriptsPath=${datadir}/zabbix/alertscripts AlertScriptsPath=/usr/lib/zabbix/alertscripts |
1 2 3 |
# cd /usr/lib/zabbix/alertscripts # wget https://raw.githubusercontent.com/ericoc/zabbix-slack-alertscript/master/slack.sh # chmod 755 slack.sh |
これでOKです。
■Zabbixの設定
・メディアタイプの設定
管理 -> メディアタイプ -> メディアタイプの作成
下記の画像のように登録してください。
・slackユーザ作成
管理 -> ユーザ -> ユーザの作成
名前 Slack
メディア -> 新規メディア >#Alertchannel名
タイプ Slack
グループ Zabbix Administrator
・メディアタイプの設定(zabbix3)
・アクションの設定
設定 -> アクション -> アクションの作成
下記のように設定してください。
リカバリメッセージ チェックオン(zabbix3の方を参考に)
・zabbix2
・zabbix3
・アクションの実行条件(zabbix2,3)
トリガーの値に障害と正常を追加します。
アクションの実行内容はターゲットリストをリストを現在のホストに、コマンドは下記のようにします。
テストしたい場合は下記のコマンドを打って確認してください。
1 |
$ /usr/lib/zabbix/alertscripts/slack.sh '#alertgroup名' "{TRIGGER.STATUS}" "{TRIGGER.NAME}-{ITEM.VALUE1}" |
・zabbix2(アクションの実行内容)
・zabbix3(アクションの実行内容)
・その他
※PROBLEMを繰り返し通知させたい場合はアクションを2つに分ける必要があります。
problem→0(無限) 、recovery→1(一回のみ)のように設定します。
■slack.shについて
デフォルトのスクリプトだとかなり使いにくいし、見にくいので実行するとこんな感じで出ると思います。
改行もしたいし、色も付けたいし、Downの場合は絵文字で見やすくしたり、自分なりに工夫して作ってみました。
基本webシナリオのものをslackに通知させてます。
で、こんな感じにしました。
よかったら参考にしてください!
https://gist.github.com/RVIRUS0817/d0c5a619077bd04180381a8c3ea0dd9f
・zabbix2(slack)
■まとめ
時間があったらこのスクリプトをいろいろ改良したいですね。
ロアベ上がったらグラフをslackに通知とかなどなど。。
redmineもslackに通知などなど。。
次回はslackでnagios通知をブログします。
参考:https://github.com/ericoc/zabbix-slack-alertscript
0件のコメント