Un proxy de Zabbix puede recopilar datos de rendimiento y disponibilidad en nombre del servidor Zabbix. De esta manera, un proxy puede asumir parte de la carga de recopilación de datos y descargar al servidor Zabbix.
Además, usar un proxy es la forma más sencilla de implementar una monitorización centralizada y distribuida, cuando todos los agentes y proxies informan a un único servidor Zabbix y todos los datos se recopilan de forma centralizada.
Un proxy de Zabbix puede usarse para:
El proxy solo requiere una conexión TCP al servidor Zabbix. De esta manera, es más fácil sortear un cortafuegos ya que solo necesita configurar una regla de cortafuegos.
El proxy de Zabbix debe usar una base de datos separada. Apuntarlo a la base de datos del servidor Zabbix romperá la configuración.
Todos los datos recopilados por el proxy se almacenan localmente antes de transmitirlos al servidor. De esta manera, no se pierden datos debido a problemas de comunicación temporales con el servidor. Los parámetros ProxyLocalBuffer y ProxyOfflineBuffer en el archivo de configuración del proxy controlan durante cuánto tiempo se mantienen los datos localmente.
Puede suceder que un proxy, que recibe los últimos cambios de configuración directamente de la base de datos del servidor Zabbix, tenga una configuración más actualizada que el servidor Zabbix cuya configuración puede no actualizarse tan rápido debido al valor de CacheUpdateFrequency. Como resultado, el proxy puede comenzar a recopilar datos y enviarlos al servidor Zabbix que ignora estos datos.
El proxy de Zabbix es un recolector de datos. No calcula disparadores, procesa eventos ni envía alertas. Para obtener una visión general de la funcionalidad del proxy, revise la siguiente tabla:
Función | ¿Soportado por el proxy? | |
---|---|---|
Métricas | ||
Comprobaciones de agente Zabbix | Sí | |
Comprobaciones de agente Zabbix (activas) | Sí 1 | |
Comprobaciones simples | Sí | |
Métricas trapper | Sí | |
Comprobaciones SNMP | Sí | |
Trampas SNMP | Sí | |
Comprobaciones IPMI | Sí | |
Comprobaciones JMX | Sí | |
Monitorización de archivos de registro | Sí | |
Comprobaciones internas | Sí | |
Comprobaciones SSH | Sí | |
Comprobaciones Telnet | Sí | |
Comprobaciones externas | Sí | |
Métricas dependientes | Sí | |
Métricas de script | Sí | |
Métricas de navegador | Sí | |
Monitorización web integrada | Sí | |
Preprocesamiento de valores de métricas | Sí | |
Descubrimiento de red | Sí | |
Autoregistro de agente activo | Sí | |
Descubrimiento de bajo nivel | Sí 2 | |
Comandos remotos | Sí | |
Cálculo de disparadores | No | |
Procesamiento de eventos | No | |
Correlación de eventos | No | |
Envío de alertas | No |
[1] Para asegurarse de que un agente solicite las comprobaciones activas al proxy (y no al servidor), el proxy debe estar listado en el parámetro ServerActive en el archivo de configuración del agente.
[2] Para LLD, el proxy de Zabbix solo recopila y preprocesa los datos y luego los envía al servidor Zabbix para su posterior procesamiento.
Si el servidor Zabbix estuvo inactivo durante algún tiempo y los proxies han recopilado muchos datos, y luego el servidor se inicia, puede sobrecargarse (el uso de la caché de historial permanece en 95-100% durante algún tiempo). Esta sobrecarga podría resultar en una disminución del rendimiento, donde las comprobaciones se procesan más lentamente de lo que deberían. Se implementó una protección contra este escenario para evitar problemas que surgen debido a la sobrecarga de la caché de historial.
Cuando la caché de historial del servidor Zabbix está llena, el acceso de escritura a la caché de historial se ralentiza, deteniendo los procesos de recopilación de datos del servidor. El caso más común de sobrecarga de la caché de historial es después de una inactividad del servidor cuando los proxies están subiendo los datos recopilados. Para evitar esto, se añadió la limitación de los proxies (actualmente no se puede desactivar).
El servidor Zabbix dejará de aceptar datos de los proxies cuando el uso de la caché de historial alcance el 80%. En su lugar, esos proxies se colocarán en una lista de limitación. Esto continuará hasta que el uso de la caché baje al 60%. Ahora el servidor comenzará a aceptar datos de los proxies uno por uno, definidos por la lista de limitación. Esto significa que el primer proxy que intentó subir datos durante el período de limitación será atendido primero y hasta que termine, el servidor no aceptará datos de otros proxies.
Este modo de limitación continuará hasta que el uso de la caché alcance nuevamente el 80%, baje al 20% o la lista de limitación esté vacía. En el primer caso, el servidor dejará de aceptar datos de los proxies nuevamente. En los otros dos casos, el servidor comenzará a funcionar normalmente, aceptando datos de todos los proxies.
La información anterior puede ilustrarse en la siguiente tabla:
Uso de la caché de escritura de historial |
Modo del servidor Zabbix | Acción del servidor Zabbix |
---|---|---|
Alcanza el 80% | Espera | Deja de aceptar datos de los proxies, pero mantiene una lista de limitación (lista priorizada de proxies a contactar más tarde). |
Baja al 60% | Limitado | Comienza a procesar la lista de limitación, pero aún no acepta datos de los proxies. |
Baja al 20% | Normal | Elimina la lista de limitación y comienza a aceptar datos de los proxies normalmente. |
Puede utilizar la métrica interna zabbix[wcache,history,pused]
para correlacionar este comportamiento del servidor Zabbix con una métrica.
Una vez que haya instalado y configurado un proxy, es el momento de configurarlo en el frontend de Zabbix.
Para configurar un proxy en la interfaz web de Zabbix:
Parámetro | Descripción | |
---|---|---|
Nombre del proxy | Introduzca el nombre del proxy. Debe ser el mismo nombre que en el parámetro Hostname en el archivo de configuración del proxy. | |
Grupo de proxy | Seleccione el grupo de proxy para el balanceo de carga/alta disponibilidad del proxy. Solo se puede seleccionar un grupo. |
|
Dirección para agentes activos | Introduzca la dirección a la que deben conectarse los agentes activos o emisores monitorizados. Compatible solo para agentes Zabbix 7.0 o posteriores. Esta dirección se utiliza para conectarse tanto a proxies activos como pasivos. Este campo solo está disponible si se selecciona un grupo de proxy en el campo Grupo de proxy. |
|
Dirección | Dirección IP/nombre DNS al que conectarse. | |
Puerto | Número de puerto TCP (10051 por defecto) al que conectarse. Se admiten macros de usuario. | |
Modo de proxy | Seleccione el modo de proxy. Activo: el proxy se conectará al servidor Zabbix y solicitará los datos de configuración Pasivo: el servidor Zabbix se conecta al proxy Nota: sin comunicaciones cifradas, los datos de configuración del proxy (sensibles) pueden estar disponibles para las partes que tengan acceso al puerto trapper del servidor Zabbix al usar un proxy activo. Esto es posible porque cualquiera puede hacerse pasar por un proxy activo y solicitar datos de configuración si no se realiza la autenticación o las direcciones del proxy no están limitadas en el campo Dirección del proxy. |
|
Dirección del proxy | Si se especifica, solo se aceptan solicitudes de proxy activo desde esta lista de direcciones IP separadas por comas, opcionalmente en notación CIDR, o nombres DNS del proxy Zabbix activo. Este campo solo está disponible si se selecciona un proxy activo en el campo Modo de proxy. No se admiten macros. |
|
Interfaz | Introduzca los detalles de la interfaz para un proxy pasivo. Este campo solo está disponible si se selecciona un proxy pasivo en el campo Modo de proxy. |
|
Dirección | Dirección IP/nombre DNS del proxy pasivo. | |
Puerto | Número de puerto TCP del proxy pasivo (10051 por defecto). Se admiten macros de usuario. | |
Descripción | Introduzca la descripción del proxy. |
La pestaña Cifrado le permite requerir conexiones cifradas con el proxy.
Parámetro | Descripción |
---|---|
Conexiones al proxy | Cómo se conecta el servidor al proxy pasivo: sin cifrado (por defecto), usando PSK (clave precompartida) o certificado. |
Conexiones desde el proxy | Seleccione qué tipo de conexiones se permiten desde el proxy activo. Se pueden seleccionar varios tipos de conexión al mismo tiempo (útil para pruebas y cambio a otro tipo de conexión). El valor por defecto es "Sin cifrado". |
Emisor | Emisor permitido del certificado. El certificado se valida primero con la CA (autoridad certificadora). Si es válido, firmado por la CA, entonces el campo Emisor se puede usar para restringir aún más la CA permitida. Este campo es opcional, destinado a usarse si su instalación de Zabbix utiliza certificados de varias CAs. |
Sujeto | Sujeto permitido del certificado. El certificado se valida primero con la CA. Si es válido, firmado por la CA, entonces el campo Sujeto se puede usar para permitir solo un valor de la cadena Sujeto. Si este campo está vacío, se acepta cualquier certificado válido firmado por la CA configurada. |
Identidad PSK | Cadena de identidad de la clave precompartida. No ponga información sensible en la identidad PSK, ya que se transmite sin cifrar por la red para informar al receptor qué PSK usar. |
PSK | Clave precompartida (cadena hexadecimal). Longitud máxima: 512 dígitos hexadecimales (PSK de 256 bytes) si Zabbix utiliza la biblioteca GnuTLS u OpenSSL, 64 dígitos hexadecimales (PSK de 32 bytes) si Zabbix utiliza la biblioteca mbed TLS (PolarSSL). Ejemplo: 1f87b595725ac58dd977beef14b97461a7c1045b9a1c963065002c5473194952 |
La pestaña Tiempos de espera le permite sobrescribir los tiempos de espera globales para los tipos de métricas que lo admiten.
Parámetro | Descripción |
---|---|
Tiempos de espera para tipos de métricas | Seleccione la opción de tiempo de espera: Global: se utiliza el tiempo de espera global (se muestra en el campo Tiempo de espera atenuado para cada tipo de métrica); Sobrescribir: se utiliza un tiempo de espera personalizado (establecido en el campo Tiempo de espera para cada tipo de métrica). Rango permitido: 1 - 600s (por defecto: heredado de los tiempos de espera globales). Se admiten sufijos de tiempo, por ejemplo, 30s, 1m, y macros de usuario. Al hacer clic en el enlace Tiempos de espera globales puede configurar los tiempos de espera globales. Tenga en cuenta que el enlace Tiempos de espera globales solo es visible para usuarios del tipo Super admin con permisos para la sección de la interfaz Administración → General. Tipos de métricas soportados: - Agente Zabbix (tanto comprobaciones pasivas como activas) - Comprobación simple (excepto métricas icmpping* , vmware.* )- Agente SNMP (solo para métricas SNMP walk[OID] y get[OID] )- Comprobación externa - Monitor de base de datos - Agente HTTP - Agente SSH - Agente TELNET - Script - Navegador Tenga en cuenta que los tiempos de espera establecidos en Sobrescribir prevalecerán sobre los globales, pero serán sobrescritos por los tiempos de espera individuales de las métricas si estos se establecen en la configuración de la métrica. |
Si la versión principal del proxy no coincide con la versión principal del servidor, se mostrará el icono junto a Tiempos de espera para tipos de métricas, con el mensaje al pasar el ratón "Tiempos de espera deshabilitados porque las versiones del proxy y del servidor no coinciden". En tales casos, el proxy utilizará el parámetro
Timeout
del archivo de configuración del proxy.
El formulario de edición de un proxy existente tiene los siguientes botones adicionales:
Puede especificar que un equipo individual debe ser monitorizado por un proxy o grupo de proxies en el formulario de configuración de equipos, utilizando el campo Monitorizado por.
La actualización masiva de equipos es otra forma de especificar que los equipos deben ser monitorizados por un proxy o grupo de proxies.