システム構築

サーバー構築のデージーネットTOP > システム構築 > 監視サーバ構築 > Zabbixによる監視システム

構築事例:Zabbixによる監視システム

Open Smart Design

監視システムのリプレースでZabbixを導入しました。Zabbixと独自開発の連携プログラムを組み合わせた監視システムとし、Zabbixが検知した障害が、携帯電話へ音声で通知されるようにしました。また、設定は日本語対応のZabbixウェブインタフェースから行う事ができます。

導入企業業種
ケーブルテレビ(岡山県)
ユーザー規模
30,000人
利用OS
Linux(Debian7)
導入月
2013年9月頃
お客様が悩まれていた課題
ハードウェア老朽化により監視システムのリプレースを行いたい
監視設定をウェブインタフェースから行いたい
メール通知だけでなく外部の音声通知サービスと連携したい

デージーネットが提案した「Zabbixによる監視システム」

解決ポイント

Zabbixと独自開発のプログラムを連動

Zabbixの導入

監視システムのリプレースをする際、設定をウェブインターフェースから行う事と障害時に特殊な通知方法を取る事が求められました。そこで、ウェブインタフェースで容易に設定ができるオープンソースソフトウェアのZabbixを導入しました。また、独自開発の監視プログラムを作成し、Zabbixと組み合わせて使用する方法を提案しました。

Zabbixを利用した監視システム

図のように、Zabbixを導入しネットワーク機器を監視しました。障害が発生するとZabbixが感知します。Zabbixが感知した障害は、メール通知機能を利用して外部の音声通知サービスから管理者の携帯電話へ送られます。監視設定はZabbixのウェブインタフェース画面から行えます。

Zabbixのメール通知と連携する独自開発プログラムの導入

外部の音声通知サービスを利用するために、特定フォーマットのメールを送信する必要がありましたが、Zabbixの標準機能では、そのフォーマットでメール送信を行うことができませんでした。このサービスを利用するために、Zabbixが発信するメール通知を音声通知サービスに送信するフォーマットに変換するプログラムを開発して導入しました。Zabbixと組み合わせて使用する事で、Zabbixが感知した障害を、音声サービスから管理者の携帯電話へ送る事を可能にしました。

導入後の結果

Zabbixの導入でネットワーク機器の監視設定をウェブインタフェースから行えるようになったため、管理者の負担を減らすことができました。
また、Zabbixに導入した連携プログラムによって、ネットワーク機器監視に音声通知サービスを利用することができるようになり、障害時の対応が早くなり、復旧を迅速に行えるようになりました。



利用OSS

Zabbixとは

Zabbixとは、サーバ、ネットワーク、アプリケーションを集中監視するための統合監視ソフトウェアです。Zabbixは、Zabbix SIA社が開発したオープンソースソフトウェアです。OSSですので誰でもインストールし導入できます。

Zabbixは、統合監視に必要な監視、障害検知、通知機能を備え、多数のプラットフォームに対応しています。そのため、Zabbixを導入することでシステム全体を監視することが可能です。

デージーネットとZabbix

デージーネットでは、OSSの監視ソフトウェアとして、Zabbix、Cacti、Nagiosなどを扱っています。特に、マップの作成、閾値監視、障害通知などの機能が重要視される場合には、Zabbixの導入を推奨しています。

今回の事例のように、障害時に特殊な通知方法を取りたい場合には、独自の監視ソフトウェアを作成し、Zabbixと組み合わせて使用する方法を取る事ができます。導入したZabbixシステムのマニュアルの作成や説明会を行う取り組みもしています。


Zabbixの特徴

  • Zabbixは、自由に拡張を行う事ができます。

    スクリプトを作成してアプリケーションのZabbixによる監視を独自に拡張できたり、障害検知時にもZabbixエージェントにスクリプトを実行させたりできます。


  • Zabbixの設定はWebインタフェースから行う事ができます。

    Zabbixの設定変更を視覚的に行えるため、容易に設定ができ、管理の負担軽減となります。また、言語設定により日本語表示にすることができます。


  • Zabbixによる収集データはMySQLに保存されます。

    データベースに保存したZabbixの収集データからグラフを作成し、リソース使用状況の傾向分析や障害分析に役立てることが可能です。

Zabbixは高品質なOSSです。そのため、Zabbixの導入にあたっては、あまり使われていない機能を利用する場合を除き、大きな問題に当たることはほとんどありません。


ZabbixとCactiの違い

Zabbixと同じく、Cactiはネットワークやサーバの状態を監視するオープンソースソフトウェアです。Cactiは、ネットワークやサーバの状態を取得しグラフ化することができます。ZabbixやCoctiといったソフトウェアは、監視対象へsnmpや専用のエージェントを導入して、定期的に監視対象へアクセスし、情報を取得し監視を行います。ZabbixもCactiもウェブインタフェースを備えていて、監視システムではよく利用されています。それぞれの特徴は以下の通りです。

Zabbixは統合監視に必要な機能を備えていて、システム全体をZabbixひとつで監視することが可能です。特に、マップの作成、閾値監視、障害通知の機能が重要なケースでは、Zabbixをおすすめしています。

