Tabla de Contenidos

, ,

Monitorizar Servidores Tomcat desde Zabbix

Paso 1

Lo primero que haremos será habilitar Java Management Extension( JMX ) en el Tomcat que queramos monitorizar.

Para habilitar la monitorización por JMX debemos de editar el fichero catalina.sh en mi caso <sxh>vim /opt/tomcat/catalina.sh</sxh>

<sxh> CATALINA_OPTS=“-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false” </sxh>

La opción Dcom.sun.management.jmxremote.authenticate=false deshabilita la autentificación y no debe usarse en producción.

En producción debemos de usar las opciones
-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 \

y crear los ficheros jmxremote.access y jmxremote.password copiando el jmxremote.access.template y cambiándole las contraseñas y los permisos para que sólo sea accesible al usuario que ejecute el Tomcat.

Si sólo queremos monitorizar temporalmente por JMX nuestro servidor

Ojo este método es sólo si no tenemos declarada la variable CATALINA_OPS en el catalina.sh ya que se borrara el valor por el que acabamos de declarar y perderíamos los valores que se hubieran definido con anterioridad
Para comprobar que está habilitado, la monitorización por JMX, podemos usar el programa jconsole que viene incluido con el paquete de desarrollo jdk

Paso 2

El siguiente paso es instalar en el servidor el paquete zabbix java gateway . Si zabbix lo hemos instalado desde los repositorios ejecutamos <sxh>yum install -y zabbix-java-gateway</sxh>

Editamos el fichero /etc/zabbix/zabbix_server.conf Descomentamos las siguientes líneas JavaGateway, JavaGatewayPort y StartJavaPollers

Editamos el fichero /etc/zabbix/zabbix_java_gateway.conf

Descomentamos las siguientes opciones LISTEN_IP, LISTEN_PORT y START_POLLERS y ponemos los siguientes valores

Habilitamos el servicio zabbix-java-gateway <sxh>systemctl enable zabbix-java-gateway.service</sxh>

Arrancamos el servicio <sxh>systemctl start zabbix-java-gateway.service</sxh>

Reiniciamos el servicio del zabbix <sxh>systemctl restart zabbix-server</sxh>

Paso 3

En este paso lo que haremos es añadir el host a monitorizar y asociarle una plantilla.

Nos descargamos la plantilla de https://www.zabbix.com/integrations/tomcat . Yo he utilizado la plantilla https://share.zabbix.com/official-templates/applications/tomcat-template.

La descargo y la importo al zabbix. Configuration→Templates botón de Import

Añadimos el host a monitorizar y le definimos el interface JMX

Le asociamos la plantilla que descargamos para monitorizarlo