Parámetros de configuración: Plugins
Consulte los parámetros de configuración de los plugins de Zabbix agent 2:
- plugin de Ceph
- plugin de Docker
- plugin de Ember+
- plugin de Memcached
- plugin de Modbus
- plugin de MongoDB
- plugin de MQTT
- plugin de MSSQL
- plugin de MySQL
- plugin de GPU NVIDIA
- plugin de Oracle
- plugin de PostgreSQL
- plugin de Redis
- plugin S.M.A.R.T.
Principios de configuración de plugins
Esta página describe los principios de configuración de plugins y las mejores prácticas.
Todos los plugins se configuran mediante el parámetro Plugins.* , que puede formar parte del archivo de configuración de Zabbix agent 2 o del propio archivo de configuración de un plugin. Si un plugin utiliza un archivo de configuración independiente, la ruta a este archivo debe especificarse en el parámetro Include del archivo de configuración de Zabbix agent 2.
Un parámetro típico de plugin tiene la siguiente estructura:
Plugins.<PluginName>.<Parameter>=<Value>
Además, hay dos grupos específicos de parámetros:
-
Plugins.<PluginName>.Default.<Parameter>=<Value> se usa para definir valores de parámetros predeterminados.
-
Plugins.<PluginName>.<SessionName>.<Parameter>=<Value> se usa para definir conjuntos separados de parámetros para distintos objetivos de monitoreo mediante sesiones con nombre.
Todos los nombres de parámetros deben cumplir los siguientes requisitos:
- se recomienda escribir los nombres de los plugins con mayúscula inicial
- el parámetro debe escribirse con mayúscula inicial
- no se permiten caracteres especiales
- la anidación no está limitada por un nivel máximo
- la cantidad de parámetros no está limitada
Por ejemplo, para realizar comprobaciones activas que no tengan intervalo de actualización de Scheduling inmediatamente después del reinicio del agent solo para el plugin Uptime, establezca Plugins.Uptime.System.ForceActiveChecksOnStart=1 en el archivo de configuración.
De forma similar, para establecer un límite personalizado para comprobaciones concurrentes del plugin CPU, establezca Plugins.CPU.System.Capacity=N en el archivo de configuración.
Valores predeterminados
Puede establecer valores predeterminados para los parámetros relacionados con la conexión (URI, nombre de usuario, contraseña, etc.) en el archivo de configuración con el formato:
Plugins.<PluginName>.Default.<Parameter>=<Value>
Por ejemplo, Plugins.Mysql.Default.Username=zabbix, Plugins.MongoDB.Default.Uri=tcp://127.0.0.1:27017, etc.
Si no se proporciona un valor para dicho parámetro en una clave de item o en los parámetros de la sesión con nombre, el plugin utilizará el valor predeterminado. Si un parámetro predeterminado tampoco está definido, se usarán valores predeterminados codificados.
Si una clave de item no tiene ningún parámetro, Zabbix agent 2 intentará recopilar la métrica utilizando los valores definidos en la sección de parámetros predeterminados.
Sesiones con nombre
Las sesiones con nombre representan un nivel adicional de parámetros del plugin y se pueden usar para especificar conjuntos separados de parámetros de autenticación para cada una de las instancias supervisadas. Cada parámetro de sesión con nombre debe tener la siguiente estructura:
Plugins.<PluginName>.Sessions.<SessionName>.<Parameter>=<Value>
Se puede usar un nombre de sesión como parámetro de clave de elemento connString en lugar de especificar por separado una URI, un nombre de usuario y/o una contraseña.
En las claves de elemento, el primer parámetro puede ser connString o una URI. Si el primer parámetro de la clave no coincide con ningún nombre de sesión, se tratará como una URI. Tenga en cuenta que no se admite pasar credenciales de URI incrustadas en la clave de elemento; en su lugar, use parámetros de sesión con nombre.
La lista de parámetros de sesión con nombre disponibles depende del plugin.
Es posible sobrescribir los parámetros de sesión especificando nuevos valores en los parámetros de la clave de elemento (consulte el ejemplo).
Si un parámetro no está definido para la sesión con nombre, Zabbix agent 2 usará el valor definido en el parámetro predeterminado del plugin.
Prioridad de parámetros
Los plugins de Zabbix agent 2 buscan los valores de parámetros relacionados con la conexión en el siguiente orden:

