6 Plugin de MongoDB

Descripción general

El archivo de configuración de Zabbix agent 2 se utiliza para configurar plugins. Estos parámetros de configuración de Zabbix agent 2 son compatibles para operar el plugin de MongoDB.

Se recomienda especificarlos en su propio archivo de configuración (por ejemplo, mongo.conf) y luego usar la directiva Include para agregar este archivo a la configuración de Zabbix agent 2.

El plugin de MongoDB es un plugin cargable y está disponible y completamente descrito en el repositorio del plugin de MongoDB.

Tenga en cuenta que:

  • Los valores predeterminados reflejan los valores predeterminados del proceso, no los valores de los archivos de configuración suministrados.
  • Los valores admiten variables de entorno.
  • Zabbix solo admite archivos de configuración en codificación UTF-8 sin BOM.
  • Los comentarios que comienzan con "#" solo se admiten al principio de la línea.

Opciones

Parámetro Descripción
-V --version Imprime la versión del plugin y la información de la licencia.
-h --help Imprime la información de ayuda (abreviatura).
-t, --test <item key> Lanza el plugin para pruebas (se ignora la configuración del plugin).

Parámetros

Al conectarse a MongoDB, el plugin comprueba su configuración en un orden específico, que determina qué valor se utilizará. El orden, de mayor a menor prioridad, es el siguiente:

  1. Parámetros especificados en la URI de conexión (por ejemplo, los parámetros de consulta definidos después de ? en Plugins.MongoDB.Sessions.<session_name>.Uri tienen la prioridad más alta).
  2. Parámetros en la clave de item de Zabbix agent 2 (por ejemplo, mongodb.collection.stats).
  3. Parámetros definidos en una sesión con nombre (por ejemplo, Plugins.MongoDB.Sessions.<SessionName>.User, Plugins.MongoDB.Sessions.<SessionName>.Password).
  4. Valores predeterminados (por ejemplo, Plugins.MongoDB.Default.User, Plugins.MongoDB.Default.Password).

