10 Agente Zabbix en Microsoft Windows

Configurando agente

Ambas generaciones de agentes Zabbix se ejecutan como un servicio de Windows. Para el agente 2 de Zabbix , reemplace agentd con agent2 en las instrucciones a continuación.

Puede ejecutar una única instancia del agente Zabbix o varias instancias de el agente en un equipo de Microsoft Windows. Una sola instancia puede utilizar el archivo de configuración predeterminado C:\zabbix_agentd.conf o un archivo de configuración especificado en la línea de comando. En caso de múltiples instancias cada instancia del agente debe tener su propio archivo de configuración (una de las instancias pueden usar el archivo de configuración predeterminado).

Un archivo de configuración de ejemplo está disponible en el archivo fuente de Zabbix como conf/zabbix_agentd.win.conf.

Consulte las opciones del archivo de configuración para obtener detalles sobre la configuración del agente Zabbix para Windows.

Parámetro Hostname

Para realizar comprobaciones activas en un equipo, el agente Zabbix necesita tener definido el nombre de equipo. Además, el nombre de equipo establecido en el lado del agente debe coincidir exactamente con el valor "Host name" configurado para el equipo en la Interfaz.

El valor del nombre de equipo en el lado del agente puede ser definido por el parámetro Hostname o HostnameItem en el archivo de configuración del agente - o se utilizan los valores predeterminados si alguno de estos parámetros no se especifica.

El valor predeterminado para el parámetro HostnameItem es el valor devuelto mediante la clave del agente "system.hostname". Para Windows, devuelve el resultado de la función gethostname(), que consulta a los proveedores de espacios de nombres para determinar el nombre del host local. Si ningún proveedor de espacio de nombres responde, se devuelve el nombre NetBIOS.

El valor predeterminado para Hostname es el valor devuelto por el parámetro HostnameItem. Entonces, en efecto, si ambos parámetros están sin especificar, el nombre de equipo real será el nombre NetBIOS del equipo; el agente zabbix utilizará el nombre de equipo NetBIOS para recuperar la lista de comprobaciones activas desde el servidor Zabbix y enviarle los resultados.

La clave "system.hostname" admite dos parámetros opcionales: type y transform.

El parámetro Type determina el tipo de nombre que debe devolver la métrica. Valores admitidos:

  • netbios (predeterminado): devuelve el nombre de equipo NetBIOS que es limitado hasta 15 símbolos y está en MAYÚSCULAS únicamente;
  • host: distingue entre mayúsculas y minúsculas, devuelve el nombre completo y real del host de Windows (sin dominio);
  • shorthost (compatible desde Zabbix 5.4.7) - devuelve parte del nombre de equipo antes del primer punto. Devolverá una cadena completa si el el nombre no contiene un punto.

El parámetro Transform es compatible desde Zabbix 5.4.7 y permite especificar una regla de transformación adicional para el nombre de equipo. Valores soportados:

  • none (predeterminado): utilice la letra original en mayúsculas y minúsculas;
  • lower - convierte el texto a minúsculas.

Entonces, para simplificar la configuración del archivo zabbix_agentd.conf y hacer unificado, se podrían utilizar dos enfoques diferentes.

  1. Deje los parámetros Hostname o HostnameItem sin definir y el agente Zabbix utilizará el nombre de equipo NetBIOS como nombre de equipo;
  2. Deje el parámetro Hostname sin definir y defina HostnameItem como esto:
    HostnameItem=system.hostname[host] - para que lo use el agente Zabbix el nombre de equipo de Windows completo y real (distingue entre mayúsculas y minúsculas) como nombre de equipo
    HostnameItem=system.hostname[shorthost,lower] - para que el agente Zabbix use solo parte del nombre de equipo antes del primer punto, convertido a minúsculas.

