5 Zabbix エージェント (Windows)

概要

このセクションでは、Windows版Zabbixエージェント設定ファイル (zabbix_agentd.conf) でサポートされるパラメータを一覧表示しています。

パラメータは追加情報なしで一覧表示されています。
各パラメータをクリックすると、詳細を確認できます。

Parameter Description
Alias アイテムキーのエイリアスを設定します。
AllowKey パターンに一致するアイテムキーの実行を許可します。
BufferSend データをバッファ内に N 秒を超えて保持しません。
BufferSize メモリバッファ内の値の最大数。
DebugLevel デバッグレベル。
DenyKey パターンに一致するアイテムキーの実行を拒否します。
EnableRemoteCommands Zabbixサーバーからのリモートコマンドを許可するかどうか。
HeartbeatFrequency ハートビートメッセージの送信間隔(秒)。
HostInterface ホストインターフェースを定義するオプションのパラメータ。
HostInterfaceItem ホストインターフェースの取得に使用するアイテムを定義するオプションのパラメータ。
HostMetadata ホストメタデータを定義するオプションのパラメータ。
HostMetadataItem ホストメタデータの取得に使用するZabbixエージェントのアイテムを定義するオプションのパラメータ。
Hostname ホスト名を定義するオプションのパラメータ。
HostnameItem ホスト名の取得に使用するZabbixエージェントのアイテムを定義するオプションのパラメータ。
Include 設定ファイルには、個別のファイルまたはディレクトリ内のすべてのファイルを含めることができます。
ListenBacklog TCPキュー内の保留中接続の最大数。
ListenIP エージェントが待ち受ける、カンマ区切りのIPアドレスのリスト。
ListenPort エージェントはこのポートでサーバーからの接続を待ち受けます。
LogFile ログファイル名。
LogFileSize ログファイルの最大サイズ。
LogRemoteCommands 実行されたシェルコマンドの警告としてのログ記録を有効にします。
LogType ログ出力の種類。
MaxLinesPerSecond 'log' および 'logrt' のアクティブチェックを処理する際に、エージェントが1秒あたりにZabbixサーバーまたはプロキシへ送信する新しい行の最大数。
PerfCounter 指定した期間 <period>(秒)におけるシステムパフォーマンスカウンタ <perf_counter_path> の平均値となる新しいパラメータ <parameter_name> を定義します。
PerfCounterEn 指定した期間 <period>(秒)におけるシステムパフォーマンスカウンタ <perf_counter_path> の平均値となる新しいパラメータ <parameter_name> を定義します。PerfCounter と比較して、perfcounter パスは英語である必要があります。
RefreshActiveChecks アクティブチェックのリストを更新する頻度。
Server CIDR表記を任意で含む、カンマ区切りのIPアドレス、またはZabbixサーバーおよびZabbixプロキシのDNS名のリスト。
ServerActive アクティブチェックの取得元となるZabbixサーバー/プロキシのアドレス、またはクラスタ設定。
SourceIP 送信元IPアドレス。
StartAgents パッシブチェックを処理する、事前にforkされた zabbix_agentd のインスタンス数。
Timeout Zabbixプロキシまたはサーバーとの接続確立およびデータ交換を待機する時間(秒)を指定します。
TLSAccept 受け入れる受信接続の種類。
TLSCAFile ピア証明書の検証に使用する最上位CA証明書を含むファイルのフルパス名。Zabbixコンポーネント間の暗号化通信で使用されます。
TLSCertFile エージェント証明書または証明書チェーンを含むファイルのフルパス名。Zabbixコンポーネント間の暗号化通信で使用されます。
TLSConnect エージェントがZabbixサーバーまたはプロキシに接続する方法。
TLSCRLFile 失効した証明書を含むファイルのフルパス名。このパラメータは、Zabbixコンポーネント間の暗号化通信で使用されます。
TLSKeyFile エージェントの秘密鍵を含むファイルのフルパス名。Zabbixコンポーネント間の暗号化通信で使用されます。
TLSPSKFile エージェントの事前共有鍵を含むファイルのフルパス名。Zabbixサーバーとの暗号化通信で使用されます。
TLSPSKIdentity Zabbixサーバーとの暗号化通信で使用される事前共有鍵ID文字列。
TLSServerCertIssuer 許可されるサーバー(プロキシ)証明書の発行者。
TLSServerCertSubject 許可されるサーバー(プロキシ)証明書のサブジェクト。
UnsafeUserParameters ユーザー定義パラメータの引数に、すべての文字を渡すことを許可します。
UserParameter 監視するユーザー定義パラメータ。
UserParameterDir UserParameter コマンドのデフォルト検索パス。

