16.5.6. クラスター間のトラフィックの移行

概要

JBoss Enterprise Application Platform 6 を使用して新しいクラスターを作成した後、アップグレード処理の一部として以前のクラスターから新しいクラスターへトラフィックを移行したいことがあります。ここでは、停止時間やダウンライムを最小限に抑えてトラフィックを移行するストラテジーについて説明します。

要件

  • 新しいクラスターの設定: mod_cluster サブシステムの設定」 (このクラスターを Cluster NEW とします)。
  • 不要となった古いクラスターの設定 (このクラスターを Cluster OLD とします)。

手順16.8 クラスターのアップグレード処理

  1. 要件に従って、新しいクラスターを設定します。
  2. Cluster NEW および Cluster OLD の両方で、設定オプション sticky-sessiontrue に設定されているようにしてください (デフォルトは true です)。このオプションを有効にすると、どちらかのクラスターのクラスターノードに対する新しいリクエストはすべてそのノードへ送信されます。
    /profile=full-ha/subsystem=modcluster/mod-cluster-config=configuration/:write-attribute(name=sticky-session,value=true)
    
  3. 「mod_cluster ワーカーノードの設定」 のプロセスを使用して、Cluster NEW のノードを mod_cluster 設定に 1 つずつ追加します。
  4. ロードバランサー (mod_cluster) を設定し、Cluster OLD の各コンテキストを停止します。Cluster OLD のコンテキストを停止 (無効ではなく) すると、各コンテキストが正常にシャットダウンします (最終的にノード全体がシャットダウンします)。既存のセッションはノードが対応しますが、新しいセッションはこれらのノードに転送されません。コンテキストの停止に数分から数時間かかることがあります。
    次の CLI コマンドを使用してコンテキストを停止できます。パラメーターの値をご使用の環境に適した値に置き換えてください。
    [standalone@localhost:9999 subsystem=modcluster] :stop-context(context=/myapp, virtualhost=default-host, waittime=50)
結果

JBoss Enterprise Application Platform のクラスターが正常にアップグレードされます。