ORACLE JAPAN Server Release 6.1

 

  |  

  WebLogic Server ホーム   |     管理者ガイド   |   前へ   |   次へ   |   目次   |   索引   |   PDF 版

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

 

以下の節では、アプリケーションとアプリケーション コンポーネントを WebLogic Server にインストールおよびデプロイする方法について説明します。

 


デプロイメントのサポート形式

J2EE アプリケーションは、エンタープライズ アプリケーション アーカイブ(EAR)ファイルとして、または展開ディレクトリ形式で WebLogic Server にデプロイできます。

ただし、アプリケーションを展開形式でデプロイする場合、Web アプリケーション コンポーネント以外のコンポーネントは展開形式にしないようにすることをお勧めします。アプリケーションをアーカイブ形式でデプロイする場合は、アプリケーションのすべてのコンポーネントをアーカイブ形式にしてください。

アーカイブ コンポーネントは、EJB アーカイブ(JAR)ファイル、Web アプリケーション アーカイブ(WAR)ファイル、またはリソース アダプタ アーカイブ(RAR)ファイルとしてパッケージ化されます。

Web アプリケーションの詳細については、「 WebLogic Server Web コンポーネントのコンフィグレーション」を参照してください。

リソース アダプタ コンポーネントの詳細については、「 WebLogic J2EE コネクタ アーキテクチャの管理」を参照してください。

 


Administration Console を使用したアプリケーションのデプロイ

Administration Console を使用すると、アプリケーションまたはアプリケーション コンポーネント(EJB JAR ファイルなど)をインストールおよびデプロイし、アプリケーション コンポーネントのインスタンスを対象となる WebLogic Server にデプロイできます。この作業を行うには、次の手順に従います。

手順 1: アプリケーションのコンフィグレーションとデプロイ

そのためには、次の操作を行います。

  1. [デプロイメント|アプリケーション] を選択して、アプリケーション テーブルを開きます。

  2. [新しい Application のコンフィグレーション] リンクをクリックして、[新しい Application の作成] ページを開きます。

  3. アプリケーションのこのコンフィグレーション エントリについて、以下の情報をフィールドに入力します。

  4. [作成] をクリックして、新しいエントリを作成します。

Administration Console を使用してアプリケーション(またはアプリケーション コンポーネント)をインストールすると、ドメインのコンフィグレーション ファイル(\config\domain_name\config.xml)にそのアプリケーションとアプリケーション コンポーネントのエントリが作成されます。また、管理サーバは、アプリケーションとアプリケーション コンポーネントのコンフィグレーションとモニタを可能にする JMX Management Bean (MBean)も生成します。

手順 2: アプリケーション コンポーネントのデプロイメント

デプロイ可能なコンポーネントには、Webアプリケーション コンポーネント、EJB、リソース コネクタ コンポーネントの 3 種類があります。

注意: クラスタ内の管理対象サーバにアプリケーション コンポーネント(EJB や、WAR または RAR ファイルなど)をデプロイする場合、そのクラスタ内のすべてのサーバに同じアプリケーション コンポーネントがデプロイされるようにしておく必要があります。そのためには、そのクラスタをデプロイメントの対象として選択します。

Web アプリケーション コンポーネントのデプロイメント

管理対象サーバに Web アプリケーション コンポーネントをデプロイするには、次の操作を行います。

  1. [デプロイメント|Web アプリケーション] を選択して、[Web アプリケーション] テーブルを開きます。

  2. [新しい Web Application のコンフィグレーション] リンクをクリックして、[新しい WebApp Component の作成] コンフィグレーション ページを開きます。

  3. 以下の情報をフィールドに入力します。

  4. [作成] をクリックして、新しいコンポーネント エントリを作成します。

  5. コンポーネントのデプロイ先として、管理対象サーバまたはクラスタを選択できます。管理対象サーバにコンポーネントをデプロイする場合は、[対象|サーバ] をクリックします。クラスタにコンポーネントをデプロイする場合は、[対象|クラスタ] をクリックします。

  6. [選択可] フィールドに管理対象サーバ([対象|クラスタ] を選択した場合はクラスタ)のリストが表示されます。矢印ボタンを使用して [選択済み] フィールドに移動することで、Web アプリケーションをデプロイする管理対象サーバ(またはクラスタ)を選択します。[適用] をクリックして変更を有効にします。

Web アプリケーションのコンフィグレーションの詳細については、「 WebLogic Server Web コンポーネントのコンフィグレーション」を参照してください。

EJB コンポーネントのデプロイメント

