HobbIoT Engineer's Blog

株式会社HobbIoTのエンジニアブログです

Zabbixにて障害を検知した時にLEDを光らせたい(1)

f:id:HobbIoT:20160720000724p:plain

当社ではサーバやネットワークの死活監視にZabbixを利用しています。

参考リンク:

www.zabbix.com

障害検知時の対応

Zabbixは障害を検知した場合、メールやSMSを飛ばしたり、コマンドやプログラムを実行することが可能です。

現在当社の障害発生時の対応は下記の2パターン体制です。

  1. メールで担当者に通知→担当者による対応→復旧
  2. 障害発生をメール通知→リモートコマンドによる自動復旧→復旧完了をメール通知

Zabbixを用いた監視体制においてよくある対応方法だと思います。

1と2のケースの使い分けは単純にその対応が自動処理できるか否かです。

たとえば、Apacheが停止した場合、Zabbixサーバから「/etc/init.d/apache2 start」などのリモートコマンドを対象のWebサーバに投げることで対応が可能です。
これは2のケースに該当します。

しかしストレージ容量が不足しているなどの場合、自動復旧ができませんので、メールにて障害通知を受け取った後に不要なファイルの削除やより大きな容量のストレージに交換するなどの作業を行うことになります。
これが1のケースです。

障害通知メールへの慣れ

障害検知や状態変化の通知をメールにしてしまうとメールを見逃したり、 「これは放っておいても復旧するだろう」と判断して意図的に放置してしまうケースが増えてきます。

特に後者ですが、CPUのロードアベレージの変化や実行中のプロセス数の増減などは障害の兆候を事前に掴むことができる有益な情報なのですが、これを放置してしまい防ぐことができた障害を発生させてしまったという経験があるインフラ管理者は少なくないでしょう。

障害発生および状態変化を視覚的に判断したい

メール通知への慣れを解消するため、オフィスの壁に大きめのディスプレイを吊し、Zabbixサーバのダッシュボードを表示させて障害や状態変化を監視しているのですが、四六時中ディスプレイを眺めている訳にもいかないので、ダッシュボードの変化に気づかない場合があります。

そこでZabbixサーバにて障害を検知した場合、LEDランプを光らせて通知するというシステムをRaspberryPiを利用して作ってみたいと思います。