すべてのパラメータは、明示的に必須と記載されていない限り、必須ではありません。

注意:

  • デフォルト値は、配布される設定ファイル内の値ではなく、デーモンのデフォルト値を反映しています。
  • Zabbixがサポートする設定ファイルは、BOM なしのUTF-8エンコーディングのみです。
  • "#" で始まるコメントは、行頭でのみサポートされます。

パラメータの詳細

Alias

アイテムキーのエイリアスを設定します。
長く複雑なアイテムキーを、より短く簡単なものに置き換えるために使用できます。
複数の Alias パラメータを指定できます。
同じ Alias キーを持つ複数のパラメータは許可されません。
異なる Alias キーが同じアイテムキーを参照することは可能です。
エイリアスは HostMetadataItem では使用できますが、HostnameItem および PerfCounter パラメータでは使用できません。

例1: サーバーからページングファイルの使用率をパーセンテージで取得します。

Alias=pg_usage:perf_counter[\Paging File(_Total)\% Usage]

これで、短縮キー pg_usage を使用してデータを取得できます。

例2: デフォルトおよびカスタムパラメータでCPU負荷を取得します。

Alias=cpu.load:system.cpu.load
Alias=cpu.load[*]:system.cpu.load[*]

これにより、cpu.load キーを使用してデフォルトパラメータでCPU負荷を取得できるほか、cpu.load[percpu,avg15] を使用してCPU負荷に関する特定のデータを取得することもできます。

例3: 同じディスカバリアイテムを処理する複数のローレベルディスカバリルールを実行します。

Alias=vfs.fs.discovery[*]:vfs.fs.discovery

これで、各ルールごとに異なるパラメータを指定して、vfs.fs.discovery を使用する複数のディスカバリルールを設定できるようになります。たとえば、vfs.fs.discovery[foo]vfs.fs.discovery[bar] などです。

AllowKey

パターンに一致するそれらのアイテムキーの実行を許可します。
キーのパターンはワイルドカード式であり、任意の文字を任意の数だけ一致させるための「*」文字をサポートします。
DenyKey と組み合わせて、複数のキー一致ルールを定義できます。
パラメータは、記述された順序に従って1つずつ処理されます。
参照: エージェントチェックの制限

BufferSend

N秒を超えてバッファ内にデータを保持しません。

デフォルト: 5
範囲: 1-3600

BufferSize

メモリバッファ内の値の最大数です。
バッファがいっぱいになると、エージェントは収集したすべてのデータをZabbixサーバーまたはプロキシに送信します。

デフォルト: 100
範囲: 2-65535

DebugLevel

デバッグレベルを指定します。
0 - Zabbix プロセスの起動と停止に関する基本情報
1 - 重要な情報
2 - エラー情報
3 - 警告
4 - デバッグ用(多くの情報を生成します)
5 - 拡張デバッグ(さらに多くの情報を生成します)

デフォルト: 3
範囲: 0-5

DenyKey

パターンに一致するアイテムキーの実行を拒否します。
キーのパターンはワイルドカード式であり、任意の文字を任意の数だけ一致させる "*" 文字をサポートします。
複数のキー一致ルールを、AllowKey と組み合わせて定義できます。
パラメータは、記述された順序に従って1つずつ処理されます。
参照: エージェントチェックの制限

EnableRemoteCommands

Zabbixサーバーからのリモートコマンドを許可するかどうかを指定します。
このパラメータは非推奨です。代わりに AllowKey=system.run[*] または DenyKey=system.run[*] を使用してください。
これは、値に応じて AllowKey/DenyKey パラメータの内部エイリアスとして機能します。
0 - DenyKey=system.run[*]
1 - AllowKey=system.run[*]

デフォルト: 0
値: 0 - 許可しない、1 - 許可する

HeartbeatFrequency

ハートビートメッセージの頻度(秒単位)です。
アクティブチェックの可用性の監視に使用されます。
0 - ハートビートメッセージは無効。

デフォルト: 60
範囲: 0-3600

HostInterface

ホストの自動登録プロセス中に使用されるホストインターフェース(IPアドレスまたはDNS名)を定義する任意のパラメータです。
この値は、新しく作成されたホストのインターフェースを設定するために使用され、IPアドレスまたはDNSアドレスのいずれかを明示的に設定できます。
詳細については、DNSをデフォルトインターフェースとして使用するを参照してください。

定義されていない場合、値は HostInterfaceItem から取得されます。

値が255文字の制限を超えると、エージェントはエラーを出力して起動しません。

範囲: 0~255文字

HostInterfaceItem

ホストの自動登録プロセス中に、ホストインターフェース(IPアドレスまたはDNS名)を決定するために使用されるアイテムを定義するオプションのパラメータです。
この値は、HostInterface が定義されていない場合にのみ使用されます。
詳細については、DNSをデフォルトインターフェースとして使用するを参照してください。

自動登録リクエスト中、指定されたアイテムによって返された値が255文字の制限を超える場合、エージェントは警告メッセージをログに記録します。

system.run[] アイテムは、AllowKey/DenyKey の設定に関係なくサポートされます。

HostMetadata

ホストの自動登録プロセス(アクティブエージェント)中に、ホストを識別または区別するために使用されるメタデータを定義する任意のパラメータです。
HostMetadata を使用すると、ホスト名以外の情報に基づいてホストを区別できます。

定義されていない場合、値は HostMetadataItem から取得されます。

指定した値が 2034 バイトの上限を超える場合、または UTF-8 ではない文字列である場合、エージェントはエラーを出力して起動しません。
パラメータが IP アドレスまたは DNS 名を想定している場合、有効な UTF-8 であっても、有効な IP または DNS 名ではない値も拒否され、無効として報告されます。

複数行のメタデータはサポートされていません。出力は最初の改行位置で切り詰められます。

範囲: 0-2034 バイト

HostMetadataItem

ホストメタデータ の取得に使用する Zabbix エージェントのアイテムを定義するオプションのパラメータです。 このオプションは、HostMetadata が定義されていない場合にのみ使用されます。

HostMetadataItem の値は、自動登録 の試行ごとに取得され、ホストの自動登録プロセス(アクティブエージェント)でのみ使用されます。 HostMetadataItem を使用すると、ホスト名以外の情報によってホストを区別できます。

ユーザーパラメータ、パフォーマンスカウンター、エイリアスがサポートされています。 system.run[] アイテムは、AllowKey/DenyKey の設定に関係なくサポートされます。

自動登録リクエスト中、指定されたアイテムが返す値が 65535 UTF-8 コードポイントの上限を超える場合、エージェントは警告メッセージをログに記録します。 アイテムが返す値は UTF-8 文字列である必要があり、そうでない場合は無視されます。 パラメータが IP アドレスまたは DNS 名を想定している場合、UTF-8 としては有効でも、有効な IP または DNS 名ではない値も拒否され、無効として報告されます。

複数行のメタデータはサポートされていません。出力は最初の改行位置で切り詰められます。

Hostname

カンマ区切りの、一意で大文字と小文字を区別するホスト名のリストです。
アクティブチェックに必須であり、サーバーで設定されたホスト名と一致している必要があります。
未定義の場合、値は HostnameItem から取得されます。
使用可能な文字: 英数字、'.'、' '、'_'、'-'。
最大長: ホスト名ごとに128文字、行全体で2048文字。

デフォルト: HostnameItem で設定されます

HostnameItem

ホスト名の取得に使用するZabbixエージェントのアイテムを定義する任意のパラメータです。
このオプションは、Hostname が定義されていない場合にのみ使用されます。
ユーザーパラメータ、パフォーマンスカウンター、またはエイリアスはサポートされませんが、system.run[] アイテムは AllowKey/DenyKey の値に関係なくサポートされます。
あわせて、より詳細な説明も参照してください。

デフォルト: system.hostname

Include

設定ファイルでは、個別のファイル、またはディレクトリ内のすべてのファイルをインクルードできます(Zabbix agent を Windows MSI インストーラーパッケージでインストールした場合、デフォルトでは C:\Program Files\Zabbix Agent にあります。zip アーカイブとして Zabbix agent をインストールした場合は、インストール時に指定したフォルダにあります)。 インクルードされるすべてのファイルは 構文が正しくなければならず、そうでない場合はエージェントは起動しません。
指定したディレクトリ内で必要なファイルのみをインクルードするために、パターンマッチング用のアスタリスク ワイルドカード文字を使用できます。
制限事項については、特記事項を参照してください。

例:

Include=C:\Program Files\Zabbix Agent\zabbix_agentd.d\*.conf
ListenBacklog

TCP キュー内の保留中の接続の最大数
デフォルト値はシステムに依存するハードコードされた定数です
サポートされる最大値はシステムに依存し、値が大きすぎる場合は'実装で指定された最大値'に自動的に切り捨てられる場合があります。

デフォルト: SOMAXCONN
範囲: 0 - INT_MAX

ListenIP

エージェントがリッスンするIPアドレスのカンマ区切りリスト

デフォルト: 0.0.0.0

ListenPort

エージェントは、サーバーからの接続をこのポートで待ち受けします。

デフォルト: 10050
範囲: 1024-32767

LogFile

エージェントログファイルの名前。

デフォルト: c:\zabbix_agentd.log
必須: LogType が file に設定されている場合ははい、それ以外の場合はいいえ

LogFileSize

ログファイルの最大サイズ(MB)
0 - 自動ログローテーションを無効にします。
: ログファイルのサイズ制限に達し、何らかの理由でファイルローテーションが失敗した場合、既存のログファイルは切り捨てられ、新たに開始されます。

デフォルト: 1
範囲: 0-1024

LogRemoteCommands

実行されたシェルコマンドのログ記録を警告として有効にします。
コマンドは、リモートで実行された場合にのみログに記録されます。
system.run[] が HostMetadataItem、HostInterfaceItem、または HostnameItem パラメータによってローカルで起動された場合、ログエントリは作成されません。

デフォルト: 0
値: 0 - 無効、1 - 有効

LogType

ログ出力の種類:
file - LogFile パラメータで指定されたファイルにログを書き込みます。
system - Windows イベントログにログを書き込みます。
console - 標準出力にログを書き込みます。

デフォルト: file

MaxLinesPerSecond

エージェントが 'log'、'logrt'、および 'eventlog' のアクティブチェックを処理する際に、1秒あたりにZabbixサーバーまたはプロキシへ送信する新しい行の最大数です。
指定した値は、'log'、'logrt'、または 'eventlog' アイテムキーで指定される 'maxlines' パラメータによって上書きされます。
: Zabbix は、ログアイテム内で必要な文字列を検索するために、MaxLinesPerSecond で設定された値の10倍の新しい行を処理します。

デフォルト: 20
範囲: 1-1000

PerfCounter

指定した期間 <period>(秒)におけるシステムパフォーマンスカウンター <perf_counter_path> の平均値となる新しいパラメータ <parameter_name> を定義します。
構文: <parameter_name>,"<perf_counter_path>",<period>

例えば、直近1分間の1秒あたりのプロセッサ割り込み回数の平均を取得したい場合は、次のように新しいパラメータ "interrupts" を定義できます。

PerfCounter = interrupts,"\Processor(0)\Interrupts/sec",60

パフォーマンスカウンターパスが二重引用符で囲まれていることに注意してください。
パラメータ名(interrupts)は、アイテムを作成する際のアイテムキーとして使用します。
平均値を計算するためのサンプルは1秒ごとに取得されます。
Windows で利用可能なすべてのパフォーマンスカウンターの一覧を取得するには、"typeperf -qx" を実行してください。

PerfCounterEn

指定した期間 <period>(秒)におけるシステムパフォーマンスカウンター <perf_counter_path> の平均値となる新しいパラメータ <parameter_name> を定義します。 PerfCounter と比較して、perfcounter パスは英語である必要があります。 Windows Server 2008/Vista 以降でのみサポートされています。
構文: <parameter_name>,"<perf_counter_path>",<period>

