Zabbix Java(JMX)監視の方法

こんにちは、SCSK株式会社の小寺崇仁です。

今回は「Java(JMX)監視」について設定方法を紹介します。

Java(JMX)監視とは

Javaのプロセス内部は複雑で、独自のメモリ管理や、様々な処理が行われています。ZabbixではJavaのプロセスを監視することができ、テンプレートも準備されています。

しかし、設定が難しくあまり使われていないように思います。今回は、Zabbixサーバ側の設定とプロセス側の設定についてご紹介します。

Zabbixサーバーの設定

Javaを監視するには、「zabbix-java-gateway」といパッケージをインストールする必要があります。
「zabbix-java-gateway」サービスを起動して、「zabbix-server」から接続する設定をします。

インストール

# dnf install zabbix-java-gateway
# systemctl start zabbix-java-gateway
# systemctl enable zabbix-java-gateway

設定

# vi /etc/zabbix/zabbix_server.conf
JavaGateway=127.0.0.1
StartJavaPollers=1
# systemctl restart zabbix-server

Javaプロセス側の設定

Javaのプロセス側ではJMXでリモート接続できるようにする必要があります。
設定を有効にするには起動時に以下のオプションを設定します。

-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=12345
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false

次に設定方法の例をご紹介します。

単純なJavaプロセス

起動時の引数に設定します。先日のSeleniumサーバの場合、次のように設定します。

java -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -jar selenium-server-4.21.0.jar standalone --selenium-manager true 

Tomcatの場合 

次の手順で確認しました。Tomcatではsetenv.shを作成すればオプションを読み込みます。

# mkdir /opt/tomcat
# cd /opt/tomcat/
# wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.25/bin/apache-tomcat-10.1.25.tar.gz
# tar zxvf apache-tomcat-10.1.25.tar.gz

# vi /opt/tomcat/apache-tomcat-10.1.25/bin/setenv.sh
#!/bin/sh
CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
export CATALINA_OPTS

# /opt/tomcat/apache-tomcat-10.1.25/bin/startup.sh

Zabbixのホスト作成

ホスト 任意  
テンプレート Generic Java JMX
Apache Tomcat by JMX
単純なプロセス用
Tomcat用
ホストグループ 任意  
インターフェース JMX  
 IPアドレス プロセスが起動しているサーバのIP  
 ポート 引数で指定したポート  


値の取得

このような形で値の取得ができます。

最後に

弊社ではZabbix関連サービスを展開しています。以下ページもご参照ください。

SCSK Plus サポート for Zabbix

★YouTubeに、SCSK Zabbixチャンネルを開設しました!★

★X(旧Twitter)に、SCSK Zabbixアカウントを開設しました!★

タイトルとURLをコピーしました