WebLogic Server アプリケーションのデプロイメント

     前  次    新しいウィンドウで目次を開く     
ここから内容の開始

アプリケーションおよびモジュールのデプロイメント準備

以下の節では、アプリケーションのデプロイメントを準備する上で必要となる重要なトピックについて説明します。

 


デプロイするファイルのパッケージ化

WebLogic Server は、jar ユーティリティまたは Ant の jar ツールを使用してアーカイブ ファイルとしてパッケージ化されたデプロイメント、または展開されたアーカイブ ディレクトリとしてパッケージ化されたデプロイメントをサポートしています。

注意 : 一般に、アプリケーションを管理対象サーバにデプロイするときにアーカイブ ファイルを使用すると、より効率的です。ただし、アプリケーションの再デプロイメントが必要になるため、アプリケーションの更新 (Web コンテンツの更新など) がより難しくなります。

アーカイブ ファイルの使用

アーカイブ ファイルは、アプリケーションまたはモジュールのクラス、静的ファイル、ディレクトリ、およびデプロイメント記述子ファイルをすべて含む単一のファイルです。大半のプロダクション環境において、管理者がデプロイメント用に受け取るアプリケーションは、アーカイブ ファイルとして格納されます。

jar ユーティリティを使用してパッケージ化されたデプロイメント ユニットには、タイプ別に特定のファイル拡張子が付きます。

アーカイブ ファイルに加えて、特定の環境についてアプリケーションをコンフィグレーションする別個のファイルである、デプロイメント プランを受け取ることになる場合があります。デプロイメント プランについての詳細は、「プロダクション デプロイメントのためのアプリケーションのコンフィグレーション」で説明しています。

展開されたアーカイブ ディレクトリの使用

展開されたアーカイブ ディレクトリには、JAR アーカイブと同じファイルおよびディレクトリが格納されています。展開されたアーカイブ ディレクトリの使用を選択すると、それ以前にアーカイブされたデプロイメントを手動で復元することが必要になる場合があります。ただし、それらのファイルとディレクトリは、ファイル システム上に直接存在し、jar ユーティリティを使用して単一のアーカイブ ファイルにパッケージ化されていません。

次のような状況下であれば、展開されたアーカイブ ディレクトリからのデプロイを選択できます。

デプロイメント記述子を含まない展開された EAR ディレクトリをデプロイする場合の Java EE ルール

Java EE 仕様では、アーカイブされた EAR (エンタープライズ アプリケーション アーカイブ) をデプロイメント記述子を含まない状態で Java EE 準拠のサーバにデプロイすることが推奨されています。これを行うには、すべてのコンテナで、妥当なデフォルト値が設定されているか、またはアノテーション付きのクラスが使用されていることが前提となります。WebLogic Server では、この規定のサポートに加えて、展開された EAR ディレクトリをデプロイメント記述子を含まない状態でデプロイすることもできます。

こうしたデプロイメントがディレクトリに適用される場合、EAR とそのネストされたモジュールの特定には一定のルールが使用されます。ルールに従っていないディレクトリは、WebLogic Server Administration Console でもデプロイメント ツールでも、展開された有効な Java EE ディレクトリとして処理されません。

アーカイブ ファイルからの展開されたアーカイブ ディレクトリの作成

展開されたアーカイブ ディレクトリとしてデプロイするアーカイブ ファイルがある場合は、jar ユーティリティを使用してアーカイブ ファイルを専用ディレクトリに復元します。次に例を示します。

   mkdir /myapp
   cd /myapp
   jar xvf /dist/myapp.ear

復元するアーカイブ ファイルに他のモジュール アーカイブ ファイル (たとえば、JAR ファイルや WAR ファイルを含むエンタープライズ アプリケーションまたは Web サービス) が含まれていて、それらのモジュールの部分的な更新を行う場合には、組み込まれたアーカイブ ファイルも展開する必要があります。各モジュールをアーカイブ ファイルと同じ名前のサブディレクトリに復元してください。たとえば、myejb.jar という名前のモジュールは、展開したエンタープライズ アプリケーション ディレクトリの /myejb.jar サブディレクトリに復元します。

注意 : 展開した .EAR ファイルのアーカイブ モジュールに異なるサブディレクトリ名を使用する場合は、アプリケーション自体の中で使用しているこれらのモジュールへの参照を修正する必要があります。たとえば、manifest.mf ファイルの application.xml および CLASSPATH のエントリに指定されている URI 値を更新する必要があります。

 


デフォルト デプロイメント名について

