Hai Adachinです。
みなさんZabbix使ってますか〜
Zabbixはメリットデメリットたくさんありますがw
今回はJMXの監視(JAVA)の監視方法についてのお話です。
特殊なのでめんどくさいですが。。。
ググると、イマイチ必要ない設定とか記載されてるので、
私独自の方法を紹介します。
これで一発かと。。
■準備
・hostsファイルちゃんと設定してあるか(Javaサーバ)
1 2 3 |
$ cat /etc/hosts 127.0.0.1 localhost 192.168.1.1 adachinjava-server.com |
・IPアドレスの確認
1 2 |
$ hostname -i 192.168.1.1 |
■Zabbix_java_gatewayのインストールと設定
1 2 3 |
・Zabbixサーバにて $ yum install zabbix-java-gateway |
1 |
$ /etc/init.d/zabbix-java-gateway start #起動 |
1 |
$ chkconfig zabbix-java-gateway on #自動起動 |
・zabbix_server.confの編集(Javaサーバにて)
zabbix-agent導入の場合
1 2 3 4 |
$ vim /etc/zabbix/zabbix_agentd.conf JavaGateway=ZabbixサーバのIP[zabbix java gateway ip] JavaGatewayPort=10052[zabbix java gateway default port] StartJavaPollers=1 |
1 |
/etc/init.d/zabbix-server restart #再起動 |
■tomcatシェルの作成
このシェルを使ってZabbixサーバにJavaの通信を許可させます。
書き方は様々ですが、以下の二通りかと思われます。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
$ vim /usr/lib/tomcat/bin/setenv.sh #tomcatインストールしたディレクトリ ###!/bin/sh export CATALINA_OPTS="-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=何番でも -Djava.rmi.server.hostname=JavaサーバのIP -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false" $CATALINA_OPTS" or CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=ポート番号 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false $CATALINA_OPTS" ### |
1 |
$ chmod 755 setenv.sh #権限変更 |
1 |
$ /etc/init.d/tomcat restart #tomcat再起動 |
※Javaのポートが開いてるか確認!!!!
1 |
$ netstat -anp |grep ポート番号 |
or
既に実行にしているならポートが空いてるはず。。。
1 |
$ netstat -anp |grep java |
・それでもダメならiptables開けます(例)
1 |
# iptables -A INPUT -s Javaサーバip -p tcp -m tcp --dport 00000:65535 -j ACCEPT #ネットワーク再起動忘れずに |
■ZabbixでJMX監視登録
・JMX欄があるので記入しましょう!!
・設定>ホスト
・テンプレート追加しないと意味が無い
・確認
最後にちゃんとグラフが表示されるか確認しましょう。
やっほおおおおいいい
■まとめ
これでJavaの監視もバッチグーです。
少し特殊ですが、今後はこんな設定しなくても監視できるようになってほしいですね。。
ハマったのはiptablesくらいですね。
では(・∀・)ノシ
0件のコメント