この章には次の項が含まれます:
アプリケーションのデプロイメント構成のエクスポートとは、アプリケーションを新しいWebLogic Server環境にデプロイするために、カスタム・デプロイメント・プランを作成するプロセスです。このプロセスが完了したら、アプリケーションを環境にあわせて構成するための青写真としてデプロイメント・プランを使用するデプロイヤ(たとえば、テスト管理者、ステージング管理者、または本番管理者)に、アプリケーション・デプロイメント・ファイルとカスタム・デプロイメント・プランの双方を配布します。
管理者は、アプリケーションおよびカスタム・デプロイメント・プランの双方を、WebLogic Server管理コンソールを使用してインストールできます。WebLogic Server管理コンソールでは、デプロイメント・プランを検証し、特定のデプロイメントに必要な構成プロパティを更新できます。
デプロイメント・プランの詳細は、「デプロイメント・プランの内容の理解」を参照してください。
デプロイメント構成をエクスポートするにあたっての主な目標は、次のとおりです。
アプリケーションの外部リソースの要件を、デプロイメント・プラン内において、null変数として公開すること。アプリケーションが要求するいかなる外部リソースも、アプリケーションが別の環境にデプロイされた場合には、変更の対象となります。たとえば、開発環境で使用されるデータ・ソースのJNDI名は、テストや本番で使用されるものとは異なっている可能性があります。これらのJNDI名を変数として公開することにより、デプロイヤはアプリケーションをデプロイする際に、簡単に利用可能なリソースを使用したり、必要なリソースを作成したりできます。空(null)の変数を使用することで、アプリケーションがデプロイ可能になる前に、デプロイヤは有効なリソース名の指定を強制されることになります。
チューニング・パラメータなど、さらなる構成可能なプロパティを、デプロイメント・プラン内の変数として公開すること。開発環境において受け入れ可能なある特定のチューニング・パラメータが、本番環境では受け入れられない場合があります。たとえば、開発マシン上ではEJBキャッシングのためのデフォルト値または最小値を受け入れば十分であっても、本番クラスタで許容できるパフォーマンスを維持するためには、よりレベルの高いキャッシングを行う必要があるかもしれません。選択されたチューニング可能な値をデプロイメント・プラン変数としてエクスポートすると、管理者はアプリケーションをデプロイする際に、重要なチューニング・パラメータに注力しやすくなります。WebLogic Server管理コンソールでは、デプロイメント・プラン内で変数としてエクスポーズされているチューニング・パラメータを強調表示しますが、それらをデプロイメント前に変更するようデプロイヤに要求することはありません。
WebLogic Serverでは、アプリケーションのデプロイメント構成のエクスポートを支援するための以下のツールを用意しています。
weblogic.PlanGenerator
。WebLogic Serverデプロイメント記述子の選択されたカテゴリについて、null変数を備えるテンプレート・デプロイメント・プランを作成します。エクスポート・プロセスを開始しているところであり、デプロイメント記述子のクラス全体に対してnull変数を備えるテンプレート・デプロイメント・プランを作成する必要がある場合は、このツールの使用をお薦めします(「デプロイメント・プロパティの分類の理解」を参照)。通常は、余分な変数定義を削除したり、個々のプロパティのための変数を追加したりするために、手動またはWebLogic Server管理コンソールでweblogic.PlanGenerator
が作成したデプロイメント・プランを手動で変更する必要があります。
WebLogic Server管理コンソールは、インストールされているアプリケーションの構成プロパティが変更されると、必要に応じてデプロイメント・プランを更新または新規作成します。WebLogic Server管理コンソールを使用して、新しいデプロイメント・プランを生成したり、既存のプラン内の変数を追加またはオーバーライドできます。記述子プロパティのカテゴリ全体をエクスポートするのではなく、プラン内の個々のデプロイメント記述子プロパティを対話形式で追加または編集できるため、WebLogic Server管理コンソールにはweblogic.PlanGenerator
よりも高い柔軟性があります。
(すべてのJava EEモジュール記述子、ならびにJDBC、JMS、およびWLDFアプリケーション・モジュールのための)各WebLogic Serverデプロイメント記述子プロパティは、4つのカテゴリのうちの1つに分類できます。
構成不可プロパティは、デプロイメント構成セッション中に管理者が変更することはできません。構成不可プロパティは、アプリケーションの基本的操作にとって基礎的なアプリケーション動作を記述するために使用されます。たとえば、ejb-name
プロパティの値を変更すると、EJBアプリケーション・コードの変更も必要になるので、このプロパティは構成不可に分類されます。
依存関係プロパティ。Java EEデプロイメント記述子で定義されたリソースの依存関係を解決します。たとえば、EJBのJava EE記述子が、EJBコードで使用されるデータ・ソース名を定義している場合、WebLogic Server記述子は依存関係プロパティを使用して、ターゲットWebLogic Serverドメインで構成されている実際のデータ・ソースに、データ・ソース名をバインドします。
宣言プロパティは、他のアプリケーションで使用できるリソースを宣言します。たとえば、EJBのJNDI名は、他のアプリケーションまたはモジュールがEJBへのアクセスに使用するEJB名を宣言します。
構成可能プロパティは、依存関係プロパティまたは宣言プロパティに分類されない、その他のプロパティです。一般に、構成可能プロパティは、デプロイされたアプリケーションに対するWebLogic Server固有の機能やチューニング・パラメータを有効化または構成します。たとえば、EJBのWebLogic Server記述子は、WebLogic ServerがメモリーにキャッシュするEJBの数を定義することがあります。
これらのカテゴリは、デプロイメント・プランにおいて変数として公開するプロパティを選択するために、構成公開・プロセス中に使用します。たとえば、アプリケーションのWebLogic Serverデプロイメント記述子内で「dependencies」としてタグ付けされたすべてのプロパティの変数定義を含む、新しいデプロイメント・プランを生成できます。変数はその後、別のリソース名を持つ環境へアプリケーションをデプロイしている管理者によって簡単に変更できます。
変更可能な記述子プロパティ(依存関係、宣言、および構成可能プロパティ)はすべて、動的プロパティまたは非動的プロパティとしてさらに分類されます。動的プロパティはデプロイされたアプリケーション内で変更でき、その変更を有効化するのに再デプロイは必要ありません。非動的プロパティは変更できますが、変更を有効化するのに再デプロイメントが必要です。WebLogic Server管理コンソールは、非動的プロパティを、再デプロイメントが必要であるときにそれを通知するものとして識別します。
デプロイメント構成をエクスポートする前に、アプリケーション・ファイルをアプリケーション・インストール・ディレクトリに入れておくことをお薦めします。
インストール・ディレクトリを使用すると、デプロイメント・プランなどの生成された構成ファイルが、エクスポート中に自動的に\plan
サブディレクトリへコピーされます。
アプリケーションのインストール・ディレクトリを作成するには:
アプリケーションをエクスポートする際に、インストール・ディレクトリを使用しないことを選択した場合は、weblogic.PlanGenerator
に対して-plan
オプションを使用し、生成されたプランの場所とファイル名を指定することをお薦めします。デフォルトでは、weblogic.PlanGenerator
は生成されたファイルをTEMP
/weblogic-install/
application_name
/config
ディレクトリに格納します。TEMP
は現在の環境における一時ディレクトリです。これは、Windowsプラットフォームの場合、生成された構成ファイルがC:\Documents and Settings\username\Local Settings\
Temp
\weblogic\install\myApplication.ear\config
に格納されることを意味します。生成されたファイルを既知の場所に置くには、-plan
オプションを使用します。
weblogic.PlanGenerator
ツールは、デプロイメント記述子のカテゴリ全体に対するnull変数(宣言、構成な可能プロパティなど)を備えたテンプレート・デプロイメント・プランを迅速かつ簡単に生成する方法を提供します。
アプリケーションのすべての依存関係についてnull変数を備える新しいデプロイメント・プランを生成するためには、weblogic.PlanGenerator
の使用をお薦めします。これにより、アプリケーションに必要なすべてのグローバル・リソースが、アプリケーションを新しい環境にデプロイする必要がある管理者によって、簡単に構成できるようになります。
インストール・ルート・ディレクトリ内でステージングされるアプリケーションを使用する場合、weblogic.PlanGenerator
を使用するための基本的な構文は、次のとおりです。
java weblogic.PlanGenerator -rootinstall_root
category
説明:
install_root
は、アプリケーションおよびプランのルート・ディレクトリの完全修飾名を指定します。
category
は、変数を作成するWebLogic Serverデプロイメント記述子のカテゴリを指定します。(各カテゴリの説明は、「デプロイメント・プロパティの分類の理解」を参照してください。)テンプレート・デプロイメント・プランを生成するには、デフォルト・オプションである-dependencies
オプションのみを使用する必要があります。これにより、アプリケーションが必要とする外部リソースに対する変数が制限されるためです。
注意:
-dependencies
オプションは、可能性のあるすべての動的に構成可能なデプロイメント・プロパティに対してnull変数を作成します。そのため、アプリケーションには不要であるかもしれない多数の変数定義が作成される場合があります。-declarationsオプションは通常、必須ではありません。宣言プロパティは一般に、アプリケーションの基本機能と関連付けられており、新しい環境へのデプロイメントの前に変更されるべきではないからです。
例:
java weblogic.PlanGenerator -root c:\exportapps\myApplication -dependencies
java weblogic.PlanGenerator -root c:\exportapps\myApplication
-dependencies
がデフォルトのオプションであるためweblogic.PlanGenerator
コマンドで指定する必要がなく、したがって同義である上記のコマンドの場合、weblogic.PlanGenerator
は選択されたアプリケーション内のすべてのJava EEデプロイメント記述子を検査し、アプリケーションに対する外部リソースを構成するすべての関連WebLogic Serverデプロイメント・プロパティについて、null変数を備えるデプロイメント・プランを作成します。WebLogic Server管理コンソールを使用している管理者は、アプリケーションがデプロイできるようになる前に、このテンプレート・デプロイメント・プランを使って各null変数に有効なリソース名とチューニング・プロパティを割り当てるよう指示されます。
テンプレート・プランを全般的にカスタマイズして、アプリケーションの1つまたは複数のWebLogic Serverチューニング・プロパティを追加します。
「weblogic.PlanGeneratorを使用したテンプレート・デプロイメント・プランの生成」で生成されたテンプレート・デプロイメント・プランには、アプリケーションの外部の依存関係を解決するデプロイメント・プロパティのみが格納されています。WebLogic Server管理コンソールを使用すると、必要に応じて、個々のデプロイメント記述子プロパティのデプロイメント・プラン変数を簡単に追加できます。WebLogic Server管理コンソールを使用してデプロイメント・プランをカスタマイズするには、次の手順を実行します。
WebLogic Server管理コンソールを使用してデプロイメント構成を変更するには、まず「アプリケーションのインストール・ディレクトリを作成する手順」の説明に従って、アプリケーションおよび既存のデプロイメント・プランをインストールする必要があります。
エクスポート・アプリケーションのインストール後、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのデプロイメント・プランの更新の手順に従い、デプロイメント・プランに新規のチューニング・プロパティを追加します。
WebLogic Server管理コンソールを使用してアプリケーションのデプロイメント構成を変更する場合、デプロイメント・プロパティに対する変更は、WebLogic Serverデプロイメント・プランや、生成されたWebLogic Serverデプロイメント記述子ファイルに格納されます。アプリケーションのデプロイメント・プラン内の変数として定義されているデプロイメント・プロパティを変更した場合、変更は新しいバージョンのプラン・ファイルに書き戻されます。インストール・ディレクトリからインストールされたアプリケーションの場合、デフォルトではWebLogic Server管理コンソールは生成された構成ファイルをplan
サブディレクトリに格納します。
場合によっては、テキスト・エディタを使用して手動でカスタム・デプロイメント・プランを編集する必要があります。
これが必要となるのは、以下の理由がある場合です。
既存のデプロイメント・プラン変数を削除する必要があります。
プラン内の生成された変数にnull値を割り当てる必要があります。
注意:
WebLogic Server管理コンソールを使って、変数定義をデプロイメント・プランから削除したり、デプロイメント・プロパティに対してnull値を割り当てたりすることはできません。
デプロイメント・プランのエントリを手動で編集する前に、http://xmlns.oracle.com/weblogic/deployment-plan/1.01/deployment-plan.xsd
および「デプロイメント・プランの内容の理解」を参照してください。
デプロイメント・プラン内のvariable-definition
スタンザは、WebLogic Serverデプロイメント記述子プロパティのオーバーライドに使用される変数の名前と値を定義します。module-override
要素には、所定のデプロイメント記述子に変数がどこで適用されるのかを定義するvariable-assignment
要素を1つまたは複数、含めることができます。デプロイメント・プランから変数を削除するには、テキスト・エディタを使用して以下を削除します。
variable-definition
スタンザのvariable
定義
削除される変数を参照するすべてのvariable-assignment
要素
既存の変数定義にnull値を割り当てるには、単にvariable
要素内のvalue
下位要素の中にある任意のテキスト値を、<value xsi:nil="true"></value>
に変更します。この場合xsiネームスペースは、xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
と定義されています。次に例を示します。
... <variable-definition> <variable> <name>SessionDescriptor_InvalidationIntervalSecs_11029744771850</name> <value>80</value> </variable> </variable-definition> ...
これを次のように変更します。
... <variable-definition> <variable> <name>SessionDescriptor_InvalidationIntervalSecs_11029744771850</name> <value xsi:nil="true"></value> </variable> </variable-definition> ...
WebLogic Server管理コンソールは、新しくインストールされたアプリケーションまたはモジュールのデプロイメント構成を自動的に検証します。これらの手順を実行して、エクスポート・プロセス中に作成したカスタム・デプロイメント・プランを検証します。
plan
サブディレクトリ内にPlan.xml
という名前のデプロイメント・プランがあれば、それを自動的に使用します。アプリケーションのデプロイメント構成をエクスポートする際には、推奨ベスト・プラクティスに留意してください。
アプリケーションをエクスポートするにあたっての主な目標は、アプリケーションの外部リソースの依存関係のすべてについてnull変数を作成することです。これによりデプロイヤは確実に、ターゲット環境で使用可能なリソースに基づいてリソース名を割り当てることができるようになります。
weblogic.PlanGenerator
は、リソースの依存関係のエクスポートにのみ使用します。一般に、デプロイメント記述子プロパティの他のカテゴリをエクスポートするのにweblogic.PlanGenerator
を使用すると、デプロイメント・プラン内に生じる変数が過多になります。
デプロイメント・プランに個々のチューニング・プロパティ値を追加する、またはカスタム・デプロイメント・プランを検証するには、WebLogic Server管理コンソールを使用します。
WebLogic Server管理コンソールでもweblogic.PlanGenerator
でも、プランから変数を削除したり、変数に対してnull値を設定したりすることはできません。これらのタスクを完了させる必要がある場合は、テキスト・エディタを使用します。