このチュートリアルでは、Oracle WebLogic Server 12cのプロダクション再デプロイメント機能を使用して、同じアプリケーションの2つのバージョンを同時にデプロイする方法について説明します。
約20分
WebLogicのプロダクション再デプロイメントでは、同じアプリケーションの新しいバージョンと古いバージョンを同時にデプロイします。 WebLogic Serverは、新しいクライアント・リクエストのみが新しいバージョンのアプリケーションに転送されるように、自動的にクライアントの接続を管理します。 再デプロイメント時にすでにアプリケーションに接続していたクライアント(HTTP Sessionオブジェクトを取得済みのクライアント)は、処理が完了するまでは引き続き古いバージョンのアプリケーションを使用します。完了した時点でWebLogic Serverが古いアプリケーションを自動的に廃止します。
アプリケーションにバージョン識別子を割り当てるには、デプロイ対象のエンタープライズ・アプリケーションまたはWebアプリケーションに含まれるMANIFEST.MFファイルに対して、バージョン名を指定する行を追加します。 もう1つの方法として、weblogic.Deployerコマンドライン・ツールの-appversion引数、またはWLSTコマンドであるdeploy()およびupdateApplication()のarchiveVersion引数を使用して、デプロイ時にバージョン名を指定することもできます。
このチュートリアルでは、MANIFEST.MFファイルに指定されたバージョン名を使用してバージョニングされたアプリケーションをデプロイします。
ソフトウェア要件は、以下のとおりです。
このチュートリアルを始める前に、Oracle by Example チュートリアルのOracle WebLogic Server 12c: Installing WebLogic Server and Creating a DomainとOracle WebLogic Server 12c: Configuring Managed Serversを完了している必要があります。
最初のバージョンのアプリケーションをデプロイするには、以下の手順を実行します。
. |
WebLogic Serverのドメインとサーバーがあるマシン上にversioned.zipファイルをダウンロードします。 ローカル・ドライブにファイルを解凍します。 このチュートリアルでは、/home/oracle/versionedディレクトリにファイルが解凍されます。 このzipファイルには、次の2つのディレクトリが含まれます。
|
|---|---|
. |
META-INF/MANIFEST.MFファイル内のバージョン情報を確認する場合、simple.warからファイルを解凍し、このファイルをテキスト・エディタで表示してください。 次に、deployversion1/simple.warファイルから解凍したMANIFEST.MFファイルを示します。
Weblogic-Application-Version: v1のエントリに注目してください。このエントリによって、バージョン名がv1に設定されます。 deployversion2/simple.warファイルに含まれるMANIFEST.MFでは、Weblogic-Application-Version属性にv2という別のバージョン名が設定されています。
|
. |
ドメインの管理サーバーがまだ実行されていない場合は、これを起動します。 ターミナル・ウィンドウでドメイン・ディレクトリに移動し、次のコマンドを実行します。 $ ./startWebLogic.sh
ユーザー名とパスワードを入力するよう指示されたら、ドメイン管理者の資格証明を入力します。
|
. |
管理対象サーバーdizzy1も実行されている必要があります。 実行中でない場合、これを起動します。 別のターミナル・ウィンドウでドメイン・ディレクトリに移動してから、cdを使用してbinサブディレクトリに移動します。 次のコマンドを入力します。 $ ./startManagedWebLogic.sh dizzy1 http://host01.example.com:8001
これによって、dizzy1という名前の管理対象サーバーを起動するスクリプトが実行されます。 また、次のドメイン管理サーバーURLが引数として指定されている点に注意してください。 注: 使用するドメイン管理サーバーのホスト名とポートを指定してください。
ユーザー名とパスワードを入力するよう指示されたら、ドメイン管理者の資格証明を入力します。
|
. |
サーバーが実行中になったら、WebLogic Serverの管理コンソールにアクセスします。 Webブラウザを開き、ドメインの管理コンソールのURLを入力します。 このチュートリアルでは、http://host01.example.com:8001/consoleが使用されました。 注:使用するドメイン管理サーバーのホスト名とポートを指定してください。 Welcome画面で、サーバー起動時に入力したユーザー名とパスワードを使用してログインします。
|
. |
アプリケーションのデプロイはドメイン構成の変更になるため、最初に構成をロックする必要があります。 Change Centerで、「Lock & Edit」ボタンをクリックします。
|
. |
Domain Structureパネルで、「Deployments」をクリックします。
|
. |
右側のDeploymentsセクションで、「Install」ボタンをクリックします。
|
. |
Current Locationフィールドを探します。 リンクを使用して、zipファイルが解凍された場所を表示します。 deployversion1ディレクトリへ移動します。 simple.warとその横にラジオ・ボタンが表示されます。 このラジオ・ボタンを選択します。 リンクとラジオ・ボタンを使用すると、コンソールによって自動的にPathフィールドが入力されます。 代わりに、Pathフィールドに手動でパスとファイル名を入力することもできます。 「Next」をクリックします。
|
. |
次の画面でInstall this deployment as an applicationが選択されていることを確認します。 「Next」をクリックします。
|
. |
次の画面で、「dizzy1」をクリックします。 「Next」をクリックします。 注:使用するドメインでdizzy1がクラスタに含まれていない場合、選択画面の表示が若干異なります。 いずれの場合も、dizzy1を選択します。
|
. |
次の画面ですべてをデフォルト値のままにして、「Next」をクリックします。 MANIFEST.MFファイルに指定されたバージョン名v1が"Archive Version"に設定されています。
|
. |
次の画面で「No, I will review the configuration later.」を選択します。 次に、「Finish」をクリックします。
|
. |
デプロイメントがインストールされたことを示すメッセージが表示されますが、変更をアクティブ化する必要があります。 また、Deployments表にsimple (v1)アプリケーションが表示されていることを確認します。 丸かっこ内の"v1"がバージョン名に相当します。
|
. |
Change Centerパネルで、「Activate Changes」ボタンをクリックします。
|
. |
変更がアクティブ化されたことを示すメッセージが表示されます。 Deployments表に表示されたsimple (v1)アプリケーションのステータスが"Prepared"になっていることを確認します。
|
. |
Deployments表で、simpleアプリケーションの左にあるチェック・ボックスを選択します。 「Start」ドロップダウン・リストを使用して「Servicing all requests」を選択します。
|
. |
「Yes」をクリックして処理を続行します。
|
. |
開始リクエストが送信されたことを示すメッセージが表示されます。 すぐに、benefitsアプリケーションの状態が"Active"になります。 この場合、アプリケーションは、サーバーにアクセスできるユーザーから利用できる状態になっています。
|
新しくデプロイされたWebアプリケーションをテストするには、以下の手順を実行します。
. |
別のWebブラウザでdizzy1管理対象サーバーのホスト名とポートを入力し、最後に/simpleを付けます。
このチュートリアルで使用するURLは、以下のとおりです。 フィールドに情報を入力し、「OK」ボタンをクリックします。
|
|---|---|
. |
次の画面で「Start over...」リンクを使用して、最初のページに戻ります。
この方法を使用することで、アプリケーションがHTTP Sessionを取得します。 重要:このブラウザ・ウィンドウを閉じないでください。 このウィンドウは、古いバージョンのアプリケーションを使用しているクライアントに相当します。
|
デプロイされたWebアプリケーションを最初のバージョンから2番目のバージョンへと更新するには、以下の手順を実行します。
. |
管理コンソールのDeploymentsページに戻ります。 Change Centerで、「Lock & Edit」ボタンをクリックします。
Deployments表で、simpleアプリケーションの左にあるチェック・ボックスを選択します。 「Update」ボタンをクリックします。
|
|---|---|
. |
次の画面で、Source pathフィールドに表示された「Change Path」ボタンをクリックします。
|
. |
Current Locationフィールドを探します。 リンクを使用して、zipファイルが解凍された場所を表示します。 deployversion2ディレクトリへ移動します。 simple.warとその横にラジオ・ボタンが表示されます。 このラジオ・ボタンを選択します。 リンクとラジオ・ボタンを使用すると、コンソールによって自動的にPathフィールドが入力されます。 代わりに、Pathフィールドに手動でパスとファイル名を入力することもできます。 「Next」をクリックします。
このバージョンのWebアプリケーションでは、MANIFEST.MFファイルにv2という別のバージョン名が指定されています。 また、ページ見出しが異なるため、アプリケーションの実行時に"Version 1"と"Version 2"を簡単に見分けることができます。
|
. |
前の画面に戻るとSource pathフィールドが更新されており、deployversion2ディレクトリのsimple.warファイルを指しています。 「Next」ボタンをクリックします。
|
. |
次の画面でSource pathが新しいバージョンを指していることを確認します。 また、Archive Versionがv2になっている点にも注意します。 Allow the application to finish its current sessions and then retireが選択されていることを確認します。 「Finish」ボタンをクリックします。
|
. |
Change Centerパネルで、「Activate Changes」ボタンをクリックします。
|
. |
Deployments表に2つのバージョンのsimpleアプリケーションが表示されています。 simple (v1)という名前のアプリケーションの状態は"stop Running"です。 この状態では、現在のユーザーは引き続きこのアプリケーションを使用します。 すべてのユーザーがアプリケーションの使用を終了し、セッションがタイムアウトになった後で、古いバージョンは廃止されます。 simple (v2)というアプリケーションの状態は"Active"であるため、 すべての新規ユーザーはこのアプリケーションを使用します。
|
古いバージョンと新しいバージョンのアプリケーションが同時に実行されていることをテストするには、以下の手順を実行します。
. |
古いバージョンが今でも古いユーザーに対して実行されているかどうかを確認するには、開いたままにしておいたWebブラウザに戻ります。 フィールドに情報を入力し、「OK」ボタンをクリックします。 2番目の画面に"Version 1"と表示されることを確認します。 HTTP Sessionが有効である限り、古いユーザーは引き続き"Version 1"を使用します。
|
|---|---|
. |
別のWebブラウザにsimple WebアプリケーションのURLを入力します。
このチュートリアルで使用するURLは、以下のとおりです。 注:このブラウザでは、先ほどのブラウザ・ウィンドウとは異なるHTTP Sessionを使用する必要があります。 Firefoxではすべてのウィンドウ(またはタブ)で同じセッションが共有されるため、"古いユーザー"のブラウザとしてFirefoxを使用している場合、"新しいユーザー"用にFirefoxを使用することはできません。 最善の方法は、2種類のブラウザ・プログラムを使用する方法です。 たとえば、一方ではFirefoxを、もう一方ではChromeを使用します。
アプリケーションの新規ユーザーとしてアクセスすると、タイトル・バーに"Version 2"が表示されることを確認します。 すべての新規ユーザーに対して"Version 2"が使用されます。
|
このチュートリアルで学習した内容は、次のとおりです。
![]()
|
Copyright © 2011, Oracle and/or its affiliates. All rights reserved |