5 Pasarela Java

Descripción general

La pasarela Java de Zabbix puede instalarse desde código fuente o paquetes.

Existe soporte nativo para la monitorización de aplicaciones JMX en forma de un demonio de Zabbix llamado "pasarela Java de Zabbix". La pasarela Java de Zabbix es un demonio escrito en Java. Para averiguar el valor de un contador JMX concreto en un host, el servidor Zabbix consulta a la pasarela Java de Zabbix, que utiliza la API de gestión JMX para consultar la aplicación de interés de forma remota. La aplicación no necesita ningún software adicional instalado, solo debe iniciarse con la opción -Dcom.sun.management.jmxremote en la línea de comandos.

La pasarela Java acepta conexiones entrantes desde el servidor o proxy de Zabbix y solo puede usarse como un "proxy pasivo". A diferencia del proxy de Zabbix, también puede usarse desde el proxy de Zabbix (los proxies de Zabbix no pueden encadenarse). El acceso a cada pasarela Java se configura directamente en el archivo de configuración del servidor o proxy de Zabbix, por lo que solo se puede configurar una pasarela Java por servidor o proxy de Zabbix. Si un host tiene elementos de tipo agente JMX y elementos de otro tipo, solo los elementos agente JMX se enviarán a la pasarela Java para su recuperación.

Cuando una métrica debe actualizarse a través de una puerta de enlace Java, un servidor Zabbix o un proxy se conectará a la puerta de enlace de Java y solicitará el valor, que la puerta de enlace Java, a su vez, recupera y devuelve al servidor o proxy. De este modo, la puerta de enlace Java no almacena en caché ningún valor.

El servidor o proxy Zabbix tiene un tipo específico de procesos que se conectan a la puerta de enlace Java, controlado por la opción StartJavaPollers. Internamente, la puerta de enlace Java inicia múltiples subprocesos, controlados por la opción START_POLLERS. Del lado del servidor, si una conexión tarda más de Timeout segundos, finalizará, pero es posible que la puerta de enlace Java aún esté ocupada recuperando el valor del contador JMX. Para solucionar esto, existe la opción TIMEOUT en la puerta de enlace de Java que permite establecer el tiempo de espera para las operaciones de la red JMX.

El servidor o proxy Zabbix intentarán agrupar solicitudes en un único objetivo JMX tanto como sea posible (dependiendo de los intervalos de las métricas) y las enviará a la puerta de enlace de Java en una única conexión para un mejor rendimiento.

Se sugiere tener StartJavaPollers menor o igual a START_POLLERS; de lo contrario, puede haber situaciones en las que no haya hilos disponibles en la puerta de enlace de Java para atender las solicitudes entrantes; en tal caso, la puerta de enlace Java utiliza ThreadPoolExecutor.CallerRunsPolicy, es decir que el hilo principal atenderá la solicitud entrante y no aceptará otras solicitudes nuevas temporalmente.

Si está intentando monitorear aplicaciones Java basadas en Wildfly con la puerta de enlace Java Zabbix, instale el último jboss-client.jar disponible en la página de descarga de Wildfly.