3 Agente 2

Descripción general

El agent 2 de Zabbix es una nueva generación de agent de Zabbix, escrito en Go (con algo de código C reutilizado del agent de Zabbix). Está diseñado para:

  • Reducir el número de conexiones TCP.
  • Proporcionar una mejor concurrencia de comprobaciones.
  • Ser fácilmente ampliable con plugins, que proporcionan comprobaciones simples con un código mínimo y admiten comprobaciones complejas que consisten en scripts de larga duración y recopilación de datos independiente con informes periódicos.
  • Funcionar como un reemplazo del agent de Zabbix, admitiendo todas las funciones anteriores.

Todas las métricas admitidas por el agent 2 de Zabbix se recopilan mediante plugins.

Comprobaciones pasivas y activas

El agente Zabbix 2 admite comprobaciones pasivas y activas, de manera similar al agente Zabbix. Además, las comprobaciones activas del agente Zabbix 2 admiten intervalos flexibles/de programación y concurrencia de comprobaciones dentro de un mismo servidor activo.

Por defecto, después de un reinicio, el agente Zabbix 2 programará la primera recopilación de datos para comprobaciones activas en un momento condicionalmente aleatorio dentro del intervalo de actualización del elemento para evitar picos en el uso de recursos. Para realizar comprobaciones activas que no tengan Intervalo de actualización de Programación intervalos de actualización inmediatamente después del reinicio del agente, establezca el parámetro ForceActiveChecksOnStart (a nivel global) o Plugins.<Plugin name>.System.ForceActiveChecksOnStart (afecta solo a comprobaciones de un complemento específico) en el archivo de configuración. El parámetro a nivel de complemento, si se establece, anulará el parámetro global.

Concurrencia de comprobaciones

Las comprobaciones de diferentes plugins pueden ejecutarse de forma concurrente. El número de comprobaciones concurrentes dentro de un plugin está limitado por el parámetro de capacidad del plugin. Cada plugin puede tener un parámetro de capacidad codificado (1000 por defecto) que puede reducirse utilizando el parámetro de configuración Plugins.<PluginName>.System.Capacity=N en la configuración de Plugins parameter.

Plataformas compatibles

Para conocer las plataformas compatibles, consulte la página de Requisitos.

Agente 2 en sistemas tipo UNIX

El agente 2 de Zabbix en sistemas tipo UNIX se ejecuta en el equipo que se está monitorizando.

Instalación

El agent 2 de Zabbix puede instalarse en sistemas basados en Linux utilizando uno de los siguientes métodos:

  • Paquetes de Zabbix: seleccione el componente Agent 2 (después de seleccionar la versión de Zabbix, la distribución del SO y la versión del SO) y siga las instrucciones.
  • Fuentes de Zabbix: descargue los archivos fuente y compile el agent configurando con la opción --enable-agent2.

Las capacidades de monitorización del agent 2 de Zabbix pueden ampliarse con plugins cargables, que están disponibles por separado. Para más detalles, consulte Plugins cargables.

Si se instala como paquete

El agente Zabbix 2 se ejecuta como un proceso en primer plano y depende de un gestor de servicios externo (por ejemplo, systemd) para la ejecución en segundo plano; El agente Zabbix 2 no tiene soporte de demonización incorporado en Linux.

El agente puede iniciarse ejecutando:

systemctl start zabbix-agent2

Para detener, reiniciar o comprobar el estado del agente Zabbix 2, utilice los siguientes comandos:

systemctl stop zabbix-agent2
systemctl restart zabbix-agent2
systemctl status zabbix-agent2
Iniciar manualmente

Puede iniciar el agente Zabbix localizando el binario zabbix_agent2 y ejecutándolo directamente; por ejemplo:

zabbix_agent2

Agente 2 en sistemas Windows

El agente 2 de Zabbix se ejecuta como un proceso independiente; sin embargo, también puede ejecutarse como un servicio de Windows.

Instalación

Zabbix agent 2 puede instalarse en Windows mediante uno de los siguientes métodos:

Las capacidades de monitorización de Zabbix agent 2 pueden ampliarse con plugins cargables, que están disponibles por separado. Para más información, consulte Plugins cargables.

Consulte la página Zabbix agent en Microsoft Windows para obtener información adicional sobre la instalación de Zabbix agent 2 (desde un archivo ZIP) como servicio de Windows.

Opciones

Los siguientes parámetros de línea de comandos pueden utilizarse con Zabbix agent 2:

