meta data de esta página
Agente JMX
Documento Original de Samuel Ruiz ((http://samuelasir.tk/dokuwiki/doku.php?id=servicios_web:zabbix:agente_jmx))
Con Zabbix podemos monitorizar un servidor tomcat mediante un agente JMX. Para ello debemos de realizar lo siguiente:
Paso 1: instalar java.
yum install java-1.6.0
Paso 2: instalar zabbix-java-Gateway
rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-java-gateway-2.2.3-1.el6.x86_64.rpm
Paso 3: configurar java en el equipo monitorizado
Podemos configurar el acceso mediante JMX de dos maneras
- Sin autentificación <code> java \
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=12345
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-jar /usr/share/doc/openjdk-6-jre-headless/demo/jfc/Notepad/Notepad.jar </code>
- Con autentificación <code>
java
-Djava.rmi.server.hostname=x.x.x.x
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=12345
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.password.file=/etc/java-6-openjdk/management/jmxremote.password
-Dcom.sun.management.jmxremote.access.file=/etc/java-6-openjdk/management/jmxremote.access
-Dcom.sun.management.jmxremote.ssl=true
-Djavax.net.ssl.keyStore=$YOUR_KEY_STORE
-Djavax.net.ssl.keyStorePassword=$YOUR_KEY_STORE_PASSWORD
-Djavax.net.ssl.trustStore=$YOUR_TRUST_STORE
-Djavax.net.ssl.trustStorePassword=$YOUR_TRUST_STORE_PASSWORD
-Dcom.sun.management.jmxremote.ssl.need.client.auth=true
-jar /usr/share/doc/openjdk-6-jre-headless/demo/jfc/Notepad/Notepad.jar</code>
Por último reiniciamos el Tomcat
Paso 4: modificar archivo de configuración de zabbix.
Modificamos el archivo “/etc/zabbix/zabbix_server.conf” las siguientes líneas:
JavaGateway: IP del servidor zabbix.
JavaGatewayPort: el puerto por el que escuchará zabbix.
StartJavaPollers: le daremos el valor 5.
Reiniciamos el zabbix
service zabbix-server restart
Paso 5: crear un nuevo host zabbix.
Configuration→host→create host
- Debemos rellenar el nombre del host.
- Añadirlo a un grupo
- Agregar la interfaz JMX (el puerto será el que hayamos indicado en el paso 3).
- Guardar la configuración.
Paso 6: crear un ítem a monitorizar.
Configuration→host→ítem→créate ítem
- Name: nombre del ítem.
- Type: JMX agent.
- Key: ruta del ítem.
- Host interface: dirección IP y puerto.
- User name: usuario (si lo tiene).
- Password: contraseña.
- Type od information: tipo de dato que vamos a recibir.
- Update interval: cada cuanto tiempo actualizaremos el ítem.
- Guardamos el ítem.
- El primero es el nombre del objeto: que representa el nombre del objeto de MBean.
- El segundo es el atributo de ese objeto.
Estos ítems los podemos buscar con la aplicación jconsole, aunque cuando instalas JDK ( versión 1.5) podemos encontrar la herramienta jvisualVM que está mucho más completa.
