17 エンタープライズ・デプロイメントの共通の構成および管理タスク
この項では、エンタープライズ・デプロイメント環境で実行する必要性が見込まれる構成および管理タスクについて説明します。
すべてのエンタープライズ・デプロイメントの構成および管理タスク
ここに示すのは、Oracle Fusion Middlewareエンタープライズ・デプロイメントで実行する必要性が高い一般的な構成および管理タスクです。
WLSSchemaDataSourceの適切なサイジングおよび構成の検証
Oracle FMW 14.1.2では、WLSRuntimeSchemaDataSourceは、JMS JDBCストア、JTA JDBCストアおよびリース・サービスのFMWコンポーネントで使用するために予約されている共通データソースです。
WLSSchemaDataSourceの接続使用量を削減するには、JMS JDBCおよびTLOG JDBCストア接続キャッシュ・ポリシーを、各接続キャッシュ・ポリシー設定を使用して「デフォルト」から「最小」に変更します。バックエンド・データベース・システム内の接続数を削減する必要がある場合、キャッシュ・ポリシーを「最小」に設定することをお薦めします。キャッシュ・ポリシー「なし」を使用するとパフォーマンスが低下する可能性があるため、このポリシーは使用しないでください。JDBCストアで使用される接続についての詳細な推奨事項については、『WebLogic永続ストアの管理』で、JDBCストア接続キャッシュ・ポリシーの構成に関する項を参照してください。
WLSSchemaDataSource接続プールのデフォルト・サイズは75です(GridLinkデータ・ソースの場合はサイズが2倍になります)。FMWの各クラスタのサイズと、移行に構成する候補に応じて、このサイズは高い値にチューニングすることができます。たとえば、ストア当たりのワーカー・スレッドがデフォルト値である一般的なSOA EDGデプロイメントを考えてみます。25個を超えるJDBCストアまたはTLOG-in-DBインスタンス(あるいはその両方)が同じWebLogicサーバーにフェイルオーバーでき、「接続キャッシュ・ポリシー」が「デフォルト」から「最小」に変更されていない場合は、接続の競合問題が発生する可能性があります。このような場合は、デフォルトのWLSSchemaDataSourceプール・サイズ(最大容量)を増やす必要があります(各JMSストアは、最小で2つの接続を使用し、リースとJTAが追加されてもプールの競合が発生します)。
管理サーバーの手動フェイルオーバーの確認
ホスト・コンピュータで障害が発生した場合は、管理サーバーを別のホストにフェイルオーバーできます。次の各項で、WCCHOST1およびWCCHOST2からの管理サーバーのフェイルオーバーおよびフェイルバックを検証するステップについて説明します。
前提条件:
-
管理サーバーを、localhostまたは他の任意のホストのアドレスではなく、ADMINVHN上でリスニングするように構成します。
ADMINVHN仮想IPアドレスの詳細は、「エンタープライズ・デプロイメント用の必須IPアドレスの予約」を参照してください。
-
この手順では、管理サーバーのドメイン・ホーム(ASERVER_HOME)が両方のホスト・コンピュータにマウントされていることを前提にしています。これにより、管理サーバーのドメイン構成ファイルと永続ストアが、共有記憶域デバイスに保存されるようになります。
-
管理サーバーはWCCHOST1からWCCHOST2にフェイルオーバーし、これら2つのノードには次のIPが割り当てられています。
-
WCCHOST1: 100.200.140.165
-
WCCHOST2: 100.200.140.205
-
ADMINVHN: 100.200.140.206。これは管理サーバーを実行している場所の仮想IPであり、WCCHOST1またはWCCHOST2で使用可能になるように仮想サブインタフェース(eth0:1など)に割り当てられます。
-
-
Oracle WebLogic ServerとOracle Fusion Middlewareのコンポーネントが、このガイドの個々の構成の章で示すように、WCPHOST2にインストールされています。
具体的には、両方のホスト・コンピュータは、まったく同じパスを使用してOracleホームのバイナリ・ファイルを参照します。
ホストごとのノード・マネージャを使用している場合の管理サーバーのフェイルオーバー
次の手順は、管理サーバーを別のノード(WCCHOST2)にフェイルオーバーする方法を示します。フェイルオーバー後でも、管理サーバーは引き続き同じOracle WebLogic Serverマシン(物理マシンではなく論理マシン)を使用することに注意してください。
この手順では、エンタープライズ・トポロジに対してドメインごとのノード・マネージャを構成していることが前提となります。「標準的なエンタープライズ・デプロイメントのノード・マネージャ構成について」を参照してください
管理サーバーを別のホストにフェイルオーバーするには:
-
WCCHOST1で管理サーバーを停止します。
-
WCCHOST1でノード・マネージャを停止します。
NM_HOMEで作成されたスクリプト
stopNodeManager.shを使用できます。 -
ADMINVHN仮想IPアドレスを第2ホストに移行します。
-
WCCHOST1上で次のコマンドをroot権限で実行し、そのCIDR上の仮想IPアドレスを確認します。
ip addr show dev ethXここで、
XはADMINVHNで現在使用されているインタフェースです。たとえば:ip addr show dev eth0
-
WCCHOST1上で次のコマンドをroot権限で実行します(ここでは、X:YがADMINVHNで現在使用されているインタフェースになります)。
ip addr del ADMINVHN/CIDR dev eth
X:Yここで、
X:YはADMINVHNで現在使用されているインタフェースです。たとえば:ip addr del 100.200.140.206/24 dev eth0:1
-
WCCHOST2で次のコマンドをルートとして実行します。
ip addr add ADMINVHN/CIDR dev ethX label ethX:Yここで、
X:YはADMINVHNで現在使用されているインタフェースです。たとえば:ip addr add 100.200.140.206/24 dev eth0 label eth0:1
ノート:
使用するネットマスクとインタフェースを表すCIDRは、WCPHOST2で使用可能なネットワーク構成と一致している必要があります。
特に冗長結合インタフェースを持つシステムの場合、ネットワーク・インタフェースのデバイス名がX以外のものである場合があります。
-
-
arpingを使用してルーティング表を更新します。たとえば:arping -b -A -c 3 -I eth0 100.200.140.206
-
WCCHOST1で、ディレクトリをノード・マネージャ・ホーム・ディレクトリに変更します。
cd $NM_HOME
-
nodemanager.domainsファイルを編集し、ASERVER_HOMEへの参照を削除します。WCCHOST1
nodemanager.domainsファイルで次のようなエントリが生成されます。wcpedg_domain=MSERVER_HOME;
-
WCCHOST2で、ディレクトリをノード・マネージャ・ホーム・ディレクトリに変更します。
cd $NM_HOME
-
nodemanager.domainsファイルを編集し、ASERVER_HOMEへの参照を追加します。WCCHOST2
nodemanager.domainsファイルで次のようなエントリが生成されます。wcpedg_domain=MSERVER_HOME;ASERVER_HOME
-
WCCHOST1でノード・マネージャを起動し、WCCHOST2でノード・マネージャを再起動します。
-
WCCHOST2上で管理サーバーを起動します。
-
次のURLを使用して、WCCHOST2上の管理サーバーにアクセスできることを確認し、Fusion Middleware Controlのコンポーネントのステータスを確認します。
https://ADMINVHN:9002/em
ロード・バランサを介したWCCHOST2上の管理サーバーへのアクセスの検証
AdminServerにアクセスするようにWeb層を構成している場合、管理サーバーの手動フェイルオーバーを実行した後で、標準の管理URLを使用して管理サーバーにアクセスできるかどうかを確認することが重要です。
ロード・バランサから、次のURLにアクセスして、管理サーバーがWCPHOST2で稼働しているときにアクセスできることを確認します。
-
https://admin.example.com:445/emここで、445は、ロード・バランサでFusion Middleware Controlへのアクセスに使用するポートです。
このURLによって、Oracle Enterprise Manager Fusion Middleware Controlが表示されます。
このドメインに対して定義したプロバイダからWebLogicリモート・コンソールにログインできることを確認します。
-
https://admin.example.com:445/emここで、445は、ロード・バランサでFusion Middleware Controlへのアクセスに使用するポートです。
このURLによって、Oracle Enterprise Manager Fusion Middleware Controlが表示されます。
エンタープライズ・デプロイメントでのuploadおよびstageディレクトリの絶対パスへの変更
ドメインを構成し、すべてのホスト上の管理対象サーバー・ドメイン・ディレクトリにそのドメインを解凍した後、新しいクラスタ内の管理対象サーバーのuploadディレクトリとstageディレクトリを検証および更新します。また、AdminServerのアップロード・ディレクトリを、相対パスではなく、同じ絶対パスを持つように更新します。そうしないと、デプロイメントの問題が発生する可能性があります。
このステップは、リモート・デプロイメントの実行時の潜在的な問題の回避と、ステージ・モードが必要なデプロイメントのために必要です。
デプロイメント・ステージおよびアップロードの場所のディレクトリ・パスを更新するには、次のステップを実行します。
-
WebLogicリモート・コンソールにログインして、このドメインのプロバイダにアクセスします。
-
左側のナビゲーション・ツリーで、「ドメイン」→「環境」を開きます。
-
「ロックして編集」をクリックします。
-
使用するクラスタ・タイプに適したオブジェクトに移動して編集します。
-
静的クラスタの場合は「サーバー」にナビゲートし、編集する管理対象サーバーの名前をクリックします。
-
動的クラスタの場合、「クラスタ」→「サーバー・テンプレート」に移動し、編集するサーバー・テンプレートの名前をクリックします。
-
-
編集する新しい管理対象サーバーまたはサーバー・テンプレートごとに、次の手順を実行します。
-
「構成」タブをクリックし、「デプロイメント」タブをクリックします。
-
「ステージング・ディレクトリ名」が次のように設定されていることを確認します。
MSERVER_HOME/servers/server_or_template_name/stage
MSERVER_HOMEをMSERVER_HOMEディレクトリのフルパスに置き換えます。静的クラスタを使用する場合、編集対象の管理対象サーバーの正しい名前を使用して更新します。
動的クラスタを使用する場合、テンプレート名はそのままにしておきます。たとえば:
/u02/oracle/config/domains/wcpedg_domain/servers/XYZ-server-template/stage -
「アップロード・ディレクトリ名」を次の値に更新します。
ASERVER_HOME/servers/AdminServer/uploadASERVER_HOMEをASERVER_HOMEディレクトリのディレクトリ・パスに置き換えます。 -
「保存」をクリックします。
-
「サーバーのサマリー」または「サーバー・テンプレートのサマリー」画面(該当する方)に戻ります。
-
-
新しい管理対象サーバーごとに前のステップを繰り返します。
-
AdminServerの「アップロード・ディレクトリ名」に移動して、その値を更新します。
-
「サーバー」に移動してAdminServerを選択します。
-
「構成」タブをクリックし、「デプロイメント」タブをクリックします。
-
「ステージング・ディレクトリ名」が次のような絶対パスに設定されていることを確認します。
ASERVER_HOME/servers/AdminServer/stage -
「アップロード・ディレクトリ名」を次の絶対パスに更新します。
ASERVER_HOME/servers/AdminServer/uploadASERVER_HOMEをASERVER_HOMEディレクトリのディレクトリ・パスに置き換えます。 -
「保存」をクリックします。
-
-
該当するすべてのオブジェクトを変更したら、「変更のアクティブ化」をクリックします。
ノート:
これ以上のドメイン構成を直接続行する場合、この時点ではstageおよびuploadディレクトリの変更を有効にするための再起動は厳密には必要ありません。WebLogicクラスタのフロントエンド・ホストおよびポートの設定
Oracle SOA SuiteサーバーをホストするOracle WebLogic Serverクラスタについて、フロントエンドHTTPのホストとポートを設定する必要があります。これらの値は、ドメインのプロパティを指定する際に構成ウィザードで指定できます。ただし、Oracle WebCenter Portalエンタープライズ・デプロイメントの一部にSOAクラスタを追加する場合、このタスクはSOA管理対象サーバーの検証後に実行することをお薦めします。
WebLogicリモート・コンソールからフロントエンド・ホストおよびポートを設定するには:
中間層とSSLエンドポイント間のSSL通信の有効化
中間層とフロントエンド・ハードウェア・ロード・バランサ(またはWebCenter Content WebLogic Serverによってアクセスする必要があるその他の外部SSLエンドポイント)との間のSSL通信を有効にする方法を理解することが重要です。たとえば、外部Webサービスの呼出し、コールバックなどです。
ノート:
次のステップは、ハードウェア・ロード・バランサにSSLが構成されており、その結果システムのフロント・エンド・アドレスが保護されている場合に使用できます。
中間層とフロントエンド・ロード・バランサ間のSSL通信が必要になるとき
エンタープライズ・デプロイメントには、中間層で実行されているソフトウェアが、ハードウェア・ロード・バランサのフロントエンドSSLアドレスにアクセスしなければならないシナリオがあります。このシナリオでは、ロード・バランサと起動サーバー間で、適切なSSLハンドシェイクが行われる必要があります。中間層の管理サーバーと管理対象サーバーが適切なSSL構成を使用して起動されていない場合は、このハンドシェイクを実行できません。
たとえば、次の例は、Oracle SOA Suiteエンタープライズ・デプロイメントに適用できます:
-
Oracle Business Process ManagementおよびSOA Composerでは、特定のWebインスタンス経由でロール情報やセキュリティ情報を取得しようとするときに、フロントエンド・ロード・バランサのURLにアクセスする必要があります。一部の呼出しについては、LBR証明書をWebLogic Serverのトラスト・ストアに追加する必要があるだけでなく、SOAサーバーのリスニング・アドレス用に適切なアイデンティティ・キー証明書を作成する必要もあります。
-
Oracle Service Busは、ロード・バランサのSSL仮想サーバーで公開されているエンドポイントに対する呼出しを実行する。
-
Oracle SOA Suiteのコンポジット・アプリケーションとサービスは、ロード・バランサで公開されているSSLアドレスを使用して呼出しを実行する必要のあるコールバックを、頻繁に生成する。
-
Oracle SOA Suiteコンポジット・アプリケーションおよびサービスは通常、SSLを使用して外部Webサービスにアクセスします。
-
Oracle Enterprise Manager Fusion Middleware ControlでSOA Webサービスのエンドポイントをテストするとき、管理サーバーで実行されているFusion Middleware Controlソフトウェアは、ロード・バランサのフロントエンドにアクセスして、エンドポイントを検証する必要があります。
証明書、アイデンティティ・ストアおよびトラスト・ストアの生成
このエンタープライズ・デプロイメント・ガイドではエンドツーエンドSSL (データベースへのアクセスを除く)が使用されるため、証明書はドメインごとのCAを使用して別の章ですでに生成されています。これらは関連するアイデンティティ・ストアにすでに追加されており、トラスト・ストアもドメインごとのCAを含めるように構成されています。提供されている様々なgenerateCertsスクリプトを使用することで、ドメイン内のWebLogic Serverで使用される様々なリスニング・アドレスの適切な証明書がこれらのストアにすでに存在することが想定されます。さらに、スクリプトgenerate_perdomainCACERTS-ohs.shが実行されると、ドメインのconfig.xml内のすべてのフロントエンド・アドレスがトラバースされ、その関連する証明書がドメインで使用されるトラスト・ストアに追加されます。これらのトラスト・ストアをドメイン内のWebLogic Serverで使用されるJavaプロパティ(-Djavax.net.ssl.trustStoreおよび-Djavax.net.ssl.trustStorePassword)に追加することで、これらのWebLogic ServerがSSL呼出しでクライアントとして機能する場合に、適切なSSLハンドシェイクが保証されます。
トラストストアへの他の外部証明書のインポート
エンタープライズ・デプロイメントの管理用のロールの構成
単一のエンタープライズ・デプロイメント・ドメイン内で各製品を効率的に管理するには、特定の管理ロールまたはグループを必要とする製品を理解することに加え、製品固有の管理ロールをエンタープライズ・デプロイメント管理グループに追加する方法を理解することが必要です。
各エンタープライズ・デプロイメントは複数の製品で構成されています。製品の一部には、各製品への管理アクセスの制御に使用される、特定の管理ユーザー、ロールまたはグループが存在します。
ただし、複数の製品で構成されているエンタープライズ・デプロイメントでは、単一のLDAPベースの認可プロバイダと、単一の管理ユーザーおよびグループを使用して、デプロイメントのあらゆる側面に対するアクセスを制御できます。「新しいLDAPオーセンティケータの作成と新しいエンタープライズ・デプロイメント管理者ユーザーおよび管理者グループのプロビジョニング」を参照してください。
単一のエンタープライズ・デプロイメント・ドメイン内で各製品を効率的に管理できるようにするには、特定の管理ロールまたはグループを必要とする製品を理解すること、単一の共通エンタープライズ・デプロイメントの管理グループに特定の製品管理ロールを追加する方法を知ること、さらに必要な場合は、必須の製品固有の管理グループにエンタープライズ・デプロイメントの管理ユーザーを追加する方法を知ることが必要になります。
詳細な情報は、次のトピックを参照してください
特定の管理ロールを持つ製品のサマリー
次の表に、エンタープライズ・デプロイメントの管理グループ(WCPAdministrators)に追加する必要のある特定の管理ロールを持つ、Fusion Middleware製品のリストを示します(この管理グループは、エンタープライズ・デプロイメントのLDAP認可プロバイダで定義したものです)。
次の表の情報と「エンタープライズ・デプロイメントの管理グループへの製品固有の管理ロールの追加」の手順を使用して、必要な管理ロールをエンタープライズ・デプロイメントの管理グループに追加します。
| 製品 | アプリケーション・ストライプ | 割り当てられる管理ロール |
|---|---|---|
|
Oracle Web Services Manager |
wsm-pm |
policy.updater |
|
WebCenter Portal |
webcenter |
s8bba98ff_4cbb_40b8_beee_296c916a23ed#-#Administrator |
|
SOAインフラストラクチャ |
soa-infra |
SOAAdmin |
特定の管理グループを持つOracle SOA Suite製品のサマリー
表17-1には、特定の管理グループを使用する必要のあるOracle SOA Suite製品のリストを示します。
これらのコンポーネントごとに、共通エンタープライズ・デプロイメントの管理ユーザーを製品固有の管理グループに追加する必要があります。追加しなければ、「エンタープライズ・デプロイメント管理ユーザーおよび管理グループのプロビジョニング」で作成したEnterprise Manager管理ユーザーを使用して製品リソースを管理できません。
表17-1の情報と「製品固有の管理グループへのエンタープライズ・デプロイメントの管理ユーザーの追加」の手順を使用して、必要な管理ロールをエンタープライズ・デプロイメントの管理グループに追加します。
表17-1 製品固有の管理グループを持つOracle SOA Suite製品
| 製品 | 製品固有の管理グループ |
|---|---|
|
Oracle Business Activity Monitoring |
BAMAdministrator |
|
Oracle Business Process Management |
Administrators |
|
Oracle Service Bus統合 |
IntegrationAdministrators |
|
MFT |
OracleSystemGroup |
ノート:
MFTでは、集中LDAPに特定のユーザー(OracleSystemUser)を追加する必要があります。このユーザーは、OracleSystemGroupグループに属している必要があります。MFTジョブの作成および削除が適切に動作するように、ユーザー名とユーザー・グループの両方を集中LDAPに追加する必要があります。エンタープライズ・デプロイメントの管理グループへの製品固有の管理ロールの追加
製品固有の管理ロールを必要とする製品では、次の手順を使用して、その管理ロールをエンタープライズ・デプロイメントの管理グループに追加します。
エンタープライズ・デプロイメントでのTLOGおよびJMSに対する永続ストアの使用
永続ストアは、永続性を必要とするWebLogic Serverのサブシステムおよびサービスに対し、組込みの高性能なストレージ・ソリューションを提供します。
たとえば、JMSサブシステムは、永続JMSメッセージおよび恒久サブスクライバを格納し、JTAトランザクション・ログ(TLOG)は、サーバーが調整するが完了していない可能性のあるコミットされたトランザクションに関する情報を格納します。永続ストアは、ファイルベースのストアまたはJDBC対応データベースの永続性をサポートします。永続ストアの高可用性は、サーバーまたはサービスの移行により提供されます。サーバーまたはサービスの移行では、WebLogicクラスタのすべてのメンバーが、同一のトランザクションとJMS永続ストア(ファイルベースかデータベースベースかを問わない)にアクセスできる必要があります。
エンタープライズ・デプロイメントの場合、トランザクション・ログ(TLOG)とJMSにはJDBC永続ストアを使用することをお薦めします。
この項では、JDBCとファイル永続ストアを比較して利点を分析し、サポートされるデータベースで永続ストアを構成する手順を説明します。JDBCストアではなくファイル永続ストアを使用する場合に、これを構成する手順も、この項で説明します。
JMS永続ストアとTLOGを使用する製品およびコンポーネント
永続ストアを利用するFMW製品およびコンポーネントを決定するには、WebLogic Serverコンソールの「ドメイン構造」ナビゲーションで、ドメイン名 > 「サービス」 > 「永続ストアを使用します。リストには、ストア、ストア・タイプ(FileStoreおよびJDBC)、およびストアのターゲットが示されます。リストされている中でMDSに関連するストアについてはこの章では扱わず、考慮されません。
| コンポーネント/製品 | JMSストア | TLOGストア |
|---|---|---|
|
SOA |
あり |
あり |
|
WCC |
あり |
あり |
|
WCP |
なし |
なし |
|
WSM |
なし |
なし |
| コンポーネント/製品 | JMSストア | TLOGストア |
|---|---|---|
|
OAM |
なし |
なし |
|
OIM |
あり |
あり |
通常、Oracle WebCenter ContentおよびOracle SOAが含まれるOracle WebCenter Portal環境の場合、各クラスタ内の管理対象サーバーがJMSおよびTLOGSのデータ・ソースと新しいJDBC永続ストアのターゲットとなります。
JDBC永続ストアとファイル永続ストアの比較
Oracle Fusion MiddlewareではOracle WebLogic Serverトランザクション・ログ(TLOG)とJMSに対して、データベース・ベースとファイル・ベース両方の永続ストアをサポートしています。環境の永続ストア戦略を決定する前に、各アプローチのメリットとデメリットを検討してください。
ノート:
選択するストレージ方法に関係なく、トランザクションの整合性および一貫性を確保するために、JMSとTLOGの両方に同じタイプのストアを使用することをお薦めします。
JMSおよびTLOGのためのJDBC永続ストアについて
TLOGおよびJMSデータをOracleデータベースに格納する場合、データベースの複製機能と高可用性機能を利用できます。たとえば、Oracle Data Guardを使用するとサイト間の同期が簡単になります。これは、Oracle Fusion Middlewareを障害回復構成でデプロイする場合に特に重要です。
また、TLOGおよびJMSデータをデータベースに格納すると、そのデータについて共有記憶域内の特定の場所を指定する必要がありません。ただし、エンタープライズ・デプロイメントの他の観点からも共有記憶域が必要であることに注意してください。たとえば、管理サーバー構成(管理サーバーのフェイルオーバーをサポートするため)、デプロイメント・プラン、ファイルおよびFTPアダプタ制御や処理ファイルなどのアダプタ・アーティファクトには必要です。
TLOGおよびJMSストアを共有記憶域デバイスに格納する場合、適切な複製およびバックアップ戦略を使用してデータ損失ゼロを保証することで、このデータを保護できます。また、システム・パフォーマンスも向上する可能性があります。ただし、ファイル・システムの保護機能はOracle Databaseによって提供される保護機能ほど優れていません。
データベース・ベースのTLOGおよびJMSストアを使用する場合のパフォーマンスへの影響の詳細は、「TLOGおよびJMS永続ストアへのパフォーマンスの考慮事項」を参照してください。
TLOGおよびJMS永続ストアのパフォーマンスの考慮事項
トランザクション・ログとJMSの永続ストアの格納方法を選択する際の重要な考慮事項の1つは、パフォーマンスに対する潜在的な影響です。この項では、TLOGおよびJMSにJDBC永続ストアを使用する場合のパフォーマンスへの影響を明らかにするのに役立つ、ガイドラインや詳細をいくつか示します。
トランザクション・ログとJMSストアのパフォーマンスへの影響
トランザクション・ログの場合、ログは本質的に一時的であるため、JDBCストアの使用による影響は比較的小さくて済みます。通常、システム内の他のデータベース操作と比較した場合、影響はほとんどありません。
一方、JMSデータベース・ストアは、アプリケーションでのJMS使用率が高い場合にパフォーマンスに大きな影響を及ぼすことがあります。
パフォーマンスに影響を与える要素
カスタム宛先にJMS DBストアを使用する場合、複数の要素がパフォーマンスに影響を与えます。主なものは、次のとおりです。
-
関与するカスタム宛先とそのタイプ
-
永続化されるペイロード
-
SOAシステムの同時実行性(宛先のコンシューマおよびプロデューサ)
上述のいずれかの影響に応じて、次の領域に様々な設定を構成し、パフォーマンスを向上させることができます。
-
JMS表に使用されるデータ型のタイプ(RAWの使用対LOBの使用)
-
JMS表のセグメント定義(索引および表レベルでのパーティション)
JMSトピックの影響
システムでトピックが集中的に使用されている場合、同時実行性が高まるにつれて、Oracle RACデータベースのパフォーマンス低下はキューの場合よりも大きくなります。OracleがJMSに対して実施したテストでは、様々なペイロード・サイズおよび様々な同時実行性での平均パフォーマンス低下率は、キューの場合は30%未満でした。トピックの場合、影響は40%を超えていました。データベース・ストアを使用するかどうかを決定する際、リカバリの観点からこれらの宛先の重要性を検討してください。
データ型およびペイロード・サイズの影響
ペイロードで使用するためにRAWデータ型またはSecureFiles LOBデータ型を選択するときは、永続化するペイロードのサイズを考慮します。たとえば、ペイロード・サイズの範囲が100bから20kの場合、SecureFiles LOBデータ型で必要とされるデータベース時間の量はRAWデータ型よりも若干多くなります。
具体的に言うと、ペイロード・サイズが約4kに達すると、SecureFilesはより多くのデータベース時間を必要とするようになります。これは、4kでは書込みが行外になるためです。約20kのペイロード・サイズで、SecureFilesデータはより効率的になり始めます。ペイロード・サイズが20kを超えると、RAWデータ型に設定されたペイロードのデータベース時間は悪化します。
SecureFilesのもう1つの利点は、500kを超えた時点からペイロードが増加してもデータベース時間が安定化し始める点です。すなわち、その時点で、(SecureFilesにとって)データが500k、1MBまたは2MBのいずれのペイロードを格納しているかは関係なくなります。書込みが非同期化され、すべてのケースで競合が同じになるためです。
ペイロード・サイズが50kに達するまで、キューのスループットに対する同時実行性(プロデューサおよびコンシューマ)の影響はRAWでもSecureFilesでも同じです。ペイロードが小さい場合、同時実行性が変化してもその影響はほぼ同じですが、RAWの方がスケーラビリティがやや優れています。ペイロードが50kを超える場合、SecureFilesの方がスケーラビリティが優れています。
同時実行性、ワーカー・スレッド、データベースのパーティション化の影響
永続ストアに定義された同時実行性とワーカー・スレッドは、索引レベルおよびグローバル・キャッシュ・レベルでRACデータベースの競合の原因になることがあります。1つの単一サーバーで複数のワーカー・スレッドを有効にする場合、または複数のOracle WebLogic Serverクラスタを使用する場合、リバース索引を使用することで様々なことを改善できます。ただし、Oracle Databaseのパーティション化オプションを使用できる場合、かわりにグローバル・ハッシュ・パーティション索引を使用する必要があります。これにより、索引の競合およびグローバル・キャッシュ・バッファ待機が減少し、アプリケーションのレスポンス時間が改善されます。パーティション化はどのケースでも適切に機能しますが、リバース索引で大幅な改善が認められない場合もあります。
エンタープライズ・デプロイメントのTLOGおよびJMSでのJDBC永続ストアの使用
この項では、トランザクション・ログ(TLOG)およびJMSにJDBC永続ストアを使用するためのガイドラインを説明します。サポートされているデータベースで永続ストアを構成するための手順も説明します。
TLOGとJMSデータ・ソース結合の推奨事項
データ・ソースの結合および接続の使用を減らすには、JMSおよびTLOG永続ストアの両方に単独接続プールを使用します。
作業負荷が高くない場合、およびWLSSchemaDatasourceプール・サイズの増加を考慮する場合は、TLOGおよびJMS永続ストアに対してWLSSchemaDatasourceをそのまま再利用することをお薦めします。データ・ソースを再利用すると、同じスキーマと表領域が必然的に使用され、PREFIX_WLS表領域のPREFIX_WLS_RUNTIMEスキーマがTLOGおよびJMSメッセージの両方に対して使用されます。
-
プールでJMSメッセージを保持するための接続が使用できない場合、データ・ソースで強度の競合が発生すると永続ストアでエラーが発生する可能性があります。
-
プールでトランザクション・ログ更新のための接続が使用できない場合、データ・ソースで強度の競合が発生すると、トランザクションで問題が発生する可能性があります。
これらのケースでは、TLOGとストアに対して個別のデータ・ソース、および異なるストアに対して個別のデータ・ソースを使用します。PREFIX_WLS_RUNTIMEスキーマの再利用も可能ですが、競合の問題を解決するには、同じスキーマに対して個別のカスタム・データ・ソースを構成します。
TLOG用のJDBC永続ストア構成のロードマップ
ここでは、トランザクション・ログ用にデータベースベースの永続ストアを構成する方法を説明します。
ノート:
ステップ1と2はオプションです。データ・ソース連結および接続の使用を削減するには、PREFIX_WLS表領域およびWLSSchemaDatasourceを、「TLOGおよびJMSデータ・ソース結合の推奨事項」に従って再利用します。
JMS用のJDBC永続ストア構成のロードマップ
次の項では、JMSにデータベース・ベースの永続ストアを構成する方法について説明します。
ノート:
ステップ1と2はオプションです。データ・ソース連結および接続の使用を削減するには、PREFIX_WLS表領域およびWLSSchemaDatasourceを、「TLOGおよびJMSデータ・ソース結合の推奨事項」に従って再利用します。
TLOGおよびJMSストアのGridLinkデータ・ソースの作成
JMSおよびTLOGにデータベース・ベースの永続ストアを構成する前に、TLOG永続ストアとJMS永続ストアにそれぞれ1つずつ、2つのデータ・ソースを作成する必要があります。
エンタープライズ・デプロイメントでは、TLOGおよびJMSストアにGridLinkデータ・ソースを使用する必要があります。GridLinkデータ・ソースを作成するには:
管理対象サーバーへのTLOG JDBCストアの割当て
データ・ソース集計を完了するには、TLOG永続ストアの<PREFIX>_WLS表領域およびWLSSchemaDatasourceを再利用します。あるいは、データベースでユーザーと表領域を作成し、データ・ソースが作成済であることを必要な各管理対象サーバーにTLOGストアを割り当てる前に確認します。
- Oracle WebLogicリモート・コンソールにログインします。
- 「ツリーの編集」で、「環境」→「サーバー」に移動します。
- 管理対象サーバーの名前をクリックします。
- 「サービス」→「JTA」タブを選択します。
- 「JDBCのトランザクション・ログ・ストア」を有効にします。
- 「データ・ソース」メニューで、WLSSchemaRuntimeDatasourceを選択し、データ・ソースの集計を実行します。TLOGには、
<PREFIX>_WLS表領域が使用されます。 - 「トランザクション・ログ接頭辞名」フィールドで、構成された各JDBC TLOGストアに一意のJDBC TLOGストア名を形成するための接頭辞の名前を指定します。
- 「保存」をクリックします。
- 追加の管理対象サーバーごとにステップ2からステップ7を繰り返します。
- これらの変更をアクティブ化するには、ショッピング・カートの変更をコミットします。
JDBC JMSストアの作成
データベースでJMS永続ストア・ユーザーと表領域を作成し、JMS永続ストアのデータ・ソースを作成したら、WebLogicリモート・コンソールを使用してストアを作成できます。
JMSサーバーへのJMS JDBCストアの割当て
データベースでJMSの表領域とユーザーを作成し、JMSデータ・ソースを作成し、JDBCストアを作成した後で、JMS永続ストアを必須のJMSサーバーそれぞれに割り当てることができます。
- WebLogicリモート・コンソールにログインします。
- 「ツリーの編集」に移動します。
- 構造ツリーで、「サービス」→「メッセージング」→「JMSサーバー」を開きます。
- 永続ストアを使用するJMSサーバーの名前をクリックします。
- 「永続ストア」プロパティで、作成したJMS永続ストアを選択します。
- 「保存」をクリックします。
- クラスタ内の追加のJMSサーバーごとに、ステップ3から6を繰り返します。
- これらの変更をアクティブ化するには、ショッピング・カートの変更をコミットします。
WebサービスのJDBC永続ストアについて
デフォルトでは、Webサービスの永続性にはWebLogic Serverデフォルト永続ストアが使用されます。このストアはWebサービスに対して高パフォーマンスの記憶域ソリューションを提供します。
-
信頼性のあるメッセージング
-
接続
-
セキュア通信
-
メッセージ・バッファリング
デフォルト・ストアではなく、JDBC永続ストアをWebLogic ServerのWebサービスで使用することもできます。Webサービスの永続性の詳細は、Webサービスの永続性の管理を参照してください。
エンタープライズ・デプロイメントのバックアップとリカバリの実行
Oracle WebCenter Portalエンタープライズ・デプロイメントに必要なディレクトリと構成データを確実にバックアップするために、次に示すガイドラインに従うことをお薦めします。
ノート:
この項で示す静的なランタイム・アーティファクトの一部は、Network Attached Storage (NAS)からホストされています。可能な場合は、これらのボリュームをアプリケーション・サーバーではなく直接NASファイラからバックアップおよびリカバリします。
Oracle Fusion Middleware製品のバックアップとリカバリの一般情報は、『Oracle Fusion Middlewareの管理』の次の項を参照してください。
表17-3に、典型的なOracle WebCenter Portalエンタープライズ・デプロイメントのバックアップ対象である静的アーティファクトを示します。
表17-3 Oracle WebCenter Portalエンタープライズ・デプロイメントのバックアップ対象である静的アーティファクト
| タイプ | ホスト | 層 |
|---|---|---|
|
データベースOracleホーム |
DBHOST1およびDBHOST2 |
データ層 |
|
Oracle Fusion Middleware Oracleホーム |
WEBHOST1およびWEBHOST2 |
Web層 |
|
Oracle Fusion Middleware Oracleホーム |
WCCHOST1およびWCCHOST2 (またはNASファイラ) |
アプリケーション層 |
|
インストール関連ファイル |
WEBHOST1、WEHOST2および共有記憶域 |
N/A |
表17-4に、典型的なOracle WebCenter Portalエンタープライズ・デプロイメントのバックアップ対象である実行時アーティファクトを示します。
表17-4 Oracle WebCenter Portalエンタープライズ・デプロイメントのバックアップ対象である実行時アーティファクト
| タイプ | ホスト | 層 |
|---|---|---|
|
管理サーバーのドメイン・ホーム(ASERVER_HOME) |
WCCHOST1 (またはNASファイラ) |
アプリケーション層 |
|
アプリケーション・ホーム(APPLICATION_HOME) |
WCCHOST1 (またはNASファイラ) |
アプリケーション層 |
|
Oracle RACデータベース |
DBHOST1およびDBHOST2 |
データ層 |
|
スクリプトとカスタマイズ |
ホスト当たり |
アプリケーション層 |
|
デプロイメント・プラン・ホーム(DEPLOY_PLAN_HOME) |
WCCHOST1 (またはNASファイラ) |
アプリケーション層 |
|
OHS/OTD構成ディレクトリ |
WEBHOST1およびWEBHOST2 |
Web層 |
Oracle WebCenter Portalエンタープライズ・デプロイメントの構成および管理タスク
Oracle WebCenter Portalエンタープライズ・デプロイメントで実行する必要性が高い、いくつかの主要な構成および管理タスクについて説明します。
エンタープライズ・デプロイメントへのOracle SOA Suiteコンポジット・アプリケーションのデプロイ
Oracle SOA Suiteアプリケーションは、様々な種類のOracle SOA Suiteコンポーネントから構成されるコンポジットとしてデプロイされます。SOAコンポジット・アプリケーションには次が含まれます。
-
サービス・コンポーネント。ルーティングのためのOracle Mediator、オーケストレーションのためのBPELプロセス、オーケストレーションのためのBAMプロセス(Oracle BAM Suiteがインストールされている場合)、ワークフロー承認のためのヒューマン・タスク、SOAコンポジット・アプリケーションにJavaインタフェースを統合するためのSpring、ビジネス・ルールを使用するためのデシジョン・サービスなどがあります。
-
外部のサービス、アプリケーションおよびテクノロジに対してSOAコンポジット・アプリケーションを接続するバインディング・コンポーネント(サービスと参照)
これらのコンポーネントが、1つのSOAコンポジット・アプリケーションに組み込まれています。
Oracle SOA Suiteコンポジット・アプリケーションをOracle SOA Suiteエンタープライズ・デプロイメントにデプロイするときは、必ず各コンポジットを、ロード・バランサ・アドレス(soa.example.com)ではなく、特定のサーバーまたはクラスタ・アドレスにデプロイしてください。
ロード・バランサ・アドレスにコンポジットをデプロイするには、多くの場合、デプロイヤ・ノードから外部のロード・バランサ・アドレスへの直接接続が必要になります。そのため、ファイアウォールに追加のポートを開く必要があります。
Oracle SOA Suiteコンポジット・アプリケーションの詳細は、『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』の次の項を参照してください。
デプロイメント・プランおよびSOAインフラストラクチャ・アプリケーション更新での共有記憶域の使用
SOAクラスタ内のSOAインフラストラクチャ・アプリケーションまたはリソース・アダプタを再デプロイするときは、デプロイメント・プランとアプリケーション・ビットに、クラスタ内の全サーバーからアクセスできる必要があります。
SOAのアプリケーションおよびリソース・アダプタは、nostageデプロイメント・モードを使用してインストールされます。nostageデプロイメント・モードを選択した場合、管理サーバーはアーカイブ・ファイルをソースの場所からコピーしないため、各サーバーが同じデプロイメント・プランにアクセスできるようにしておく必要があります。
デプロイメント・プランの場所がドメイン内のすべてのサーバーで利用できるようにするには、「このガイドで使用するファイル・システムとディレクトリ変数」で示され、エンタープライズ・デプロイメント・ワークブック内のDEPLOY_PLAN_HOME変数で表される、デプロイメント・プランのホームの場所を使用します。
Oracle SOA Suiteエンタープライズ・デプロイメントでのデータベース増分の管理
Oracle SOA Suiteデータベースのデータ量が非常に多くなると、特に多くのコンポジット・アプリケーションがデプロイされている可能性のあるOracle SOA Suiteエンタープライズ・デプロイメントでは、データベースの保守が難しくなることがあります。
『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』の次の項を参照してください。
SOAサーバーでのJMSメッセージの管理
SOAサーバーでJMSメッセージを管理する手順は、いくつかあります。スケール・イン操作の間にメッセージを保持する場合など、一部シナリオでは、これらの手順に従う必要があることがあります。
この項では、これらの手順のいくつかを詳しく説明します。
SOAサーバーからのJMSメッセージの排出
JMSメッセージの排出のプロセスは、特定のWebLogicサーバーからメッセージをクリアするために役立ちます。ストアを排出するための基本的な手法は、適切なJMSサーバーでのメッセージ生成の停止、およびアプリケーションへのメッセージ使用の許可で構成されています。
ただし、この手順は、アプリケーションによって異なり、かかる時間を予測できない可能性があります。別の方法として、ここでは、現在のJMS宛先からの現在のメッセージを保存して、必要な場合にそれらを別のサーバーにインポートするための、一般的な手順を示します。
排出手順は、1つ以上のサーバーを削除することでクラスタのサイズが縮小されるため、スケール・インやスケール・ダウンのシナリオで役立ちます。削除するサーバーからメッセージを排出し、それらをクラスタ内の別のサーバーにインポートすることで、メッセージが失われないようにすることができます。
一部の障害回復保守シナリオで、スナップショット・スタンバイ・データベースを使用することでセカンダリの場所でサーバーを起動するときに、この手順を使用することもできます。この場合は、ドメインの起動時にスタンバイ・ドメインで使用されないようにするために、セカンダリの場所でドメインを起動する前に、ドメインからメッセージを排出する必要があることがあります(そうしないと、実行が重複する可能性があります)。このシナリオでは、メッセージをインポートできません。