Zabbixとは
Zabbixとはオープンソースのネットワーク監視ソフトウェアで、大変人気がある監視ツールです。読み方は「ザビックス」で、サーバ・ネットワーク・アプリケーション・クラウドリソースを統合監視することができます。Zabbix社は日本法人およびユーザ会により啓蒙活動を行っています。 参考:Zabbix Japan 参考:日本Zabbixユーザー会
ZabbixではSNMPやIPMI・SSH・Telnetの他、各種プロトコル・ウェブチェックやZabbixエージェントを用いて効率的にデータ収集を行います。
Zabbixの特徴
Zabbixの特徴は以下の点が挙げられます。 ・オープンソースの良さが凝縮していること オープンソースは特定ベンダーに依存しないので、運用監視ツールとして多様な機器に対応できるメリットがあります。またライセンス費用が発生しない点からコストを削減することが可能となります。強力なコミュニティもZabbixの強みで、グローバルコミュニティの知見を活用することができます。
・幅広いプラットフォームへの対応 Zabbixは特定ベンダーに特化しておらず、多種多様なプラットフォームへ対応可能です。監視機能も豊富で柔軟なカスタマイズ機能も特色に挙げられます。
・企業向け監視運用の実績の多さ Zabbixは監視運用で多数利用されているため、企業向け監視運用も実績が非常に多いのが強みです。企業向けは安定運用を希望される場合が多いので、実績の豊富さは強力な武器となります。サポートも商用サポートを含む各種オプションを提供しています。
上記をわかりやすく言うと企業向けに実績豊富な監視ツールで、ライセンスコストもかからず各種機器を効率的に管理できる代表的な製品ということになります。
Zabbixの機能
Zabbixでは以下の主要機能をサポートしています。 ・データ収集 Zabbixエージェントに加えて、SNMP(v1・v2・v3)・IPMI・WMI・JMX・Trapper・SSH・Telnetやウェブチェックを用いてデータ収集が可能です。そのため多種多様なプラットフォームをサポートしています。
・データ蓄積 収集データは長期間蓄積されますので、予測・分析・解析をはじめとするレポートに活用できます。
・アラート送信 障害検知や通知を目的として閾値と比較したアラートメールを送信したり、エスカレーション処理・コマンド実行が可能です。
・運用支援 収集データのグラフィカル表示やモニター機能を活用した運用が可能です。障害履歴を表示した分析やサービスの稼働状況や稼働率を求めることもできます。
・運用効率化 オートディスカバリにより監視対象の自動登録を行うことができます。同様に監視設定を自動登録することで運用自動化を進めることが可能です。
監視ツールの有償と無償の違い
監視ツールは有償版と無償版それぞれ多くの種類があります。有償と無償の違いは以下のようなポイントを分類できます。必要な要件とツールの特性を比較することにより最適なツールを選択します。
・特定の監視対象に依存する場合 特定の監視対象に特化しているツールは有償のケースが多いです。ソースを公開せずに知的財産として技術を保護する場合もあります。オープンソースではソースコードを開示することで、コミュニティを活用し機能拡張を効率的に行ったり不具合修正を迅速に行う場合が多いです。
・基幹業務や重要業務を対象とする場合 監視ツールやサポート内容に要件がきっちり定義されている基幹業務では、手厚いサポートと高品質のソフトウェア提供が求められることもあり有償版を用いる傾向があります。無償版では手軽に始められることがメリットですが、手厚いサポートが提供されないこともあります。
Zabbixは汎用的に多数の機器を管理できる上に、企業向けサポートをオプション提供できるメリットがあります。企業向け事例も多く利用者を増やしている要因にもなっています。
Zabbix入門
ここではZabbixを利用するにあたり、必要な手順を説明していきます。一連の流れはモジュールのダウンロード・インストール、そしてシステムの設定と他のソフトウェアと大きく変わらない流れで作業を進めていきます。
日本語ドキュメントはZabbix 2.2のドキュメントが公開されています。現在Zabbix 5.4となっており、少々古いですが考え方を理解することができます。 参考:Zabbix Documentation 2.2
Zabbixの基本構成
ここではZabbix入門として、基本構成を説明していきます。Zabbixは大きく分けてZabbixサーバ・Zabbixプロキシ・Zabbixエージェントからなります。
・Zabbixサーバ 監視マネージャとして、ネットワークを介して監視対象のステータスを収集し保存します。監視対象はネットワーク機器やサーバ等で、必要なプロトコルを選択しステータス監視します。Zabbixサーバへのアクセスは、ウェブインターフェイスやAPIを通じて行います。
・Zabbixプロキシ Zabbixプロキシはプロキシサーバとして、ファイアウォール越しの機器監視や大規模分散監視に利用します。この機能を使って大規模一元監視の仕組みが実装可能です。
・Zabbixエージェント Zabbixサーバのリクエストベースで結果を返したり、定期的にデータを送信することができます。多くのプラットフォームに対応しています。
Zabbixのインストール
Zabbixは、GNU General Public License (GPL) version 2にしたがってリリースされています。そのため商用・非商用・教育用いずれにおいても無償ダウンロード・インストールが可能です。インストールモジュールは以下のサイトからダウンロードして利用します。Linux系ではyumやRPMでインストールが可能です。 参考:Download and install Zabbix
ダウンロードサイトではZabbixサーバへインストールするためのパッケージ、パブリッククラウドで利用するためのクラウドイメージ、コンテナ利用のためのリポジトリ、Zabbix搭載アプライアンス、Zabbixエージェント、ならびにソースコードがダウンロード可能です。必要なモジュールを選択しダウンロードします。
ZabbixのOSインストールが完了したらMySQL等のDBMSをインストールし、ウェブインターフェイスから追加作業を進めます。ウェブインターフェイスは “http://Zabbixサーバアドレス/zabbix” にアクセスします。ウェブログイン後ライセンス条項の確認・事前要件の確認・DB設定・Zabbixサーバ設定と確認の後インストールを実施します。
Zabbixサーバのウェブインターフェイスからインストールが完了したら、「ユーザ:Admin・パスワード:zabbix」でZabbixサーバにログインできる状態になります。
Zabbixサーバへのアクセス
インストールが完了したら、ウェブインターフェイスでログインすることができます。登録されている「ユーザ:Admin・パスワード:zabbix」でログインし、「Administration」から「Users」を選択しユーザを追加します。
次にホストを追加するために、「Configuration」から「Hosts」を選択し監視対象ホストを追加します。ここで監視するアイテムを指定し、エージェント有無や更新周期・データ保存期期限等を設定します。設定完了後、「Monitoring」から収集データを参照することができます。グラフ表示も可能ですので簡単に状況が確認できます。
その後「Configuration」から「Hosts」を選択し「Trigger」でトリガー条件を設定することもできます。障害や性能のイベントの閾値やステータスが確認できます。必要に応じて問題発生時にメール設定により通知を送信します。
一連の作業で決定した設定はテンプレート化したり、すでにあるテンプレートを活用することができます。
Zabbixのテンプレート
Zabbixはオープンソースですので、多数のベストプラクティスがテンプレートとして公開されています。主要機器やミドルウェアの監視テンプレートが掲載されていますので、最小のコストで最大の運用効果をあげることができます。 参考:Zabbix Monitoring and Integration Solutions
さらにエージェントやAPI、モバイル端末に至るまで非常に多くの機器やソフトウェアを監視することができます。AnsibleやChef・Puppet等のオートメーションに対応するモジュールも多数掲載されています。
Zabbixの活用は、運用監視のオペレーション効率化の鍵です
Zabbixは代表的なオープンソース運用監視ツールです。監視対象が豊富で必要なテンプレートが多数公開されています。Zabbixは企業向けにも実績が豊富ですので、業務システムの運用監視での活用検討をおすすめします。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから