You are viewing documentation for the development version, it may be incomplete.
Join our translation project and help translate Zabbix documentation into your native language.

3 Zabbixエージェント2

概要

Zabbixエージェント2は新世代の[Zabbixエージェント]](/manual/concepts/agent)であり、Go言語で記述されています(ZabbixエージェントのC言語コードが再利用されています)。次のように設計されています:

  • TCP接続の数を減らす
  • チェックの同時実行性の改善
  • プラグイン拡張の簡易化。最小限のコードで簡単なチェックを提供し、定期的なレポートを使用して、長期にわたるスクリプトとスタンドアロンのデータ収集で構成される複雑なチェックをサポートします。
  • Zabbixエージェントの代替品として機能し、以前のすべての機能をサポートします。
パッシブチェックとアクティブチェック

Zabbixエージェント2はZabbixエージェントと同様にパッシブおよびアクティブチェックをサポートしています。 さらに、Zabbixエージェント2アクティブチェックは、柔軟な/スケジューリング間隔をサポートし、1つのアクティブサーバー内の同時実行性をチェックします。

デフォルトでは、Zabbixエージェント2はリソース使用量の急増を防ぐために、アイテムの更新間隔内の条件付きランダム時間にアクティブチェックの最初のデータ収集をスケジュールします。エージェントの再起動直後に予定された更新確認間隔にないアクティブチェックを実行するには、設定ファイルForceActiveChecksOnStartパラメーター(グローバルレベル)またはPlugins.<プラグイン名>.System.ForceActiveChecksOnStart (特定のプラグインチェックにのみ影響します)を設定します。プラグインレベルのパラメーターが設定されている場合、グローバルパラメーターを上書きします。

同時実行性の確認

異なるプラグインからのチェックを同時に実行できます。 1つのプラグイン内の同時チェック数は、プラグイン容量設定によって制限されます。各プラグインにはハードコードされた容量設定(デフォルトは1000)があり、プラグイン設定パラメーターPlugins.<プラグイン名>.System.Capacity=Nを使用して下げることができます。

サポートしているプラットフォーム

サポートしているプラットフォームについては、要件ページを参照してください。

UNIX系OS上のZabbixエージェント2

UNIX系OS上のZabbixエージェント2は、監視対象のホストで実行されます。

インストール

Zabbix agent 2は、Linuxベースのシステムに以下のいずれかの方法でインストールできます。

  • Zabbixパッケージ - Zabbixのバージョン、OSディストリビューション、OSバージョンを選択した後、Agent 2コンポーネントを選択し、指示に従ってください。
  • Zabbixソース - ソースファイルをダウンロードし、--enable-agent2オプションで設定してエージェントをコンパイルします。

Zabbix agent 2の監視機能は、個別に提供されているロード可能なプラグインで拡張できます。 詳細はロード可能なプラグインを参照してください。

パッケージでインストールした場合

Zabbixエージェント2はフォアグラウンドプロセスとして実行され、バックグラウンド実行には外部サービスマネージャー(systemdなど)に依存します。 Zabbixエージェント2にはLinux上でのデーモン化サポートが組み込まれていません。

エージェントは、次のコマンドを実行して起動できます:

systemctl start zabbix-agent2

Zabbixエージェント2を停止、再起動、またはステータスを確認するには、次のコマンドを使用します:

systemctl stop zabbix-agent2
       systemctl restart zabbix-agent2
       systemctl status zabbix-agent2
手動で起動

zabbix_agent2バイナリを見つけて直接実行することで、Zabbixエージェントを起動できます。例:

zabbix_agent2

Windowsシステム上のエージェント2

Zabbixエージェント2はスタンドアロンプロセスとして実行されますが、Windowsサービスとして実行することもできます。

インストール

Zabbix agent 2は、次のいずれかの方法でWindowsにインストールできます。

Zabbix agent 2の監視機能は、個別に提供されているロード可能なプラグインで拡張できます。 詳細は、ロード可能なプラグインを参照してください。

Zabbix agent 2(ZIPアーカイブから)をWindowsサービスとしてインストールする追加の詳細については、Microsoft Windows上のZabbixエージェントページを参照してください。

オプション

Zabbix agent 2 では、以下のコマンドラインパラメータを使用できます。

