この章では、Oracle Enterprise Manager Cloud Control 13cを使用してCoherenceクラスタの検出とモニターを行う手順について説明します。この章は次の各項で構成されています。
Oracle Coherenceは、インメモリーのデータグリッドおよび分散キャッシング・ソリューションです。これは、連携する複数の個別のノードまたはJavaプロセスで構成され、信頼性が高く高速な仮想キャッシングを実現します。
Enterprise Managerでは、キャッシュ、ノードおよびサービスなどのすべてのアーティファクトのパフォーマンスに対する深い可視性が提供されます。ノードとキャッシュは、インシデント管理機能によって事前にモニターできます。モニタリング・テンプレートを作成するには、モニタリング・テンプレートにCoherenceターゲットのメトリックを事前移入します。モニタリング・テンプレートをエクスポートおよびインポートして、様々なEnterprise Managerデプロイメント間でモニタリング設定を共有できます。
メトリック拡張は次世代のユーザー定義メトリックで、任意のターゲット・タイプに新しいメトリックを作成することにより、Enterprise Managerを拡張して企業環境に固有の条件をモニターできます。エクスポートまたはインポートされたモニタリング・テンプレートにメトリック拡張を組み込むことで、複数のメトリック拡張をEnterprise Managerデプロイメント間で容易かつ同時に共有できます。
クラスタのスケールの判断をより的確にするために、クラスタ・ノードと基本のホストを関連付けて、そのホストでのCPUとメモリー使用率を決定できます。キャッシュ、ノード、ホストおよびOracle WebLogicターゲットのアソシエーションを確認できます。
パフォーマンスのチャートと傾向をモニタリングするための、高度にカスタマイズ可能なパフォーマンス・ビューを使用できます。詳しい分析が、目的のレベルでの詳細な可視性を提供するように、複数のノードまたはキャッシュのメトリックを同じクラスタまたは異なるクラスタでオーバーレイできます。ドリルダウン・ビューを使用すると、パフォーマンス問題の根本的な原因を突き止めたり、Coherenceクラスタのパフォーマンス傾向を簡単に特定したりすることができます。
Enterprise Managerには、集中キャッシュ・データ管理機能があり、この機能を使用すると、索引の追加や削除、キャッシュ・データの表示、問合せ説明計画の表示などの様々なキャッシュ操作を実行できます。
Enterprise Managerは、一定の期間にわたってノードの変更する構成をモニターします。トポロジ・ビューアでは、クラスタ全体の高度なトポロジが提供され、キャッシュ、ノードおよびホスト間の関係が示されます。
Coherence Managementのすべての機能は、JVM診断に統合され、ノードJVMにリアルタイムの可視性を提供します。キャッシュやクラスタのコンテキスト内からCoherenceノードのJVMにドリルダウンして、遅延の原因となっているメソッドやスレッドを特定できます。JVM診断機能は、WLS Management Pack EEおよびOracle以外のミドルウェア用Management Packの一部です。
Enterprise Managerは、完全なプロビジョニング・ソリューションを備えています。ソフトウェア・ライブラリでOracle Coherence設定イメージまたはゴールド・イメージを維持して、そのイメージをインフラストラクチャ全体にデプロイし、完全に新しいクラスタを作成したり、既存のクラスタにノードを追加したりすることができます。同じデプロイメント手順を使用して、同様にノードも更新できます。
この項では、Oracle Enterprise Manager Cloud Control 13cの新機能について一覧で示します。新機能は次のとおりです。
ターゲット・ナビゲーション: 「ターゲット・ナビゲーション」メニューはデフォルトでは表示されません。ページの左側の「ターゲット・ナビゲーション」アイコンをクリックすると、「ターゲット・ナビゲーション」ツリーが表示されます。ナビゲーション・ツリーによって、ページからノードまたはキャッシュへの移動が容易になります。ノードは、ノードが稼働しているホストに基づいてグループ分けされ、キャッシュはサービスに基づいてグループ分けされます。ナビゲーション・ツリーを参照してください。
ヒート・マップ: クラスタのホームページの「ヒート・マップ」タブに、クラスタ内のすべてのターゲットのグラフィック表示が提供されます。
ログ・ビューア: ログ・ファイルをスキャンしてログ・ファイル・データを表示できます。
停止中のメンバーの削除: クラスタで「停止中」ステータスになっているすべてのメンバーを削除できます。
管理対象Coherenceクラスタ: 管理対象Coherenceクラスタの検出とモニタリングは、Oracle Fusion Middleware/Weblogicドメインの検出とモニタリングに統合されました。
カスタム・トポロジ・ビューア: カスタム・トポロジ・ビューアは、Coherenceクラスタ内のすべてのターゲットのカスタマイズされたビューを提供します。
フェデレーテッド・キャッシュ: ソース・クラスタのキャッシュからリモート・クラスタのキャッシュに更新をレプリケートすることによって、クラスタ間でキャッシュ・インスタンスを同期できます。
動的管理ノードの検出: Coherence 12.2.1.x以上を動的管理モードで起動するように構成できます。動的管理モードは、自動的に上位のクラスタ・メンバーを管理ノード(JMXクラスタ・メンバー)として選択します。集中管理ノードが動作していない場合、次に最も上位のCoherenceノードが管理ノードとして自動的に選択されます。
フェデレーテッド操作: 新規のフェデレーテッド・キャッシング操作リージョンが「サービス・ホーム」ページに追加されます。これにより、操作リクエストの送信が可能になります。操作選択に基づき、リモート参加者への参照があるフェデレーション操作が実行されます。
ターゲット検出: 新規の検出およびリフレッシュ中にキャッシュ・ターゲットの検出を無効化できるようになりました。
注意:
この項では、スタンドアロンCoherenceクラスタの構成手順を説明します。
管理対象Coherenceクラスタの構成方法の詳細は、WebLogicのドキュメントを参照してください。
Oracle Coherenceのスタンドアロン・デプロイは、CoherenceとJMXのシステム・プロパティ(起動引数)を使用してCoherenceノードを構成することにより、Enterprise Managerでモニターできます。また、ノードの1つをJMX集中管理ノードとして構成する必要があります。このJMX管理ノードは、すべてのCoherence MBeanと属性を公開する必要があります。詳細は、「JMX管理ノードの作成および起動」を参照してください。JMX管理ノードの構成に加えて、JMX管理ノードと同じホストに管理エージェントもインストールして構成する必要があります。これは、Enterprise ManagerでCoherenceクラスタを検出してモニターする場合に必要です。
図23-1は、Enterprise Managerを使用したスタンドアロンCoherenceクラスタのモニタリング用の構成を示しています。
図23-1 Coherenceクラスタの構成(スタンドアロンCoherenceクラスタ)
図に示すように、Coherence管理(JMX)ノードのMBeanサーバーでは、Coherenceクラスタ全体にMBeanが公開されます。Enterprise Managerは、この管理ノードに接続してCoherenceクラスタを検出およびモニターします。
管理エージェントはJMX管理エージェント(集中管理MBeanサーバー)を使用して、ノードやキャッシュを含むCoherenceクラスタ全体を検出およびモニターします。ベスト・プラクティスとして、Coherenceクラスタの検出とモニターに使用されるJMX管理ノードと同じホストに管理エージェントが存在することをお薦めします。クラスタのモニターとプロビジョニングを行うには、Coherenceノードが実行しているすべてのマシンで管理エージェントを設定する必要があります。JMXを使用したOracle Coherenceの管理の詳細は、Oracle Coherence管理ガイドのJMXの使用によるCoherenceの管理を参照してください。JMX管理ノードを構成するには次の手順を実行する必要があります。
追加のシステム・プロパティの指定
追加のクラスパスを含める
Enterprise Managerカスタム起動クラスの使用
注意:
Coherenceキャッシュに対するパフォーマンスの影響を最小化するために、管理ノードは、記憶域無効ノードに構成することをお薦めします。
次の起動引数をCoherenceノードの1つに追加して、それをJMX集中管理ノードとして構成する必要があります。
-Dtangosol.coherence.management.extendedmbeanname=true
(再起動されたノードがEnterprise Managerによって自動的に検出されるのを許可します。このパラメータは、Coherence 3.7.1.9以上のバージョンで利用できます。)
trueに設定すると、ノードの再起動時に、ノードのステータスが自動的にリフレッシュされます。
このプロパティを設定していない場合、ノードの再起動後に「クラスタのリフレッシュ」オプションを使用して、ノードのステータスを更新する必要があります。
このプロパティをtrueに設定した後にノードを起動する場合、extendedmbeanname
プロパティをtrueに設定した後に、クラスタ内のすべてのノードを起動する必要があります。
-Dtangosol.coherence.management=all
(すべてのノードのモニタリングを有効にする)
-Dcom.sun.management.jmxremote.port=<port number>
(Coherence 12.2.1.x以前のバージョンのリモート接続に必要)
-Dtangosol.coherence.distributed.localstorage=false
(キャッシングを無効にして、ノードを専用のモニタリング・ノードとする)
-Doracle.coherence.home=<coherence home>
-Dtangosol.coherence.member=<member name>
(ターゲット名に必要)
-Doracle.coherence.machine=<fully qualified hostname>
(Enterprise Manager内で検出されるホストの名前と一致する必要があります)
注意:
JMX資格証明を使用している場合、次の追加の起動引数を設定する必要があります。
-Dcom.sun.management.jmxremote.ssl=true
-Dcom.sun.management.jmxremote.authenticate=true
JMX資格証明を使用しない場合は、これらの引数をfalseに設定する必要があります。
Enterprise Managerの両方のカスタムjarファイル(coherenceEMIntg.jar
とbulkoperationsmbean.jar
)へのパスを含める必要があります。
<OEM_Agent_Home>/<PLUGIN_HOME>/<MIDDLEWARE_MONITORING_PLUGIN_DIR>/archives/coherenceディレクトリ内にあります。
バージョン12.2.1以上のCoherenceクラスタは、coherenceEMIntg.jar
ファイルを使用する必要があります
<OEM_Agent_Home>/<PLUGIN_HOME>/<MIDDLEWARE_MONITORING_PLUGIN_DIR>/archives/coherence\12.2.1ディレクトリ。
注意:
.jarファイルの場所は、プラグインのバージョンに基づいて変わります。
Coherence管理ノードを起動する際のシステム・プロパティおよびクラス・パスを設定するのに加え、Enterprise Manager EMIntegrationServer
クラスを起動クラスとして使用する必要があります。このクラスによって、Oracle CoherenceのManagement Packのキャッシュ・データ管理機能に必要なカスタムMBeanを登録できます。
# !/bin/sh CP=$CP:<EM CC_Agent_Home>/plugins/oracle.sysman.emas.agent.plugin_12.1.0.6.0/archives/coherence/coherenceEMIntg.jar: <EM CC_Agent_Home>/plugins/oracle.sysman.emas.agent.plugin_12.1.0.6.0/archives/coherence/bulkoperationsmbean.jar COH_OPTS="$COH_OPTS -cp $CP" $JAVA_HOME/bin/java $COH_OPTS -Dtangosol.coherence.management.extendedmbeanname=true -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dtangosol.coherence.management=all -Dtangosol.coherence.member=<unique member name> -Doracle.coherence.machine=<hostname_as_discovered_in_EM> -Dcom.sun.management.jmxremote.port=<OpenTCP_Port> -Doracle.coherence.home=$COHERENCE_HOME -Dtangosol.coherence.distributed.localstorage=false -Dtangosol.coherence.management.refresh.expiry=1m -server -Xms2048m -Xmx2048m oracle.sysman.integration.coherence.EMIntegrationServer
Coherence JMX管理ノードの構成に加え、Enterprise Managerで使用される追加のCoherence固有のシステム・プロパティ(起動引数)を使用して、他のすべてのCoherenceクラスタ・ノードを構成する必要があります。
次のシステム・プロパティを他のすべてのCoherenceノードに追加する必要があります。
-Dtangosol.coherence.management.extendedmbeanname=true -Dtangosol.coherence.management.remote=true –Dtangosol.coherence.member=<unique member name> -Doracle.coherence.home=<coherence home> -Doracle.coherence.machine=<machine name> should be the same as the name of the host discovered in Enterprise Manager.
注意:
JMX資格証明を使用している場合、次の追加の起動引数を設定する必要があります。
-Dcom.sun.management.jmxremote.ssl=true
-Dcom.sun.management.jmxremote.authenticate=true
JMX資格証明を使用しない場合は、これらの引数をfalseに設定する必要があります。
他のすべてのCoherenceノード用の起動スクリプトの例を次に示します。
#!/bin/sh COH_OPTS="$COH_OPTS -cp $CP" $JAVA_HOME/bin/java $COH_OPTS -Dtangosol.coherence.management.extendedmbeanname=true -Dtangosol.coherence.management.remote=true -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Doracle.coherence.home=<coherence home> -Dtangosol.coherence.member=<unique member name> -Doracle.coherence.machine=<hostname> -Dcom.tangosol.net.DefaultCacheServer
Enterprise Managerで使用するCoherenceクラスタ構成をテストするには、集中管理(JMX)ノードが、他のすべてのCoherenceクラスタのノード、キャッシュ、サービスなどの管理対象オブジェクトに関する情報を持っていることを検証する必要があります。また、集中管理ノードが、<hostname>:<port>
またはJMXサービスURLのいずれかを使用してリモートからアクセス可能であることを検証する必要があります。JMX資格証明が使用されている場合は、それらが指定されている必要があります。
JConsoleはJDKで使用できるJavaツールです。これを使用して、Coherenceクラスタ・ノード全体のMBeanオブジェクトへのリモート・アクセスを検証できます。
図23-2 JConsole
リモート・アクセスを検証するには、JConsoleを開いて「New Connection」を選択します。New Connectionページで、「Remote Process」を選択して、接続の詳細(<hostname>
は集中管理ノードが稼働しているマシンの名前、<port>
は管理ノードを起動した際に-Dcom.sun.management.jmxremote.port
パラメータで指定した値)を入力します。成功すると、MBeanオブジェクト・ツリーが表示されます。
図23-3 MBeanオブジェクト・ツリー
システムMBeanブラウザまたはJConsoleに、すべてのCoherenceノードのMBeanが表示されたら、Enterprise Manager内で、Coherenceクラスタおよびその関連コンポーネントを検出およびモニターできます。
この項の内容は次のとおりです。
Enterprise Managerは、Coherenceクラスタ全体とそのアーティファクトをモニターします。モニターできる主なターゲットは、Oracle Coherence Cluster、Oracle Coherence NodeおよびOracle Coherence Cacheです。Oracle Coherence Clusterターゲットでは、クラスタ全体の状態の高度なビューが表示されます。Oracle Coherence NodeとOracle Coherence Cacheは、Oracle Coherence Clusterの子ターゲットです。前述のターゲット・タイプのモニタリングに加えて、サービス、接続およびアプリケーションなどの追加のCoherenceコンポーネントもモニターできます。
注意:
新しいCoherenceノードをプロビジョニングして、ノードを起動および停止するには、ノードが実行しているすべてのホストに管理エージェントをインストールする必要があります。Coherenceノードのプロビジョニングの詳細は、Enterprise Managerライフサイクル管理管理ガイドを参照してください。
前提条件
JMX管理ノードと1つ以上の他のノードで構成されるCoherenceクラスタの作成
「JMX管理ノードの作成および起動」で説明されている必須パラメータが設定されたJMX管理ノードの起動
「他のすべてのノードの構成」で説明されている必須パラメータが設定された他のノード起動
すでに実行中のCoherenceクラスタを検出するには、次の手順に従います。
注意:
Enterprise Managerで新しいノードまたはターゲットを自動で検出するには、「クラスタのリフレッシュ」に説明されているとおりにクラスタをリフレッシュする必要があります。
クラスタ・ターゲットは、稼働中のCoherenceクラスタに手動で同期できます。「Oracle Coherenceクラスタ」メニューから「クラスタのリフレッシュ」をクリックします。検出された新しいCoherenceノードおよびキャッシュがEnterprise Managerターゲットとして追加されることを示すメッセージが表示されます。属性になんらかの変更があった場合、ノードは更新されます。
「続行」をクリックしてクラスタをリフレッシュします。 これにより、最新の変更が適用されます。
図23-6 クラスタのリフレッシュ
「閉じる」をクリックします。追加可能なノードとキャッシュのリストが表示されます。
検出済のキャッシュを削除する場合は、「Coherenceキャッシュを検出しない」チェック・ボックスを選択し、「既存のCoherenceキャッシュ・ターゲットを削除」を選択します。
「ターゲットの追加」をクリックして、クラスタにターゲットを追加します。
注意:
廃止されたノードおよびキャッシュは、リフレッシュプロセスでは削除されません。手動で削除する必要があります。
Coherenceクラスタを検出する場合は、「Coherenceクラスタの構成」で説明されている適切なガイドラインに従って、すべてのノードが起動されている必要があります。
ノードが適切に構成されていない場合、または必要なガイドラインに従わずに起動している場合、そのノードは正しく構成されていないノードとして分類され、新しく検出されたクラスタの一部になりません。検出の際に、正しく構成されていないノードがクラスタ内に存在すると、次の画面が表示されます。
図23-7 正しく構成されていないノード
これは、クラスタ内に正しく構成されていないノードが存在することを示します。「閉じる」をクリックします。次のページが表示されます。
図23-8 正しく構成されていないノードII
正しく構成されていないノードとそれらの失敗の理由が、このページにリストされます。検出プロセスを取り消してこれらのノードの問題を修正するか、適切に構成されているノードを使用して検出を継続するかを選択できます。
検出プロセスを継続する場合、「Coherenceターゲットの検出」でリストされている手順に従います。
「取消」をクリックすると、検出プロセスは中断され、クラスタはリフレッシュされません。リフレッシュ・プロセス中に正しく構成されていないノードが検出された場合、次にリフレッシュ操作を実行する前に、それらを修正する必要があります。詳細はクラスタのリフレッシュを参照し、クラスタを検出してください。
注意:
管理対象Coherenceクラスタの場合は、「Oracle Cloud Management Pack for Oracle Fusion Middleware」を有効にする必要があります。
カスタム機能を使用するには、Oracle CoherenceのManagement Packを有効化する必要があります。Management Packが有効化されていない場合は、ホームページと基本プラットフォーム機能のみにアクセスできます。Management Packを有効化するには、次のようにします。
注意:
Management Packの有効化とは別に、Coherenceターゲット・モニタリングしている管理エージェント上のすべてのユーザーにVIEW
権限を付与する必要があります。これにより、管理エージェントでモニターされているすべてのターゲットが、ユーザーに対して表示されます。