- El primer parámetro de la clave del item se compara con los nombres de sesión. Si no se encuentra ninguna coincidencia, se trata como un valor real; en este caso, se omitirá el paso 3. Si se encuentra una coincidencia, el valor del parámetro (normalmente, una URI) debe definirse en la sesión con nombre.
- Los demás parámetros se tomarán de la clave del item si están definidos.
- Si un parámetro de la clave del item (por ejemplo, password) está vacío, el plugin buscará el parámetro correspondiente de la sesión con nombre.
- Si el parámetro de la sesión tampoco está especificado, se usará el valor definido en el parámetro predeterminado correspondiente.
- Si todo lo demás falla, el plugin usará el valor predeterminado codificado.
Ejemplo 1
Monitorización de dos instancias "MySQL1" y "MySQL2".
Parámetros de configuración:
Plugins.Mysql.Sessions.MySQL1.Uri=tcp://127.0.0.1:3306
Plugins.Mysql.Sessions.MySQL1.User=mysql1_user
Plugins.Mysql.Sessions.MySQL1.Password=unique_password
Plugins.Mysql.Sessions.MySQL2.Uri=tcp://192.0.2.1:3306
Plugins.Mysql.Sessions.MySQL2.User=mysql2_user
Plugins.Mysql.Sessions.MySQL2.Password=different_password
Como resultado de esta configuración, cada nombre de sesión puede usarse como connString en una item key, por ejemplo, mysql.ping[MySQL1] o mysql.ping[MySQL2].
Ejemplo 2
Proporcionar algunos de los parámetros en la clave del item.
Parámetros de configuración:
Plugins.PostgreSQL.Sessions.Session1.Uri=tcp://192.0.2.234:5432
Plugins.PostgreSQL.Sessions.Session1.User=old_username
Plugins.PostgreSQL.Sessions.Session1.Password=session_password
Clave del item: pgsql.ping[session1,new_username,,postgres]
Como resultado de esta configuración, el agent se conectará a PostgreSQL usando los siguientes parámetros:
- URI del parámetro de sesión:
192.0.2.234:5432 - Nombre de usuario de la clave del item:
new_username - Contraseña del parámetro de sesión (ya que se omite en la clave del item):
session_password - Nombre de la base de datos de la clave del item:
postgres
Ejemplo 3
Recopilación de una métrica usando parámetros de configuración predeterminados.
Parámetros de configuración:
Plugins.PostgreSQL.Default.Uri=tcp://192.0.2.234:5432
Plugins.PostgreSQL.Default.User=zabbix
Plugins.PostgreSQL.Default.Password=password
Clave del item: pgsql.ping[,,,postgres]
Como resultado de esta configuración, el agent se conectará a PostgreSQL usando los parámetros:
- URI predeterminada:
192.0.2.234:5432 - Nombre de usuario predeterminado:
zabbix - Contraseña predeterminada:
password - Nombre de la base de datos de la clave del item:
postgres
Conexiones
Algunos plugins admiten la recopilación de métricas de varias instancias simultáneamente. Se pueden supervisar tanto instancias locales como remotas. Se admiten conexiones TCP y Unix-socket.
Se recomienda configurar los plugins para mantener las conexiones con las instancias en estado abierto. Las ventajas son una menor congestión de red, menor latencia y un menor uso de CPU y memoria debido al menor número de conexiones. La biblioteca del cliente se encarga de ello.
El período de tiempo durante el cual las conexiones no utilizadas deben permanecer abiertas puede determinarse mediante el parámetro Plugins.<PluginName>.KeepAlive. Ejemplo: Plugins.Memcached.KeepAlive