このページで
6 MongoDBプラグイン
概要
Zabbixエージェント 2 の設定ファイルは、プラグインを設定するために使用されます。MongoDBプラグインの動作では、これらの Zabbixエージェント 2 設定パラメータがサポートされています。
これらは専用の設定ファイル(例: mongo.conf)に指定し、その後 Include ディレクティブを使用して、このファイルを Zabbixエージェント 2 の設定に追加することを推奨します。
MongoDBプラグインはロード可能なプラグインであり、MongoDB plugin repository で利用でき、完全に説明されています。
注意:
- デフォルト値は、配布される設定ファイル内の値ではなく、プロセスのデフォルト値を反映しています。
- 値では environment variables をサポートしています。
- Zabbix は、BOM なしの UTF-8 エンコーディングの設定ファイルのみをサポートしています。
- "#" で始まるコメントは、行頭でのみサポートされています。
オプション
| Parameter | Description |
|---|---|
| -V --version | プラグインのバージョンおよびライセンス情報を表示します。 |
| -h --help | ヘルプ情報を表示します(短縮形)。 |
| -t, --test <item key> | テスト用にプラグインを起動します(プラグイン設定は無視されます)。 |
パラメータ
MongoDB への接続時、プラグインは特定の順序で設定を確認し、どの値を使用するかを決定します。 優先順位の高いものから低いものへの順序は次のとおりです。
- 接続 URI で指定されたパラメータ(例:
Plugins.MongoDB.Sessions.<session_name>.Uriの?以降で定義されたクエリパラメータが最も高い優先順位を持ちます)。 - Zabbix agent 2 のアイテムキー内のパラメータ(例: mongodb.collection.stats)。
- 名前付きセッションで定義されたパラメータ(例:
Plugins.MongoDB.Sessions.<SessionName>.User、Plugins.MongoDB.Sessions.<SessionName>.Password)。 - デフォルト値(例:
Plugins.MongoDB.Default.User、Plugins.MongoDB.Default.Password)。
例:
- MongoDB サーバーへの接続認証に使用するデータベースを
*.<SessionName>.Uriパラメータで指定した場合(例:Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://user:[email protected]:27017/?authSource=admin)、*.<SessionName>.AuthSourceパラメータに別の値が設定されていても、プラグインは*.<SessionName>.AuthSourceパラメータがadminに設定されているものとして扱います。 *.<SessionName>.Uriパラメータで URI を指定し(例:Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://127.0.0.1:27017)、ユーザー名とパスワードを Zabbix agent 2 のアイテムキーで指定した場合、Plugins.MongoDB.Sessions.<SessionName>.UserおよびPlugins.MongoDB.Sessions.<SessionName>.Passwordが設定されていても、プラグインはアイテムキーのユーザー名とパスワードを使用します。
mongodb+srv:// スキームを使用する場合、URI は DNS TXT レコードからパラメータを取得することがあります。
この TXT レコードから取得されたパラメータは、URI パラメータ、Zabbix Agent 2 のアイテムキーパラメータ、セッションパラメータを含む、他のすべての設定を上書きします。
接続文字列で使用されるホスト名には、TXT レコードを 1 つだけ設定できます。
| Parameter | Mandatory | Range | Default | Description |
|---|---|---|---|---|
| Plugins.MongoDB.System.Path | no | MongoDB プラグイン実行ファイルへのパス。 使用例: Plugins.MongoDB.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-mongodb |
||
| Plugins.MongoDB.Timeout | no | 1-30 | global timeout | リクエスト実行タイムアウト(リクエストが完了するまで待機してから停止するまでの時間、秒単位)。 |
| Plugins.MongoDB.KeepAlive | no | 60-900 | 300 | 未使用のプラグイン接続が閉じられるまでの最大待機時間(秒)。 |
| Plugins.MongoDB.Sessions.<SessionName>.Uri | no | tcp://127.0.0.1:27017 |
名前付きセッションの接続文字列。 <SessionName> - アイテムキーで使用するセッション名を定義します。 URI 形式に一致している必要があります。 サポートされるスキーム: mongodb:// および mongodb+srv://。tcp:// スキームは非推奨ですが、既存設定との後方互換性のために維持されています。ポートは省略できます(default=27017)。 例: mongodb://127.0.0.1:27017、mongodb+srv://example.com、localhost。 |
|
| Plugins.MongoDB.Sessions.<SessionName>.User | no | 名前付きセッションのユーザー名。 <SessionName> - アイテムキーで使用するセッション名を定義します。 |
||
| Plugins.MongoDB.Sessions.<SessionName>.Password | no | 名前付きセッションのパスワード。 <SessionName> - アイテムキーで使用するセッション名を定義します。 |
||
| Plugins.MongoDB.Sessions.<SessionName>.Direct | no | false |
MongoDB レプリカセットノードの自動検出を有効または無効にするかを決定するための接続方法。 <SessionName> - アイテムキーで使用するセッション名を定義します。 サポートされる値: true - プラグインは指定されたサーバーにのみ接続し、レプリカセットの他のメンバーは無視します。false - プラグインはレプリカセット内のすべてのノードを自動検出します。tcp://(非推奨)スキームを使用する場合、このパラメータはデフォルトで true に設定されます。 |
|
| Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism | no | MongoDB サーバーへ接続するための認証メカニズム。 <SessionName> - アイテムキーで使用するセッション名を定義します。 サポートされる値: SCRAM-SHA-1、SCRAM-SHA-256、MONGODB-X509。 |
||
| Plugins.MongoDB.Sessions.<SessionName>.AuthSource | no | admin |
MongoDB サーバーへの接続認証に使用するデータベース。 <SessionName> - アイテムキーで使用するセッション名を定義します。 MONGODB-X509 認証メカニズムを使用する場合、このパラメータは自動的に $external に設定されます。これを他の値に変更すると、起動時にエラーが発生します。 |
|
| Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet | no | レプリカセット名。MongoDB レプリカセットノードの自動検出に使用されます。 <SessionName> - アイテムキーで使用するセッション名を定義します。 このパラメータを mongodb+srv:// スキームとともに使用すると、複数の URL が指定された場合と同様に動作します。DNS サーバーに、このパラメータ(または他の任意のパラメータ)を上書きできる TXT レコードが存在する場合があります。Plugins.MongoDB.Sessions.<SessionName>.Direct パラメータが true に設定されている場合は使用できず、エージェントは起動に失敗します。 |
||
| Plugins.MongoDB.Sessions.<SessionName>.ReadPreference | no | MongoDB レプリカセットノードへの接続順序、またはフォールバック時の順序。 <SessionName> - アイテムキーで使用するセッション名を定義します。 サポートされる値: PrimaryMode、PrimaryPreferredMode、SecondaryMode、SecondaryPreferredMode、NearestMode。Plugins.MongoDB.Sessions.<SessionName>.Direct パラメータが true に設定されている場合は使用できず、エージェントは起動に失敗します。 |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSConnect | no | Zabbix agent 2 と監視対象データベース間の通信に使用する暗号化タイプ。 <SessionName> - アイテムキーで使用するセッション名を定義します。 サポートされる値: required - TLS 接続を必須にします。verify\_ca - 証明書を検証します。verify\_full - 証明書と IP アドレスを検証します。プラグインバージョン 1.2.1 以降でサポートされています。 |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSConnect is set to one of: verify_ca, verify_full | ピア証明書検証用の最上位 CA 証明書を含むファイルのフルパス。Zabbix agent 2 と監視対象データベース間の暗号化通信に使用されます。 <SessionName> - アイテムキーで使用するセッション名を定義します。 |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile is specified | エージェント証明書または証明書チェーンを含むファイルのフルパス。Zabbix agent 2 と監視対象データベース間の暗号化通信に使用されます。 <SessionName> - アイテムキーで使用するセッション名を定義します。 |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile is specified | Zabbix agent 2 と監視対象データベース間の暗号化通信に使用される、データベース秘密鍵を含むファイルのフルパス。 <SessionName> - アイテムキーで使用するセッション名を定義します。 |
||
| Plugins.MongoDB.Default.Uri | no | tcp://127.0.0.1:27017 |
MongoDB へ接続するためのデフォルト URI。 URI 形式に一致している必要があります。 サポートされるスキーム: mongodb:// および mongodb+srv://。非推奨スキーム: tcp://(既存設定との後方互換性のため、デフォルトとして使用されます)。ポートは省略できます(default=27017)。 例: mongodb://127.0.0.1:27017、mongodb+srv://example.com、localhost。 |
|
| Plugins.MongoDB.Default.User | no | MongoDB へ接続するためのデフォルトユーザー名。 | ||
| Plugins.MongoDB.Default.Password | no | MongoDB へ接続するためのデフォルトパスワード。 | ||
| Plugins.MongoDB.Default.Direct | no | false |
MongoDB レプリカセットノードの自動検出を有効または無効にするかを決定するためのデフォルト接続方法。 サポートされる値: true - プラグインは指定されたサーバーにのみ接続し、レプリカセットの他のメンバーは無視します。false - プラグインはレプリカセット内のすべてのノードを自動検出します。tcp://(非推奨)スキームを使用する場合、このパラメータはデフォルトで true に設定されます。 |
|
| Plugins.MongoDB.Default.AuthMechanism | no | MongoDB サーバーへ接続するためのデフォルト認証メカニズム。 サポートされる値: SCRAM-SHA-1、SCRAM-SHA-256、MONGODB-X509。ここ、アイテムキー、名前付きセッション、URI のいずれにも値が指定されていない場合は、SCRAM ベースのメカニズムが使用されます(ユーザー名が指定されている場合。それ以外の場合は認証は使用されません)。 |
||
| Plugins.MongoDB.Default.AuthSource | no | admin |
MongoDB サーバーへの接続認証に使用するデフォルトデータベース。MONGODB-X509 認証メカニズムを使用する場合、このパラメータは自動的に $external に設定されます。これを他の値に変更すると、起動時にエラーが発生します。 |
|
| Plugins.MongoDB.Default.ReplicaSet | no | デフォルトのレプリカセット名。MongoDB レプリカセットノードの自動検出に使用されます。 このパラメータを mongodb+srv:// スキームとともに使用すると、複数の URL が指定された場合と同様に動作します。DNS サーバーに、このパラメータ(または他の任意のパラメータ)を上書きできる TXT レコードが存在する場合があります。Plugins.MongoDB.Default.Direct パラメータが true に設定されている場合は使用できず、エージェントは起動に失敗します。 |
||
| Plugins.MongoDB.Default.ReadPreference | no | MongoDB レプリカセットノードへの接続順序、またはフォールバック時のデフォルト順序。 サポートされる値: PrimaryMode、PrimaryPreferredMode、SecondaryMode、SecondaryPreferredMode、NearestMode。Plugins.MongoDB.Default.Direct パラメータが true に設定されている場合は使用できず、エージェントは起動に失敗します。 |
||
| Plugins.MongoDB.Default.TLSConnect | no | Zabbix agent 2 と監視対象データベース間の通信に使用するデフォルト暗号化タイプ。 サポートされる値: required - TLS 接続を必須にします。verify\_ca - 証明書を検証します。verify\_full - 証明書と IP アドレスを検証します。ここ、アイテムキー、名前付きセッション、URI のいずれにも値が指定されていない場合、TLS 接続は確立されません。 |
||
| Plugins.MongoDB.Default.TLSCAFile | no | ピア証明書検証用の最上位 CA 証明書を含むファイルのデフォルトパス。Zabbix agent 2 と監視対象データベース間の暗号化通信に使用されます。 | ||
| Plugins.MongoDB.Default.TLSCertFile | no | MongoDB クライアント証明書または証明書チェーンを含むファイルのデフォルトパス。Zabbix agent 2 と監視対象データベース間の暗号化通信に使用されます。 | ||
| Plugins.MongoDB.Default.TLSKeyFile | no | Zabbix agent 2 と監視対象データベース間の暗号化通信に使用される、MongoDB クライアント秘密鍵を含むファイルのデフォルトパス。 |
関連情報:
- 一般的な Zabbix agent 2 設定パラメータの説明: Zabbix agent 2 (UNIX) / Zabbix agent 2 (Windows)
- plugins の設定手順