Es posible permitir la autorregistro de agentes activos de Zabbix, después de lo cual el server puede comenzar a monitorearlos. De esta manera, se pueden agregar nuevos hosts para su monitoreo sin configurarlos manualmente en el server.
El autorregistro puede ocurrir cuando un agente activo previamente desconocido solicita comprobaciones.
La función puede ser muy útil para el monitoreo automático de nuevos nodos en la Nube. Tan pronto como tenga un nuevo nodo en la Nube, Zabbix comenzará automáticamente la recopilación de datos de rendimiento y disponibilidad del host.
El autorregistro de agentes activos también admite el monitoreo de hosts agregados con comprobaciones pasivas. Cuando el agente activo solicita comprobaciones, siempre que tenga definidos los parámetros de configuración ListenIP o ListenPort en el archivo de configuración, estos se envían al server. Si se especifican varias direcciones IP, la primera se envía al server.
El server, al agregar el nuevo host autorregistrado, utiliza la dirección IP y el puerto recibidos para configurar el agent. Si no se recibe un valor de dirección IP, se utiliza la que se usó para la conexión entrante. Si no se recibe un valor de puerto, se utiliza 10050.
Es posible especificar que el host debe autorregistrarse con un nombre DNS como la interfaz de agent predeterminada.
El autorregistro se vuelve a ejecutar:
El intervalo de latido del autorregistro de agentes activos para el server y el proxy de Zabbix es de 120 segundos. Por lo tanto, en caso de que se elimine un host descubierto, el autorregistro se volverá a ejecutar en 120 segundos.
Asegúrese de que el server de Zabbix esté identificado en el archivo de configuración del agent - zabbix_agentd.conf:
A menos que defina específicamente un Hostname en zabbix_agentd.conf, el server utilizará el nombre de host del sistema donde se encuentra el agent para nombrar el host. El nombre de host del sistema en Linux se puede obtener ejecutando el comando hostname.
Si Hostname se define en la configuración del agent de Zabbix como una lista de hosts separada por comas, se crearán hosts para todos los nombres de host listados.
Reinicie el agent después de realizar cualquier cambio en el archivo de configuración.
Cuando el server recibe una solicitud de autoregistro de un agent, llama a una acción. Debe configurarse una acción con fuente de evento "Autoregistro" para el autoregistro de agent.
No es necesario configurar el descubrimiento de red para que los agent activos se autoregistren.
En el frontend de Zabbix, vaya a Alertas → Acciones, seleccione Acciones de autoregistro y haga clic en Crear acción:
Si es probable que los hosts que se autoregistrarán solo sean compatibles con la monitorización activa (como los hosts que están protegidos por firewall desde su Zabbix server), entonces puede que desee crear un template específico como Template_Linux-active para vincularlo.
Los hosts creados se agregan al grupo Discovered hosts (por defecto, configurable en Administración > General > Otros). Si desea que los hosts se agreguen a otro grupo, agregue una operación Eliminar del grupo de hosts (especificando "Discovered hosts") y también agregue una operación Agregar al grupo de hosts (especificando otro grupo de hosts), porque un host debe pertenecer a un grupo de hosts.
Es posible un método seguro de autoregistro configurando la autenticación basada en PSK con conexiones cifradas.
El nivel de cifrado se configura globalmente en Administración > General > Autoregistro. Es posible seleccionar sin cifrado, cifrado TLS con autenticación PSK o ambos (de modo que algunos hosts puedan registrarse sin cifrado mientras que otros lo hagan mediante cifrado).
La autenticación por PSK es verificada por el servidor Zabbix antes de añadir un host. Si tiene éxito, el host se añade y las Conexiones desde/hacia el host se establecen solo en 'PSK' con la identidad/clave precompartida igual que en la configuración global de autoregistro.
Para garantizar la seguridad del autoregistro en instalaciones que utilizan proxies, debe habilitarse el cifrado entre el servidor Zabbix y el proxy.
Los parámetros de configuración HostInterface y HostInterfaceItem parámetros de configuración permiten especificar un valor personalizado para la interfaz del host durante la autorregistro.
Más específicamente, son útiles si el host debe autorregistrarse con un nombre DNS como la interfaz de agent predeterminada en lugar de su dirección IP. En ese caso, el nombre DNS debe especificarse o devolverse como el valor de los parámetros HostInterface o HostInterfaceItem. Si el valor de uno de estos parámetros cambia, por ejemplo, de una dirección IP a un nombre DNS o viceversa, la interfaz predeterminada del host autorregistrado se actualizará en consecuencia. Esta actualización se aplica al host existente, no creando uno nuevo. Para enviar el nuevo valor, el agent debe reiniciarse para que reinicie el proceso de autorregistro.
Si los parámetros HostInterface o HostInterfaceItem no están configurados, se utiliza el parámetro listen_dns. Este valor se determina realizando una búsqueda DNS inversa de la dirección IP del agent. Si la resolución DNS inversa no está configurada correctamente o devuelve un nombre no válido, puede dar lugar a un autorregistro incorrecto o fallido debido a un valor de interfaz no válido.
Cuando el agent envía una solicitud de autorregistro al server, envía su nombre de host. En algunos casos (por ejemplo, nodos en la nube de Amazon) un nombre de host no es suficiente para que el server de Zabbix diferencie los hosts descubiertos. Opcionalmente, se pueden usar metadatos de host para enviar otra información desde un agent al server.
Los metadatos de host se configuran en el archivo de configuración del agent - zabbix_agentd.conf. Hay 2 formas de especificar los metadatos de host en el archivo de configuración:
Consulte la descripción de las opciones en el enlace anterior.
El parámetro HostMetadataItem puede devolver hasta 65535 puntos de código UTF-8. Un valor más largo será truncado.
Tenga en cuenta que en MySQL, la longitud máxima efectiva en caracteres será menor si el valor devuelto contiene caracteres multibyte. Por ejemplo, un valor que contenga solo caracteres de 3 bytes se limitará a 21844 caracteres en total, mientras que un valor que contenga solo caracteres de 4 bytes se limitará a 16383 símbolos.
Se produce un intento de autorregistro cada vez que un agent activo envía una solicitud para actualizar las comprobaciones activas al server. El retraso entre solicitudes se especifica en el parámetro RefreshActiveChecks del agent. La primera solicitud se envía inmediatamente después de reiniciar el agent.
Supongamos que desea que los hosts se autoregistren en el servidor Zabbix. Tiene agentes Zabbix activos (ver la sección "Configuración" arriba) en su red. Hay hosts Windows y Linux en su red y tiene disponibles las plantillas "Linux by Zabbix agent" y "Windows by Zabbix agent" en su frontend de Zabbix. Por lo tanto, al registrar el host, le gustaría que la plantilla adecuada de Linux/Windows se aplique al host que se está registrando. Por defecto, solo el nombre del host se envía al servidor durante el autoregistro, lo que podría no ser suficiente. Para asegurarse de que la plantilla adecuada se aplique al host, debe usar metadatos del host.
Configuración del frontend
Lo primero que hay que hacer es configurar el frontend. Cree 2 acciones. La primera acción:
En este caso puede omitir la operación "Añadir host". Vincular un template a un host requiere añadir primero el host, por lo que el server lo hará automáticamente.
La segunda acción:
Configuración del agent
Ahora necesita configurar los agents. Agregue la siguiente línea a los archivos de configuración del agent:
De esta manera, se asegura de que los metadatos del host contengan "Linux" o "Windows" dependiendo del host en el que se esté ejecutando el agent. Un ejemplo de metadatos del host en este caso:
Linux: Linux server3 3.2.0-4-686-pae #1 SMP Debian 3.2.41-2 i686 GNU/Linux
Windows: Windows WIN-0PXGGSTYNHO 6.0.6001 Windows Server 2008 Service Pack 1 Intel IA-32No olvide reiniciar el agent después de realizar cualquier cambio en el archivo de configuración.
Paso 1 - Proteger el registro con HostMetadata
Utilizar metadatos de host para permitir cierta protección básica contra el registro de hosts no deseados.
Configuración del frontend
Cree una acción en el frontend, utilizando algún código secreto difícil de adivinar para evitar hosts no deseados:
Tenga en cuenta que este método por sí solo no proporciona una protección sólida porque los datos se transmiten en texto sin formato. Se requiere recargar la caché de configuración para que los cambios tengan efecto inmediato.
Configuración del agent
Agregue la siguiente línea al archivo de configuración del agent:
donde "Linux" es una plataforma y el resto de la cadena es el texto secreto difícil de adivinar.
No olvide reiniciar el agent después de realizar cualquier cambio en el archivo de configuración.
Paso 2 - Añadir template al host registrado
Es posible añadir templates adicionales a un host ya registrado. En este caso, el template MySQL by Zabbix agent se vinculará solo a los hosts cuyo HostMetadata contenga el token MySQL.
Configuración del frontend
Actualice la acción en el frontend:
Configuración del agent
Actualice la siguiente línea en el archivo de configuración del agent:
No olvide reiniciar el agent después de realizar cualquier cambio en el archivo de configuración.