パラメータ 説明
UNIX および Windows エージェント
-c --config <config-file> 設定ファイルへのパス。
このオプションを使用して、デフォルト以外の設定ファイルを指定できます。
UNIX のデフォルトは /usr/local/etc/zabbix_agent2.conf または コンパイル時の変数 --sysconfdir または --prefix で設定されたもの
Windows のデフォルトは C:\Program Files\Zabbix Agent 2\zabbix_agent2.conf
-f --foreground Zabbix agent をフォアグラウンドで実行する(デフォルト: true)。
-p --print 既知のアイテムを表示して終了。
: ユーザーパラメータの結果も返すには、設定ファイルがデフォルト以外の場所にある場合は設定ファイルを指定する必要があります。
-t --test <item key> 指定したアイテムをテストして終了。
: ユーザーパラメータの結果も返すには、設定ファイルがデフォルト以外の場所にある場合は設定ファイルを指定する必要があります。
-T --test-config 設定ファイルを検証して終了。
-h --help ヘルプ情報を表示して終了。
-v --verbose デバッグ情報を表示する。-p および -t オプションと併用してください。
-V --version エージェントのバージョンとライセンス情報を表示。
-R --runtime-control <option> 管理機能を実行します。ランタイム制御を参照してください。
Windows エージェントのみ
-m --multiple-agents 複数のエージェントインスタンスを使用する(-i, -d, -s, -x オプションと併用)。
インスタンスのサービス名を区別するため、各サービス名には指定した設定ファイルの Hostname 値が含まれます。
-S --startup-type <value> Zabbix Windows エージェントサービスの起動タイプを設定します。許可される値:
automatic - (デフォルト) Windows 起動時に自動的にサービスを開始;
delayed - 自動的に開始されたサービスの起動完了後にサービスの開始を遅延;
manual - サービスを手動(ユーザーまたはアプリケーション)で開始;
disabled - サービスを無効にし、ユーザーまたはアプリケーションによる開始を禁止。
このオプションは -i オプションと併用するか、既にインストールされているサービスの起動タイプを変更するために単独で使用できます。
-i --install Zabbix Windows エージェントをサービスとしてインストール。
-d --uninstall Zabbix Windows エージェントサービスをアンインストール。
-s --start Zabbix Windows エージェントサービスを開始。
-x --stop Zabbix Windows エージェントサービスを停止。

コマンドラインパラメータの具体的な使用例:

  • すべての組み込みエージェントアイテムと値を表示
  • 指定した設定ファイルで定義された "mysql.ping" キーのユーザーパラメータをテスト
  • デフォルトの設定ファイルパス C:\Program Files\Zabbix Agent 2\zabbix_agent2.conf を使用して Windows 用の "Zabbix Agent" サービスをインストール
  • エージェント実行ファイルと同じフォルダにある設定ファイル zabbix_agent2.conf を使用して、インストール済みの Windows 用 "Zabbix Agent" サービスの起動タイプを変更
zabbix_agent2 --print
       zabbix_agent2 -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
       zabbix_agent2.exe -i
       zabbix_agent2.exe -c zabbix_agent2.conf -S delayed
ランタイム制御

ランタイム制御は、リモート制御のためのいくつかのオプションを提供します。

オプション 説明
log_level_increase ログレベルを上げます。
log_level_decrease ログレベルを下げます。
metrics 利用可能なメトリックを一覧表示します。
version エージェントのバージョンを表示します。
userparameter_reload 現在の設定ファイルからUserParameterおよびIncludeオプションの値を再ロードします。
help ランタイムコントロールのヘルプを表示します。

例:

  • エージェント2のログレベルを上げます
  • ランタイム制御オプションを出力します
zabbix_agent2 -R log_level_increase
       zabbix_agent2 -R help

設定ファイル

Zabbixエージェント2の設定パラメーターは、いくつかの例外を除いて、Zabbixエージェントと互換性があります。

新しいパラメーター 説明
ControlSocket ランタイム制御ソケットパス。エージェント2はランタイムコマンドに制御ソケットを使用します。
EnablePersistentBuffer,
PersistentBufferFile,
PersistentBufferPeriod
これらのパラメーターは、アクティブなアイテムのエージェント2の永続ストレージを設定するために使用されます。
ForceActiveChecksOnStart エージェントがアクティブチェックを再起動直後に実行するか、時間経過で均等に分散実行するかを決定します。
Plugins プラグインはPlugins.<プラグイン名>.<Parameter>=<value>の形式で独自のパラメーターを設定できます。一般的なプラグインパラメーターはSystem.Capacityで、同時に実行できるチェックの制限を設定します。
StatusPort ポートエージェント2は、HTTPステータスリクエストをリッスンし、設定されたプラグインといくつかの内部パラメーターのリストを表示します。
削除されたパラメーター 説明
AllowRoot, User デーモン化がサポートされていないため、サポートされていません。
LoadModule, LoadModulePath ロードモジュールはサポートされていません。
StartAgents このパラメーターは、Zabbixエージェントではパッシブチェックの同時実行性を高めたり無効にしたりするために使用されていました。エージェント2では、同時実行はプラグインレベルで設定され、容量設定によって制限できます。一方、パッシブチェックの無効化は現在サポートされていません。
HostInterface, HostInterfaceItem まだサポートされていません。

詳細についてはzabbix_agent2の設定ファイルオプションを参照してください。

終了コード

Zabbixエージェント2は古いOpenSSLバージョン(1.0.1、1.0.2)でコンパイルすることもできます。

この場合、ZabbixはOpenSSLでロックするためのミューテックスを提供します。ミューテックスのロックまたはロック解除が失敗した場合、エラーメッセージが標準エラーストリーム(STDERR)に出力され、エージェント2はそれぞれリターンコード2または3で終了します。