一方のCactiは、MRTGの代替ツールです。そのため、MRTGからの移行、リソース監視、グラフの作成機能が重要視される場合にCactiをおすすめしています。

Zabbixの基本機能

  • Zabbixエージェントを使用しない監視
    • ping疎通

      Zabbixの監視対象ホストとのping疎通が取れるかをチェックします。

    • TCP疎通/応答時間

      指定されたポートへTCPレベルでの接続を行い、接続の可否・応答時間をチェックします。

  • Zabbixエージェントによる監視
    • WEB監視

      WEBサイトの稼動状況をチェックします。別名、URL監視とも呼ばれます。WEB監視を行うためには、WEBシナリオを設定する必要があります。シナリオはログインから、ある画面までの遷移を定義したものです。WEBページを階層的にチェックできます。

    • CPU使用率

      CPUの負荷をチェックします。原因がプログラムにある場合には、コマンドでプログラムを特定して対処します。

    • メモリ使用率

      メモリの使用率をチェックします。

    • スワップ監視

      スワップが発生していないかをチェックします。スワップはメモリが満杯である場合に、ハードディスクのスワップ領域に移動されます。

    • ディスク使用率

      ディスク使用率をチェックします。使用率の傾向から、ディスクがいっぱいになる前に対処できます。

    • ログ監視

      ログファイルに特定の文字列が存在するかチェックします。存在した場合、通知レポートを使用してユーザーに警告します。文字列の指定には正規表現を用いることができます。

  • 通知の配信
    • メール通知

      メールを利用して、アラートや通知を送信します。

    • SMS

      モデムを使ってSMSでアラートや通知を送信します。

    • カスタムスクリプト

      自作のアラートスクリプトを起動します。パトランプを回すなど、独自の通知を行えます。

  • その他
    • SNMPによる状態監視

      CPUやメモリの使用率、ルータのトラフィック量やエラー数など、SNMPエージェントの状態を確認することができます。

    • SNMPトラップ

      SNMPエージェントから発行されるトラップを受信します。エージェントからのトラップは、異常事態が発生したときや、状態を示すパラメータが閾値を超えた場合に発行されます。

    • プロセス

      稼動しているLinuxプロセスやWindowsサービスの状態をチェックします。

    • トラフィック

      ネットワーク上で送受信される信号やデータ量をチェックします。

    • スクリプト実行

      シェルスクリプト、Perl、Python、Ruby等のプログラミング言語でスクリプトを作成することで、Zabbixエージェントの監視機能を拡張することができます。実行されたスクリプトの結果をチェックします。


    Zabbix プロキシ

    Zabbixでは、Zabbix Proxy機能が利用可能となっています。Zabbix Proxyは、Zabbixの基本機能で容易に利用する事ができます。Zabbixサーバから直接監視しているサーバとなんら変わらずに操作することが可能です。

    容易に導入できるZabbix Proxyは、「対象の機器が多い」「拠点が複数ある」「Zabbixサーバ1台では不安」という場合に、監視サーバの耐障害性・拡張性を高めるため実用的に使える機能と言えます。


    Zabbix API

    Zabbix APIを介することで、開発したソフトウェアとZabbixの間で相互にデータ交換が可能になります。また、Zabbix APIを利用して、ホストの追加や監視データの取得ができます。


    Zabbixの設定方法

    • Zabbixをインストール

      RHELやCentOSには、パッケージが提供されています。そのため、yumを使ってZabbixをインストールすることができます。また、Zabbix公式サイトからパッケージをダウンロードしてインストールすることもできます。

    • テンプレートの設定

      Zabbixのテンプレートを利用すると、設定手順を簡略化し、効率的に監視を行うことができます。テンプレートの設定ではアイテム、トリガー、グラフ、アプリケーション、スクリーン、ディスカバリルールを設定できます。

    • Zabbixの設定インポート/エクスポート

      XML形式を使用し、Zabbixの設定をインポート/エクスポートすることができます。


    • ご参考資料



      Zabbixのサポート

      Zabbixの商用サポートは、Miracle Linux社などから提供されています。このような商用サポートを利用することもできます。Zabbixは安定したソフトウェアで、普段の利用において大きな問題が発生することはほとんどありません。

      デージーネットでは、Zabbixシステム構築後に導入後支援サービスとして、Open Smart Assistanceを提供しています。Zabbixにバグがあった場合には、回避方法の調査、コミュニティへの連絡による改善促進といったサポートを受けることができます。また、Open Smart Assistanceのクーポンサービスにより、Zabbixの新たな監視対象を追加する作業もサポートしています。

監視サーバ構築の事例一覧

様々な事例を集めたモデルプラン(費用例付き)をお送りしています。

代表的な事例を集めた「モデルプラン」をお送りしています。費用の例も記載しておりますので、価格感も知って頂ける資料となっております。
ご希望の方は、下記よりお申し込みください。

モデルプランをご希望の方

Zabbixによる監視システムの先頭へ