Parámetro Descripción
agent para UNIX y Windows
-c --config <config-file> Ruta al archivo de configuración.
Puede utilizar esta opción para especificar un archivo de configuración distinto del predeterminado.
En UNIX, el valor predeterminado es /usr/local/etc/zabbix_agent2.conf o el establecido por las variables de tiempo de compilación --sysconfdir o --prefix
En Windows, el valor predeterminado es C:\Program Files\Zabbix Agent 2\zabbix_agent2.conf
-f --foreground Ejecutar Zabbix agent en primer plano (predeterminado: true).
-p --print Imprimir los items conocidos y salir.
Nota: Para devolver también los resultados de parámetros de usuario, debe especificar el archivo de configuración (si no está en la ubicación predeterminada).
-t --test <item key> Probar el item especificado y salir.
Nota: Para devolver también los resultados de parámetros de usuario, debe especificar el archivo de configuración (si no está en la ubicación predeterminada).
-T --test-config Validar el archivo de configuración y salir.
-h --help Imprimir la información de ayuda y salir.
-v --verbose Imprimir información de depuración. Utilice esta opción con las opciones -p y -t.
-V --version Imprimir la versión del agent y la información de licencia.
-R --runtime-control <option> Realizar funciones administrativas. Consulte control en tiempo de ejecución.
Solo agent de Windows
-m --multiple-agents Usar múltiples instancias de agent (con las opciones -i, -d, -s, -x).
Para distinguir los nombres de servicio de las instancias, cada nombre de servicio incluirá el valor de Hostname del archivo de configuración especificado.
-S --startup-type <value> Establecer el tipo de inicio del servicio Zabbix Windows agent. Valores permitidos:
automatic - (predeterminado) iniciar el servicio automáticamente al arrancar Windows;
delayed - retrasar el inicio del servicio hasta que los servicios iniciados automáticamente hayan completado su arranque;
manual - iniciar el servicio manualmente (por un usuario o una aplicación);
disabled - deshabilitar el servicio, de modo que no pueda ser iniciado por un usuario o una aplicación.
Puede utilizar esta opción junto con la opción -i, o por separado para modificar el tipo de inicio de un servicio ya instalado.
-i --install Instalar Zabbix Windows agent como servicio.
-d --uninstall Desinstalar el servicio Zabbix Windows agent.
-s --start Iniciar el servicio Zabbix Windows agent.
-x --stop Detener el servicio Zabbix Windows agent.

Ejemplos específicos de uso de parámetros de línea de comandos:

  • imprimir todos los items integrados del agent con valores
  • probar un parámetro de usuario con la clave "mysql.ping" definida en el archivo de configuración especificado
  • instalar un servicio "Zabbix Agent" para Windows usando la ruta predeterminada al archivo de configuración C:\Program Files\Zabbix Agent 2\zabbix_agent2.conf
  • modificar el tipo de inicio de un servicio "Zabbix Agent" instalado para Windows usando el archivo de configuración zabbix_agent2.conf ubicado en la misma carpeta que el ejecutable del agent
zabbix_agent2 --print
zabbix_agent2 -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
zabbix_agent2.exe -i
zabbix_agent2.exe -c zabbix_agent2.conf -S delayed
Control de tiempo de ejecución

El control en tiempo de ejecución proporciona algunas opciones para el control remoto.

Opción Descripción
log_level_increase Aumentar el nivel de registro.
log_level_decrease Disminuir el nivel de registro.
metrics Lista de métricas disponibles.
version Mostrar versión del agente.
userparameter_reload Recargar los valores de las opciones UserParameter e Include del archivo de configuración actual.
help Mostrar información de ayuda sobre el control del tiempo de ejecución.

Ejemplos:

  • aumentar el nivel de registro para el agente 2
  • mostrar opciones de control de tiempo de ejecución
zabbix_agent2 -R log_level_increase
zabbix_agent2 -R help

Archivo de configuración

Los parámetros de configuración de Zabbix agent 2 coinciden en su mayoría con los de Zabbix agent, con algunas excepciones:

Parámetros Descripción
Parámetros de configuración específicos de Zabbix agent 2
ControlSocket La ruta del socket de control en tiempo de ejecución. Zabbix agent 2 utiliza un socket de control para los comandos en tiempo de ejecución.
EnablePersistentBuffer,
PersistentBufferFile,
PersistentBufferPeriod
Estos parámetros se utilizan para configurar el almacenamiento persistente en Zabbix agent 2 para los items activos.
ForceActiveChecksOnStart Determina si el agent debe realizar comprobaciones activas inmediatamente después de reiniciarse o distribuirlas uniformemente a lo largo del tiempo.
Plugins Los plugins pueden tener sus propios parámetros, en el formato Plugins.<Plugin name>.<Parameter>=<value>. Un parámetro común de plugin es System.Capacity, que establece el límite de comprobaciones que pueden ejecutarse al mismo tiempo.
StatusPort El puerto en el que Zabbix agent 2 escuchará solicitudes HTTP de estado y mostrará una lista de plugins configurados y algunos parámetros internos.
Parámetros de configuración específicos de Zabbix agent no compatibles con Zabbix agent 2
AllowRoot,
User
No compatibles con Zabbix agent 2 porque no admite la ejecución como daemon.
EnableRemoteCommands Obsoleto; en su lugar se utilizan los parámetros AllowKey y DenyKey en ambos agents.
ListenBacklog Se utiliza en Zabbix agent para definir el número máximo de conexiones pendientes en la cola TCP. No es compatible con Zabbix agent 2.
LoadModule,
LoadModulePath
Los módulos cargables no son compatibles con Zabbix agent 2.
MaxLinesPerSecond,
LogRemoteCommands
En Zabbix agent 2, se utilizan en su lugar Plugins.Log.MaxLinesPerSecond y Plugins.SystemRun.LogRemoteCommands.
StartAgents Este parámetro se utiliza en Zabbix agent para aumentar la concurrencia de las comprobaciones pasivas o deshabilitarlas. En Zabbix agent 2, la concurrencia se configura a nivel de plugin y puede limitarse mediante una configuración de capacidad. Las comprobaciones pasivas se deshabilitan en Zabbix Agent 2 si no se especifica el parámetro Server.

Para más detalles, consulte las opciones del archivo de configuración para Zabbix agent2.

Códigos de salida

Zabbix Agent 2 también se puede compilar con versiones anteriores de OpenSSL (1.0.1, 1.0.2).

En este caso, Zabbix proporciona exclusiones mutuas para bloquear OpenSSL. Si un bloqueo o desbloqueo de mutex falla y se imprime un mensaje de error en el flujo estándar de error (STDERR) y el Agente 2 sale con el código de retorno 2 o 3, respectivamente.