例えば、直近 1 分間の 1 秒あたりのプロセッサ割り込み数の平均を受信したい場合、次のように新しいパラメータ "interrupts" を定義できます。

PerfCounterEn = interrupts,"\Processor(0)\Interrupts/sec",60

パフォーマンスカウンターパスが二重引用符で囲まれていることに注意してください。 パラメータ名(interrupts)は、アイテムを作成する際にアイテムキーとして使用します。 平均値を計算するためのサンプルは 1 秒ごとに取得されます。
英語文字列の一覧は、次のレジストリキーを参照することで確認できます: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009

RefreshActiveChecks

アクティブチェックのリストを更新する間隔(秒単位)です。
アクティブチェックの更新に失敗した場合、次回の更新は60秒後に試行されることに注意してください。

デフォルト: 5
範囲: 1-86400

サーバー

ZabbixサーバーまたはZabbixプロキシの、カンマ区切りのIPアドレス一覧です。CIDR表記またはDNS名も指定できます。 受信接続は、ここに一覧表示されたホストからのみ受け付けられます。 IPv6サポートが有効な場合、'127.0.0.1'、'::127.0.0.1'、'::ffff:127.0.0.1' は同等に扱われ、'::/0' は任意のIPv4またはIPv6アドレスを許可します。 '0.0.0.0/0' を使用すると、任意のIPv4アドレスを許可できます。 なお、「IPv4互換IPv6アドレス」(0000::/96 プレフィックス)はサポートされていますが、RFC4291 により非推奨とされています。 スペースを含めることができます。

例:

Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com

必須: はい(StartAgents が明示的に 0 に設定されていない場合)

ServerActive

アクティブチェックの取得元となるZabbixサーバー/プロキシのアドレス、またはクラスタ設定です。
サーバー/プロキシのアドレスは、IPアドレスまたはDNS名と、必要に応じてコロンで区切られたポート番号です。
クラスタ設定は、セミコロンで区切られた1つ以上のサーバーまたはプロキシグループメンバーのアドレスです。
複数のZabbixサーバー/クラスタおよびZabbixプロキシを、カンマで区切って指定できます。
プロキシグループを使用する場合を除き、各Zabbixサーバー/クラスタごとに複数のZabbixプロキシを指定すべきではありません。
Zabbixプロキシを指定した場合、そのプロキシに対応するZabbixサーバー/クラスタは指定してはいけません。
複数のカンマ区切りアドレスを指定することで、複数の独立したZabbixサーバーを並行して使用できます。
スペースを含めることができます。
ポートが指定されていない場合は、デフォルトのポートが使用されます。
IPv6アドレスでそのホストのポートを指定する場合、アドレスは角括弧で囲む必要があります。
ポートを指定しない場合、IPv6アドレスの角括弧は省略可能です。
このパラメータが指定されていない場合、アクティブチェックは無効になります。

Zabbixプロキシの例:

ServerActive=127.0.0.1:10051

Zabbixプロキシグループの例:

ServerActive=proxy1.example.com;proxy2.example.com;proxy3.example.com;proxy4.example.com;proxy5.example.com

複数サーバーの例:

ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]

高可用性の例:

ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051;zabbix.cluster.node3

2つのクラスタと1つのサーバーを使用する高可用性の例:

ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051,zabbix.cluster2.node1;zabbix.cluster2.node2,zabbix.domain

範囲: (*)

SourceIP

以下の接続に使用する送信元IPアドレス:

  • ZabbixサーバーまたはZabbixプロキシへの送信接続。
  • 一部のアイテム(web.page.get、net.tcp.port など)の実行時に行う接続。
StartAgents

パッシブチェックを処理する、事前に fork された zabbix_agentd のインスタンス数です。
0 に設定すると、パッシブチェックは無効になり、エージェントはどの TCP ポートでも待ち受けを行いません。

デフォルト: 10
範囲: 0-100 (*)

Timeout

Zabbixプロキシまたはサーバーとの接続確立およびデータ交換を待機する時間(秒)を指定します。