Por ejemplo:

  • Si especifica la base de datos para autenticar una conexión al server de MongoDB en el parámetro *.<SessionName>.Uri (por ejemplo, Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://user:[email protected]:27017/?authSource=admin), el plugin considerará que el parámetro *.<SessionName>.AuthSource está establecido en admin, incluso si el parámetro *.<SessionName>.AuthSource está configurado con un valor diferente.
  • Si especifica la URI en el parámetro *.<SessionName>.Uri (por ejemplo, Plugins.MongoDB.Sessions.<session_name>.Uri=mongodb://127.0.0.1:27017), pero proporciona el nombre de usuario y la contraseña en la clave de item de Zabbix agent 2, el plugin utilizará el nombre de usuario y la contraseña de la clave de item, incluso si Plugins.MongoDB.Sessions.<SessionName>.User y Plugins.MongoDB.Sessions.<SessionName>.Password están configurados.

Si se utiliza el esquema mongodb+srv://, la URI puede recuperar parámetros de un registro TXT de DNS. Los parámetros obtenidos de este registro TXT anulan todas las demás configuraciones, incluidos los parámetros de URI, los parámetros de la clave de item de Zabbix Agent 2 y los parámetros de sesión.
Solo puede existir un registro TXT para el nombre de host utilizado en la cadena de conexión.

Parameter Mandatory Range Default Description
Plugins.MongoDB.System.Path no Ruta al ejecutable del plugin de MongoDB.
Ejemplo de uso: Plugins.MongoDB.System.Path=/usr/libexec/zabbix/zabbix-agent2-plugin-mongodb
Plugins.MongoDB.Timeout no 1-30 global timeout Tiempo de espera para la ejecución de la solicitud (duración, en segundos, que se espera a que una solicitud se complete antes de cancelarla).
Plugins.MongoDB.KeepAlive no 60-900 300 Tiempo máximo de espera (en segundos) antes de cerrar las conexiones del plugin no utilizadas.
Plugins.MongoDB.Sessions.<SessionName>.Uri no tcp://127.0.0.1:27017 Cadena de conexión de una sesión con nombre.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.

Debe coincidir con el formato de URI.
Esquemas compatibles: mongodb:// y mongodb+srv://; el esquema tcp:// está obsoleto y se mantiene por compatibilidad con configuraciones existentes.
Se puede omitir un puerto (predeterminado=27017).
Ejemplos: mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost.
Plugins.MongoDB.Sessions.<SessionName>.User no Nombre de usuario de la sesión con nombre.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.
Plugins.MongoDB.Sessions.<SessionName>.Password no Contraseña de la sesión con nombre.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.
Plugins.MongoDB.Sessions.<SessionName>.Direct no false Método de conexión utilizado para determinar si debe habilitarse o deshabilitarse el descubrimiento automático de nodos del replica set de MongoDB.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.

Valores compatibles:
true - el plugin se conectará solo al server especificado, ignorando a los demás miembros del replica set;
false - el plugin descubrirá automáticamente todos los nodos del replica set.
Si se utiliza el esquema tcp:// (obsoleto), el parámetro se establece en true de forma predeterminada.
Plugins.MongoDB.Sessions.<SessionName>.AuthMechanism no Mecanismo de autenticación para conectarse al server de MongoDB.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.

Valores compatibles: SCRAM-SHA-1, SCRAM-SHA-256 y MONGODB-X509.
Plugins.MongoDB.Sessions.<SessionName>.AuthSource no admin Base de datos para autenticar la conexión al server de MongoDB.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.

Si se utiliza el mecanismo de autenticación MONGODB-X509, este parámetro se establece automáticamente en $external; modificarlo a cualquier otro valor provocará un error al iniciar.
Plugins.MongoDB.Sessions.<SessionName>.ReplicaSet no Nombre del replica set, utilizado para el descubrimiento automático de nodos del replica set de MongoDB.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.

Si este parámetro se utiliza con el esquema mongodb+srv://, se comportará como si se hubieran proporcionado varias URL; un server DNS puede tener un registro TXT que anule este parámetro (o cualquier otro).

No está disponible si el parámetro Plugins.MongoDB.Sessions.<SessionName>.Direct está establecido en true; el agent no podrá iniciarse.
Plugins.MongoDB.Sessions.<SessionName>.ReadPreference no Orden para conectarse a los nodos del replica set de MongoDB o como alternativa.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.

Valores compatibles: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode y NearestMode.
No está disponible si el parámetro Plugins.MongoDB.Sessions.<SessionName>.Direct está establecido en true; el agent no podrá iniciarse.
Plugins.MongoDB.Sessions.<SessionName>.TLSConnect no Tipo de cifrado para las comunicaciones entre Zabbix agent 2 y las bases de datos monitorizadas.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.

Valores compatibles:
required - requiere conexión TLS;
verify\_ca - verifica certificados;
verify\_full - verifica certificados y dirección IP.

Compatible desde la versión 1.2.1 del plugin.
Plugins.MongoDB.Sessions.<SessionName>.TLSCAFile yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSConnect is set to one of: verify_ca, verify_full Ruta completa de un archivo que contiene los certificados de la CA de nivel superior para la verificación del certificado del par, utilizado para comunicaciones cifradas entre Zabbix agent 2 y las bases de datos monitorizadas.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.
Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile is specified Ruta completa de un archivo que contiene el certificado del agent o la cadena de certificados, utilizado para comunicaciones cifradas entre Zabbix agent 2 y las bases de datos monitorizadas.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.
Plugins.MongoDB.Sessions.<SessionName>.TLSKeyFile yes, if Plugins.MongoDB.Sessions.<SessionName>.TLSCertFile is specified Ruta completa de un archivo que contiene la clave privada de la base de datos utilizada para comunicaciones cifradas entre Zabbix agent 2 y las bases de datos monitorizadas.
<SessionName> - defina el nombre de una sesión para usarlo en las claves de item.
Plugins.MongoDB.Default.Uri no tcp://127.0.0.1:27017 URI predeterminada para conectarse a MongoDB.

Debe coincidir con el formato de URI.
Esquemas compatibles: mongodb:// y mongodb+srv://.
Esquema obsoleto: tcp:// (se usa como valor predeterminado por compatibilidad con configuraciones existentes).
Se puede omitir un puerto (predeterminado=27017).
Ejemplos: mongodb://127.0.0.1:27017, mongodb+srv://example.com, localhost.
Plugins.MongoDB.Default.User no Nombre de usuario predeterminado para conectarse a MongoDB.
Plugins.MongoDB.Default.Password no Contraseña predeterminada para conectarse a MongoDB.
Plugins.MongoDB.Default.Direct no false Método de conexión predeterminado utilizado para determinar si debe habilitarse o deshabilitarse el descubrimiento automático de nodos del replica set de MongoDB.

Valores compatibles:
true - el plugin se conectará solo al server especificado, ignorando a los demás miembros del replica set;
false - el plugin descubrirá automáticamente todos los nodos del replica set.
Si se utiliza el esquema tcp:// (obsoleto), el parámetro se establece en true de forma predeterminada.
Plugins.MongoDB.Default.AuthMechanism no Mecanismo de autenticación predeterminado para conectarse al server de MongoDB.

Valores compatibles: SCRAM-SHA-1, SCRAM-SHA-256 y MONGODB-X509.
Si no se especifica ningún valor aquí, en una clave de item, en una sesión con nombre o en la URI, se utiliza un mecanismo basado en SCRAM (si se proporciona un nombre de usuario; de lo contrario, no se utilizará autenticación).
Plugins.MongoDB.Default.AuthSource no admin Base de datos predeterminada para autenticar la conexión al server de MongoDB.

Si se utiliza el mecanismo de autenticación MONGODB-X509, este parámetro se establece automáticamente en $external; modificarlo a cualquier otro valor provocará un error al iniciar.
Plugins.MongoDB.Default.ReplicaSet no Nombre predeterminado del replica set; se utiliza para el descubrimiento automático de nodos del replica set de MongoDB.

Si este parámetro se utiliza con el esquema mongodb+srv://, se comportará como si se hubieran proporcionado varias URL; un server DNS puede tener un registro TXT que anule este parámetro (o cualquier otro).

No está disponible si el parámetro Plugins.MongoDB.Default.Direct está establecido en true; el agent no podrá iniciarse.
Plugins.MongoDB.Default.ReadPreference no Orden predeterminado para conectarse a los nodos del replica set de MongoDB o como alternativa.

Valores compatibles: PrimaryMode, PrimaryPreferredMode, SecondaryMode, SecondaryPreferredMode y NearestMode.
No está disponible si el parámetro Plugins.MongoDB.Default.Direct está establecido en true; el agent no podrá iniciarse.
Plugins.MongoDB.Default.TLSConnect no Tipo de cifrado predeterminado para las comunicaciones entre Zabbix agent 2 y las bases de datos monitorizadas.

Valores compatibles:
required - requiere conexión TLS.
verify\_ca - verifica certificados.
verify\_full - verifica certificados y dirección IP.
Si no se especifica ningún valor aquí, en una clave de item, en una sesión con nombre o en la URI, no se establecerá una conexión TLS.
Plugins.MongoDB.Default.TLSCAFile no Ruta predeterminada de un archivo que contiene los certificados de la CA de nivel superior para la verificación del certificado del par. Se utiliza para comunicaciones cifradas entre Zabbix agent 2 y las bases de datos monitorizadas.
Plugins.MongoDB.Default.TLSCertFile no Ruta predeterminada de un archivo que contiene el certificado del cliente de MongoDB o la cadena de certificados. Se utiliza para comunicaciones cifradas entre Zabbix agent 2 y las bases de datos monitorizadas.
Plugins.MongoDB.Default.TLSKeyFile no Ruta predeterminada de un archivo que contiene la clave privada del cliente de MongoDB utilizada para comunicaciones cifradas entre Zabbix agent 2 y las bases de datos monitorizadas.

Véase también: