こんにちは、貴子です。
zabbix_java_gatewayを使って、zabbixでtomcat7の監視を行います。
zabbix-serverとtomcat7はインストール済みとし、
zabbix-java-gateway・zabbix-server・tomcatは全て同じEC2インスタンスにインストールします。
hostnameの確認
127.0.0.1でなく、複数IPではないことを確認します。
hostname -i
10.0.10.39
zabbix_java_gatewayのインストールと設定
zabbix_java_gatewayをyumでインストールします。
yum install zabbix-java-gateway
zabbix_java_gatewayを起動させ、Daemonに登録します
/etc/init.d/zabbix-java-gateway start
chkconfig zabbix-java-gateway on
zabbix-server側の設定を行います。
JavaGateway=10.0.10.39 [zabbix java gateway ip] JavaGatewayPort=10052 [zabbix java gateway default port] StartJavaPollers=1
設定を反映させるために、zabbix-serverの再起動を行います。
/etc/init.d/zabbix-server restart
tomcat側設定
起動ファイルにJVMの設定を追加記載します。
CATALINA_OPTS="-Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
設定反映のために、tomcatを再起動します。
/etc/init.d/tomcat restart
zabbixの管理画面のJMX設定
zabbixの管理画面にログインし、「設定> ホスト > Zabbix server」をクリックします
JMXのインタフェースを追加します
テンプレートの追加を行います
zabbixにはデフォルトでJMX tomcatテンプレートとJMX Genericテンプレートがあるので、追加します。
「更新ボタン」を押せば、登録は完了です。
テンプレートの書き換え
tomcat7ではmanagerのステータスを取るxmlが変わっています。
デフォルトのテンプレートにあるname=http-8080では、ステータスが取れません。
なので、テンプレートのname=http-8080を「name="http-bio-8080""」に
書き換えてあげる必要があります。
jmx["Catalina:type=ThreadPool,name=\"http-bio-8080\"",maxThreads]
あとは、プロジェクトごとに必要なトリガーやグラフを作成すれば、設定完了です!
Qiitaにも投稿しました!
http://qiita.com/takako/items/274467551d38650f3aae