6 MongoDB-Plugin
Übersicht
Die Konfigurationsdatei von Zabbix Agent 2 wird zum Konfigurieren von Plugins verwendet. Diese Konfigurationsparameter von Zabbix Agent 2 werden für den Betrieb des MongoDB-Plugins unterstützt.
Es wird empfohlen, sie in einer eigenen Konfigurationsdatei (z. B. mongo.conf) anzugeben und dann die Direktive Include zu verwenden, um diese Datei zur Konfiguration von Zabbix Agent 2 hinzuzufügen.
Das MongoDB-Plugin ist ein ladbares Plugin und ist im MongoDB-Plugin-Repository verfügbar und vollständig beschrieben.
Beachten Sie:
- Die Standardwerte spiegeln Prozess-Standardeinstellungen 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.
Optionen
| Parameter | Beschreibung |
|---|---|
| -V --version | Gibt die Plugin-Version und Lizenzinformationen aus. |
| -h --help | Gibt Hilfeinformationen aus (Kurzform). |
| -t, --test <item key> | Startet das Plugin zum Testen (Plugin-Konfiguration wird ignoriert). |
Parameter
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:
- Parameter, die in der Verbindungs-URI angegeben sind (z. B. haben Abfrageparameter, die nach
?inPlugins.MongoDB.Sessions.<session_name>.Uridefiniert sind, die höchste Priorität). - Parameter im Zabbix Agent 2 Datenpunkt-Schlüssel (z. B. mongodb.collection.stats).
- Parameter, die in einer benannten Sitzung definiert sind (z. B.
Plugins.MongoDB.Sessions.<SessionName>.User,Plugins.MongoDB.Sessions.<SessionName>.Password). - Standardwerte (z. B.
Plugins.MongoDB.Default.User,Plugins.MongoDB.Default.Password).
Beispiel:
- Wenn Sie die Datenbank für die Authentifizierung einer Verbindung zum MongoDB-Server im Parameter
*.<SessionName>.Uriangeben (z. B.Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://user:[email protected]:27017/?authSource=admin), dann betrachtet das Plugin den Parameter*.<SessionName>.AuthSourceals aufadmingesetzt, auch wenn der Parameter*.<SessionName>.AuthSourceeinen anderen Wert hat. - Wenn Sie die URI im Parameter
*.<SessionName>.Uriangeben (z. B.Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://127.0.0.1:27017), aber Benutzername und Passwort im Zabbix Agent 2 Datenpunkt-Schlüssel bereitstellen, verwendet das Plugin den Benutzernamen und das Passwort aus dem Datenpunkt-Schlüssel, auch wennPlugins.MongoDB.Sessions.<SessionName>.UserundPlugins.MongoDB.Sessions.<SessionName>.Passwordkonfiguriert sind.
Wenn das Schema mongodb+srv:// verwendet wird, kann die URI Parameter aus einem DNS-TXT-Eintrag abrufen.
Parameter, die aus diesem TXT-Eintrag stammen, überschreiben alle anderen Konfigurationen, einschließlich URI-Parametern, Zabbix Agent 2 Datenpunkt-Schlüssel-Parametern und Sitzungsparametern.
Für den im Verbindungsstring verwendeten Hostnamen darf nur ein TXT-Eintrag vorhanden sein.
| Parameter | Mandatory | Range | Default | Description |
|---|---|---|---|---|
| Plugins.MongoDB.System.Path | no | Pfad zur ausführbaren Datei des MongoDB-Plugins. Beispielverwendung: Plugins.MongoDB.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-mongodb |
||
| Plugins.MongoDB.Timeout | no | 1-30 | global timeout | Zeitlimit für die Ausführung einer Anfrage (die Dauer in Sekunden, die auf den Abschluss einer Anfrage gewartet wird, bevor sie beendet wird). |
| Plugins.MongoDB.KeepAlive | no | 60-900 | 300 | Maximale Wartezeit in Sekunden, bevor ungenutzte Plugin-Verbindungen geschlossen werden. |
| Plugins.MongoDB.Sessions.<SessionName>.Uri | no | tcp://127.0.0.1:27017 |
Verbindungsstring einer benannten Sitzung. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. 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: mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost. |
|
| Plugins.MongoDB.Sessions.<SessionName>.User | no | Benutzername der benannten Sitzung. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. |
||
| Plugins.MongoDB.Sessions.<SessionName>.Password | no | Passwort der benannten Sitzung. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. |
||
| Plugins.MongoDB.Sessions.<SessionName>.Direct | no | false |
Verbindungsmethode, mit der bestimmt wird, ob die automatische Erkennung von Knoten eines MongoDB-Replica-Sets aktiviert oder deaktiviert werden soll. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. Unterstützte Werte: true - das Plugin verbindet sich nur mit dem angegebenen Server und ignoriert andere Mitglieder des Replica-Sets;false - das Plugin erkennt automatisch alle Knoten im Replica-Set.Wenn das Schema tcp:// (veraltet) verwendet wird, ist der Parameter standardmäßig auf true gesetzt. |
|
| Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism | no | Authentifizierungsmechanismus für die Verbindung zum MongoDB-Server. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. Unterstützte Werte: SCRAM-SHA-1, SCRAM-SHA-256 und MONGODB-X509. |
||
| Plugins.MongoDB.Sessions.<SessionName>.AuthSource | no | admin |
Datenbank zur Authentifizierung der Verbindung zum MongoDB-Server. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. 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>.ReplicaSet | no | Name des Replica-Sets, verwendet für die automatische Erkennung von Knoten eines MongoDB-Replica-Sets. <SessionName> - Name einer Sitzung, 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 jeden anderen) Parameter überschreiben kann.Nicht verfügbar, wenn der Parameter Plugins.MongoDB.Sessions.<SessionName>.Direct auf true gesetzt ist; der Agent kann dann nicht gestartet werden. |
||
| Plugins.MongoDB.Sessions.<SessionName>.ReadPreference | no | Reihenfolge für die Verbindung zu Knoten eines MongoDB-Replica-Sets oder für den Fallback. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. Unterstützte Werte: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode und NearestMode.Nicht verfügbar, wenn der Parameter Plugins.MongoDB.Sessions.<SessionName>.Direct auf true gesetzt ist; der Agent kann dann nicht gestartet werden. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSConnect | no | Verschlüsselungstyp für die Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. Unterstützte Werte: required - TLS-Verbindung erforderlich;verify\_ca - Zertifikate prüfen;verify\_full - Zertifikate und IP-Adresse prüfen.Unterstützt seit Plugin-Version 1.2.1. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSConnect is set to one of: verify_ca, verify_full | Vollständiger Pfad zu einer Datei mit den Zertifikaten der obersten CA(s) zur Überprüfung des Peer-Zertifikats, verwendet für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile is specified | Vollständiger Pfad zu einer Datei mit dem Agent-Zertifikat oder der Zertifikatskette, verwendet für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile is specified | Vollständiger Pfad zu einer Datei mit dem privaten Schlüssel der Datenbank, verwendet für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken. <SessionName> - Name einer Sitzung, die in Datenpunkt-Schlüsseln verwendet wird. |
||
| Plugins.MongoDB.Default.Uri | no | tcp://127.0.0.1:27017 |
Standard-URI für die Verbindung zu MongoDB. Muss dem URI-Format entsprechen. Unterstützte Schemas: mongodb:// und mongodb+srv://.Veraltetes Schema: tcp:// (wird standardmäßig aus Gründen der Abwärtskompatibilität mit vorhandenen Konfigurationen verwendet).Ein Port kann weggelassen werden (Standard=27017). Beispiele: mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost. |
|
| Plugins.MongoDB.Default.User | no | Standard-Benutzername für die Verbindung zu MongoDB. | ||
| Plugins.MongoDB.Default.Password | no | Standard-Passwort für die Verbindung zu MongoDB. | ||
| Plugins.MongoDB.Default.Direct | no | false |
Standard-Verbindungsmethode, mit der bestimmt wird, ob die automatische Erkennung von Knoten eines MongoDB-Replica-Sets aktiviert oder deaktiviert werden soll. Unterstützte Werte: true - das Plugin verbindet sich nur mit dem angegebenen Server und ignoriert andere Mitglieder des Replica-Sets;false - das Plugin erkennt automatisch alle Knoten im Replica-Set.Wenn das Schema tcp:// (veraltet) verwendet wird, ist der Parameter standardmäßig auf true gesetzt. |
|
| Plugins.MongoDB.Default.AuthMechanism | no | Standard-Authentifizierungsmechanismus für die Verbindung zum MongoDB-Server. Unterstützte Werte: SCRAM-SHA-1, SCRAM-SHA-256 und MONGODB-X509.Wenn hier, in einem Datenpunkt-Schlüssel, in einer benannten Sitzung oder in der URI kein Wert angegeben ist, wird ein auf SCRAM basierender Mechanismus verwendet (wenn ein Benutzername angegeben wurde; andernfalls wird keine Authentifizierung verwendet). |
||
| Plugins.MongoDB.Default.AuthSource | no | admin |
Standard-Datenbank zur Authentifizierung der Verbindung zum MongoDB-Server. 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.ReplicaSet | no | Standardname des Replica-Sets; verwendet für die automatische Erkennung von Knoten eines MongoDB-Replica-Sets. 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 jeden anderen) Parameter überschreiben kann.Nicht verfügbar, wenn der Parameter Plugins.MongoDB.Default.Direct auf true gesetzt ist; der Agent kann dann nicht gestartet werden. |
||
| Plugins.MongoDB.Default.ReadPreference | no | Standardreihenfolge für die Verbindung zu Knoten eines MongoDB-Replica-Sets oder für den Fallback. Unterstützte Werte: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode und NearestMode.Nicht verfügbar, wenn der Parameter Plugins.MongoDB.Default.Direct auf true gesetzt ist; der Agent kann dann nicht gestartet werden. |
||
| Plugins.MongoDB.Default.TLSConnect | no | Standard-Verschlüsselungstyp für die Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken. Unterstützte Werte: required - erfordert eine TLS-Verbindung.verify\_ca - prüft Zertifikate.verify\_full - prüft Zertifikate und IP-Adresse.Wenn hier, in einem Datenpunkt-Schlüssel, in einer benannten Sitzung oder in der URI kein Wert angegeben ist, wird keine TLS-Verbindung hergestellt. |
||
| Plugins.MongoDB.Default.TLSCAFile | no | Standard-Pfad zu einer Datei mit den Zertifikaten der obersten CA(s) zur Überprüfung des Peer-Zertifikats. Wird für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken verwendet. | ||
| Plugins.MongoDB.Default.TLSCertFile | no | Standard-Pfad zu einer Datei mit dem MongoDB-Clientzertifikat oder der Zertifikatskette. Wird für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken verwendet. | ||
| Plugins.MongoDB.Default.TLSKeyFile | no | Standard-Pfad zu einer Datei mit dem privaten Schlüssel des MongoDB-Clients, verwendet für verschlüsselte Kommunikation zwischen Zabbix Agent 2 und überwachten Datenbanken. |
Siehe auch:
- Beschreibung der allgemeinen Konfigurationsparameter von Zabbix Agent 2: Zabbix agent 2 (UNIX) / Zabbix agent 2 (Windows)
- Anleitungen zur Konfiguration von Plugins