管理対象サーバに EJB をデプロイするには、次の操作を行います。

  1. [デプロイメント|EJB] を選択して、[EJB デプロイメント] テーブルを開きます。

  2. [新しい EJB のコンフィグレーション] リンクをクリックして、[新しい EJB Component の作成] ページを開きます。

  3. 以下の情報をフィールドに入力します。

  4. [作成] をクリックして、新しいコンポーネント エントリを作成します。

  5. コンポーネントのデプロイ先として、管理対象サーバまたはクラスタを選択できます。管理対象サーバにコンポーネントをデプロイする場合は、[対象|サーバ] をクリックします。クラスタにコンポーネントをデプロイする場合は、[対象|クラスタ] をクリックします。

  6. [選択可] フィールドに管理対象サーバ([対象|クラスタ] を選択した場合はクラスタ)のリストが表示されます。矢印ボタンを使用して [選択済み] フィールドに移動することで、Web アプリケーションをデプロイする管理対象サーバ(またはクラスタ)を選択します。[適用] をクリックして変更を有効にします。

リソース アダプタ コンポーネントのデプロイメント

管理対象サーバにリソース コネクタ コンポーネントをデプロイするには、次の操作を行います。

  1. [デプロイメント|コネクタ] を選択して、[リソース コネクタ] テーブルを開きます。

  2. [新しい Connector Component のコンフィグレーション] リンクをクリックして、[新しい Connector Component の作成] コンフィグレーション ページを開きます。

  3. 以下の情報をフィールドに入力します。

  4. [作成] をクリックして、新しいコンポーネント エントリを作成します。

  5. コンポーネントのデプロイ先として、管理対象サーバまたはクラスタを選択できます。管理対象サーバにコンポーネントをデプロイする場合は、[対象|サーバ] をクリックします。クラスタにコンポーネントをデプロイする場合は、[対象|クラスタ] をクリックします。

  6. [選択可] フィールドに管理対象サーバ([対象|クラスタ] を選択した場合はクラスタ)のリストが表示されます。矢印ボタンを使用して [選択済み] フィールドに移動することで、Web アプリケーションをデプロイする管理対象サーバ(またはクラスタ)を選択します。[適用] をクリックして変更を有効にします。

リソース コネクタの詳細については、「 WebLogic J2EE コネクタ アーキテクチャの管理」を参照してください。

アプリケーションまたはアプリケーション コンポーネント(EAR または WAR ファイル、または EJB JAR ファイルなど)を特定の WebLogic Server にデプロイすると、対象となる WebLogic Server にある \config\domain_name\applications の下の .wlnotdelete ディレクトリにファイルがコピーされます。WebLogic Administration Service はファイル配布サーブレットを呼び出して、対象サーバにファイルをコピーします。

デプロイ順

EJB などの同じ種類のコンポーネントの中では、サーバの起動時にそれらがデプロイされる順序を指定できます。コンポーネントのデプロイ時に [デプロイ順] フィールドで指定した整数は、同じ種類の他のコンポーネントと相対的な優先順位(EJB のデプロイ順など)を示します。デプロイ順が 0 のコンポーネントは、その種類のコンポーネントの中で一番最初にデプロイされます。

ただし、WebLogic Server は同じ種類のコンポーネント間でのこのユーザ定義の順序によって影響を受けない種類間での順序を使用します。WebLogic Server が起動すると、次に示すクラスレベルの順序がデプロイメントで使用されます。

  1. JDBC 接続プール

  2. JDBC マルチ プール

  3. JDBC データ ソース

  4. JDBC トランザクション データ ソース

  5. JMS 接続ファクトリ

  6. JMS サーバ

  7. コネクタ コンポーネント

  8. EJB コンポーネント

  9. Web アプリケーション コンポーネント

 


起動時でのデプロイ済みアプリケーションの更新

管理サーバが起動時に管理対象サーバにアプリケーションをコピーするのは、デフォルトでは、以下の条件が両方とも満たされた場合だけです。

管理サーバでは、ドメイン内のどの管理対象サーバにアプリケーションの最新バージョンがあるかを指定する StagedTargets リストを維持管理しています。管理対象サーバは、起動時に管理サーバにクエリを発行して、その管理対象サーバ自身にアプリケーションの最新バージョンがあるかどうか判断します。アプリケーションの最新バージョンが利用可能な場合には、管理サーバは、それを管理対象サーバにコピーし、その管理対象サーバを StagedTargets リストに追加します。

管理サーバが停止すると、すべての管理対象サーバは StagedTargets リストから削除されます。管理サーバを再起動すると、ドメイン内の管理対象サーバはそれぞれ、管理サーバからデプロイ済みアプリケーションをコピーします。これによって、管理サーバの停止中にアプリケーションが更新された場合でも、すべての管理対象サーバにあるアプリケーションが必ず同じバージョンになります。

起動時でのアプリケーションの強制的更新

管理サーバの起動オプション -Dweblogic.management.forceApplicationCopy を指定すると、起動時に管理対象サーバにデプロイ済みアプリケーションの最新バージョンを強制的に取得させることができます。-Dweblogic.management.forceApplicationCopytrue に設定して管理サーバを起動した場合、ドメイン内の管理対象サーバが起動すると、その管理対象サーバにデプロイされているアプリケーションが管理サーバからその管理対象サーバにコピーされます。この起動オプションは、コマンドラインで指定することも、起動スクリプトで指定することもできます。

 


自動デプロイメント

