19.5.7. クラスター間のトラフィックの移行
概要
JBoss EAP 6 を使用して新しいクラスターを作成した後、アップグレード処理の一部として以前のクラスターから新しいクラスターへトラフィックを移行したいことがあります。ここでは、停止時間やダウンライムを最小限に抑えてトラフィックを移行する方法について説明します。
前提条件
- 新しいクラスター設定が必要です。「
mod_cluster
サブシステムの設定」 を参照してください。この新しいクラスターは Cluster New と呼びます。 - 不要となった古いクラスターの設定 (このクラスターを Cluster OLD とします)。
手順19.10 クラスターのアップグレード処理
- 前提条件に従って、新しいクラスターを設定します。
- Cluster NEW および Cluster OLD の両方で、設定オプション
sticky-session
がtrue
に設定されているようにしてください (デフォルト値はtrue
です)。このオプションを有効にすると、どちらかのクラスターのクラスターノードへの新しい要求はすべてそのノードへ送信されます。/profile=full-ha/subsystem=modcluster/mod-cluster-config=configuration/:write-attribute(name=sticky-session,value=true)
- 「mod_cluster ワーカーノードの設定」 のプロセスを使用して、Cluster NEW のノードを mod_cluster 設定に 1 つずつ追加します。
- ロードバランサー (mod_cluster) を設定し、Cluster OLD の各コンテキストを停止します。Cluster OLD のコンテキストを停止 (無効ではなく) すると、各コンテキストが正常にシャットダウンされます (最終的にノード全体がシャットダウンされます)。既存のセッションはノードが対応しますが、新しいセッションはこれらのノードに転送されません。コンテキストの停止に数分から数時間かかることがあります。次の CLI コマンドを使用してコンテキストを停止できます。パラメーターの値をご使用の環境に適した値に置き換えてください。
[standalone@localhost:9999 subsystem=modcluster] :stop-context(context=/myapp, virtualhost=default-host, waittime=50)
結果
JBoss EAP 6 のクラスターが正常にアップグレードされます。