このパラメータは、以下を含むさまざまな通信処理の継続時間を定義します。

  • Zabbixサーバーからの応答待機。
  • アクティブチェック におけるアイテム設定要求およびアイテムデータを含む、Zabbixサーバーへのリクエスト送信。
  • logfile または Windowsイベントログ監視によるログデータの取得。
  • ハートビートメッセージの送信。
  • vfs.* チェックの最大継続時間。
  • Zabbixエージェントモジュールでの使用。
  • バージョン7.0より前のサーバーまたはプロキシがタイムアウトなしでチェックを送信した場合のフォールバックとして使用。

このタイムアウトは、Webインターフェースでタイムアウト設定を構成できるエージェントチェック(グローバル、プロキシ、またはアイテム単位)には使用されません

デフォルト: 3
範囲: 1-30

TLSAccept

受け入れる受信接続を指定します。
パッシブチェックで使用されます。
複数の値をカンマ区切りで指定できます:
unencrypted - 暗号化なしの接続を受け入れます(デフォルト)
psk - TLSおよび事前共有鍵(PSK)を使用する接続を受け入れます
cert - TLSおよび証明書を使用する接続を受け入れます

必須: TLS証明書またはPSKパラメータが定義されている場合ははい(unencrypted 接続の場合も含む)。それ以外の場合はいいえ

TLSCAFile

Zabbix コンポーネント間の暗号化通信に使用される、ピア証明書検証用の最上位 CA 証明書を含むファイルのフルパス名

TLSCertFile

Zabbix コンポーネントとの暗号化通信に使用されるエージェント証明書または証明書チェーンを含むファイルのフルパス名

TLSConnect

エージェントがZabbixサーバーまたはプロキシにどのように接続するかを指定します。
アクティブチェックで使用されます。
指定できる値は1つだけです:
unencrypted - 暗号化なしで接続します(デフォルト)
psk - TLSおよび事前共有鍵(PSK)を使用して接続します
cert - TLSおよび証明書を使用して接続します

必須: TLS証明書またはPSKパラメータが定義されている場合は「はい」(unencrypted 接続の場合も含む)、それ以外の場合は「いいえ」

TLSCRLFile

失効した証明書を含むファイルの完全なパス名です。
このパラメータは、Zabbixコンポーネント間の暗号化通信に使用されます。

TLSKeyFile

Zabbix コンポーネント間の暗号化通信に使用されるエージェント秘密鍵を含むファイルのフルパス名

TLSPSKFile

Zabbix サーバーとの暗号化通信に使用されるエージェントの事前共有キーを含むファイルのフルパス名

TLSPSKIdentity

Zabbixサーバーとの暗号化通信に使用される、事前共有キーのID文字列

TLSServerCertIssuer

許可されたサーバー(プロキシ)証明書の発行者

TLSServerCertSubject

許可されたサーバー(プロキシ)証明書のサブジェクト

UnsafeUserParameters

ユーザー定義パラメータの引数で、すべての文字を渡せるようにします。
次の文字は許可されません: \ ' " ` * ? [ ] { } \~ $ ! & ; ( ) < > | # @
さらに、改行文字も許可されません。

デフォルト: 0
値: 0 - 許可しない、1 - 許可する

UserParameter

監視するユーザー定義パラメータです。
複数のユーザー定義パラメータを設定できます。
形式: UserParameter=<key>,<shell command>
シェルコマンドは空文字列またはEOLのみを返してはならないことに注意してください。
UserParameterDir パラメータが指定されている場合、シェルコマンドでは相対パスを使用できます。

例:

UserParameter=system.test,dir /b | find /c /v ""
UserParameter=check_cpu,.\custom\_script.bat
UserParameterDir

UserParameter コマンドのデフォルトの検索パスです。
使用すると、エージェントはコマンドを実行する前に、作業ディレクトリをここで指定されたものに変更します。
これにより、UserParameter コマンドではフルパスの代わりに相対的な ./ プレフィックスを使用できます。
指定できるエントリは 1 つだけです。

例:

UserParameterDir=C:\opt\myscripts

(*) ServerActive にリストされたアクティブサーバーの数と、StartAgents で指定されたパッシブチェック用の事前 fork インスタンス数の合計は、64 未満でなければなりません。