MongoDB-Plugin

Übersicht

Konfigurationsparameter ermöglichen die Anpassung des Verhaltens des MongoDB-Plugins.

Es wird empfohlen, sie in einer eigenen Konfigurationsdatei (z. B. mongodb.conf) anzugeben, statt in der Konfigurationsdatei von Agent 2. Verwenden Sie dann die Direktive Include, um diese Datei in die Konfiguration von Zabbix Agent 2 einzubinden.

Das MongoDB-Plugin ist ein ladbares Plugin und ist im MongoDB-Plugin-Repository verfügbar und vollständig beschrieben.

Alle Parameter sind optional, sofern nicht ausdrücklich angegeben ist, dass der Parameter obligatorisch ist.

Beim Verbinden mit MongoDB prüft das Plugin seine Konfiguration in einer bestimmten Reihenfolge, die bestimmt, welcher Wert verwendet wird. Die Reihenfolge von der höchsten zur niedrigsten Priorität lautet:

  1. Parameter, die in der Verbindungs-URI angegeben sind (z. B. haben Abfrageparameter, die nach ? in Plugins.MongoDB.Sessions.<session_name>.Uri definiert sind, die höchste Priorität).
  2. Parameter im Zabbix Agent 2 Item-Schlüssel (z. B. mongodb.collection.stats).
  3. Parameter, die in einer benannten Sitzung definiert sind (z. B. Plugins.MongoDB.Sessions.<SessionName>.User, Plugins.MongoDB.Sessions.<SessionName>.Password).
  4. Standardwerte (z. B. Plugins.MongoDB.Default.User, Plugins.MongoDB.Default.Password).

Zum Beispiel:

  • Wenn Sie die Datenbank für die Authentifizierung einer Verbindung zum MongoDB-Server im Parameter *.<SessionName>.Uri angeben (z. B. Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://user:[email protected]:27017/?authSource=admin), dann betrachtet das Plugin den Parameter *.<SessionName>.AuthSource als auf admin gesetzt, selbst wenn der Parameter *.<SessionName>.AuthSource auf einen anderen Wert gesetzt ist.
  • Wenn Sie die URI im Parameter *.<SessionName>.Uri angeben (z. B. Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://127.0.0.1:27017), aber Benutzername und Passwort im Zabbix Agent 2 Item-Schlüssel angeben, verwendet das Plugin den Benutzernamen und das Passwort aus dem Item-Schlüssel, selbst wenn Plugins.MongoDB.Sessions.<SessionName>.User und Plugins.MongoDB.Sessions.<SessionName>.Password konfiguriert sind.

Wenn das Schema mongodb+srv:// verwendet wird, kann die URI Parameter aus einem DNS-TXT-Record abrufen. Parameter, die aus diesem TXT-Record gewonnen werden, überschreiben alle anderen Konfigurationen, einschließlich URI-Parametern, Parametern des Zabbix Agent 2 Item-Schlüssels und Sitzungsparametern.
Für den im Verbindungsstring verwendeten Hostnamen darf nur ein TXT-Record vorhanden sein.

Diese Seite ist wie folgt aufgebaut:

  • Parameterübersicht (um die vollständigen Details eines Parameters anzuzeigen, klicken Sie auf seinen Namen)
  • Parameterdetails
Parameter Beschreibung
Plugins.MongoDB.Default.AuthMechanism Geben Sie den standardmäßigen Authentifizierungsmechanismus für die Verbindung zum MongoDB-Server an.
Plugins.MongoDB.Default.AuthSource Geben Sie die standardmäßige Datenbank für die Authentifizierung der Verbindung zum MongoDB-Server an.
Plugins.MongoDB.Default.Direct Deaktivieren Sie die automatische Erkennung von MongoDB-Replikatsatz-Knoten.
Plugins.MongoDB.Default.Password Geben Sie das standardmäßige Passwort an.
Plugins.MongoDB.Default.ReplicaSet Geben Sie den standardmäßigen Namen des Replikatsatzes an, der für die automatische Erkennung von MongoDB-Replikatsatz-Knoten verwendet wird.
Plugins.MongoDB.Default.ReadPreference Geben Sie die standardmäßige Reihenfolge für die Verbindung zu MongoDB-Replikatsatz-Knoten oder als Fallback an.
Plugins.MongoDB.Default.TLSConnect Geben Sie den Verschlüsselungsgrad an, der für die Kommunikation zwischen Zabbix Agent 2 und den überwachten Datenbanken erforderlich ist.
Plugins.MongoDB.Default.TLSCAFile Geben Sie den vollständigen Pfad der Datei an, die die Zertifikate der obersten CA(s) für die Überprüfung des Peer-Zertifikats enthält.
Plugins.MongoDB.Default.TLSCertFile Geben Sie den vollständigen Pfad der Datei an, die das Agent-Zertifikat oder die Zertifikatskette enthält.
Plugins.MongoDB.Default.TLSKeyFile Geben Sie den vollständigen Pfad der Datei an, die den privaten Schlüssel der Datenbank enthält.
Plugins.MongoDB.Default.Uri Geben Sie die standardmäßige URI an.
Plugins.MongoDB.Default.User Geben Sie den standardmäßigen Benutzernamen an.
Plugins.MongoDB.KeepAlive Legen Sie die maximale Wartezeit fest, bevor ungenutzte Plugin-Verbindungen geschlossen werden.
Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism Geben Sie den Authentifizierungsmechanismus der benannten Sitzung für die Verbindung zum MongoDB-Server an.
Plugins.MongoDB.Sessions.<SessionName>.AuthSource Geben Sie die Datenbank der benannten Sitzung für die Authentifizierung der Verbindung zum MongoDB-Server an.
Plugins.MongoDB.Sessions.<SessionName>.Direct Deaktivieren Sie die automatische Erkennung von MongoDB-Replikatsatz-Knoten für die benannte Sitzung.
Plugins.MongoDB.Sessions.<SessionName>.Password Geben Sie das Passwort der benannten Sitzung an.
Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet Geben Sie den Namen des Replikatsatzes der benannten Sitzung an, der für die automatische Erkennung von MongoDB-Replikatsatz-Knoten verwendet wird.
Plugins.MongoDB.Sessions.<SessionName>.ReadPreference Geben Sie die Reihenfolge der benannten Sitzung für die Verbindung zu MongoDB-Replikatsatz-Knoten oder als Fallback an.
Plugins.MongoDB.Sessions.<SessionName>.TLSConnect Geben Sie den Verschlüsselungsgrad an, der für die Kommunikation zwischen Zabbix Agent 2 und den überwachten Datenbanken für die benannte Sitzung erforderlich ist.
Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile Geben Sie den vollständigen Pfad der Datei an, die die Zertifikate der obersten CA(s) für die Überprüfung des Peer-Zertifikats für die benannte Sitzung enthält.
Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile Geben Sie den vollständigen Pfad der Datei an, die das Agent-Zertifikat oder die Zertifikatskette für die benannte Sitzung enthält.
Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile Geben Sie den vollständigen Pfad der Datei an, die den privaten Schlüssel der Datenbank für die benannte Sitzung enthält.
Plugins.MongoDB.Sessions.<SessionName>.Uri Geben Sie die URI der benannten Sitzung an.
Plugins.MongoDB.Sessions.<SessionName>.User Geben Sie den Benutzernamen der benannten Sitzung an.
Plugins.MongoDB.System.Path Geben Sie den Pfad zur ausführbaren Datei des Plugins an.
Plugins.MongoDB.Timeout Legen Sie das Zeitlimit für die Ausführung von Anfragen fest.

Beachten Sie:

  • Die Standardwerte spiegeln die Prozess-Standardwerte wider, nicht die Werte in den mitgelieferten Konfigurationsdateien.
  • Werte unterstützen Umgebungsvariablen.
  • Zabbix unterstützt Konfigurationsdateien nur in UTF-8-Kodierung ohne BOM.
  • Kommentare, die mit "#" beginnen, werden nur am Zeilenanfang unterstützt.

Parameterdetails

Plugins.MongoDB.Default.AuthMechanism

Geben Sie den standardmäßigen Authentifizierungsmechanismus für die Verbindung mit dem MongoDB-Server an.
<SessionName> - Name einer Sitzung festlegen, die in Datenpunkt-Schlüsseln verwendet wird.

Bereich: SCRAM-SHA-1, SCRAM-SHA-256 oder MONGODB-X509

Plugins.MongoDB.Default.AuthSource

Geben Sie die Standarddatenbank für die Authentifizierung der Verbindung zum MongoDB-Server an.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunktschlüsseln.

Standard: admin

Wenn der Authentifizierungsmechanismus MONGODB-X509 verwendet wird, wird dieser Parameter automatisch auf $external gesetzt; eine Änderung auf einen anderen Wert führt beim Start zu einem Fehler.

Plugins.MongoDB.Default.Direct

Deaktiviert die automatische Erkennung von MongoDB-Replica-Set-Knoten.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.

Standard: false
Bereich: true - nur mit dem angegebenen Server verbinden und andere Mitglieder des Replica Sets ignorieren, false - alle Knoten im Replica Set automatisch erkennen.

Wenn das Schema tcp:// (veraltet) verwendet wird, wird der Parameter standardmäßig auf true gesetzt.

Plugins.MongoDB.Default.Password

Geben Sie das Standardpasswort an.
<SessionName> - Namen einer Sitzung zur Verwendung in Datenpunktschlüsseln festlegen.

Plugins.MongoDB.Default.ReplicaSet

Geben Sie den Standardnamen des Replica Sets an, der für die automatische Erkennung von MongoDB-Replica-Set-Knoten verwendet wird.
<SessionName> - Name einer Sitzung definieren, die in Datenpunkt-Schlüsseln verwendet wird.
Wenn dieser Parameter mit dem Schema mongodb+srv:// verwendet wird, verhält er sich so, als wären mehrere URLs angegeben worden; ein DNS-Server kann einen TXT-Eintrag haben, der diesen (oder einen anderen) Parameter überschreibt.
Nicht verfügbar, wenn der Parameter Plugins.MongoDB.Sessions.<SessionName>.Direct auf true gesetzt ist; der Agent kann dann nicht gestartet werden.

Plugins.MongoDB.Default.ReadPreference

Geben Sie die Standardreihenfolge für die Verbindung mit MongoDB-Replica-Set-Knoten oder als Fallback an.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.
Nicht verfügbar, wenn der Parameter Plugins.MongoDB.Sessions.<SessionName>.Direct auf true gesetzt ist; der Agent kann dann nicht gestartet werden.

Bereich: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode oder NearestMode

Plugins.MongoDB.Default.TLSConnect

Geben Sie den für die Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken erforderlichen Verschlüsselungsgrad an.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunktschlüsseln.
Unterstützt seit Plugin-Version 1.2.1.

Bereich: required - TLS-Verbindung erforderlich, verify_ca - Zertifikate überprüfen, verify_full - Zertifikate und IP-Adresse überprüfen

Plugins.MongoDB.Default.TLSCAFile

Geben Sie den vollständigen Pfadnamen der Datei an, die die Zertifikate der obersten CA(s) für die Überprüfung des Peer-Zertifikats enthält und für verschlüsselte Verbindungen zwischen Zabbix Agent 2 und den überwachten Datenbanken verwendet wird.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunktschlüsseln.

Pflicht: yes, wenn Plugins.MongoDB.Sessions.<SessionName>.TLSConnect auf verify_ca oder verify_full gesetzt ist

Plugins.MongoDB.Default.TLSCertFile

Geben Sie den vollständigen Pfadnamen der Datei an, die das Agent-Zertifikat oder die Zertifikatskette enthält und für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken verwendet wird.
<SessionName> - Name einer Sitzung für die Verwendung in Datenpunkt-Schlüsseln definieren.

Pflicht: yes, wenn Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile angegeben ist

Plugins.MongoDB.Default.TLSKeyFile

Geben Sie den vollständigen Pfadnamen der Datei an, die den privaten Schlüssel der Datenbank enthält und für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken verwendet wird.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.

Erforderlich: yes, wenn Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile angegeben ist

Plugins.MongoDB.Default.Uri

Geben Sie die Standard-URI an.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.
Muss dem URI-Format entsprechen.
Unterstützte Schemas: mongodb:// und mongodb+srv://; das Schema tcp:// ist veraltet und wird aus Gründen der Abwärtskompatibilität mit vorhandenen Konfigurationen beibehalten.
Ein Port kann weggelassen werden (Standard=27017).
Beispiele: ``

Standard: tcp://127.0.0.1:27017

Beispiele:

mongodb://127.0.0.1:27017
mongodb+srv://example.com
localhost
Plugins.MongoDB.Default.User

Geben Sie den Standardbenutzernamen an.
<SessionName> - Namen einer Sitzung für die Verwendung in Datenpunktschlüsseln definieren.

Plugins.MongoDB.KeepAlive

Legt die maximale Wartezeit (in Sekunden) fest, bevor ungenutzte Plugin-Verbindungen geschlossen werden.

Standard: 300
Bereich: 60-900

Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism

Geben Sie den benannten Sitzungs-Authentifizierungsmechanismus für die Verbindung zum MongoDB-Server an.
<SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird.

Bereich: SCRAM-SHA-1, SCRAM-SHA-256 oder MONGODB-X509

Plugins.MongoDB.Sessions.<SessionName>.AuthSource

Geben Sie die benannte Sitzungsdatenbank für die Authentifizierung der Verbindung zum MongoDB-Server an.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunktschlüsseln.

Standard: admin

Wenn der Authentifizierungsmechanismus MONGODB-X509 verwendet wird, wird dieser Parameter automatisch auf $external gesetzt; eine Änderung auf einen anderen Wert führt beim Start zu einem Fehler.

Plugins.MongoDB.Sessions.<SessionName>.Direct

Deaktiviert die automatische Erkennung von MongoDB-Replica-Set-Knoten für die benannte Sitzung.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.

Standard: false
Bereich: true - nur mit dem angegebenen Server verbinden und andere Mitglieder des Replica Sets ignorieren, false - alle Knoten im Replica Set automatisch erkennen.

Wenn das Schema tcp:// (veraltet) verwendet wird, wird der Parameter standardmäßig auf true gesetzt.

Plugins.MongoDB.Sessions.<SessionName>.Password

Geben Sie das Passwort der benannten Sitzung an.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunktschlüsseln.

Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet

Geben Sie den Namen des Replica Sets der benannten Sitzung an, der für die automatische Erkennung von MongoDB-Replica-Set-Knoten verwendet wird.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.
Wenn dieser Parameter mit dem Schema mongodb+srv:// verwendet wird, verhält er sich so, als wären mehrere URLs angegeben worden; ein DNS-Server kann einen TXT-Eintrag haben, der diesen Parameter (oder einen anderen) überschreiben kann.
Nicht verfügbar, wenn der Parameter Plugins.MongoDB.Sessions.<SessionName>.Direct auf true gesetzt ist; der Agent wird dann nicht gestartet.

Plugins.MongoDB.Sessions.<SessionName>.ReadPreference

Geben Sie die Reihenfolge der benannten Sitzung an, um eine Verbindung zu MongoDB-Replica-Set-Knoten herzustellen oder auf eine Ausweichverbindung zurückzugreifen.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.
Nicht verfügbar, wenn der Parameter Plugins.MongoDB.Sessions.<SessionName>.Direct auf true gesetzt ist; der Agent kann dann nicht gestartet werden.

Bereich: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode oder NearestMode

Plugins.MongoDB.Sessions.<SessionName>.TLSConnect

Geben Sie das erforderliche Verschlüsselungsniveau für die Kommunikation zwischen Zabbix Agent 2 und den überwachten Datenbanken für die benannte Sitzung an.
<SessionName> - legt den Namen einer Sitzung fest, der in Datenpunkt-Schlüsseln verwendet wird.
Unterstützt seit Plugin-Version 1.2.1.

Bereich: required - TLS-Verbindung erforderlich, verify_ca - Zertifikate überprüfen, verify_full - Zertifikate und IP-Adresse überprüfen

Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile

Geben Sie den vollständigen Pfadnamen der Datei an, die die Zertifikate der obersten CA(s) für die Überprüfung des Peer-Zertifikats enthält und für verschlüsselte Verbindungen zwischen Zabbix Agent 2 und den überwachten Datenbanken für die benannte Sitzung verwendet wird.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunktschlüsseln.

Pflicht: yes, wenn Plugins.MongoDB.Sessions.<SessionName>.TLSConnect auf verify_ca oder verify_full gesetzt ist

Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile

Geben Sie den vollständigen Pfadnamen der Datei an, die das Agent-Zertifikat oder die Zertifikatskette enthält und für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und den überwachten Datenbanken für die benannte Sitzung verwendet wird.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.

Erforderlich: yes, wenn Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile angegeben ist

Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile

Geben Sie den vollständigen Pfadnamen der Datei an, die den privaten Schlüssel der Datenbank enthält und für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken für die benannte Sitzung verwendet wird.
<SessionName> - definiert den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.

Pflicht: yes, wenn Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile angegeben ist

Plugins.MongoDB.Sessions.<SessionName>.Uri

Geben Sie die URI der benannten Sitzung an.
<SessionName> - Name einer Sitzung für die Verwendung in Datenpunkt-Schlüsseln definieren.
Muss dem URI-Format entsprechen.
Unterstützte Schemas: mongodb:// und mongodb+srv://; das Schema tcp:// ist veraltet und wird aus Gründen der Abwärtskompatibilität mit vorhandenen Konfigurationen beibehalten.
Ein Port kann weggelassen werden (Standard=27017).
Beispiele: ``

Standard: tcp://127.0.0.1:27017

Beispiele:

mongodb://127.0.0.1:27017
mongodb+srv://example.com
localhost
Plugins.MongoDB.Sessions.<SessionName>.User

Geben Sie den Benutzernamen der benannten Sitzung an.
<SessionName> - Definieren Sie den Namen einer Sitzung zur Verwendung in Datenpunkt-Schlüsseln.

Plugins.MongoDB.System.Path

Geben Sie den Pfad zur ausführbaren Datei des MongoDB-Plugins an.

Beispielverwendung: Plugins.MongoDB.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-mongodb

Plugins.MongoDB.Timeout

Legt das Timeout für die Ausführung von Anfragen fest (die Dauer in Sekunden, die auf den Abschluss einer Anfrage gewartet wird, bevor sie beendet wird).

Standard: global timeout
Bereich: 1-30

Optionen

Parameter Beschreibung
-V --version Gibt die Plugin-Version und Lizenzinformationen aus.
-h --help Gibt Hilfsinformationen aus (Kurzform).
-t, --test <item key> Startet das Plugin zum Testen (Plugin-Konfiguration wird ignoriert).

Siehe auch