Zabbix agent 2 es una nueva generación de agente Zabbix, escrito en Go (con algo de código C reutilizado del agente Zabbix). Está diseñado para:
Zabbix agent 2 admite chequeos pasivos y activos, de manera similar al agente Zabbix. Además, los chequeos activos de Zabbix agent 2 admiten intervalos flexibles/programados y concurrencia de chequeos dentro de un mismo servidor activo.
Por defecto, después de un reinicio, Zabbix agent 2 programará la primera recolección de datos para los chequeos activos en un momento condicionalmente aleatorio dentro del intervalo de actualización de la métrica para evitar picos en el uso de recursos. Para realizar chequeos activos que no tengan un intervalo de actualización de Programación intervalos programados inmediatamente después del reinicio del agente, establezca el parámetro ForceActiveChecksOnStart
(a nivel global) o Plugins.<Plugin name>.System.ForceActiveChecksOnStart
(afecta solo a chequeos de un plugin específico) en el archivo de configuración. El parámetro a nivel de plugin, si se establece, anulará el parámetro global.
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 Plugins.<PluginName>.System.Capacity=N
en la configuración de Plugins parámetro.
Para conocer las plataformas compatibles, consulte la página de Requisitos.
El agente 2 de Zabbix en sistemas tipo UNIX se ejecuta en el equipo que se está monitorizando.
El agente Zabbix 2 puede instalarse en sistemas basados en Linux utilizando uno de los siguientes métodos:
--enable-agent2
. Tenga en cuenta que se requiere un entorno Go configurado con una versión de Go compatible para compilar el agente Zabbix 2.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:
Para detener, reiniciar o comprobar el estado del agente Zabbix 2, utilice los siguientes comandos:
Puede iniciar el agente Zabbix localizando el binario zabbix_agent2 y ejecutándolo directamente; por ejemplo:
El agente 2 de Zabbix se ejecuta como un proceso independiente; sin embargo, también puede ejecutarse como un servicio de Windows.
El agente Zabbix 2 puede instalarse en Windows utilizando uno de los siguientes métodos:
Las capacidades de monitorización del agente Zabbix 2 pueden ampliarse con plugins. Mientras que los plugins integrados están disponibles por defecto, los plugins cargables en Windows deben instalarse por separado. Para más información, consulte Plugins cargables.
Consulte la página Agente Zabbix en Microsoft Windows para obtener detalles adicionales sobre la instalación del agente Zabbix 2 (desde un archivo ZIP) como un servicio de Windows.
Se pueden utilizar los siguientes parámetros de línea de comandos con Zabbix agent 2:
Parámetro | Descripción |
---|---|
Agente UNIX y Windows | |
-c --config <archivo-config> | Ruta al archivo de configuración. Puede utilizar esta opción para especificar un archivo de configuración que no sea el 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 (por defecto: true). |
-p --print | Imprimir las métricas conocidas 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 <clave-métrica> | Probar la métrica especificada 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 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 agente e información de licencia. |
-R --runtime-control <opción> | Realizar funciones administrativas. Consulte control en tiempo de ejecución. |
Solo agente Windows | |
-m --multiple-agents | Utilizar múltiples instancias del agente (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 <valor> | Establecer el tipo de inicio del servicio Zabbix Windows agent. Valores permitidos:automatic - (por defecto) inicia el servicio automáticamente al arrancar Windows;delayed - retrasa el inicio del servicio hasta que los servicios iniciados automáticamente hayan finalizado el arranque;manual - inicia el servicio manualmente (por un usuario o aplicación);disabled - deshabilita el servicio, para que no pueda ser iniciado por un usuario o 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:
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
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 | Listar las métricas disponibles. |
version | Mostrar la versión del agente. |
userparameter_reload | Recargar los valores de las opciones UserParameter e Include desde el archivo de configuración actual. |
help | Mostrar información de ayuda sobre el control en tiempo de ejecución. |
Ejemplos:
Los parámetros de configuración del agente 2 son en su mayoría compatibles con el agente Zabbix con algunas excepciones.
Nuevos parámetros | Descripción |
---|---|
ControlSocket | La ruta del socket de control en tiempo de ejecución. El agente 2 utiliza un socket de control para comandos en tiempo de ejecución. |
EnablePersistentBuffer, PersistentBufferFile, PersistentBufferPeriod |
Estos parámetros se utilizan para configurar el almacenamiento persistente en el agente 2 para métricas activas. |
ForceActiveChecksOnStart | Determina si el agente debe realizar comprobaciones activas inmediatamente después del reinicio o distribuirlas uniformemente en el tiempo. |
Plugins | Los plugins pueden tener sus propios parámetros, en el formato Plugins.<Nombre del plugin>.<Parámetro>=<valor> . Un parámetro común de plugin es System.Capacity, que establece el límite de comprobaciones que se pueden ejecutar al mismo tiempo. |
StatusPort | El puerto en el que el agente 2 escuchará solicitudes de estado HTTP y mostrará una lista de plugins configurados y algunos parámetros internos |
Parámetros eliminados | Descripción |
AllowRoot, User | No son compatibles porque la demonización no es compatible. |
LoadModule, LoadModulePath | Los módulos cargables no son compatibles. |
StartAgents | Este parámetro se utilizaba en el agente Zabbix para aumentar la concurrencia de comprobaciones pasivas o deshabilitarlas. En el agente 2, la concurrencia se configura a nivel de plugin y puede limitarse mediante un ajuste de capacidad. Sin embargo, actualmente no se admite la desactivación de comprobaciones pasivas. |
HostInterface, HostInterfaceItem | Aún no son compatibles. |
Para más detalles, consulte las opciones del archivo de configuración para zabbix_agent2.
El agente Zabbix 2 también puede compilarse con versiones antiguas de OpenSSL (1.0.1, 1.0.2).
En este caso, Zabbix proporciona mutexes para el bloqueo en OpenSSL. Si un bloqueo o desbloqueo de mutex falla, se imprime un mensaje de error en el flujo de error estándar (STDERR) y el Agente 2 finaliza con el código de retorno 2 o 3, respectivamente.