Zabbixによる監視(7) 第08回 19年12月 / 最終更新:2019.12.06

前回はZabbixのアクション機能について説明しました。今回は監視運用を楽にするためのZabbix機能を紹介したいと思います。

ホストとホストグループ

Zabbixの監視対象は、ホストと扱われます。ホストには複数の監視アイテム・トリガーなどが設定されます。

複数のホストをまとめて、ホストグループとして扱うことができます。ホストやホストグループ単位でアクションの送付先を設定することもできます。

テンプレート機能

テンプレートは、1ホストに対する監視アイテム・トリガーをまとめたものです。1ホストに複数のテンプレートを割り当てることができます。OSレベル(Linux、Windows、ネットワーク機器など)の監視とアプリケーション別(DB,、Web、アプリケーションなど)の監視アイテム・トリガーなどを、テンプレートとして管理できます。
ホストを新たに追加したときなど、既存のテンプレートを割り当てるだけで監視可能になります。

ローレベルディスカバリー

OS用テンプレートを使う場合、ホストごとに違う項目があります。例えば、ディスク構成・ネットワーク構成などです。Zabbixではローレベルディスカバリーという機能があり、物理層(=low level)を自動的に探査します。初期状態で設定されるOS用テンプレートでは、ディスク構成・ネットワーク構成などを自動で探査し監視項目として登録します。

ホストの自動登録

新しいホストを登録するときに、Zabbix Agentをインストール・設定します。その後Zabbix AgentがZabbix Server に接続すると、Zabbixサーバへこのホストを自動的に登録することができます。この自動登録はZabbix のActionで行い、初期値ではこのアクションはオフになっています。逆に、Zabbix Agentがなくなった場合に自動的にホストを削除することも可能です。

ホストを自動登録・削除する際には、アクション機能によりメッセージを送信することも可能です。

ホストの自動登録では、Zabbix Agentの設定もしくは uname コマンドを使用してホスト名とOSタイプを自動判別します。OSタイプから自動的にそのOSのテンプレートを割り当てる事ができます。自動的にホストグループに割り当てることもできます。この自動登録を利用することで、大量のホストを持つことが多いクラウド環境においてホスト増化に対応することが可能です。

ネットワークディスカバリー

ネットワークディスカバリーは、特定のネットワーク内のサービスを検知して登録する機能です。ホストの自動登録(Zabbix Agentの設定)をしていることが前提ですが、以下のようなネットワークサービスを自動的に検知し、それに対応するサービス監視を追加します。

- 一般的なTCP/UDPプロトコル(SSH/LDAP/FTP/HTTP/HTTPS/SMTP/POP/IMAPなど)の接続
- 任意のTCPポートの接続
- Zabbix Agentへの情報収集
- SNMPエージェントへの情報収集
- ping応答

また検出するホストのネットワーク範囲(192.168.200.0/24など)を指定することが可能です。

この機能により、OSタイプだけでなく起動サービスにより監視に必要なテンプレート(SMTP/Webサーバなど)を自動追加することが可能です。また機能毎のホストグループにすることができます。

終わりに

ホスト追加の検出を自動化することで、以下のようなことができます。

- ホストグループ内のサービス数が規定数を下回ったら、サービスホストを追加するアクションを実行
- ホストグループのWebアクセス数のデフォルト値によって、サービスホストを追加・削除するアクションを実行
- ホストグループのサービスのCPU/メモリ/プロセス負荷によって、サービスホストを追加・削除するアクションを実行

次回は、SNMP機器監視やログ監視について説明しようと思います。次回をお楽しみに。