システムを自社で運用している場合、システム監視は当然必要な作業です。
私の勤める会社も自社運用のシステムは多々あり、日々それらシステムの監視を行っています。
監視にはオープンソースのソフトウェアであるNagiosを使っていたのですが、この度、監視用ソフトウェアをZabbixに変更せよとの指示がありました。監視ソフトウェアの変更はここ10年ほどなく、若干の奮闘をしました。そんなお話です。
監視ソフトウェア(Zabbix)とは
数あるシステム監視ソフトウェアの中で、ディファクトスタンダードになっているようです。
監視ソフトウェア変更の経緯
システムの監視作業は、ビジネスの本流ではないため軽視されがちです。
そのため、私の勤める会社でもシステム監視では10年くらい使っているソフトウェアを変えていませんでした。
今回ソフトウェアの変更に踏み切ったのは、会社で運用している数あるシステムの監視することを総合的に判断して、一つの監視ソフトで行うことが全体利益につながるとの判断があったためです。
確かに今までは、各業務担当でバラバラにシステムの監視を行っていました。
というわけで、私が運用するシステムでは Nagiosという監視ソフトウェアを使っていましたが、今後はZabbixを使うこととなりました。
システム監視の変更内容(やりたいこと)
現状の監視サービスの維持することに尽きます。これに尽きます。
現行の監視の仕組みは、以下のとおりです。
- システムの死活監視(Ping応答、ポートの応答)
- システムの資源監視(CPU使用率、メモリ使用量、ディスク容量)
プロセス監視やログ監視は別途行っているので、上記を満たせればとりあえず良いです。
ちなみに、ポートの応答はシステムで稼働させているサービスによって変えます。私の管理しているシステムはかの有名なDominoサーバのため、Dominoポート(1352ポート)の応答を監視します。
実際にやってみた
実際にやってみないと覚えられないと思います。結構苦労しました。
ユーザーの作成
監視で異常が見つかった際に通知するためのユーザ(メールアドレス)を登録します。
「管理」→「ユーザー」メニューを開き、[ユーザーの作成]ボタンから作成します。
ここは特に迷うことなくできます。
システム監視のためのテンプレート作成
監視対象のシステム(ホスト)に、1つ1つに関しの設定を実施しなくても良いように、テンプレートを作っておきます。これが今回の監視設定の肝ですね。
「設定」→「テンプレート」メニューを開き、[テンプレートの作成]ボタンからテンプレートを登録します。
テンプレートの完成形
こんな感じで、サービスの死活監視(Ping、Dominoポート)
死活監視(Ping応答とDominoポート応答)とリソース監視のテンプレートを作りました。
Zabbixの監視設定の仕組みについて(アイテム、トリガー)
Zabbixでは、何を監視するかを“アイテム”として登録し、アイテムを元に障害として検出するかを“トリガー”として定義します。言葉で表すのは非常に難しいので、実際に自分で作ってみると理解が深まると思います。
※今回設定した内容の詳細な内容は、以下にメモしておきます。
※リソース監視は、監視対象システムにZabbixエージェントを入れておこなっています。エージェントのインストール部分は割愛。
Ping監視テンプレートに登録した内容
Domino監視テンプレートに登録した内容
リソース監視テンプレートに登録した内容
※ここでポイント。
ディスク容量の監視だけは少し特殊で、ディスカバリルールというものをまず作って、その中に監視のためのアイテムとトリガーを作ります。
ディスカバリルールを介して監視設定を行うようにすることで、監視対象のシステムごとに変化するポイント(ディスクのシステムラベル CとかE や、NICの番号など)を動的にZabbixが認識してくれて便利です。 ※以下サイトがノリ的に分かりやすいと思います。
監視対象のシステム(ホスト)の登録
監視対象のシステム(ホスト)を登録します。
「設定」→「ホスト」メニューを開き、[ホストの作成]ボタンから監視したいシステム(ホスト)を登録します。
登録の際には、ホスト名、IPアドレス、ホストグループ、テンプレートを指定します。テンプレートを事前に作っておくことで、テンプレートを適用するだけで監視に必要な”アイテム”や”トリガー”が適用できます。
以下のような感じになります。
メール通知のためのアクションを作成
監視は動いていてもメールが通知されなければいけませんので、メール通知のためのアクションを作成します。
アクションの実行条件(andやor条件で指定)とアクション実行内容(どこにメール通知するか)を設定します。
以下のような感じになります。
動作確認
システムを意図的に停止させたりして監視が正常に動作するかを確認します。
Zabbix監視はうまく動いているようです。
UIベースで設定できる監視ソフトウェアですが、通知内容なども柔軟に設定できていい感じです。
まとめ
1.今まで使ったことがない監視ソフトウェア(Zabbix)ですが、それほど苦労することなく若干の奮闘で設定することができました。
2.ZabbixはWeb UIベースでの設定のため、Linuxのスキル等は必要なくハードルは低いと思います。
3.「ホスト」「テンプレート」「アイテム」「トリガー」「アクション」などのつながりを覚えることがZabbixを知るポイントだと思います。
※ややこしいけれども、慣れれば難しくありません。
コメント