SiteScope
SiteScopeでJavaの稼動状況をモニタリングできる!
サーバシステムの監視において、どのような項目を対象にされていますか?サーバのリソース、システムやアプリケーションログ、プロセス死活など、監視対象は非常に多岐に渡りますね。そんな中、今回は密かに人気を呼びつつあってSiteScopeが標準機能として搭載している Java のヒープ・メモリサイズのモニタリング方法についてご紹介します。
ヒープ・メモリサイズ モニタリングの概要
Java プラットフォーム技術の一種であるJMX(Java Management Extension)を利用してSiteScope からコンソールにリモートアクセスし、公開情報を取得します。なお、JMX コンソールにリモートアクセスするには事前に Web アプリケーション側に公開設定を行う必要があります。
Javaの稼動状況をモニタリングするための設定手順
1. WebアプリケーションにてJMXコンソールの公開設定
- ※ ここではLinux上でTomcat 6の使用を想定しています。
<CATALINA_HOME>\bin\catalina.shに以下の設定を追記します。
場所は「CATALINA_OPTS」の注釈(コメントアウトされています)の後ろがわかりやすいでしょう。
cataloina.sh追記内容
CATALINA_OPTS="
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=1234
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
補足:設定内容
-Dcom.sun.management.jmxremote.port:
接続に使用するポートを指定
例では"1234"としています。
-Dcom.sun.management.jmxremote.ssl :
接続時のSSL利用有無をtrue/falseで指定
例では"false"としています。
-Dcom.sun.management.jmxremote.authenticate:
接続時の認証設定有無をtrue/falseで指定
例では"false"としています。
設定が完了したら、Tomcatを再起動しましょう。
2. SiteScopeからのモニタリングの設定
2-1. SiteScopeコンソールにアクセスして新規にモニタを作成します
「新規作成→モニタ→JMX」
2-2. 「JMXモニタ設定」の「JMX URL」欄に次の書式でアクセス用のURLを記載します
service:jmx:rmi:///jndi/rmi://<サーバのIPアドレス>:<使用ポート>/jmxrmi
2-3. カウンタ値の取得
ウィンドウ中のカウンタ値の取得ボタンを押下して、JMXコンソールのカウンタ値を取得します。正常に接続できると下記の画面が表示されます。
失敗してエラーが表示される場合は、Webアプリの設定かアクセス用URLの記述に誤りがないか確認してみてください。
2-4. ヒープメモリサイズ用カウンタの選択
多数のカウンタ値が表示されますが、下記2項目にチェックを入れます。
- ※消費されるライセンスは2ポイントです。
- Java.lang→Memory→HeapMemoryUsage→「used」
- Java.lang→Memory→NonHeapMemoryUsage→「used」
設定が完了したら、保存ボタンを押して設定を確定します。
2-5. 保存ボタンを押すとモニタが実行されます。
下記のウィンドウが表示され、ヒープメモリサイズが取得できたら設定は完了です。
設定自体は思ったよりも簡単だったのではないでしょうか。
あとは必要に応じてしきい値と警告通知の設定や、定期レポートの出力設定を行ってください。ヒープメモリサイズはリアルタイム監視というよりも、長期間のモニタ結果からキャパシティプランニングに用いられるお客様が多いようです。
SiteScopeではJMXモニタの他にも、Apacheの使用状況を確認できる"Apache"モニタや仮想化環境のリソース状況を取得できる"VMWareパフォ-マンス"モニタなど多様な監視項目に対応しており、幅広い環境で活用いただけます。