サービスを損失せずにコンポーネントをアップグレードする

クラスタ化された環境では、順次アップグレードにより、サービスとセッションの損失を最小限に抑えてアプリケーションを再デプロイできます。セッションは、次のようなレプリケート可能なアーティファクトです:

ロード・バランサと複数のクラスタを使用して、サービスを停止することなく、GlassFish Server内のコンポーネントをアップグレードできます。たとえば、コンポーネントとして、JVMマシン、GlassFish Serverソフトウェア、またはWebアプリケーションが可能です。

順次アップグレードは、軽度から中度のロードで行うことができます。この手順の実行には、GlassFish Serverインスタンスごとに10分から15分かかります。

アプリケーションはアップグレード間で互換する必要があります。古いバージョンを実行しているインスタンスと、新しいバージョンを実行しているインスタンスがある場合、アプリケーションが移行中に正しく機能する必要があります。古いバージョンと新しいバージョンには、セッションに保存されるオブジェクト・グラフを構成する同じ形状のシリアライズ可能なクラス(非移行インスタンス変数など)が必要です。これらのクラスの形状を変更する必要がある場合、アプリケーション開発者はシリアル化の動作が正しく行われるようにする必要があります。アプリケーションにアップグレード間での互換性がない場合は、完全な再デプロイメントのためにクラスタを停止する必要があります。

アプリケーションのアップグレードでアプリケーション・データベース・スキーマを変更する場合、この方法は実行できません。


注意:

セッションの処理を継続するときにバージョン不一致のリスクを回避するには、クラスタ内のすべてのインスタンスを同時にアップグレードします。このようにしない場合、セッションは別のバージョンのコンポーネントが実行されているインスタンスで処理が継続されます。

各クラスタで個別にこのタスクを実行します。クラスタは、クラスタ内のインスタンスに対するセッション・フェイルオーバーの安全な境界として機能します。1つのクラスタ内のセッションは、別のクラスタ内のセッションで処理を継続できません。したがって、バージョン不一致のリスクは回避されます。

  1. クラスタを停止します。

    クラスタを停止するを参照してください。

  2. そのクラスタでコンポーネントをアップグレードします。

  3. クラスタを起動します。

    クラスタを起動するを参照してください。

関連項目
Copyright © 2005, 2012, Oracle and/or its affiliates. All rights reserved. Legal Notices