El nombre de equipo también se utiliza como parte del nombre del servicio de Windows que se utiliza para instalar, iniciar, detener y desinstalar el servicio de Windows. Por ejemplo, si el archivo de configuración del agente Zabbix especifica Hostname=Windows_db_server, entonces el agente se instalará como un Servicio de Windows "Zabbix Agent [Windows_db_server]". Por lo tanto, para tener un nombre de servicio de Windows diferente para cada instancia del agente Zabbix, cada instancia debe utilizar un nombre de equipo diferente.

Instalación del agente como servicio de Windows

Para instalar una única instancia del agente Zabbix con el valor predeterminado del archivo de configuración c:\zabbix_agentd.conf:

zabbix_agentd.exe --instalar

En un sistema de 64 bits, una versión del agente Zabbix de 64 bits es necesario para que funcionen correctamente todas las comprobaciones relacionadas con la ejecución de procesos de 64 bits.

Si desea utilizar un archivo de configuración distinto a c:\zabbix_agentd.conf, debe usar el siguiente comando para la instalación del servicio:

zabbix_agentd.exe --config <su_archivo_de_configuración> --install

Se debe especificar una ruta completa al archivo de configuración.

Se pueden instalar varias instancias del agente Zabbix como servicios como este:

  zabbix_agentd.exe --config <archivo_de_configuración_para_instancia_1> --install --multiple-agents
         zabbix_agentd.exe --config <archivo_de_configuración_para_instancia_2> --install --multiple-agents
         ...
         zabbix_agentd.exe --config <archivo_de_configuración_para_instancia_N> --install --multiple-agents

El servicio instalado ahora debería estar visible en el Panel de control.

Iniciando el agente

Para iniciar el servicio del agente, puede utilizar el Panel de control o hacerlo desde línea de comando.

Para iniciar una instancia única del agente Zabbix con el valor predeterminado de archivo de configuración:

 zabbix_agentd.exe --start

Para iniciar una instancia única del agente Zabbix con otra configuración de archivo:

 zabbix_agentd.exe --config <your_configuration_file> --start

Para iniciar una de las múltiples instancias del agente Zabbix:

 zabbix_agentd.exe --config <configuration_file_for_this_instance> --start --multiple-agents

Para el agente

Para detener el servicio del agente, puede usar el Panel de control o hacerlo desde línea de comando.

Para detener una única instancia del agente Zabbix iniciado con el valor predeterminado de archivo de configuración:

 zabbix_agentd.exe --stop

Para detener una sola instancia del agente Zabbix iniciada con otro archivo de configuración:

 zabbix_agentd.exe --config <your_configuration_file> --stopZabbix

Para detener una de las múltiples instancias del agente Zabbix:

 zabbix_agentd.exe --config <configuration_file_for_this_instance> --stop --multiple-agents

Desinstalación del servicio de Windows del agente

Para desinstalar una única instancia del agente Zabbix usando el valor predeterminado de archivo de configuración:

   zabbix_agentd.exe --uninstall

Para desinstalar una única instancia del agente Zabbix utilizando un archivo de configuración distinto al predeterminado:

   zabbix_agentd.exe --config <your_configuration_file> --uninstall

Para desinstalar varias instancias del agente Zabbix de los servicios de Windows:

  zabbix_agentd.exe --config <configuration_file_for_instance_1> --uninstall --multiple-agents
         zabbix_agentd.exe --config <configuration_file_for_instance_2> --uninstall --multiple-agents
         ...
         zabbix_agentd.exe --config <configuration_file_for_instance_N> --uninstall --multiple-agents

Limitaciones

El agente Zabbix para Windows no es compatible con configuraciones de Windows no estándar donde se distribuyen CPU de manera no uniforme entre los nodos NUMA. Si las CPU lógicas están distribuidas de manera no uniforme, es posible que las métricas de rendimiento de la CPU no estén disponibles para algunas CPU. Por ejemplo, si hay 72 CPU lógicas con 2 nodos NUMA, ambos nodos deben tener 36 CPU cada uno.