この章では、リソース・グループ・テンプレートを構成する方法について説明します。この章では、適宜追加情報について、Fusion Middleware、WebLogic Server、CoherenceおよびOracle Traffic Directorのドキュメント・セットおよびオンラインを参照します。
この章の内容は次のとおりです。
リソース・グループ・テンプレートは、複数のリソース・グループによってパターンとして使用されるデプロイ可能なリソースの名前付きのドメイン・レベル・コレクションです。特定のテンプレートを参照する各リソース・グループには、そのテンプレートに定義されているリソースの独自のランタイム・コピーが含まれます。
リソース・グループ・テンプレートは、複数テナント用にリソースを定義およびレプリケートする便利な方法です。リソース・グループ・テンプレートにより、アプリケーションとリソースの同じコレクションを複数のドメイン・パーティションにデプロイすることが非常に簡単になります。
リソース・グループ・テンプレートは、WebLogic Server Multitenant (MT)が同じアプリケーションとリソースを複数回(ドメイン・パーティションごとに1回ずつ)アクティブ化するSaaS環境で特に役立ちます。そのようなリソースに関する情報のいくつかはすべてのドメイン・パーティションで同じになり、JMSキューの属性やDB接続の属性などのそのいくつかはパーティション間で異なります。
リソース・グループ・テンプレートは次の2つの方法で作成できます。
新しいリソース・グループ・テンプレートを作成します。これにより、リソース・グループ・テンプレートの基本構造が作成されます。次に、このリソース・グループ・テンプレートを必要に応じて編集する必要があります。
WLS管理コンソールを使用している場合は、既存のリソース・グループ・テンプレートのクローンを作成できます。構成は、テンプレートから新しいリソース・グループ・テンプレートにコピーされます。次に、リソース・グループ・テンプレートからの値を必要に応じて編集およびオーバーライドする必要があります。
この節では、以下のトピックについて説明します。
リソース・グループ・テンプレートとリソース・グループ間の主な相違の1つは、リソース・グループ・テンプレートにはターゲットがないことです。リソース・グループ・テンプレートは(場合によっては多数のパーティション内の)複数のリソース・グループによってパターンとして使用されることを目的としているため、ターゲット固有の情報は、ほとんどの場合リソース・グループに固有となります。
したがって、次のようになります。
アプリケーションをリソース・グループ・テンプレートにデプロイする場合は、リソース・グループ・テンプレートがリソース・グループによって参照されるまで、アプリケーションを起動できません。
リソース・グループ・テンプレートを開始または停止できません。
リソース・グループ・テンプレートは、ResourceGroupTemplateMBeanに基づき、次のリソースを含めることができます。
全般(名前)
デプロイメント
サービス
JDBC
メッセージ
メール・セッション
永続ストア
外部JNDIプロバイダ
OSGiフレームワーク
診断
ノート
リソース・オーバーライドによって、パーティション・レベルでリソースをカスタマイズできます。
リソース・グループ・テンプレートから導出されたリソース設定を次のようにオーバーライドします。
リソース・グループ・テンプレートを作成します。
必要に応じて、アプリケーションをリソース・グループ・テンプレートにデプロイします。
必要に応じて、リソース・グループ・テンプレートでサービスを定義します。
パーティションを作成してから、リソース・グループ・テンプレートを参照するリソース・グループを作成します。
リソース・グループのリソース・グループ・テンプレートからの値をオーバーライドします。
オーバーライド構成MBean、リソース・デプロイメント・プランおよびパーティション固有のアプリケーション・デプロイメント・プランを使用して、パーティションのリソース定義をオーバーライドできます。リソース・オーバーライドの完全な説明は、「リソース・オーバーライドの構成」を参照してください。アプリケーション・オーバーライドの詳細は、「パーティション・リソース・グループへのアプリケーションのデプロイ」を参照してください。
SaaS環境があり、特定のビジネス・アプリケーションの1つのインスタンスを3つの異なるパーティションで実行する必要があると仮定します。このビジネス・アプリケーションには1つのプラガブル・データベースが必要です。つまり、各アプリケーション・インスタンスには、他のアプリケーション・インスタンスから分離された独自のデータが必要であるため、パーティションごとに1つのプラガブル・データベースが必要です。
さらに、プラガブル・データベースの構成が、データベース名、ユーザー名およびパスワードを除き、3つのパーティションで同じであると仮定します。これらの値には、表5-1の値を使用するとします。
表5-1 プラガブル・データベースの例
PDB名 | ユーザー名/パスワード | 使用元 |
---|---|---|
pdb1.example.com |
pdbuser1/pdbuser1 |
Partition1 |
pdb2.example.com |
pdbuser2/pdbuser2 |
Partition2 |
pdb3.example.com |
pdbuser3/pdbuser3 |
Partition3 |
リソース・グループ・テンプレートを構成するには、次の手順に従います。
リソース・グループ・テンプレートを作成します。
「サービス」→「JDBC」に移動します。
JDBCシステム・データ・ソースを作成します。この例の目的のために、汎用データ・ソースを作成します。
JDBCデータ・ソースの構成値を入力します。
接続プロパティ用に、次の値を使用します。
このリソース・グループ・テンプレートを参照するリソース・グループでこれらの値をオーバーライドします。ただし、ここで初期値を入力すると、データベース接続をテストできます。
リソース・グループ・テンプレートに基づいたリソース・グループを使用して、表5-1の3つのパーティションを作成します。
Partition1
では、リソース・グループ・テンプレートで正しい値を使用しているため、いずれのJDBCデータ・ソース値もオーバーライドする必要はありません。
Partition2
およびPartition3
では、データベース名、ユーザー名およびパスワードを表5-1の正しい値でオーバーライドします。
FMWCを使用してこれを行うには、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のWebLogic Serverのリソース・オーバーライドに関する項の説明に従い、「ドメイン・パーティション」→「パーティション」→「リソース・オーバーライド」に移動します。
新しいリソース・グループ・テンプレートを作成するには、次のようにします。
「ドメイン」→「環境」→「リソース・グループ・テンプレート」に移動します。
新しいリソース・グループ・テンプレートを作成します。この名前はドメイン内で一意にする必要があります。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のリソース・グループ・テンプレートの作成に関する項で説明しています。
最初のリソース・グループ・テンプレート構成は基本スケルトンで、使用する前に構成する必要があります。タスクには、JDBCシステム・データ・ソース、JMSサーバーおよびリソース、外部JNDIプロバイダなどの構成が含まれます。
詳細は、「リソース・グループ・テンプレートの構成: 主な手順およびWLSTの例」を参照してください。
次の例の内容は次のとおりです。
ドメイン・パーティションを作成します。
仮想ターゲットを作成します。
仮想ターゲットのホスト名およびURI接頭辞を設定します。
この仮想ターゲットを、使用可能なターゲットとしてパーティションに追加します。
リソース・グループを作成します。
仮想ターゲットをリソース・グループに追加します。
リソース・グループ・テンプレートを作成します。
リソース・グループをリソース・グループ・テンプレートに関連付けます。
変更をアクティブ化します。
パーティションを起動します。
注意: これが本番モードで作成する最初のパーティションの場合は、管理サーバーを再起動する必要があり、その後でパーティションが起動可能になります。 |
# Create Pep partition resource group, and resource group template edit() startEdit() wls:/base_domain/edit/ !> domain=getMBean('/') wls:/base_domain/edit/ !> peppart=domain.createPartition('Pep') wls:/base_domain/edit/ !> vt=domain.createVirtualTarget('VirtualTarget-0') wls:/base_domain/edit/ !> vt.setHostNames(jarray.array([String('localhost')],String)) wls:/base_domain/edit/ !> vt.setUriPrefix('/foo') wls:/base_domain/edit/ !> peppart.addAvailableTarget(vt) wls:/base_domain/edit/ !> peprg=peppart.createResourceGroup('TestRG') wls:/base_domain/edit/ !> peprg.addTarget(vt) wls:/base_domain/edit/ !> peprgt=domain.createResourceGroupTemplate('TestRGT') wls:/base_domain/edit/ !> peprg.setResourceGroupTemplate(peprgt) wls:/base_domain/edit/ !> activate() wls:/base_domain/edit/ !> startPartitionWait(peppart)
この項では、リソース・グループ・テンプレートを構成する方法について説明します。
この項では、次のタスクを取り上げます。
リソース・グループ・テンプレートのデプロイメント設定を表示および定義するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
次のデプロイメント・アクションを実行できます。
デプロイ
再デプロイ
アンデプロイ
デプロイメント・プランのフェッチ
変更内容を保存します。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のリソース・グループ・テンプレートのデプロイメントの構成に関する項で説明しています。
詳細は、「アプリケーションのリソース・グループ・テンプレートへのデプロイ」を参照してください。
この項では、リソース・グループ・テンプレートのサービス設定を構成する方法について説明します。次の項目について説明します。
このリソース・グループ・テンプレートに作成されたJDBCシステム・リソースの構成設定を表示するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「JDBC」に移動します。
リソース・グループの読取り専用のJDBC情報は、次のとおりです。
名前
JNDI名
タイプ
アルゴリズム・タイプ
行プリフェッチ有効
行プリフェッチ・サイズ
ストリーム・チャンク・サイズ
必要に応じて、システム・データ・ソースを作成または削除します。
変更内容を保存します。
詳細は、「JDBCの構成」を参照してください。
この項では、リソース・グループ・テンプレートのJMS設定を構成する方法について説明します。
この項では、次のタスクを取り上げます。
このリソース・グループ・テンプレートに作成されたJMSサーバーの構成設定を表示するには、次のようにします。
構成するリソース・グループを選択します。
「サービス」→「メッセージング」→「JMSサーバー」に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートにすでに構成されているJMSサーバーで使用できます。
名前
ヘルス
ヘルスの理由
永続ストア
一時的なテンプレート名
最大バイト数
最大メッセージ数
最大バイトしきい値
最小バイトしきい値
最大メッセージしきい値
必要に応じて、JMSサーバーを作成または削除します。
変更内容を保存します。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のWebLogic Serverメッセージングに関する項で説明しています。
詳細は、「メッセージングの構成」を参照してください。
このリソース・グループ・テンプレートに作成されたストア・アンド・フォワード(SAF)エージェントの構成設定を表示するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「メッセージング」→「SAFエージェント」に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートに構成されているSAFエージェントで使用できます。
名前
エージェント・タイプ
永続ストア
必要に応じて、SAFエージェントを作成または削除します。
変更内容を保存します。
これらのタスクの詳細は、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のSAFエージェント設定の構成に関する項を参照してください。
詳細は、「メッセージングの構成」を参照してください。
リソース・グループ・テンプレートのリソース設定をモニターするには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「メッセージング」→「JMSリソース」に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートに構成されているJMSリソースで使用できます。
名前
タイプ
JMSモジュール名
JNDI名
サブデプロイメント
必要に応じて、JMSリソースを作成または削除します。
変更内容を保存します。
これらのタスクの詳細は、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のSAFエージェント設定の構成に関する項を参照してください。
既存のJMSリソースの構成の詳細は、「メッセージングの構成」を参照してください。
リソース・グループ・テンプレートのJMSモジュールを構成するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「メッセージング」→「JMSモジュール」→「JMSモジュール」に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートに構成されているJMSモジュールで使用できます。
名前
キュー
トピック
接続ファクトリ
分散キュー
分散トピック
外部サーバー
割当て制限
SAFエラー・ハンドラ
SAFインポート済宛先
SAFリモート・コンテキスト
テンプレート
共通分散キュー
共通分散トピック
宛先キー
タイプ
必要に応じて、JMSモジュールを作成または削除します。
変更内容を保存します。
これらのタスクの詳細は、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のJMSモジュール設定の構成に関する項を参照してください。
詳細は、「メッセージングの構成」を参照してください。
リソース・グループ・テンプレートのメッセージング・ブリッジ設定を構成するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「メッセージング」→「メッセージング・ブリッジ」に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートに構成されているメッセージング・ブリッジで使用できます。
名前
ソース・ブリッジ宛先
ターゲット・ブリッジ宛先
必要に応じて、メッセージング・ブリッジを作成または削除します。
変更内容を保存します。
これらのタスクの詳細は、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のメッセージング・ブリッジの構成に関する項を参照してください。
詳細は、「メッセージングの構成」を参照してください。
リソース・グループ・テンプレートのJMSブリッジ宛先設定を構成するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「メッセージング」→ブリッジ宛先に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートに構成されているJMSブリッジ宛先で使用できます。
名前
アダプタのJNDI名
必要に応じて、JMSブリッジ宛先を作成または削除します。
変更内容を保存します。
これらのタスクの詳細は、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のJMSブリッジ宛先の構成に関する項を参照してください。
詳細は、「メッセージングの構成」を参照してください。
リソース・グループ・テンプレートのパス・サービス設定を構成するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「メッセージング」→「パス・サービス」に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートに構成されているパス・サービスで使用できます。
名前
永続ストア
必要に応じて、パス・サービスを作成または削除します。
変更内容を保存します。
これらのタスクの詳細は、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のパス・サービスの構成に関する項を参照してください。
詳細は、「メッセージングの構成」を参照してください。
このリソース・グループ・テンプレートに作成されたメール・セッションの構成設定を表示するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「メール」に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートに構成されているメール・セッションで使用できます。
名前
JNDI名
必要に応じて、メール・セッションを作成または削除します。
変更内容を保存します。
これらのタスクの詳細は、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のWebLogic Serverメール・セッションに関する項を参照してください。
このリソース・グループ・テンプレートに作成された永続ストアの構成設定を表示するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「永続ストア」に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートに構成されている永続ストアで使用できます。
名前
タイプ
必要に応じて、永続ストアを作成または削除します。
変更内容を保存します。
これらのタスクの詳細は、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のWebLogic Server永続ストアに関する項を参照してください。
詳細は、「メッセージングの構成」を参照してください。
このリソース・グループ・テンプレートに作成された外部JNDIプロバイダの構成設定を表示するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「外部JNDIプロバイダ」に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートに構成されている外部JNDIプロバイダで使用できます。
名前
初期コンテキスト・ファクトリ
プロバイダURL
ユーザー
ターゲット
必要に応じて、外部JNDIプロバイダを作成または削除します。
変更内容を保存します。
これらのタスクの詳細は、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のWebLogic Server外部JNDIプロバイダに関する項を参照してください。
詳細は、「JNDIの構成とプログラミング」を参照してください。
このリソース・グループ・テンプレートに作成された診断システム・モジュールの構成設定を表示するには、次のようにします。
構成するリソース・グループ・テンプレートを選択します。
「サービス」→「診断」に移動します。
次の読取り専用情報は、このリソース・グループ・テンプレートに構成されている診断システム・モジュールで使用できます。
名前
説明
ターゲット
必要に応じて、診断システム・モジュールを作成または削除します。
変更内容を保存します。
これらのタスクの詳細は、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のWebLogic Server診断に関する項を参照してください。
詳細は、「パーティションのモニタリングおよびデバッグ」を参照してください。
リソース・グループ・テンプレートのノートを作成するには、次のようにします。
構成するリソース・グループを選択します。
「ノート」に移動します。
ノートを入力します。
変更内容を保存します。
次の例の内容は次のとおりです。
ドメイン・パーティションを作成します。
仮想ターゲットを作成します。
仮想ターゲットのホスト名およびURI接頭辞を設定します。
この仮想ターゲットを、使用可能なターゲットとしてパーティションに追加します。
リソース・グループを作成します。
仮想ターゲットをリソース・グループに追加します。
リソース・グループ・テンプレートを作成します。
アプリケーションMySimpleEjb
をリソース・グループ・テンプレートにデプロイします。
リソース・グループをリソース・グループ・テンプレートに関連付けます。
変更をアクティブ化します。
パーティションを起動します。
注意: これが本番モードで作成する最初のパーティションの場合は、管理サーバーを再起動する必要があり、その後でパーティションが起動可能になります。 |
# Create Pep partition resource group, and resource group template edit() startEdit() wls:/base_domain/edit/ !> domain=getMBean('/') wls:/base_domain/edit/ !> peppart=domain.createPartition('Pep') wls:/base_domain/edit/ !> vt=domain.createVirtualTarget('VirtualTarget-0') wls:/base_domain/edit/ !> vt.setHostNames(jarray.array([String('localhost')],String)) wls:/base_domain/edit/ !> vt.setUriPrefix('/foo') wls:/base_domain/edit/ !> peppart.addAvailableTarget(vt) wls:/base_domain/edit/ !> peprg=peppart.createResourceGroup('TestRG') wls:/base_domain/edit/ !> peprg.addTarget(vt) wls:/base_domain/edit/ !> peprgt=domain.createResourceGroupTemplate('TestRGT') wls:/base_domain/edit/ !> deploy(appName='MySimpleEJB', path='c:/webservices/MySimpleEjb.jar', resourceGroupTemplate='TestRGT') wls:/base_domain/edit/ !> peprg.setResourceGroupTemplate(peprgt) wls:/base_domain/edit/ !> activate() wls:/base_domain/edit/ !> startPartitionWait(peppart)
リソース・グループ・テンプレートがリソース・グループによって参照されている場合は、このリソース・グループ・テンプレートを削除する前に、参照を削除する必要があります。
削除するリソース・グループを選択します。
リソース・グループを削除します。
次の例の内容は次のとおりです。
ドメイン・パーティションを作成します。
仮想ターゲットを作成します。
仮想ターゲットのホスト名およびURI接頭辞を設定します。
この仮想ターゲットを、使用可能なターゲットとしてパーティションに追加します。
リソース・グループを作成します。
仮想ターゲットをリソース・グループに追加します。
リソース・グループ・テンプレートを作成します。
リソース・グループをリソース・グループ・テンプレートに関連付けます。
リソース・グループ・テンプレートをリソース・グループから設定解除します。
リソース・グループ・テンプレートをドメインから削除します。
変更をアクティブ化します。
パーティションを起動します。
注意: これが本番モードで作成する最初のパーティションの場合は、管理サーバーを再起動する必要があり、その後でパーティションが起動可能になります。 |
# Create Pep partition resource group, and resource group template edit() startEdit() wls:/base_domain/edit/ !> domain=getMBean('/') wls:/base_domain/edit/ !> peppart=domain.createPartition('Pep') wls:/base_domain/edit/ !> vt=domain.createVirtualTarget('VirtualTarget-0') wls:/base_domain/edit/ !> vt.setHostNames(jarray.array([String('localhost')],String)) wls:/base_domain/edit/ !> vt.setUriPrefix('/foo') wls:/base_domain/edit/ !> peppart.addAvailableTarget(vt) wls:/base_domain/edit/ !> peprg=peppart.createResourceGroup('TestRG') wls:/base_domain/edit/ !> peprg.addTarget(vt) wls:/base_domain/edit/ !> peprgt=domain.createResourceGroupTemplate('TestRGT') wls:/base_domain/edit/ !> peprg.setResourceGroupTemplate(peprgt) wls:/base_domain/edit/ !> peprg.unSet('ResourceGroupTemplate') wls:/base_domain/edit/ !> domain.destroyResourceGroupTemplate(peprgt) wls:/base_domain/edit/ !> activate() wls:/base_domain/edit/ !> startPartitionWait(peppart)
リソース・グループ・テンプレート関連の追加情報は、次の項を参照してください。