段階的アップグレードについて

ユーザーへのサービスを停止することなくアプリケーションをアップグレードするには、1 つのサーバーまたはクラスタ上にあるアプリケーションを一度にアップグレードします。クラスタはバージョンが混在している環境を透過的に維持しますが、ユーザーはアップグレードが行われていることに気づきません。このタイプのアップグレードを段階的アップグレードと呼びます。

段階的アップグレードは、旧新バージョンのアプリケーションに互換性があり、両方を同時に実行できる場合のみ可能です。セッション情報には互換性が必要です。混在モードの段階的アップグレードを、単一のスタンドアロンクラスタまたは複数のクラスタで実行します。

混在モードの環境での段階的アップグレードは、データベーススキーマの変更など、アプリケーションに大きな変更がある場合は、実行できません。そのような場合は、アップグレード中にアプリケーションを停止する必要があります。

単一のスタンドアロンクラスタでのアップグレード

ほかのクラスタと設定を共有しないクラスタである単一のスタンドアロンクラスタでアプリケーションをアップグレードするには、次のようにします。

  1. 旧バージョンのアプリケーションを保存するか、ドメインをバックアップします。
  2. クラスタの動的再構成が有効の場合はオフにします。
  3. 管理コンソールで、次の手順を実行します。

    1. 「設定」ノードを開きます。
    2. クラスタの設定の名前をクリックします。
    3. 「システムプロパティの設定」ページで、「動的再構成を有効」ボックスのチェックをはずします。
    4. 「保存」をクリックします。
    5. asadmin と同機能を持つコマンドは、asadmin set です。構文は次のとおりです。

      asadmin set --user user --passwordfile password_file cluster_name-config.dynamic-reconfiguration-enabled=true

  4. ターゲットの domain に対して、アップグレードしたアプリケーションを再配備します。管理コンソールを使って再配備する場合、ドメインが自動的にターゲットになります。動的再構成が無効なので、旧アプリケーションがクラスタで実行し続けます。
  5. asadmin enable-http-lb-application を使用して、インスタンスに対して再配備アプリケーションを有効にします。
  6. asadmin disable-http-lb-server を使用して、1 つのサーバーインスタンスを無効にします。
  7. asadmin export-http-lb-config を使用して、ロードバランサ設定ファイルをエクスポートします。
  8. エクスポートした設定ファイルを Web サーバーインスタンスの設定ディレクトリにコピーします。たとえば、Sun ONE Web Server については、位置は、web-server-install-dir/https-host-name/config/loadbalancer.xml となります。
  9. タイムアウトが終了するまで、待機します。ロードバランサのログファイルを監視して、インスタンスがオフラインであることを確認します。
  10. クラスタ内のほかのインスタンスが実行中の間に、無効になっていたサーバーインスタンスを再起動します。再起動により、サーバーはドメインと同期し、アプリケーションを更新します。
  11. 再起動したサーバー上でアプリケーションをテストし、正しく動作していることを確認します。
  12. asadmin enable-http-lb-server を使用して、サーバーインスタンスを有効にします。
  13. asadmin export-http-lb-config を使用して、ロードバランサ設定ファイルをエクスポートします。
  14. 設定ファイルを Web サーバーインスタンスの設定ディレクトリにコピーします。
  15. クラスタ内の各インスタンスに対して、手順 5手順 13 を繰り返します。
  16. すべてのサーバーインスタンスに新しいアプリケーションがある場合、再びクラスタに対して動的再構成を有効にできます。

2 つのクラスタのアップグレード

  1. 旧バージョンのアプリケーションを保存するか、ドメインをバックアップします。
  2. 両方のクラスタの動的再構成が有効の場合はオフにします。
  3. 管理コンソールで、次の手順を実行します。

    1. 「設定」ノードを開きます。
    2. 1 つのクラスタの設定の名前をクリックします。
    3. 「システムプロパティの設定」ページで、「動的再構成を有効」ボックスのチェックをはずします。
    4. 「保存」をクリックします。
    5. 2 番目のクラスタに対して上記手順を繰り返します。
    6. asadmin と同機能を持つコマンドは、asadmin set です。構文は次のとおりです。

      asadmin set --user user --passwordfile password_file cluster_name-config.dynamic-reconfiguration-enabled=true

  4. ターゲットの domain に対して、アップグレードしたアプリケーションを再配備します。管理コンソールを使って再配備する場合、ドメインが自動的にターゲット になります。動的再構成が無効なので、旧アプリケーションがクラスタで実行し続けます。
  5. asadmin enable-http-lb-application を使用して、クラスタに対して再配備アプリケーションを有効にします。
  6. asadmin disable-http-lb-server を使用して、ロードバランサから 1 つのクラスタを無効にします。
  7. asadmin export-http-lb-config を使用して、ロードバランサ設定ファイルをエクスポートします。
  8. エクスポートした設定ファイルを Web サーバーインスタンスの設定ディレクトリにコピーします。たとえば、Sun ONE Web Server については、位置は、web-server-install-dir/https-host-name/config/loadbalancer.xml となります。
  9. タイムアウトが終了するまで、待機します。ロードバランサのログファイルを監視して、クラスタがオフラインであることを確認します。
  10. ほかのクラスタが実行中の間に、無効となっていたクラスタを再起動します。再起動により、クラスタはドメインと同期し、アプリケーションを更新します。
  11. 再起動したクラスタ上でアプリケーションをテストし、正しく動作していることを確認します。
  12. asadmin enable-http-lb-server を使用して、クラスタを有効にします。
  13. asadmin export-http-lb-config を使用して、ロードバランサ設定ファイルをエクスポートします。
  14. 設定ファイルを Web サーバーインスタンスの設定ディレクトリにコピーします。
  15. ほかのクラスタ内に対して、手順 5手順 13 を繰り返します。
  16. すべてのサーバーインスタンスに新しいアプリケーションがある場合、再び両方のクラスタに対して動的再構成を有効にできます。

著作権表示