10 Zabbix agent en Microsoft Windows
Configuración del agent
Ambas generaciones de agents de Zabbix se ejecutan como un servicio de Windows. Para Zabbix agent 2, sustituya agentd por agent2 en las instrucciones siguientes.
Puede ejecutar una única instancia de Zabbix agent o varias instancias del agent en un host de Microsoft Windows. Una única instancia puede utilizar una de las siguientes opciones:
- el archivo de configuración predeterminado, ubicado en el mismo directorio que el binario del agent;
- un archivo de configuración especificado en la línea de comandos.
En el caso de varias instancias, cada instancia del agent debe tener su propio archivo de configuración (una de las instancias puede utilizar el archivo de configuración predeterminado).
Hay un archivo de configuración de ejemplo disponible en el archivo de código fuente de Zabbix como:
conf/zabbix_agentd.confpara Zabbix agent;conf/zabbix_agent2.confpara Zabbix agent 2.
Si desea instalar Zabbix agent/agent 2 para Windows como un servicio desde un archivo sin especificar explícitamente el archivo de configuración, antes de instalar el agent:
conf/zabbix_agentd.confdebe copiarse manualmente en el directorio donde se instalará zabbix_agentd.exe;conf/zabbix_agent2.confy el directorioconf/zabbix_agent2.ddeben copiarse manualmente en el directorio donde se instalará zabbix_agent2.exe.
Consulte las opciones del archivo de configuración para obtener más información sobre la configuración del agent de Zabbix para Windows.
Parámetro Hostname
Para realizar comprobaciones activas en un host, el Zabbix agent debe tener definido el nombre del host. Además, el valor del nombre del host establecido en el lado del agent debe coincidir exactamente con el "Nombre del host" configurado para el host en el frontend.
El valor del nombre del host en el lado del agent se puede definir mediante el parámetro Hostname o HostnameItem en el archivo de configuración del agent; si no se especifica ninguno de estos parámetros, se utilizan los valores predeterminados.
El valor predeterminado del parámetro HostnameItem es el valor devuelto por la clave del agent "system.hostname". En Windows, esta clave devuelve el resultado de la función gethostname(), que consulta los proveedores de espacios de nombres para determinar el nombre del host local. Si ningún proveedor de espacios de nombres responde, se devuelve el nombre de NetBIOS.
El valor predeterminado de Hostname es el valor devuelto por el parámetro HostnameItem.
Por lo tanto, si no se especifica ninguno de estos parámetros, el nombre del host real será el nombre de NetBIOS del host; el Zabbix agent utilizará el nombre de host de NetBIOS para recuperar la lista de comprobaciones activas del 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 de host de NetBIOS, que está limitado a 15 caracteres y solo utiliza MAYÚSCULAS;
- host: distingue entre mayúsculas y minúsculas; devuelve el nombre de host completo y real de Windows (sin el dominio);
- shorthost: devuelve la parte del nombre del host anterior al primer punto. Devuelve la cadena completa si el nombre no contiene ningún 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): utiliza el uso original de mayúsculas y minúsculas;
- lower: convierte el texto a minúsculas.
Para simplificar la configuración del archivo zabbix_agentd.conf y unificarla, se pueden utilizar tres enfoques diferentes:
- Dejar sin definir los parámetros Hostname o HostnameItem; el Zabbix agent utilizará el nombre de host de NetBIOS como nombre del host.
- Dejar sin definir el parámetro Hostname y definir HostnameItem de la siguiente manera:
HostnameItem=system.hostname[host]: para que el Zabbix agent utilice el nombre de host completo y real de Windows, distinguiendo entre mayúsculas y minúsculas, como nombre del host.
HostnameItem=system.hostname[shorthost,lower]: para que el Zabbix agent utilice únicamente la parte del nombre del host anterior al primer punto, convertida a minúsculas.
HostnameItem=system.hostname[fqdn]: para que el Zabbix agent utilice 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 emplea para instalar, iniciar, detener y desinstalar el servicio de Windows.
Por ejemplo, si el archivo de configuración del Zabbix agent especifica Hostname=Windows_db_server, el agent se instalará como un servicio de Windows denominado "Zabbix Agent [Windows_db_server]".
Por lo tanto, para tener un nombre de servicio de Windows diferente para cada instancia del Zabbix agent, cada instancia debe utilizar un nombre de host diferente.
Instalación del agent como servicio de Windows
Antes de instalar el agent, copie manualmente conf/zabbix_agentd.conf en el directorio donde se instalará zabbix_agentd.exe.
Para instalar una única instancia del agent de Zabbix con el archivo de configuración predeterminado:
zabbix_agentd.exe --install
En un sistema de 64 bits, se requiere una versión de 64 bits del agent de Zabbix para que todas las comprobaciones relacionadas con procesos de 64 bits en ejecución funcionen correctamente.
Si desea utilizar un archivo de configuración distinto del predeterminado, debe utilizar el siguiente comando para instalar el servicio:
zabbix_agentd.exe --config <your_configuration_file> --install
Debe especificarse la ruta completa al archivo de configuración.
Se pueden instalar varias instancias del agent de Zabbix como servicios de la siguiente manera:
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 debería estar visible ahora en el Panel de control.
Iniciar el agent
Para iniciar el servicio del agent, puede utilizar el Panel de control o hacerlo desde la línea de comandos.
Para iniciar una única instancia del agent de Zabbix con el archivo de configuración predeterminado:
zabbix_agentd.exe --start
Para iniciar una única instancia del agent de Zabbix con otro archivo de configuración:
zabbix_agentd.exe --config <your_configuration_file> --start
Para iniciar una de varias instancias del agent de Zabbix:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --start --multiple-agents
Detener el agent
Para detener el servicio del agent, puede utilizar el Panel de control o hacerlo desde la línea de comandos.
Para detener una única instancia del agent de Zabbix iniciada con el archivo de configuración predeterminado:
zabbix_agentd.exe --stop
Para detener una única instancia del agent de Zabbix iniciada con otro archivo de configuración:
zabbix_agentd.exe --config <your_configuration_file> --stop
Para detener una de varias instancias del agent de Zabbix:
zabbix_agentd.exe --config <configuration_file_for_this_instance> --stop --multiple-agents
Desinstalación del servicio de Windows del agent
Para desinstalar una única instancia del agent de Zabbix mediante el archivo de configuración predeterminado:
zabbix_agentd.exe --uninstall
Para desinstalar una única instancia del agent de Zabbix mediante un archivo de configuración no predeterminado:
zabbix_agentd.exe --config <your_configuration_file> --uninstall
Para desinstalar varias instancias del agent de 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 agent de Zabbix para Windows no admite configuraciones de Windows no estándar en las que las CPU se distribuyen de forma no uniforme entre los nodos NUMA. Si las CPU lógicas se distribuyen de forma 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.