1 つまたは複数の WebLogic Server インスタンスにアプリケーションまたはスタンドアロン モジュールを最初にデプロイするときには、デプロイメント ファイル、対象サーバ、および選択したその他のコンフィグレーション オプションを総体的に説明するデプロイメント名を指定します。後ですべての対象サーバ上のデプロイメント ユニットを再デプロイまたは停止する場合、デプロイメント名を使用して簡単に指定できます。デプロイメント名を使用すると、ドメイン内の複数サーバにかかわるデプロイメント ユニットを操作する場合に、デプロイメント ファイルと対象サーバを再度特定する手間を省くことができます。

デプロイメント時にデプロイメント名を指定しない場合、デプロイメント ツールによってデプロイメント ソース ファイルに基づくデフォルトの名前が選択されます。アーカイブ ファイルの場合、weblogic.Deployer はアーカイブ ファイル名からファイル拡張子を抜いて使用します。たとえば、ファイル myear.ear のデフォルト デプロイメント名は、myear となります。展開されたアーカイブ ディレクトリの場合、weblogic.Deployer はデプロイする最上位ディレクトリの名前を使用します。

Java EE ライブラリおよびオプション パッケージの場合、weblogic.Deployer はライブラリのマニフェスト ファイルで指定されている名前を使用します。ライブラリのマニフェスト ファイルで名前が指定されていなければ、-name オプションで名前を指定できます。

アプリケーションのネーミング要件については次の「アプリケーションのネーミング要件について」を、デフォルト以外のデプロイメント名の指定については「weblogic.deployer によるアプリケーションおよびモジュールのデプロイ」を参照してください。

 


アプリケーションのネーミング要件について

アプリケーションの WebLogic Server へのデプロイを正常に実行するには、アプリケーション名が有効であることが必要です。アプリケーションのネーミング要件は、次のとおりです。

 


デプロイメント バージョン文字列について

デプロイメント名に加えて、アプリケーションまたはモジュールには、バージョン文字列を関連付けることもできます。バージョン文字列により、アプリケーションの初期デプロイメントと、後の再デプロイされたバージョンが区別されます。たとえば、問題点を修正したり、新しい機能を追加したりするために、アプリケーションを後から更新する場合があります。プロダクション システムでは、アプリケーションの初期デプロイメントと後続するデプロイメントの双方についてバージョン文字列を維持することが非常に重要です。そうすることで、既存のクライアントに対するサービスを中断させることなく、アプリケーションのバージョンを更新し、再デプロイを行えます。詳細については、「プロダクション環境でのアプリケーションの再デプロイメント」を参照してください。

バージョン文字列は、アプリケーションのマニフェスト ファイルで指定され、他のデプロイメント ファイルと一緒に、開発チームによって提供されます。『WebLogic Server アプリケーションの開発』の「アプリケーションのバージョンの割り当て」で、バージョン文字列を指定する際の規約について説明しています。

 


アプリケーションのインストール ディレクトリの作成

アプリケーションのインストール ディレクトリにより、生成されたコンフィグレーション ファイルはコア アプリケーション ファイルから分離されるため、コンフィグレーション ファイルはアプリケーション自体を乱すことなく、簡単に変更または置換できます。このディレクトリ構造はまた、同じアプリケーション デプロイメント ファイルの複数バージョンの整理と維持にも役立ちます。

次の図では、デプロイ可能なアプリケーションまたはモジュールの 1 つのバージョンを格納するアプリケーション インストール ディレクトリの階層を示します。

図 3-1 アプリケーションのインストール ディレクトリ

アプリケーションのインストール ディレクトリ

すべての新しいプロダクション デプロイメントを、WebLogic Server ドメインにデプロイする前に、アプリケーションのインストール ディレクトリにコピーしておくことをお勧めします。このディレクトリ構造からデプロイすることで、デプロイメント ユニットと関連付けられたファイルをすべて簡単に識別できるようになります。Administration Console を使用してインストール ルートをデプロイするだけで、Administration Console が自動的にデプロイメント プランや WebLogic Server デプロイメント記述子など、コンフィグレーション中に生成された関連ファイルを見つけます。

アプリケーションのインストール ディレクトリを作成する手順

