10 Agente Zabbix en Microsoft Windows

Configurando agente

Ambas generaciones de agentes Zabbix se ejecutan como un servicio de Windows. Para Zabbix agente 2, 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 usar:

  • el archivo de configuración predeterminado, ubicado en el mismo directorio que el binario del agente;
  • un archivo de configuración especificado en la línea de comando.

En caso de múltiples instancias, cada instancia de agente debe tener su propio archivo de configuración (una de las instancias puede 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.conf para el agente Zabbix;
  • conf/zabbix_agent2.conf para Zabbix agent2.

Si desea instalar Zabbix Agent/Agent 2 para Windows como un servicio desde un archivo sin especificar el archivo de configuración explícitamente, entonces, antes de instalar el agente:

  • conf/zabbix_agentd.conf debe copiarse manualmente al directorio donde Se instalará zabbix_agentd.exe;
  • conf/zabbix_agent2.conf y el directorio conf/zabbix_agent2.d deben ser copiados manualmente al directorio donde se instalará zabbix_agent2.exe.

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 host, Zabbix agent necesita tener definido el nombre del host. Además, el valor del nombre del host configurado en el lado del agent debe coincidir exactamente con el "Host name" configurado para el host en el frontend.

El valor del nombre del host en el lado del agent puede definirse mediante el parámetro Hostname o HostnameItem en el archivo de configuración del agent, o bien se usarán los valores predeterminados si no se especifica alguno de estos parámetros.

El valor predeterminado del parámetro HostnameItem es el valor devuelto por la clave de agent "system.hostname". En Windows, devuelve el resultado de la función gethostname(), que consulta a los proveedores de espacio 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 de Hostname es el valor devuelto por el parámetro HostnameItem. Por lo tanto, en la práctica, si ambos parámetros no están especificados, el nombre real del host será el nombre NetBIOS del host; Zabbix agent utilizará el nombre NetBIOS del host para recuperar la lista de comprobaciones activas desde Zabbix server y enviarle los resultados.

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

Type determina el tipo de nombre que debe devolver el item:

  • netbios (predeterminado): devuelve el nombre NetBIOS del host, que está limitado a 15 caracteres y solo en MAYÚSCULAS;
  • host: distingue entre mayúsculas y minúsculas, devuelve el nombre completo y real del host de Windows (sin dominio);
  • shorthost: devuelve la parte del nombre del host anterior al primer punto. Devolverá la cadena completa si el nombre no contiene un punto.
  • fqdn: devuelve el nombre de dominio completo (Fully Qualified Domain Name) sin el punto final.

Transform permite especificar una regla de transformación adicional para el nombre del host:

  • none (predeterminado): usa el uso original de mayúsculas y minúsculas;
  • lower: convierte el texto a minúsculas.

Por lo tanto, para simplificar la configuración del archivo zabbix_agentd.conf y unificarla, se pueden utilizar tres enfoques diferentes:

  1. Deje sin definir los parámetros Hostname o HostnameItem, y Zabbix agent utilizará el nombre NetBIOS del host como nombre del host.
  2. Deje sin definir el parámetro Hostname y defina HostnameItem de esta manera:
    HostnameItem=system.hostname[host]: para que Zabbix agent use el nombre completo y real del host de Windows (distinguiendo entre mayúsculas y minúsculas) como nombre del host.
    HostnameItem=system.hostname[shorthost,lower]: para que Zabbix agent use solo la parte del nombre del host anterior al primer punto, convertida a minúsculas.
    HostnameItem=system.hostname[fqdn]: para que Zabbix agent use el nombre de dominio completo (Fully Qualified Domain Name) como nombre del host.

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

Instalación del agente como servicio de Windows

Antes de instalar el agente, copie conf/zabbix_agentd.conf manualmente al directorio donde se instalará zabbix_agentd.exe.

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

zabbix_agentd.exe --install

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 al predeterminado, debe utilizar el siguiente comando para la instalación del servicio:

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

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

Se pueden instalar varias instancias del agente Zabbix como servicios de esta forma:

  zabbix_agentd.exe --config <configuration_file_for_instance_1> --install --multiple-agents
  zabbix_agentd.exe --config <configuration_file_for_instance_2> --install --multiple-agents
  ...
  zabbix_agentd.exe --config <configuration_file_for_instance_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.