#5 Pasarela Java
El soporte nativo para monitorear aplicaciones JMX existe en forma de un Demonio de Zabbix llamado "Zabbix Java gateway", disponible desde Zabbix 2.0. Zabbix Java gateway es un demonio escrito en Java. Para saber el valor de un contador JMX particular en un host, el servidor Zabbix consulta a Zabbix Java puerta de enlace, que utiliza la [administración JMX API] (http://java.sun.com/javase/technologies/core/mntr-mgmt/javamanagement/) para consultar la aplicación de interés de forma remota. La aplicación no necesita cualquier software adicional instalado, solo tiene que iniciarse con Opción -Dcom.sun.management.jmxremote
en la línea de comando.
La puerta de enlace Java acepta la conexión entrante del servidor Zabbix o proxy y solo se puede usar como un "proxy pasivo". A diferencia del proxy de Zabbix, también se puede usar desde el proxy Zabbix (los proxies Zabbix no se pueden encadenar). El acceso a cada puerta de enlace Java se configura directamente en el servidor Zabbix o archivo de configuración de proxy, por lo que solo se puede configurar una puerta de enlace Java por servidor Zabbix o proxy Zabbix. Si un host tendrá elementos de tipo Agente JMX y artículos de otro tipo, solo los artículos Agente JMX pasarse a la puerta de enlace de Java para su recuperación.
Cuando un elemento debe actualizarse a través de la puerta de enlace Java, el servidor Zabbix o el proxy se conectará a la puerta de enlace de Java y solicitará el valor, que Java la puerta de enlace, a su vez, recupera y pasa de vuelta al servidor o proxy. Como por lo tanto, la puerta de enlace de Java no almacena en caché ningún valor.
El servidor o proxy Zabbix tiene un tipo específico de procesos que se conectan a Pasarela Java, controlada por la opción StartJavaPollers. Internamente, La puerta de enlace de Java inicia varios subprocesos, controlados por el INICIO_SONDEADORES opción. Sobre el del lado del servidor, si una conexión tarda más de Tiempo de espera segundos, se terminará, pero la puerta de enlace de Java aún podría estar ocupada recuperando valor del contador JMX. Para solucionar esto, existe el TIMEOUT opción en la puerta de enlace de Java que permite establecer el tiempo de espera para la red JMX operaciones.
El servidor o proxy Zabbix intentará agrupar las solicitudes en un solo objetivo JMX juntos tanto como sea posible (afectados por los intervalos de elementos) y enviarlos a la puerta de enlace de Java en una sola 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 subprocesos están disponibles en la puerta de enlace de Java para dar servicio a las solicitudes entrantes; de tal un caso de puerta de enlace Java utiliza ThreadPoolExecutor.CallerRunsPolicy, lo que significa que el subproceso principal atenderá la solicitud entrante y temporalmente no aceptará ninguna nueva solicitud.
When an item has to be updated over Java gateway, Zabbix server or proxy will connect to the Java gateway and request the value, which Java gateway in turn retrieves and passes back to the server or proxy. As such, Java gateway does not cache any values.
Zabbix server or proxy has a specific type of processes that connect to Java gateway, controlled by the option StartJavaPollers. Internally, Java gateway starts multiple threads, controlled by the START_POLLERS option. On the server side, if a connection takes more than Timeout seconds, it will be terminated, but Java gateway might still be busy retrieving value from the JMX counter. To solve this, there is the TIMEOUT option in Java gateway that allows to set timeout for JMX network operations.
Zabbix server or proxy will try to pool requests to a single JMX target together as much as possible (affected by item intervals) and send them to the Java gateway in a single connection for better performance.
It is suggested to have StartJavaPollers less than or equal to START_POLLERS, otherwise there might be situations when no threads are available in the Java gateway to service incoming requests; in such a case Java gateway uses ThreadPoolExecutor.CallerRunsPolicy, meaning that the main thread will service the incoming request and temporarilylabel will not accept any new requests.
If you are trying to monitor Wildfly-based Java applications with Zabbix Java gateway, please install the latest jboss-client.jar available on the Wildfly download page.
Puede instalar la puerta de enlace de Java desde las fuentes o desde los paquetes. descargado del [sitio web de Zabbix] (http://www.zabbix.com/download.php).
Usando los enlaces a continuación, puede acceder a la información sobre cómo obtener y ejecutar Pasarela Zabbix Java, cómo configurar el servidor Zabbix (o el proxy Zabbix) para use la puerta de enlace Zabbix Java para el monitoreo de JMX y cómo configurar Zabbix elementos en la interfaz de Zabbix que corresponden a contadores JMX particulares.
Instalación desde | Instrucciones | Instrucciones |
---|---|---|
Fuentes | Instalación | Configuración |
Paquetes de RHEL/CentOS | Instalación | Configuración |
Paquetes Debian/Ubuntu | Instalación | Configuración |