自動デプロイメントは、管理サーバにアプリケーションを迅速にデプロイするための手段です。自動デプロイメントは、アプリケーションをテストするための開発環境でのみ使用してください。プロダクション環境で使用したり、管理対象サーバにコンポーネントをデプロイするために使用することは避けてください。java コマンドラインで次の引数を使用すると、管理サーバの起動時に自動デプロイメントが無効になります。

-Dweblogic.ProductionModeEnabled=true

対象の WebLogic Server ドメインについて自動デプロイメントが有効な場合は、アプリケーションが WebLogic 管理サーバの \config\domain_name\applications ディレクトリにコピーされると、その管理サーバは新しいアプリケーションの存在を検出し、それを自動的にデプロイします(管理サーバが動作している場合)。サブディレクトリ domain_name は、管理サーバの起動時に使用された WebLogic Server ドメインの名前です。アプリケーションを \applications ディレクトリにコピーしたときに WebLogic Server が稼働していない場合、そのアプリケーションは WebLogic Server が次に起動したときにデプロイされます。

プロダクション モードを有効にしたときであっても、/config/domain_name/applications ディレクトリに既に存在するアプリケーションは自動的にデプロイされることに注意してください。プロダクション モードに切り替えるときは、 /config/domain_name/applications ディレクトリにアプリケーションまたはファイルを置かないことをお勧めします。

自動デプロイされたアプリケーションのコンフィグレーションを Administration Console で変更した場合、その変更は永続的には格納されません。つまり、アクティブ ドメインの config.xml で定義されているコンフィグレーションは変更されません。自動デプロイされたアプリケーションのコンフィグレーションを変更した場合、その変更は管理サーバを再起動すると失われます。

自動デプロイメントの有効化または無効化

デフォルトでは、自動デプロイメントは有効になっています。

自動デプロイメントが有効になっているかどうかを調べるには、Administration Console を起動して、対象ドメインのドメイン アプリケーション設定ページを開きます([domain_name|コンフィグレーション|アプリケーション])。このページでは、自動デプロイメントを有効または無効にすることができ、また WebLogic Server が \applications サブディレクトリに新しいアプリケーションが存在するかどうかをチェックする間隔(単位 : ミリ秒)を設定できます。デフォルトでは、自動デプロイメントをオンにすると、管理サーバは \applications ディレクトリ内の変更を 3 秒ごとにチェックします。

展開ディレクトリ形式によるアプリケーションの自動デプロイメント

アプリケーションまたはアプリケーション コンポーネントの自動デプロイメントは、展開ディレクトリ形式で行うか、エンタープライズ アプリケーション アーカイブ(EAR)ファイル、Web アプリケーション アーカイブ(WAR)ファイル、または Java アーカイブ(JAR)ファイルにパッケージングして行います。

アプリケーションを展開形式で動的にデプロイするには、次の手順に従います。

  1. 展開されたアプリケーション用に作成したディレクトリ名が、アプリケーションのコンテキスト パスと同じであることを確認します。

  2. このサブディレクトリを、\config\domain_name\applications の下にコピーします。ここで domain_name は、アプリケーションのデプロイ先ドメイン名です。自動デプロイメントが有効にされている場合、これでアプリケーションが自動的にデプロイされます。

自動デプロイメント アプリケーションのアンデプロイメントと再デプロイメント

自動デプロイされたアプリケーションまたはアプリケーション コンポーネントは、サーバの稼働時に動的に再デプロイできます。これは、デプロイしたアプリケーションまたはアプリケーション コンポーネントを WebLogic 管理サーバを停止および再起動せずに更新する場合に便利です。 JAR、WAR、または EAR ファイルを動的に再デプロイするには、このファイルの新バージョンを、\applications ディレクトリ内の既存のファイルに上書きコピーするだけです。

この機能を使用すると、開発者はメイクファイルの最後のステップとして \applications ディレクトリへのコピーを追加して、サーバを更新できます。

展開形式で自動デプロイされたアプリケーションの再デプロイメント

展開形式で自動デプロイされたアプリケーションまたはアプリケーション コンポーネントも、動的に再デプロイできます。アプリケーションが展開形式でデプロイされている場合、管理サーバは、WEB-INF ディレクトリ内で REDEPLY というファイルを定期的に検索します。このファイルのタイムスタンプが変更されている場合、管理サーバは展開ディレクトリを再デプロイします。

展開されたアプリケーション ディレクトリ内のファイルを更新する場合は、次の手順に従います。

  1. 展開されたアプリケーションを最初にデプロイするときに、WEB-INF ディレクトリに REDEPLOY という名前の空のファイルを作成します。

  2. 展開されたアプリケーションを更新するには、更新されたファイルをそのディレクトリ内の既存のファイルに上書きコピーします。

  3. 新しいファイルをコピーしたら、展開ディレクトリ内の REDEPLOY ファイルのタイプスタンプを更新します。

管理サーバは、タイムスタンプの変更を検出すると、展開ディレクトリのコンテンツを再デプロイします。

 

back to top previous page next page