どうも、駱駝(らくだ)と言います。
最近Zabbixエージェントについて調べなおした機会があったので、記録としてブ記事を残そうと思います。
Zabbixで監視を行う際、パッシブエージェント、アクティブエージェント、これら両方の機能を備えたZabbixエージェントの3種類があります。
それぞれの特徴を理解し、使い分けることでより効率的に監視をすることができます。
1. Zabbixエージェントの種類と特徴
1.1 パッシブエージェント
Zabbixサーバから定期的にポーリングされ、要求された情報を返すタイプのエージェントです。
特徴
Zabbixサーバが主体的に情報を取得するため、エージェント側の負荷が少ない。
シンプルな仕組みのため、リアルタイムな監視に適している。
一般的なシステムリソースの監視に適している。
例: CPU使用率、メモリ使用量、ディスク空き容量
1.2 アクティブエージェント
エージェントが自ら情報を収集し、Zabbixサーバに送信するタイプのエージェントです。
特徴
イベントドリブンな監視に適している。
Zabbixサーバの負荷を分散できる。
特定のイベント発生時や、頻繁に変化する情報を監視したい場合に有効。
例: ログファイルの監視、特定のサービスのステータス確認
1.3 Zabbixエージェント
パッシブとアクティブの両方の機能を備えたエージェントです。
特徴
状況に応じて、パッシブとアクティブを使い分けることができる。
柔軟性が高く、様々な監視シナリオに対応できる。
※基本的にはパッシブをメインで使うそう。(根拠なし)
2 . それぞれのメリット・デメリット
3 . 具体的な活用例
3.1 リソース監視
目的: サーバーのCPU使用率の監視
方法: Zabbixサーバから定期的にパッシブエージェントに問い合わせCPU使用率の値を監視する。
例: CPU使用率を監視し、使用率が90%を超えたら障害として通知する。
3.2 ポート監視
目的: 特定のポートが開いているか、閉じているかを監視し、サービスの稼働状況を確認する。
方法: アクティブエージェントで、netstatコマンドなどを利用してポートの状態を定期的にチェックする。
例: HTTPポート(80番)やSSHポート(22番)が閉じているかを確認し、閉じていれば障害として通知する。
3.3 プロセス監視
目的: 特定のプロセスが正常に稼働しているか、異常終了していないかを監視する。
方法: Zabbixエージェントで、プロセスID、プロセス数などの情報を取得し、異常を検知した場合にアラートを出す。
例: Webサーバプロセス(Apache等)が稼働しているかを監視し、プロセスが落ちた時に通知する。
4. まとめ
Zabbixエージェントは、パッシブ、アクティブ、Zabbixエージェントの3種類があり、使い分けることで効率的な監視ができます。
パッシブエージェント: 一般的なシステムリソースの監視
アクティブエージェント: イベントドリブンな監視、ログ監視
Zabbixエージェント: 柔軟な監視、カスタムスクリプトによる監視
補足
Zabbixのバージョン: Zabbixのバージョンによって、利用できる機能や設定項目が異なる場合があります。
OS: 監視対象のOSによっても、利用できる機能が異なります。