JBoss Application Serverは、市場で最も広く使用されているオープン・ソースのJavaプラットフォーム、Enterprise Edition (Java EE)アプリケーション・サーバーで、E-Businessアプリケーション向けに企業クラスの高性能なプラットフォームを提供します。JBossは、企業クラスのセキュリティ、送信サポート、リソース管理、ロード・バランシングおよびクラスタリングを実現します。
Enterprise Manager Cloud Controlでは、環境内のJBoss Application Serverを検出してCloud Controlに追加し、一元的にモニタリングおよび管理できます。
この章では、Enterprise Manager Cloud Control内で、これらのJBoss Application Serverターゲットを検出およびモニターする方法について説明します。この章の具体的な内容は次のとおりです。
Enterprise Manager Cloud Controlを使用すると、JBoss Application Serverターゲットに関して次のことができます。
集中モニタリングおよび集中管理に関して、次を検出します。
JBoss Application Server
JBossサーバー・グループおよびドメイン(バージョン7.x)
JBossドメインは、JBoss Application Serverバージョン7.xのエンタープライズ構成におけるJBoss Application Serverの論理グループです。JBoss Application Serveはサーバー・グループにグループ分けされ、1つ以上のサーバー・グループが1つのJBossドメインを形成します。ドメイン・コントローラは、ドメイン内のJBoss Application Serverの集合を実行および管理します。
JBossドメインを検出すると、JBossドメイン、JBossサーバー・グループ、およびそのJBossドメインの一部である他のすべての稼働中のJBoss Application Serverが自動的に検出されます。モニターするためにEnterprise Manager Cloud Controlに追加するJBoss Application Serverを選択でき、関連するJBossサーバー・グループは自動的に追加されます。
JBossパーティション(バージョン6.x)
JBossパーティションは、JBoss Application Serversバージョン6.xのエンタープライズ構成内のJBoss Application Serverの論理的なグループです。
JBossパーティションの一部であるJBoss Application Serverを検出すると、JBossパーティションおよびそのJBossパーティションの一部である他のすべてのJBoss Application Serverが自動的に検出され、Enterprise Manager Cloud Controlに追加されます。
ステータス、可用性割合、CPU使用率、ヒープ使用率、使用しているJavaのベンダーとバージョンなどのモニター。
JBossドメインおよびパーティションの一部であるメンバー・アプリケーション・サーバーのステータスおよび全体的な状態のモニター。
負荷および特定の間隔におけるリクエスト処理時間を測定することによるパフォーマンスのモニター。
豊富なGUI、直感的なグラフおよび図を使用した、パフォーマンスと可用性の問題の診断、通知および修正。
デプロイされたアプリケーションのステータスのモニター。
過去24時間に最もリクエストされたサーブレットなど、アプリケーション・サーバーで稼働しているサーブレットおよびJSPのモニター(JBoss Application Serverバージョン6.xのみ)。
関連するJVMスレッドおよびデータ・リソースに関する詳細の表示。
メトリック・データの収集をそれぞれ一時停止または再開するためのブラックアウトおよび通知ブラックアウトの作成または終了。
収集された最新の構成詳細および特定の時点で保存されたJBossバージョン6の構成詳細のモニターおよび管理。
JBossバージョン6で次に示す構成を比較。
直近に収集されたサーバー・インスタンスの構成と、同じサーバー・インスタンスまたは別のサーバー・インスタンスの保存済構成。
直近に収集されたサーバー・インスタンスの構成と、直近に収集された別のサーバー・インスタンスの構成。
サーバー・インスタンスの保存済構成と、同じサーバー・インスタンスまたは別のサーバー・インスタンスの別の保存済構成。
サーバー・インスタンスの保存済構成と、直近に収集された同じサーバー・インスタンスまたは別のサーバー・インスタンスの構成。
サーバーに関連付けられたコンプライアンス標準およびコンプライアンス・フレームワーク、リアルタイム監視、評価の結果などのコンプライアンス関連の情報を表示します。
メトリック、その収集間隔および各メトリックの最後のアップロードのリストを表示します。
JBoss Application ServerおよびJBossパーティションを検出するために次の前提条件を満たします。
JBoss Application ServerのJBossサイトから入手可能なインストール可能zipファイルをダウンロードして解凍し、JBOSS_HOMEおよびPATH環境変数を次のように設定する必要があります。
setenv JBOSS_HOME <jboss_install_location
>
setenv PATH "${PATH}:/${JBOSS_HOME}/bin"
bin
ディレクトリから次のコマンドを実行して、JBoss Application ServerまたはJBossパーティションを起動する必要があります。
./run.sh -c <deployment_profile
> -b <binding_address
> [-Djboss.partition.name=<partition_name
>]
ここで、<deployment_profile>
は、スタンドアロンJBoss Application ServerかJBossパーティションを起動しているかどうかを示します。<binding_address>
は、JBoss Application Serverが稼働しているホスト名またはIPアドレスです。<partition_name>
は、JBoss Application Serverが起動されるパーティション名です。デフォルトでは、それらはDefaultPartitionの一部として起動されます。
次に例を示します。
./run.sh -c node1 -Djboss.service.binding.set=ports-01 -b example.oracle.com
注意:
スタンドアロンJBoss Application Serverを起動するには、<deployment_profile>
をdefault
に設定します。
次に例を示します。
./run.sh -c default -b <binding address
>
JBossパーティションを起動するには、JBossクラスタリング・サービスを有効にし、<deployment_profile>
をall
に設定します。
次に例を示します。
./run.sh -c all -b <binding address
>
同じホストの複数のサーバー・インスタンスを起動するには、次の手順を実行します。
(a)前提要件に応じて、複数のデプロイメント・プロファイルを作成します。
(b)個々のサーバーを起動するには、異なるポート設定を使用します。ports-01、ports-02、ports-03およびports-04は、事前定義されたポートセットです。
次に例を示します。
-Djboss.service.binding.set=ports-01
注意:
JBossドメインを検出すると、そのドメインに含まれるすべてのJBoss Application Serverが自動的に検出され、Enterprise Manager Cloud Controlに追加されます。JBossドメインの検出後の任意の時点で、新しいJBoss Application Serverがドメインに追加されている場合は、JBossパーティションのリフレッシュの説明に従ってJBossドメインをリフレッシュできます。
注意:
JBossパーティションの一部であるJBoss Application Serverを検出すると、JBossパーティションおよびそのパーティションの一部である他のすべてのJBoss Application Serverが自動的に検出され、Enterprise Manager Cloud Controlに追加されます。JBossパーティションの検出後の任意の時点で、新しいJBoss Application Serverがパーティションに追加されている場合は、JBossパーティションのリフレッシュの説明に従ってJBossパーティションをリフレッシュできます。
この項の内容は次のとおりです。
JBossパーティション・ホームページには次のセクションがあります。
「サマリー」セクション:
項目 | 説明 |
---|---|
稼働開始/停止時間/保留開始 |
ステータスが最後に確認された日時。 |
可用性(%) |
JBoss Application Serverが使用できるかどうか、および過去24時間の使用率を示します。ステータス履歴(可用性)ページにドリルダウンするには、リンクをクリックします。「ステータス履歴」ページには、可用性の計算に使用する構成要素の可用性の履歴とともに、JBoss Application Serverの可用性が表示されます。 |
バージョン |
JBoss Application Serverのバージョン。 |
ステータス |
JBoss Application Serverの現在のステータス。JBossターゲットの検出中に不正な資格証明が提供された場合でもステータスは「停止中」になる場合があります。 |
ヒープ使用量(MB) |
前回の収集以降にJBoss Application Serverによって使用されたヒープ・スペースの量(MB単位)。 |
項目 | 説明 |
---|---|
JVMスレッド - アクティブなスレッド |
デーモン・スレッドとデーモン以外のスレッドの両方を含むJVMスレッドの数。 |
JVMスレッド - ピーク・スレッド |
Java仮想マシンの起動後またはピークのリセット後の、アクティブなJVMスレッドのピーク数。 |
JVMスレッド - アクティブなデーモン・スレッド |
アクティブなデーモンJVMスレッドの数。 |
JVMスレッド - 作成されたスレッド(/分) |
1分間に作成されたJVMスレッドの数。 |
項目 | 説明 |
---|---|
トランザクション作成(/分) |
1分当たりに作成された新しいトランザクションの数。 |
トランザクションのコミット(/分) |
1分当たりにコミットされたトランザクションの数。 |
トランザクション中止(/分) |
1分当たりに中止されたトランザクションの数。 |
トランザクション・タイム・アウト(/分) |
1分当たりにタイムアウトになったトランザクションの数。 |
トランザクション・アプリケーション・ロールバック(/分) |
アプリケーションによって1分当たりにロールバックされたトランザクションの数。 |
トランザクション・リソース・ロールバック(/分) |
リソースによって1分当たりにロールバックされたトランザクションの数。 |
特定の期間のリクエスト処理時間を測定した、サーバーのパフォーマンスがグラフィカルに表示されます。表形式に切り替えるには、「表ビュー」をクリックします。ドリルダウンしてメトリックに関連する詳細な情報を表示する場合、および他の関連するインフラストラクチャ・メトリックを調べることによって問題を診断する場合、凡例のメトリック名をクリックし、追加情報メッセージで適切なオプションを選択します。
JBoss Application Serverのホーム・ページには、次のセクションがあります。
「サマリー」セクション:
項目 | 説明 |
---|---|
稼働開始/停止時間/保留開始 |
ステータスが最後に確認された日時。 |
可用性(%) |
JBoss Application Serverが使用できるかどうか、および過去24時間の使用率を示します。ステータス履歴(可用性)ページにドリルダウンするには、リンクをクリックします。「ステータス履歴」ページには、可用性の計算に使用する構成要素の可用性の履歴とともに、JBoss Application Serverの可用性が表示されます。 |
バージョン |
JBoss Application Serverのバージョン。 |
ステータス |
JBoss Application Serverの現在のステータス。JBossターゲットの検出中に不正なJMX資格証明が提供された場合でもステータスは「停止中」になる場合があります。 |
サーバーCPU使用率(%) |
JBoss Application Serverによって使用されるCPU時間の率。 |
ヒープ使用量(MB) |
一定の期間においてJBoss Application Serverによって使用されるヒープ領域の量(MB単位)。 |
Javaベンダー |
このJBoss Application Serverが実行されているJava仮想マシンのベンダー。 |
Javaバージョン |
このJBoss Application Serverが実行されているJava仮想マシンのバージョン。 |
項目 | 説明 |
---|---|
アクティブ・セッション |
アクティブなサーブレット・セッションおよびJSPセッションの数。 |
リクエスト処理時間(ミリ秒) |
過去24時間にリクエストの処理に要した平均時間(ミリ秒)。 |
リクエスト(/分) |
過去24時間で処理された1分当たりのリクエストの数。 |
項目 | 説明 |
---|---|
JVMスレッド - アクティブなスレッド |
デーモン・スレッドとデーモン以外のスレッドの両方を含むJVMスレッドの数。 |
JVMスレッド - ピーク・スレッド |
Java仮想マシンの起動後またはピークのリセット後の、アクティブなJVMスレッドのピーク数。 |
JVMスレッド - アクティブなデーモン・スレッド |
アクティブなデーモンJVMスレッドの数。 |
JVMスレッド - 作成されたスレッド(/分) |
1分間に作成されたJVMスレッドの数。 |
項目 | 説明 |
---|---|
使用中の合計接続数 |
データソースがインスタンス化されてから、データソースのインスタンスでアクティブなデータベース接続の数。 |
合計接続プール・サイズ |
接続プールの合計サイズ。 |
作成された合計接続数(/分) |
このデータ・ソースに対して作成された1分当たりの接続数。 |
破棄された合計接続数(/分) |
このデータ・ソースに対してクローズされた1分当たりの接続数。 |
特定の期間のリクエスト処理時間を測定した、サーバーのパフォーマンスがグラフィカルに表示されます。表形式に切り替えるには、「表ビュー」をクリックします。ドリルダウンしてメトリックに関連する詳細な情報を表示する場合、および他の関連するインフラストラクチャ・メトリックを調べることによって問題を診断する場合、凡例のメトリック名をクリックし、追加情報メッセージで適切なオプションを選択します。
Enterprise Manager Cloud Controlを使用して、JBoss Application Serverで実行されているサーブレットとJSPをモニターできます。概要情報だけでなく、レスポンス時間と負荷が反映されたパフォーマンス・サマリーも表示できます。関連するインフラストラクチャ・メトリック、アラート履歴などを表示し、ドリルダウンして問題を診断することもできます。
JBoss Application Serverで実行されているサーブレットとJSPをモニターするには、次の手順に従います。
「ターゲット」メニューから、「ミドルウェア」を選択します。
「ミドルウェア」ページで、サーブレットとJSPがデプロイされているJBoss Application Serverをクリックします。
JBoss Application Serverホームページで次のようにします。
サーブレットの概要情報を確認するには、「サーブレット」リージョンを確認します。このリージョンに表示されているメトリックの詳細を理解するには、「ヘルプ」をクリックします。
サーブレットおよびJSPのパフォーマンスをモニターするには、レスポンスと負荷のグラフを確認します。
ドリルダウンして問題を診断するには、凡例のメトリック名をクリックします。ポップアップ表示されたメッセージで「問題の分析」をクリックします。
メトリック統計、しきい値およびメトリック値の履歴を表示するには、凡例のメトリック名をクリックします。ポップアップ表示されたメッセージで「メトリック詳細」をクリックします。
この項の内容は次のとおりです。
JBossドメインのホームページを使用すると、各メンバーの個々のステータスをモニターできるだけでなく、ドメインをリフレッシュしてメンバーシップを更新し、現在のデプロイ状態を反映することもできます。メンバー・アプリケーション・サーバーのリソース使用状況、可用性、パフォーマンス、構成情報およびレポートを履歴データとともにまたは履歴データなしで表示することもできます。
図34-9 JBossドメインのホームページ
JBossドメインのホームページには次のセクションがあります。
「サマリー」セクション内の「一般」サブセクションには、JBossドメインに関する一般的な情報が示されます。
項目 | 説明 |
---|---|
JBossドメインのリフレッシュ |
JBossドメインが最後にリフレッシュされた日時を示します。 |
バージョン |
JBossドメインのバージョン。 |
エージェント |
JBossドメインの一部であるJBoss Application Serverの管理エージェントの検出に使用される管理エージェント。管理エージェント・ホームページにドリルダウンするには、リンクをクリックします。 |
「サーバー」セクションには、JBossドメイン内の全メンバーのステータスと可用率のリアルタイム・ビューが表示されます。たとえば、JBossドメイン内に4つのJBoss Application Serverがあり、そのうち3つが稼働中である場合は、円グラフに75%稼働および25%停止のステータスが表示されます。したがって、凡例には稼働中のJBoss Application Serverを示すために稼働ステータスに対して3が表示され、停止中のJBoss Application Serverを示すために停止ステータスに対して1が表示されます。
表には、JBossドメインの完全な階層が表示されます。JBossサーバー・グループまたはJBoss Application Serverをクリックして、それらに関する情報をドリルダウンして表示できます。ステータスの詳細を表示するには、ステータス・アイコンをクリックします。
JBossサーバー・グループのホームページを使用すると、各メンバーの個々のステータスをモニターし、現在のデプロイ状態を表示できます。メンバー・アプリケーション・サーバーのリソース使用状況、可用性、パフォーマンス、構成情報およびレポートを履歴データとともにまたは履歴データなしで表示することもできます。
図34-10 JBossサーバー・グループのホームページ
JBossサーバー・グループのホームページには次のセクションがあります。
「サマリー」セクション内の「一般」サブセクションには、JBossサーバー・グループに関する一般的な情報が示されます。
項目 | 説明 |
---|---|
エージェント |
JBossサーバー・グループの一部であるJBoss Application Serverの検出に使用される管理エージェント。管理エージェント・ホームページにドリルダウンするには、リンクをクリックします。 |
「サーバー」セクションには、JBossサーバー・グループ内の全メンバーのステータスと可用率のリアルタイム・ビューが表示されます。たとえば、JBossサーバー・グループ内に4つのJBoss Application Serverがあり、そのうち3つが稼働中である場合は、円グラフに75%稼働および25%停止のステータスが表示されます。したがって、凡例には稼働中のJBoss Application Serverを示すために稼働ステータスに対して3が表示され、停止中のJBoss Application Serverを示すために停止ステータスに対して1が表示されます。
表は、JBossサーバー・グループの一部であるJBoss Application Serverの高度な詳細を示します。JBoss Application Serverに関する情報をドリルダウンして表示するには、JBoss Application Server名をクリックします。ステータスの詳細を表示するには、ステータス・アイコンをクリックします。
Enterprise Manager Cloud Controlを使用して、JBossドメインのメンバーを表示できます。ドメインを構成するメンバーのタイプの確認、そのステータスのモニターおよび様々な管理操作を行えます。
メンバーのリストを表示するには、次の手順に従います。
列 | 説明 |
---|---|
名前 |
JBossドメインの一部であるJBoss Application Serverの名前。そのJBoss Application Serverのホームページにアクセスするには、名前をクリックします。 |
タイプ |
メンバーのタイプ。 |
ステータス |
メンバーの現在のステータス。「ステータス」アイコンをクリックして全体的な可用性サマリーを確認します。現在の可用性ステータスと、過去24時間、7日間または1か月(31日間)の可用性ステータスを確認できます。 |
インシデント |
過去24時間に生成されたクリティカル・アラート、警告アラートおよびエラー・アラートの数。アラートのリンクをクリックしてドリルダウンすると、詳細情報が表示されます。 |
特定のメンバーを検索するには、「検索」メニューを使用します。
デフォルトでは、JBossパーティションのすべてのメンバーが表にリストされます。表をリフレッシュして特定のタイプのメンバーのみを表示するには、「表示」セクションから「直接メンバー」または「間接メンバー」のいずれかを選択します。
メンバーシップの構成の詳細をスプレッドシートに取り込むには、「エクスポート」をクリックします。
この項の内容は次のとおりです。
JBossパーティション・ホームページを使用すると、パーティション全体のステータスだけでなく、各メンバーの個々のステータスもモニターできます。また、パーティションをリフレッシュしてメンバーシップを更新および現在のデプロイ状態を反映できます。メンバー・アプリケーション・サーバーのリソース使用状況、可用性、パフォーマンス、構成情報およびレポートを履歴データとともにまたは履歴データなしで表示することもできます。
図34-11 JBossパーティションのホームページ
JBossパーティション・ホームページには次のセクションがあります。
「サマリー」セクション内の「一般」サブセクションには、JBossパーティションに関する一般的な情報が示されます。
項目 | 説明 |
---|---|
稼働開始/停止時間/保留開始 |
ステータスが最後に確認された日時。 |
可用性(%) |
過去24時間の可用性率は、JBossパーティションのメンバーのステータスを検討します。たとえば、パーティション内に4つのJBoss Application Serverがあり、そのうち3つのみが稼働中である場合、円グラフに75%稼働および25%停止のステータスが表示されます。 |
バージョン |
JBossパーティションの一部であるJBoss Application Serverのバージョン。 |
エージェント |
JBossパーティションの一部であるJBoss Application Serverの管理エージェントの検出に使用される管理エージェント。管理エージェント・ホームページにドリルダウンするには、リンクをクリックします。 |
パーティションの最新リフレッシュ日 |
パーティションが最後にされたリフレッシュされた日時。 |
「サーバー」セクションには、JBossパーティション内の全メンバーのステータスと可用率のリアルタイム・ビューが表示されます。たとえば、JBossパーティション内に4つのJBoss Application Serverがあり、そのうち3つが稼働中である場合は、円グラフに75%稼働および25%停止のステータスが表示されます。したがって、凡例には稼働中のJBoss Application Serverを示すために稼働ステータスに対して3が表示され、停止中のJBoss Application Serverを示すために停止ステータスに対して1が表示されます。
表は、JBossパーティションの一部であるJBoss Application Serverの高度な詳細を示します。JBoss Application Serverに関する情報をドリルダウンして表示するには、JBoss Application Server名をクリックします。ステータスの詳細を表示するには、ステータス・アイコンをクリックします。
Oracle Enterprise Manager Cloud Control 13cのJVM診断では、管理者が本番環境でのJavaアプリケーションのパフォーマンスに関する問題を診断できます。問題を再現する必要がないため、問題の解決に要する時間を削減できます。このため、アプリケーションの可用性とパフォーマンスが向上します。JBossターゲットとJVMD/JVMターゲットの間の相関関係を使用すると、管理者はJBoss Application Serverのコンテキスト内でJVMに移動できます。
JBossにJVMDエージェントをデプロイするには、次の手順を実行します。
JBoss AS 7モジュラー・クラス・ロード・モデルを使用している場合、JVMDエージェントを機能させるために、次の構成変更を実行する必要があります。
次のように、sun.instrument
パッケージ・ロードを有効にします。
ファイル$JBOSS_HOME/modules/system/layers/base/sun/jdk/main/module.xml
に<path name="sun/instrument"/>
を追加します
次の手順で、BCIおよびJVMDクラスをロードします。
次のようにクラスパスにjvmd.jar
およびwldf.jar
を追加します。
JAVA_OPTS="$JAVA_OPTS -cp :$JBOSS_HOME/wldf.jar,$JBOSS_HOME/jvmd.jar"
wldf.jar
およびjvmd.jar
は、jamagent.war
にバンドルされています。Enterprise Manager Cloud Controlコンソール(「設定」-->「ミドルウェア管理」-->「エンジンおよびエージェント」-->「JVMDエージェントのダウンロード」)からjamagent.war
をダウンロードできます。
jamangent.war
ファイルをダウンロードした後、jamangent.war
を抽出してjamagent.war/WEB-INF/libbci/
に移動し、必要な場所にwldf.jar
ファイルおよびjvmd.jar
ファイルの両方をコピーできます。
たとえば、スタンドアロン・サーバーの場合は、次のように$JBOSS_HOME/bin/standalone.conf
を変更します。
if [ "x$JBOSS_MODULES_SYSTEM_PKGS" = "x" ]; then
JBOSS_MODULES_SYSTEM_PKGS="org.jboss.byteman,com.oracle.jvmd.repackaged,oracle .jvmd.agent"
fi
JAVA_OPTS="$JAVA_OPTS -cp :$JBOSS_HOME/wldf.jar,$JBOSS_HOME/jvmd.jar"
検出後にターゲットのステータスが「停止中」の場合は、Jboss Application Serverの「モニタリング・プロパティ」ページを調べ、次のことを確認します。
ローカル検出の場合: JBossホームのみが存在している
リモート検出の場合: ライブラリ・パスのみが存在している
検出後にターゲットのステータスが「保留」(メトリック収集エラーのため)の場合は、同じ管理エージェントを使用して他のアプリケーション・サーバー(Weblogicなど)がモニターされていないことを確認します。
各種のログがある場所は次のとおりです。
JBossサーバーのログ: $JBOSS_HOME/server/<
config_mode
>/log
OMSのログ: emoms.trc
($OMS_HOME
下)
エージェントのログ: $AGENT_STATE_DIR/sysman/log
JBossの検出に失敗した場合は、ライブラリ・パスとインストール・ホームを指定して、再試行してください。
検出関連の問題については、検出スクリプトを手動で実行し、出力を調べてください。出力例は次のようになります。
java -Doracle.home=<AGENT_PLUGIN_LOCATION> \ -cp \ <AGENT_PLUGIN_LOCATION>/lib/xmlparserv2.jar:\ <AGENT_PLUGIN_LOCATION>/jlib/emConfigInstall.jar:\ <AGENT_PLUGIN_LOCATION>/sysman/jlib/log4j-core.jar:\ <AGENT_PLUGIN_LOCATION>/modules/oracle.http_client 11.1.1.jar:\ <DISCOVERY_PLUGIN_LOCATION>/archives/em-as-thirdparty-discovery.jar \ oracle.sysman.emas.thirdparty.discovery.jboss.JBossDiscovery \ <JMX_PORT> <SERVER_HOST> ""