#4 Zabbix agente 2 (UNIX)

Descripción general

Zabbix Agent 2 es una nueva generación del agente Zabbix y puede usarse en lugar del agente Zabbix.

Los parámetros admitidos por el archivo de configuración del agente 2 de Zabbix (zabbix_agent2.conf) se enumeran en esta sección.

Los parámetros se enumeran sin información adicional. Haga clic en el parámetro para ver los detalles completos.

Parámetro Descripción
Alias Establece un alias para una clave de elemento.
AllowKey Permitir la ejecución de aquellas claves de elementos que coincidan con un patrón.
BufferSend No guarde datos por más de N segundos en el búfer.
BufferSize El número máximo de valores en el búfer de memoria.
ControlSocket El socket de control, utilizado para enviar comandos de tiempo de ejecución con la opción '-R'.
DebugLevel El nivel de depuración.
DenyKey Denegar la ejecución de aquellas claves de elementos que coincidan con un patrón.
EnablePersistentBuffer Habilite el uso de almacenamiento persistente local para elementos activos.
ForceActiveChecksOnStart Realice comprobaciones activas inmediatamente después del reinicio de la primera configuración recibida.
HeartbeatFrequency La frecuencia de los mensajes de latidos en segundos.
HostInterface Un parámetro opcional que define la interfaz del equipo.
HostInterfaceItem Un parámetro opcional que define un elemento utilizado para obtener la interfaz del equipo.
HostMetadata Un parámetro opcional que define los metadatos del equipo.
HostMetadataItem Un parámetro opcional que define un elemento del agente Zabbix utilizado para obtener los metadatos del equipo.
Hostname Un parámetro opcional que define el nombre de equipo.
HostnameItem Un parámetro opcional que define un elemento del agente Zabbix utilizado para obtener el nombre de equipo.
Include Puede incluir archivos individuales o todos los archivos en un directorio en el archivo de configuración.
ListenIP Una lista de direcciones IP delimitadas por comas que el agente debe escuchar.
ListenPort El agente escuchará en este puerto las conexiones desde el servidor.
LogFile El nombre del archivo de registro.
LogFileSize El tamaño máximo del archivo de registro.
LogType El tipo de salida del registro.
PersistentBufferFile El archivo donde el agente Zabbix 2 debe guardar la base de datos SQLite.
PersistentBufferPeriod El período de tiempo durante el cual se deben almacenar los datos cuando no hay conexión con el servidor o proxy.
PidFile El nombre del archivo PID.
Plugins.<PluginName>.System.Capacity El límite de comprobaciones por complemento que se pueden ejecutar al mismo tiempo.
Plugins.Log.MaxLinesPerSecond El número máximo de líneas nuevas que el agente enviará por segundo al servidor o proxy de Zabbix al procesar las comprobaciones activas 'log' y 'logrt'.
Plugins.SystemRun.LogRemoteCommands Habilite el registro de los comandos de shell ejecutados como advertencias.
PluginSocket La ruta al socket UNIX para comunicaciones de complementos cargables.
PluginTimeout El tiempo de espera para conexiones con complementos cargables, en segundos.
RefreshActiveChecks Con qué frecuencia se actualiza la lista de comprobaciones activas.
Servidor Una lista de direcciones IP delimitadas por comas, opcionalmente en notación CIDR, o nombres DNS de servidores Zabbix y proxies Zabbix.
ServerActive La dirección del servidor/proxy de Zabbix o la configuración del clúster para obtener comprobaciones activas.
SourceIP La dirección IP de origen.
StatusPort Si está configurado, el agente escuchará en este puerto las solicitudes de estado HTTP (http://localhost:<port>/status).
Timeout No dedique más de segundos de Timeout al procesamiento.
TLSAccept Qué conexiones entrantes aceptar.
TLSCAFile La ruta completa de un archivo que contiene los certificados de CA de nivel superior para la verificación de certificados entre pares, utilizado para comunicaciones cifradas entre componentes de Zabbix.
TLSCertFile La ruta completa de un archivo que contiene el certificado del agente o la cadena de certificados, utilizado para las comunicaciones cifradas entre los componentes de Zabbix.
TLSConnect Cómo debe conectarse el agente al servidor o proxy de Zabbix.
TLSCRLFile La ruta completa de un archivo que contiene certificados revocados. Este parámetro se utiliza para comunicaciones cifradas entre componentes de Zabbix.
TLSKeyFile La ruta completa de un archivo que contiene la clave privada del agente, utilizada para las comunicaciones cifradas entre los componentes de Zabbix.
TLSPSKFile La ruta completa de un archivo que contiene la clave precompartida del agente, utilizada para comunicaciones cifradas con el servidor Zabbix.
TLSPSKIdentity La cadena de identidad de clave previamente compartida, utilizada para comunicaciones cifradas con el servidor Zabbix.
TLSServerCertIssuer El emisor del certificado de servidor (proxy) permitido.
TLSServerCertSubject El asunto del certificado del servidor (proxy) permitido.
UnsafeUserParameters Permitir que todos los caracteres se pasen en argumentos a parámetros definidos por el usuario.
UserParameter Un parámetro definido por el usuario para monitorear.
UserParameterDir La ruta de búsqueda predeterminada para los comandos UserParameter.

Todos los parámetros no son obligatorios a menos que se indique explícitamente que el parámetro es obligatorio.

Tenga en cuenta que:

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

Detalles del parámetro

Alias

Establece un alias para una clave de métrica. Se puede utilizar para sustituir una clave de métrica larga y compleja por una más corta y sencilla.
Es posible que estén presentes varios parámetros Alias. No se permiten múltiples parámetros con la misma clave Alias.
Diferentes claves Alias pueden hacer referencia a la misma clave de métrica.
Los alias se pueden utilizar en HostMetadataItem pero no en el parámetro HostnameItem.

Ejemplo 1: Recuperar el ID del usuario 'zabbix'.

Alias=zabbix.userid:vfs.file.regexp[/etc/passwd,"^zabbix:.:([0-9]+)",,,,\1]

Ahora se puede utilizar la clave abreviada zabbix.userid para recuperar datos.

Ejemplo 2: obtener utilización de la CPU con parámetros predeterminados y personalizados.

Alias=cpu.util:system.cpu.util
       Alias=cpu.util[*]:system.cpu.util[*]

Esto permite usar la clave cpu.util para obtener el porcentaje de utilización de la CPU con parámetros predeterminados, así como usar cpu.util[all, idle, avg15] para obtener datos específicos sobre la utilización de la CPU.

Ejemplo 3: ejecutar varias reglas de descubrimiento de bajo nivel que procesan las mismas métricas de descubrimiento.

Alias=vfs.fs.discovery[*]:vfs.fs.discovery

Ahora es posible configurar varias reglas de descubrimiento usando vfs.fs.discovery con diferentes parámetros para cada regla, por ejemplo, vfs.fs.discovery[foo], vfs.fs.discovery[ barra], etc.

AllowKey

Permitir la ejecución de aquellas claves de métrica que coincidan con un patrón. El patrón de clave es una expresión comodín que admite el carácter "*" para que coincida con cualquier número de caracteres.
Se pueden definir varias reglas de coincidencia de claves en combinación con DenyKey. Los parámetros se procesan uno por uno según su orden de aparición. Consulte también: Restricción de comprobaciones de agentes.

BufferSend

El intervalo de tiempo en segundos que determina la frecuencia con la que se envían los valores desde el búfer al servidor Zabbix. Tenga en cuenta que si el búfer está lleno, los datos se enviarán antes.

Predeterminado: 5
Rango: 1-3600

BufferSize

El número máximo de valores en el búfer de memoria. El agente enviará todos los datos recopilados al servidor o proxy de Zabbix si el búfer está lleno. Este parámetro solo debe usarse si el búfer persistente está deshabilitado (EnablePersistentBuffer=0).

Predeterminado: 100
Rango: 2-65535

ControlSocket

El socket de control, utilizado para enviar comandos de tiempo de ejecución con la opción '-R'.

Valor predeterminado: /tmp/agent.sock

DebugLevel

Especifique el nivel de depuración:
0 - información básica sobre el inicio y la parada de procesos de Zabbix
1 - información crítica;
2 - información de error;
3 - advertencias;
4 - para depuración (produce mucha información);
5 - depuración extendida (produce aún más información).

Predeterminado: 3
Rango: 0-5

DenyKey

Denegar la ejecución de aquellas claves de métrica que coincidan con un patrón. El patrón de clave es una expresión comodín que admite el carácter "*" para que coincida con cualquier número de caracteres.
Se pueden definir varias reglas de coincidencia de claves en combinación con AllowKey. Los parámetros se procesan uno por uno según su orden de aparición. Consulte también: Restricción de comprobaciones de agentes.

EnablePersistentBuffer

Habilite el uso de almacenamiento persistente local para métricas activas. Si el almacenamiento persistente está deshabilitado, se utilizará el búfer de memoria.

Predeterminado: 0
Valores: 0 - deshabilitado, 1 - habilitado

ForceActiveChecksOnStart

Realice comprobaciones activas inmediatamente después del reinicio de la primera configuración recibida. También disponible como parámetro de configuración por complemento, por ejemplo: Plugins.Uptime.System.ForceActiveChecksOnStart=1

Predeterminado: 0
Valores: 0 - deshabilitado, 1 - habilitado

HeartbeatFrequency

La frecuencia de los mensajes de latidos del corazón en segundos. Se utiliza para monitorear la disponibilidad de comprobaciones activas.
0: mensajes de latido deshabilitados.

Predeterminado: 60
Rango: 0-3600

HostInterface

Un parámetro opcional que define la interfaz del equipo. La interfaz del equipo se utiliza en el proceso de autorregistro del equipo. Si no se define, el valor se adquirirá de HostInterfaceItem.
El agente emitirá un error y no se iniciará si el valor supera el límite de 255 caracteres.

Rango: 0-255 caracteres

HostInterfaceItem

Un parámetro opcional que define una métrica utilizada para obtener la interfaz del equipo.
La interfaz del equipo se utiliza en el proceso de autorregistro del equipo. Esta opción solo se usa cuando HostInterface no está definido.
El elemento system.run[] se admite independientemente de los valores AllowKey/DenyKey.<br >Durante una solicitud de registro automático, el agente registrará un mensaje de advertencia si el valor devuelto por la métrica especificada supera el límite de 255 caracteres.

HostMetadata

Un parámetro opcional que define los metadatos del equipo. Los metadatos del equipo se utilizan únicamente en el proceso de registro automático del equipo. Si no se define, el valor se adquirirá de HostMetadataItem.
El agente emitirá un error y no se iniciará si el valor especificado supera el límite de 2034 bytes o una cadena que no sea UTF-8.

Rango: 0-2034 bytes

HostMetadataItem

Un parámetro opcional que define una métrica utilizada para obtener metadatos del equipo. Esta opción solo se usa cuando HostMetadata no está definido. Se admiten parámetros de usuario y alias. El elemento system.run[] se admite independientemente de los valores de AllowKey/DenyKey.
El valor HostMetadataItem se recupera en cada intento de registro automático y se utiliza únicamente en el proceso de registro automático del equipo.
Durante una solicitud de registro automático, el agente registrará un mensaje de advertencia si el valor devuelto por el elemento especificado supera el límite de 65535 octetos en UTF-8. El valor devuelto por el elemento debe ser una cadena UTF-8; de lo contrario, se ignorará.

Hostname

Una lista de nombres de equipo únicos, delimitados por comas y que distinguen entre mayúsculas y minúsculas. Requerido para comprobaciones activas y debe coincidir con los nombres de equipo configurados en el servidor. El valor se adquiere de HostnameItem si no está definido.
Caracteres permitidos: alfanuméricos, '.', ' ', '_' y '-'. Longitud máxima: 128 caracteres por nombre de equipo, 2048 caracteres para toda la línea.

Valor predeterminado: establecido por HostnameItem

HostnameItem

Un parámetro opcional que define una métrica utilizada para obtener el nombre del equipo. Esta opción sólo se utiliza cuando el nombre de equipo no está definido. Los parámetros de usuario o alias no son compatibles, pero la métrica system.run[] sí se admite independientemente de los valores de AllowKey/DenyKey.

Valor predeterminado: system.hostname

Include

Puede incluir archivos individuales o todos los archivos en un directorio en el archivo de configuración. Durante la instalación, Zabbix creará el directorio de inclusión en /usr/local/etc, a menos que se modifique durante en la compilación del código fuente. La ruta puede ser relativa a la ubicación del archivo zabbix_agent2.conf.
Para incluir solo archivos relevantes en el directorio especificado, se admite el carácter comodín asterisco para la coincidencia de patrones.
Consulte notas especiales sobre las limitaciones.

Ejemplo:

Include=/absolute/path/to/config/files/*.conf
ListenIP

Una lista de direcciones IP delimitadas por comas que el agente debe escuchar. La primera dirección IP se envía al servidor Zabbix, si se conecta a él, para recuperar la lista de comprobaciones activas.

Predeterminado: 0.0.0.0

ListenPort

El agente escuchará en este puerto las conexiones del servidor.

Predeterminado: 10050
Rango: 1024-32767

LogFile

El nombre del archivo de registro.

Valor predeterminado: /tmp/zabbix_agent2.log
Obligatorio: Sí, si LogType está configurado en archivo; De otra manera no

LogFileSize

El tamaño máximo del archivo de registro en MB.
0: deshabilita la rotación automática de registros.
Nota: Si se alcanza el límite de tamaño del archivo de registro y la rotación del archivo falla, por cualquier motivo, el archivo de registro existente se trunca y empieza de nuevo.

Predeterminado: 1
Rango: 0-1024

LogType

El tipo de salida del registro:
file - escribe el registro en el archivo especificado por el parámetro LogFile;
system - escribe el registro en syslog;
console - escribe el registro en la salida estándar

Predeterminado: file

PersistentBufferFile

El archivo donde el agente Zabbix 2 debe guardar la base de datos SQLite. Debe ser un nombre de archivo completo. Este parámetro solo se usa si el búfer persistente está habilitado (EnablePersistentBuffer=1).

PersistentBufferPeriod

El período de tiempo durante el cual se deben almacenar los datos cuando no hay conexión con el servidor o proxy. Los datos más antiguos se perderán. Los datos de registro se conservarán. Este parámetro solo se usa si el búfer persistente está habilitado (EnablePersistentBuffer=1).

Predeterminado: 1h
Rango: 1m-365d

PidFile

El nombre del archivo PID.

Valor predeterminado: /tmp/zabbix_agent2.pid

Plugins.<PluginName>.System.Capacity

El límite de comprobaciones por complemento <PluginName> que se pueden ejecutar al mismo tiempo.

Predeterminado: 100 Rango: 1-1000

Plugins.Log.MaxLinesPerSecond

El número máximo de líneas nuevas que el agente enviará por segundo al servidor o proxy de Zabbix al procesar las comprobaciones activas 'log' y 'logrt'. El valor proporcionado será anulado por el parámetro 'maxlines', proporcionado en la clave de elemento 'log' y 'logrt'.
Nota: Zabbix procesará 10 veces más líneas nuevas que las establecidas en MaxLinesPerSecond para buscar el cadena requerida en las métricas del registro.

Predeterminado: 20
Rango: 1-1000

Plugins.SystemRun.LogRemoteCommands

Habilite el registro como advertencias de los comandos de shell ejecutados. Los comandos se registrarán solo si se ejecutan de forma remota. Las entradas de registro no se crearán si system.run[] se inicia localmente mediante los parámetros HostMetadataItem, HostInterfaceItem o HostnameItem.

Predeterminado: 0
Valores: 0 - deshabilitado, 1 - habilitado

PluginSocket

La ruta al socket UNIX para comunicaciones de complementos cargables.

Valor predeterminado: /tmp/agent.plugin.sock

PluginTimeout

El tiempo de espera para conexiones con complementos cargables, en segundos.

Valor predeterminado: Timeout
Rango: 1-30

RefreshActiveChecks

Con qué frecuencia se actualiza la lista de comprobaciones activas, en segundos. Tenga en cuenta que después de no poder actualizar las comprobaciones activas, la siguiente actualización se intentará en 60 segundos.

Predeterminado: 5
Rango: 1-86400

Server

Una lista de direcciones IP delimitadas por comas, opcionalmente en notación CIDR, o nombres DNS de servidores Zabbix o proxies Zabbix. Se aceptarán conexiones entrantes únicamente desde los equipos enumerados aquí. Si la compatibilidad con IPv6 está habilitada, entonces '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' se tratan de la misma manera y '::/0' permitirá cualquier dirección IPv4 o IPv6. '0.0.0.0/0' se puede utilizar para permitir cualquier dirección IPv4. Se permiten espacios.

Ejemplo:

Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com

Obligatorio: sí

ServerActive

La dirección del servidor/proxy de Zabbix o la configuración del clúster para obtener comprobaciones activas. La dirección del servidor/proxy es una dirección IP o nombre DNS y un puerto opcional separados por dos puntos.
La configuración del clúster es una o más direcciones de servidor separadas por punto y coma. Se pueden especificar varios servidores/clústeres de Zabbix y proxies de Zabbix, separados por comas. No se debe especificar más de un proxy Zabbix desde cada servidor/clúster Zabbix. Si se especifica un proxy Zabbix, entonces no se debe especificar el servidor/clúster Zabbix para ese proxy.
Se pueden proporcionar varias direcciones delimitadas por comas para utilizar varios servidores Zabbix independientes en paralelo. Se permiten espacios.
Si no se especifica el puerto, se utiliza el puerto predeterminado.
Las direcciones IPv6 deben estar entre corchetes si se especifica el puerto para ese equipo. Si no se especifica el puerto, los corchetes para las direcciones IPv6 son opcionales.
Si no se especifica este parámetro, las comprobaciones activas están deshabilitadas.

Ejemplo de proxy Zabbix:

ServerActive=127.0.0.1:10051

Ejemplo para múltiples servidores:

ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]

Ejemplo de alta disponibilidad:

ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051;zabbix.cluster.node3

Ejemplo de alta disponibilidad con dos clústeres y un servidor:

ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051,zabbix.cluster2.node1;zabbix.cluster2.node2,zabbix.domain
SourceIP

La dirección IP de origen para:
- conexiones salientes al servidor Zabbix o al proxy Zabbix;
- realizar conexiones mientras se ejecutan algunas métricas (web.page.get, net.tcp.port, etc.).

StatusPort

Si está configurado, el agente escuchará en este puerto las solicitudes de estado HTTP (http://localhost:<puerto>/status).

Rango: 1024-32767

Timeout

No dedique al procesamiento más de los segundos de tiempo de espera informados.

Predeterminado: 3
Rango: 1-30

TLSAccept

Las conexiones entrantes a aceptar. Se utiliza para controles pasivos. Se pueden especificar varios valores, separados por coma:
unencrypted: acepta conexiones sin cifrado (predeterminado)
psk: acepta conexiones con TLS y una clave previamente compartida (PSK)
cert - aceptar conexiones con TLS y un certificado

Obligatorio: sí, si se definen el certificado TLS o los parámetros PSK (incluso para una conexión no cifrada); De otra manera no

TLSCAFile

La ruta completa del archivo que contiene los certificados de CA de nivel superior para la verificación de certificados de pares, que se utiliza para las comunicaciones cifradas entre los componentes de Zabbix.

TLSCertFile

La ruta completa del archivo que contiene el certificado del agente o la cadena de certificados utilizado para comunicaciones cifradas con componentes de Zabbix.

TLSConnect

Cómo debe conectarse el agente al servidor o proxy de Zabbix. Se utiliza para controles activos. Solo se puede especificar un valor:
unencrypted - conectar sin cifrado (predeterminado)
psk - conectar usando TLS y una clave precompartida (PSK)
cert - conectar usando TLS y un certificado

Obligatorio: sí, si se definen el certificado TLS o los parámetros PSK (incluso para una conexión no cifrada); De otra manera no

TLSCRLFile

La ruta completa del archivo que contiene los certificados revocados. Este parámetro se utiliza para comunicaciones cifradas entre componentes de Zabbix.

TLSKeyFile

La ruta completa del archivo que contiene la clave privada del agente, utilizada para las comunicaciones cifradas entre los componentes de Zabbix.

TLSPSKFile

La ruta completa del archivo que contiene la clave precompartida del agente, utilizada para las comunicaciones cifradas con el servidor Zabbix.

TLSPSKIdentity

La cadena de identidad de clave previamente compartida, utilizada para comunicaciones cifradas con el servidor Zabbix.

TLSServerCertIssuer

El emisor del certificado de servidor (proxy) permitido.

TLSServerCertSubject

El asunto del certificado del servidor (proxy) permitido.

UnsafeUserParameters

Permitir que todos los caracteres se pasen en argumentos a parámetros definidos por el usuario. Los siguientes caracteres no están permitidos: \ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
Además, no se permiten caracteres de nueva línea.

Predeterminado: 0
Valores: 0 - no permitir, 1 - permitir

UserParameter

Un parámetro definido por el usuario para monitorear. Puede haber varios parámetros definidos por el usuario.
Formato: UserParameter=<key>,<shell command>
Tenga en cuenta que el comando shell no debe devolver únicamente una cadena vacía o EOL. Los comandos de Shell pueden tener rutas relativas, si se especifica el parámetro UserParameterDir.

Ejemplo:

UserParameter=system.test,who|wc -l
       UserParameter=check_cpu,./custom_script.sh
UserParameterDir

La ruta de búsqueda predeterminada para los comandos UserParameter. Si se usa, el agente cambiará su directorio de trabajo al especificado aquí antes de ejecutar un comando. Por lo tanto, los comandos UserParameter pueden tener un prefijo ./ relativo en lugar de una ruta completa.
Sólo se permite una entrada.

Ejemplo:

UserParameterDir=/opt/myscripts