6 Plugin MongoDB
Aperçu
Le fichier de configuration de Zabbix agent 2 est utilisé pour configurer les plugins. Ces paramètres de configuration de Zabbix agent 2 sont pris en charge pour faire fonctionner le plugin MongoDB.
Il est recommandé de les spécifier dans leur propre fichier de configuration (par exemple, mongo.conf), puis d’utiliser la directive Include pour ajouter ce fichier à la configuration de Zabbix agent 2.
Le plugin MongoDB est un plugin chargeable, disponible et entièrement décrit dans le dépôt du plugin MongoDB.
Notez que :
- Les valeurs par défaut reflètent les valeurs par défaut du processus, et non les valeurs des fichiers de configuration fournis.
- Les valeurs prennent en charge les variables d’environnement.
- Zabbix prend en charge uniquement les fichiers de configuration encodés en UTF-8 sans BOM.
- Les commentaires commençant par "#" ne sont pris en charge qu’au début de la ligne.
Options
| Paramètre | Description |
|---|---|
| -V --version | Affiche la version du plugin et les informations de licence. |
| -h --help | Affiche les informations d’aide (abrégé). |
| -t, --test <item key> | Lance le plugin pour les tests (configuration du plugin ignorée). |
Paramètres
Lors de la connexion à MongoDB, le plugin vérifie sa configuration dans un ordre spécifique, qui détermine quelle valeur utiliser. L’ordre, de la priorité la plus élevée à la plus faible, est le suivant :
- Les paramètres spécifiés dans l’URI de connexion (par exemple, les paramètres de requête définis après
?dansPlugins.MongoDB.Sessions.<session_name>.Uriont la priorité la plus élevée). - Les paramètres dans la clé d’élément Zabbix agent 2 (par exemple, mongodb.collection.stats).
- Les paramètres définis dans une session nommée (par exemple,
Plugins.MongoDB.Sessions.<SessionName>.User,Plugins.MongoDB.Sessions.<SessionName>.Password). - Les valeurs par défaut (par exemple,
Plugins.MongoDB.Default.User,Plugins.MongoDB.Default.Password).
Par exemple :
- Si vous spécifiez la base de données pour authentifier une connexion au serveur MongoDB dans le paramètre
*.<SessionName>.Uri(par exemple,Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://user:[email protected]:27017/?authSource=admin), alors le plugin considérera que le paramètre*.<SessionName>.AuthSourceest défini suradmin, même si le paramètre*.<SessionName>.AuthSourceest défini sur une autre valeur. - Si vous spécifiez l’URI dans le paramètre
*.<SessionName>.Uri(par exemple,Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://127.0.0.1:27017), mais fournissez le nom d’utilisateur et le mot de passe dans la clé d’élément Zabbix agent 2, le plugin utilisera le nom d’utilisateur et le mot de passe de la clé d’élément, même siPlugins.MongoDB.Sessions.<SessionName>.UseretPlugins.MongoDB.Sessions.<SessionName>.Passwordsont configurés.
Si le schéma mongodb+srv:// est utilisé, l’URI peut récupérer des paramètres à partir d’un enregistrement DNS TXT.
Les paramètres obtenus à partir de cet enregistrement TXT remplacent toutes les autres configurations, y compris les paramètres de l’URI, les paramètres de la clé d’élément Zabbix Agent 2 et les paramètres de session.
Un seul enregistrement TXT peut exister pour le nom d’hôte utilisé dans la chaîne de connexion.
| Parameter | Mandatory | Range | Default | Description |
|---|---|---|---|---|
| Plugins.MongoDB.System.Path | no | Chemin vers l’exécutable du plugin MongoDB. Exemple d’utilisation : Plugins.MongoDB.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-mongodb |
||
| Plugins.MongoDB.Timeout | no | 1-30 | global timeout | Délai d’expiration d’exécution de la requête (durée, en secondes, pendant laquelle attendre qu’une requête se termine avant de l’arrêter). |
| Plugins.MongoDB.KeepAlive | no | 60-900 | 300 | Temps d’attente maximal (en secondes) avant la fermeture des connexions de plugin inutilisées. |
| Plugins.MongoDB.Sessions.<SessionName>.Uri | no | tcp://127.0.0.1:27017 |
Chaîne de connexion d’une session nommée. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. Doit correspondre au format URI. Schémas pris en charge : mongodb:// et mongodb+srv:// ; le schéma tcp:// est obsolète et conservé pour assurer la rétrocompatibilité avec les configurations existantes.Un port peut être omis (par défaut=27017). Exemples : mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost. |
|
| Plugins.MongoDB.Sessions.<SessionName>.User | no | Nom d’utilisateur de la session nommée. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. |
||
| Plugins.MongoDB.Sessions.<SessionName>.Password | no | Mot de passe de la session nommée. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. |
||
| Plugins.MongoDB.Sessions.<SessionName>.Direct | no | false |
Méthode de connexion utilisée pour déterminer si la découverte automatique des nœuds du replica set MongoDB doit être activée ou désactivée. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. Valeurs prises en charge : true - le plugin se connectera uniquement au serveur spécifié, en ignorant les autres membres du replica set ;false - le plugin découvrira automatiquement tous les nœuds du replica set.Si le schéma tcp:// (obsolète) est utilisé, le paramètre est défini sur true par défaut. |
|
| Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism | no | Mécanisme d’authentification pour se connecter au serveur MongoDB. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. Valeurs prises en charge : SCRAM-SHA-1, SCRAM-SHA-256 et MONGODB-X509. |
||
| Plugins.MongoDB.Sessions.<SessionName>.AuthSource | no | admin |
Base de données pour authentifier la connexion au serveur MongoDB. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. Si le mécanisme d’authentification MONGODB-X509 est utilisé, ce paramètre est automatiquement défini sur $external ; le modifier avec une autre valeur provoquera une erreur au démarrage. |
|
| Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet | no | Nom du replica set, utilisé pour la découverte automatique des nœuds du replica set MongoDB. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. Si ce paramètre est utilisé avec le schéma mongodb+srv://, il se comportera comme si plusieurs URL avaient été fournies ; un serveur DNS peut avoir un enregistrement TXT qui peut remplacer ce paramètre (ou tout autre paramètre).Indisponible si le paramètre Plugins.MongoDB.Sessions.<SessionName>.Direct est défini sur true, l’agent ne pourra pas démarrer. |
||
| Plugins.MongoDB.Sessions.<SessionName>.ReadPreference | no | Ordre de connexion aux nœuds du replica set MongoDB ou de repli. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. Valeurs prises en charge : PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode et NearestMode.Indisponible si le paramètre Plugins.MongoDB.Sessions.<SessionName>.Direct est défini sur true, l’agent ne pourra pas démarrer. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSConnect | no | Type de chiffrement pour les communications entre Zabbix agent 2 et les bases de données surveillées. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. Valeurs prises en charge : required - exiger une connexion TLS ;verify\_ca - vérifier les certificats ;verify\_full - vérifier les certificats et l’adresse IP.Pris en charge depuis la version 1.2.1 du plugin. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSConnect is set to one of: verify_ca, verify_full | Chemin complet d’un fichier contenant les certificats de la ou des autorités de certification racines pour la vérification du certificat du pair, utilisé pour les communications chiffrées entre Zabbix agent 2 et les bases de données surveillées. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile is specified | Chemin complet d’un fichier contenant le certificat de l’agent ou la chaîne de certificats, utilisé pour les communications chiffrées entre Zabbix agent 2 et les bases de données surveillées. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. |
||
| Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile | yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile is specified | Chemin complet d’un fichier contenant la clé privée de la base de données utilisée pour les communications chiffrées entre Zabbix agent 2 et les bases de données surveillées. <SessionName> - définissez le nom d’une session à utiliser dans les clés d’élément. |
||
| Plugins.MongoDB.Default.Uri | no | tcp://127.0.0.1:27017 |
URI par défaut pour se connecter à MongoDB. Doit correspondre au format URI. Schémas pris en charge : mongodb:// et mongodb+srv://.Schéma obsolète : tcp:// (utilisé par défaut pour assurer la rétrocompatibilité avec les configurations existantes).Un port peut être omis (par défaut=27017). Exemples : mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost. |
|
| Plugins.MongoDB.Default.User | no | Nom d’utilisateur par défaut pour se connecter à MongoDB. | ||
| Plugins.MongoDB.Default.Password | no | Mot de passe par défaut pour se connecter à MongoDB. | ||
| Plugins.MongoDB.Default.Direct | no | false |
Méthode de connexion par défaut utilisée pour déterminer si la découverte automatique des nœuds du replica set MongoDB doit être activée ou désactivée. Valeurs prises en charge : true - le plugin se connectera uniquement au serveur spécifié, en ignorant les autres membres du replica set ;false - le plugin découvrira automatiquement tous les nœuds du replica set.Si le schéma tcp:// (obsolète) est utilisé, le paramètre est défini sur true par défaut. |
|
| Plugins.MongoDB.Default.AuthMechanism | no | Mécanisme d’authentification par défaut pour se connecter au serveur MongoDB. Valeurs prises en charge : SCRAM-SHA-1, SCRAM-SHA-256 et MONGODB-X509.Si aucune valeur n’est spécifiée ici, dans une clé d’élément, dans une session nommée ou dans l’URI, un mécanisme basé sur SCRAM sera utilisé (si un nom d’utilisateur est fourni ; sinon, aucune authentification ne sera utilisée). |
||
| Plugins.MongoDB.Default.AuthSource | no | admin |
Base de données par défaut pour authentifier la connexion au serveur MongoDB. Si le mécanisme d’authentification MONGODB-X509 est utilisé, ce paramètre est automatiquement défini sur $external ; le modifier avec une autre valeur provoquera une erreur au démarrage. |
|
| Plugins.MongoDB.Default.ReplicaSet | no | Nom du replica set par défaut ; utilisé pour la découverte automatique des nœuds du replica set MongoDB. Si ce paramètre est utilisé avec le schéma mongodb+srv://, il se comportera comme si plusieurs URL avaient été fournies ; un serveur DNS peut avoir un enregistrement TXT qui peut remplacer ce paramètre (ou tout autre paramètre).Indisponible si le paramètre Plugins.MongoDB.Default.Direct est défini sur true, l’agent ne pourra pas démarrer. |
||
| Plugins.MongoDB.Default.ReadPreference | no | Ordre par défaut de connexion aux nœuds du replica set MongoDB ou de repli. Valeurs prises en charge : PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode et NearestMode.Indisponible si le paramètre Plugins.MongoDB.Default.Direct est défini sur true, l’agent ne pourra pas démarrer. |
||
| Plugins.MongoDB.Default.TLSConnect | no | Type de chiffrement par défaut pour les communications entre Zabbix agent 2 et les bases de données surveillées. Valeurs prises en charge : required - exige une connexion TLS.verify\_ca - vérifie les certificats.verify\_full - vérifie les certificats et l’adresse IP.Si aucune valeur n’est spécifiée ici, dans une clé d’élément, dans une session nommée ou dans l’URI, aucune connexion TLS ne sera établie. |
||
| Plugins.MongoDB.Default.TLSCAFile | no | Chemin par défaut d’un fichier contenant les certificats de la ou des autorités de certification racines pour la vérification du certificat du pair. Utilisé pour les communications chiffrées entre Zabbix agent 2 et les bases de données surveillées. | ||
| Plugins.MongoDB.Default.TLSCertFile | no | Chemin par défaut d’un fichier contenant le certificat client MongoDB ou la chaîne de certificats. Utilisé pour les communications chiffrées entre Zabbix agent 2 et les bases de données surveillées. | ||
| Plugins.MongoDB.Default.TLSKeyFile | no | Chemin par défaut d’un fichier contenant la clé privée du client MongoDB utilisée pour les communications chiffrées entre Zabbix agent 2 et les bases de données surveillées. |
Voir aussi :
- Description des paramètres généraux de configuration de Zabbix agent 2 : Zabbix agent 2 (UNIX) / Zabbix agent 2 (Windows)
- Instructions pour configurer les plugins