アプリケーションのインストール ディレクトリを作成するには、次の手順に従います。

  1. システム上でアプリケーションおよびモジュールのデプロイメント ファイルを格納する最上位ディレクトリを選択します。以下のベスト プラクティスに従ってください。
    • WebLogic Server ドメイン ディレクトリ内にデプロイメント ファイルを格納しない。
    • 可能であればソース コントロールを使用して、デプロイメント ソース ファイルを維持する。
    • 可能であれば、ドメイン内の管理サーバおよび管理対象サーバからアクセスできるディレクトリにデプロイメント ファイルを格納する。
    • 次の手順では、サンプル デプロイメント ディレクトリ c:\deployments\production を使用しています。

  2. デプロイするアプリケーションまたはモジュール専用のサブディレクトリを作成します。
  3. mkdir c:\deployments\production\myApplication
  4. デプロイしているアプリケーションのバージョンを指定するために、アプリケーション ディレクトリの下にサブディレクトリを作成します。アプリケーションの正確なバージョン文字列を使用して、サブディレクトリに名前を付けます。次に例を示します。
  5. mkdir c:\deployments\production\myApplication\91Beta
  6. バージョン サブディレクトリは、ディレクトリのデプロイ元であるインストール ルート ディレクトリとなります。バージョン サブディレクトリの下に、app および plan という名前のサブディレクトリを作成します。
  7. mkdir c:\deployments\production\myApplication\91Beta\app
    mkdir c:\deployments\production\myApplication\91Beta\plan
    注意 : アプリケーションに関連付けられたデプロイメント プランが複数ある場合は、各プランにつき 1 つの \plan サブディレクトリを作成します。たとえば、アプリケーション myApplication91Beta バージョンに関連付けられたデプロイメント プランが 2 つある場合は、\plan サブディレクトリを 2 つ作成します。次に例を示します。
    mkdir c:\deployments\production\myApplication\91Beta\plan1
    mkdir c:\deployments\production\myApplication\91Beta\plan2
  8. アプリケーション ソース デプロイメント ファイルを \app サブディレクトリにコピーします。アーカイブ ファイルからデプロイしている場合は、次のように、単にアーカイブ ファイルをコピーします。
  9. cp c:\downloads\myApplication.ear c:\deployments\production\myApplication\91Beta\app

    展開されたアーカイブ ディレクトリからデプロイしている場合は、展開されたアーカイブ ディレクトリ全体を \app にコピーします。

    cp -r c:\downloads\myApplication c:\deployments\production\myApplication\91Beta\app

    その結果、新しいディレクトリ c:\deployments\production\myApplication\91Beta\app\myApplication が作成されます。

  10. アプリケーションについて、1 つまたは複数のデプロイメント プランがある場合は、それらを \plan サブディレクトリにコピーします。
  11. アプリケーションのデプロイメント プランが 1 つの場合は、次のようになります。

    cp c:\downloads\myApplicationPlans\plan.xml c:\deployments\production\myApplication\91Beta\plan

    アプリケーションのデプロイメント プランが 2 つの場合は、次のようになります。

    cp c:\downloads\myApplicationPlans\plan1.xml c:\deployments\production\myApplication\91Beta\plan1
    cp c:\downloads\myApplicationPlans\plan2.xml c:\deployments\production\myApplication\91Beta\plan2
    注意 : 既存のデプロイメント プランがなければ、「プロダクション デプロイメントのためのアプリケーションのコンフィグレーション」で説明するように、Administration Console を使用して作成できます。Administration Console は、アプリケーションのインストール ディレクトリの \plan サブディレクトリに、新しく生成されたデプロイメント プランを自動的に格納します。
  12. Administration Console を使用してアプリケーションをインストールするには、アプリケーションのインストール ディレクトリを選択します。デフォルトでは、plan.xml という名前のプランが \plan サブディレクトリ内にあれば、Administration Console はそれを使用します。Administration Console は、\plan サブディレクトリ以外のサブディレクトリ内にあるプランを識別しません。つまり、\plan1 または \plan2 サブディレクトリ内のプランは、Administration Console では識別されません。したがって、アプリケーションのプランが複数ある場合は、config.xml の中で、使用するプランを指定する必要があります。「プロダクション デプロイメントのためのアプリケーションのコンフィグレーション」を参照してください。config.xml については、『コンフィグレーション ウィザードを使用した WebLogic ドメインの作成』を参照してください。
  13. アプリケーションをインストール後は、必要に応じてアプリケーションをコンフィグレーション、デプロイ、または分散できます。

    注意 : weblogic.Deployer ツールを使用しているときは、アプリケーションのインストール ディレクトリを指定できず、利用可能な plan.xml ファイルがツールによってデフォルトで使用されることはありません。デプロイメントに使用する実際のデプロイメント ファイルおよびプランを指定する必要があります。「weblogic.deployer によるアプリケーションおよびモジュールのデプロイ」を参照してください。

 


デプロイメント ファイルの準備のベスト プラクティス

アプリケーションおよびモジュールのデプロイメント準備をする際には、次のベスト プラクティスをお勧めします。


ページの先頭       前  次