4 リソース・グループ・テンプレートの構成
注意:
WebLogic Server Multitenantドメイン・パーティション、リソース・グループ、リソース・グループ・テンプレート、仮想ターゲットおよびリソース消費管理は、WebLogic Server 12.2.1.4.0で非推奨になり、次のリリースで削除されます。この章の内容は次のとおりです。
リソース・グループ・テンプレートについて
リソース・グループ・テンプレートは、複数のリソース・グループによってパターンとして使用されるデプロイ可能なリソースの名前付きのドメイン・レベル・コレクションです。特定のテンプレートを参照する各リソース・グループには、そのテンプレートに定義されているリソースの独自のランタイム・コピーが含まれます。
リソース・グループ・テンプレートは、複数テナント用にリソースを定義およびレプリケートする便利な方法です。リソース・グループ・テンプレートにより、アプリケーションとリソースの同じコレクションを複数のドメイン・パーティションにデプロイすることが非常に簡単になります。そのようなリソースに関する情報のいくつかはすべてのドメイン・パーティションで同じになり、Java Message Service (JMS)キューの属性やデータベース接続の属性などのそのいくつかはパーティション間で異なります。
リソース・グループ・テンプレートは次の2つの方法で作成できます。
-
新しいリソース・グループ・テンプレートを作成します。これにより、リソース・グループ・テンプレートの基本構造が作成されます。次に、このリソース・グループ・テンプレートを必要に応じて編集する必要があります。
-
Oracle WebLogic Server管理コンソールを使用している場合は、既存のリソース・グループ・テンプレートのクローン(コピー)を作成できます。構成は、テンプレートから新しいリソース・グループ・テンプレートにコピーされます。次に、リソース・グループ・テンプレートからの値を必要に応じて編集およびオーバーライドする必要があります。
リソース・グループ・テンプレートの詳細は、次の各項を参照してください。
リソース・グループ・テンプレートとリソース・グループ間の相違とは
リソース・グループ・テンプレートとリソース・グループ間の主な相違の1つは、リソース・グループ・テンプレートにはターゲットがないことです。リソース・グループ・テンプレートは(場合によっては多数のパーティション内の)複数のリソース・グループによってパターンとしてのみ使用されることを目的としているため、ターゲット固有の情報は、ほとんどの場合リソース・グループに固有となります。
したがって、次のようになります。
-
アプリケーションをリソース・グループ・テンプレートにデプロイする場合は、リソース・グループ・テンプレートがリソース・グループによって参照されるまで、アプリケーションを起動できません。
-
リソース・グループ・テンプレートを開始または停止できません。
リソース・グループ・テンプレートとは
リソース・グループ・テンプレートは、ResourceGroupTemplateMBean
に基づき、次のリソースを含めることができます。
-
全般(名前)
-
デプロイメント
-
サービス
-
Java Database Connectivity(JDBC)
-
メッセージ
-
メール・セッション
-
永続ストア
-
外部Java Naming and Directory (JNDI)プロバイダ
-
OSGiフレームワーク
-
診断
-
-
ノート
リソース・グループ・テンプレートおよびオーバーライド
リソース・オーバーライドによって、パーティション・レベルでリソースをカスタマイズできます。
リソース・グループ・テンプレートから導出されたリソース設定を次のようにオーバーライドします。
-
リソース・グループ・テンプレートを作成します。
-
必要に応じて、アプリケーションをリソース・グループ・テンプレートにデプロイします。
-
必要に応じて、リソース・グループ・テンプレートでサービスを定義します。
-
パーティションを作成してから、リソース・グループ・テンプレートを参照するリソース・グループを作成します。
-
リソース・グループのリソース・グループ・テンプレートからの値をオーバーライドします。
オーバーライド構成MBean、リソース・デプロイメント・プランおよびパーティション固有のアプリケーション・デプロイメント・プランを使用して、パーティションのリソース定義をオーバーライドできます。リソース・オーバーライドの詳細は、「リソース・オーバーライドの構成」を参照してください。アプリケーション・オーバーライドの詳細は、「パーティション・リソース・グループへのアプリケーションのデプロイ」を参照してください。
リソース・グループ・テンプレートの例
SaaS環境があり、特定のビジネス・アプリケーションの1つのインスタンスを3つの異なるパーティションで実行する必要があると仮定します。このビジネス・アプリケーションには1つのプラガブル・データベースが必要です。つまり、各アプリケーション・インスタンスには、他のアプリケーション・インスタンスから分離された独自のデータが必要であるため、パーティションごとに1つのプラガブル・データベースが必要です。
さらに、プラガブル・データベースの構成が、データベース名、ユーザー名およびパスワードを除き、3つのパーティションで同じであると仮定します。これらの値には、表4-1の値を使用するとします。
表4-1 プラガブル・データベースの例
PDB名 | ユーザー名/パスワード | 使用元 |
---|---|---|
|
pdbuser1/pdbuser1 |
Partition1 |
|
pdbuser2/pdbuser2 |
Partition2 |
|
pdbuser3/pdbuser3 |
Partition3 |
リソース・グループ・テンプレートを構成するには、次のステップに従います。
リソース・グループ・テンプレートの作成: 主なステップおよびWLSTの例
新しいリソース・グループ・テンプレートの作成によって提供されるのは、その基本構造のみです。リソース・グループ・テンプレートを作成したら、そのリソースを構成する必要があります。
新しいリソース・グループ・テンプレートを作成するには、次のようにします。
-
「ドメイン」→「環境」→「リソース・グループ・テンプレート」に移動します。
-
新しいリソース・グループ・テンプレートを作成します。この名前はドメイン内で一意にする必要があります。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のリソース・グループ・テンプレートの作成に関する項を参照してください。
リソース・グループ・テンプレートの構成の詳細は、「リソース・グループ・テンプレートの構成: 主なステップおよびWLSTの例」を参照してください。
リソース・グループの作成: WLSTの例
この例では、次の操作を実行しています。
# 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)
リソース・グループ・テンプレートの構成: 主なステップおよびWLSTの例
最初のリソース・グループ・テンプレート構成は、使用する前に構成する必要がある基本スケルトンです。タスクには、JDBCデータ・ソース、JMSサーバーおよびリソース、外部JNDIプロバイダなどの構成が含まれることがあります。
リソース・グループ・テンプレートの構成の詳細は、次の各タスクを参照してください。
リソース・グループ・テンプレートのデプロイメント設定の構成
リソース・グループ・テンプレートのデプロイメント設定を表示および定義するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のリソース・グループ・テンプレートのデプロイメントの構成に関する項を参照してください。
「アプリケーションのリソース・グループ・テンプレートへのデプロイ」を参照してください。
リソース・グループ・テンプレートのサービス設定の構成
この項では、次のタスクを取り上げます。
リソース・グループ・テンプレートのJMS設定の構成
この項では、次のタスクを取り上げます。
JMSサーバー設定の構成
このリソース・グループ・テンプレートに作成されたJMSサーバーの構成設定を表示するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』の「WebLogic Serverメッセージング」を参照してください。
「メッセージングの構成」を参照してください。
SAFエージェント設定の構成
このリソース・グループ・テンプレートに作成されたストア・アンド・フォワード(SAF)エージェントの構成設定を表示するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のSAFエージェント設定の構成に関する項を参照してください。
「メッセージングの構成」を参照してください。
JMSリソース設定の構成
リソース・グループ・テンプレートのリソース設定をモニターするには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のSAFエージェント設定の構成に関する項を参照してください。
既存のJMSリソースの構成の詳細は、「メッセージングの構成」を参照してください。
JMSモジュール設定の構成
リソース・グループ・テンプレートのJMSモジュールを構成するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のJMSモジュール設定の構成に関する項を参照してください。
「メッセージングの構成」を参照してください。
メッセージング・ブリッジの構成
リソース・グループ・テンプレートのメッセージング・ブリッジ設定を構成するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のメッセージング・ブリッジの構成に関する項を参照してください。
「メッセージングの構成」を参照してください。
JMSブリッジ宛先の構成
リソース・グループ・テンプレートのJMSブリッジ宛先設定を構成するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のJMSブリッジ宛先の構成に関する項を参照してください。
「メッセージングの構成」を参照してください。
パス・サービスの構成
リソース・グループ・テンプレートのパス・サービス設定を構成するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』のパス・サービスの構成に関する項を参照してください。
「メッセージングの構成」を参照してください。
リソース・グループのメール・セッション設定の構成
このリソース・グループ・テンプレートに作成されたメール・セッションの構成設定を表示するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』の「WebLogic Serverメール・セッション」を参照してください。
リソース・グループの永続ストア設定の構成
このリソース・グループ・テンプレートに作成された永続ストアの構成設定を表示するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』の「WebLogic Server永続ストア」を参照してください。
「メッセージングの構成」を参照してください。
リソース・グループの外部JNDIプロバイダ設定の構成
このリソース・グループ・テンプレートに作成された外部JNDIプロバイダの構成設定を表示するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』の「WebLogic Server外部JNDIプロバイダ」を参照してください。
「JNDIの構成とプログラミング」を参照してください。
リソース・グループの診断システム・モジュール設定の構成
このリソース・グループ・テンプレートに作成された診断システム・モジュールの構成設定を表示するには、次のようにします。
これらのタスクについては、『Fusion Middleware ControlによるOracle WebLogic Serverの管理』の「WebLogic Server診断」を参照してください。
「パーティションのモニタリングおよびデバッグ」を参照してください。
リソース・グループ・テンプレートのノートの構成
リソース・グループ・テンプレートのノートを作成するには、次のようにします。
- 構成するリソース・グループを選択します。
- 「ノート」に移動します。
- ノートを入力します。
- 変更を保存します。
リソース・グループ・テンプレートの構成: WLSTの例
この例では、次の操作を実行しています。
# 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)
リソース・グループ・テンプレートの削除: 主なステップおよびWLSTの例
リソース・グループ・テンプレートを削除すると、ドメインの構成から恒久的に削除されます。リソース・グループ・テンプレートを削除すると、そのリソース・グループ・テンプレートにデプロイされているすべてのアプリケーションがアンデプロイされます。1つ以上のリソース・グループに参照されているリソース・グループ・テンプレートは、削除できません。リソース・グループ・テンプレートを削除する前に、先にそれに対する参照を削除する必要があります。
-
削除するリソース・グループ・テンプレートの参照元のリソース・グループを選択します。
-
リソース・グループを削除します。
-
リソース・グループ・テンプレートを削除します。
リソース・グループ・テンプレートの削除: WLSTの例
この例では、次の操作を実行しています。
# 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)