7.6 仮想サーバマネージャから負荷分散機を制御するための機能負荷分散機連携機能

管理ユニットや仮想サーバの操作時に,負荷分散機と連携して,仮想サーバマネージャが負荷分散機に対して処理を依頼する機能です。この機能は,負荷分散機連携機能ともいいます。仮想サーバマネージャは,管理ユニットに属する仮想サーバの情報によって,次のような処理を負荷分散に依頼します。

仮想サーバマネージャが負荷分散機に対して処理を依頼すると,負荷分散機上では,VirtualServerとRealServerというオブジェクトが作成されます。負荷分散機のオブジェクトと管理ユニットの関係を次の図に示します。

図7-1 負荷分散機のオブジェクトと管理ユニットの関係

[図データ]

VirtualServerは,負荷分散機上で,リクエストの受け口となる仮想的なサーバを表すオブジェクトです。管理ユニットごとに一つ作成されます。RealServerは,負荷分散機上で,VirtualServerで受けたリクエストの振り分け先となる実際のサーバを表すオブジェクトです。管理ユニットに属する仮想サーバの数だけ作成されます。

参考
VirtualServerとRealServerの名称は,負荷分散機の製品によって異なります。

ここでは,仮想サーバの閉塞を例に,負荷分散機上で実行される処理を説明します。仮想サーバの閉塞時に負荷分散機上で実行される処理の例を次の図に示します。

図7-2 仮想サーバの閉塞時に負荷分散機上で実行される処理の例

[図データ]

仮想サーバの閉塞時に,仮想サーバマネージャが負荷分散機に対して閉塞処理を依頼すると,負荷分散機上では,閉塞した仮想サーバに対するRealServerが閉塞されます。閉塞されたRealServerにはリクエストが振り分けられなくなり,RealServerに対応する仮想サーバにはリクエストが渡らなくなります。これによって,仮想サーバは閉塞された状態となります。

<この節の構成>
(1) 設定方法
(2) 実行方法と実行結果
(3) 注意事項

(1) 設定方法

負荷分散機連携機能を使用する場合は,次の設定が必要になります。

設定で使用するファイルについては,「8. 仮想化システムの構築・運用で使用するファイルとコマンド」を参照してください。

●機能を有効にするための設定

機能を有効にするためには,管理ユニットごとに,どの負荷分散機の接続情報を使用するかを設定する必要があります。管理ユニットプロパティファイル(unit.properties)のlb.useキーに,「<LB接続情報の識別名>」または「:unit:」を設定すると,機能が有効になります。

●負荷分散機の接続情報に関する設定

負荷分散機の接続情報は,次のファイルで設定します。

これらのファイルに設定した情報は,仮想サーバマネージャが負荷分散機に対して処理を依頼するときに読み込まれます。

lb.useキーの指定値と負荷分散機への接続イメージを次の図に示します。

図7-3 lb.useキーの指定値と負荷分散機への接続イメージ

[図データ]

unit.propertiesのlb.useキーに「<LB接続情報の識別名>」を指定すると,仮想サーバマネージャの作業ディレクトリにある<LB接続情報の識別名>.propertiesを参照して負荷分散機に接続します。また,unit.propertiesのlb.useキーに「:unit:」を指定すると,管理ユニットの定義ディレクトリにあるunitlb.propertiesを参照して負荷分散機に接続します。

(2) 実行方法と実行結果

負荷分散機連携機能を実行できるユーザは,呼び出し元の機能に従います。この機能は,次の表の実行する機能(呼び出し元の機能)から呼び出されます。管理ユニットや仮想サーバを操作して,負荷分散機連携機能が呼び出されると,仮想サーバマネージャは負荷分散機に対して処理を依頼します。負荷分散機へ依頼する処理が実行結果となります。

実行する機能ごとに負荷分散機へ依頼する処理とタイミングを次の表に示します。

表7-3 実行する機能ごとに負荷分散機へ依頼する処理とタイミング

実行する機能負荷分散機へ依頼する処理処理を依頼するタイミング
管理ユニットに対する操作管理ユニットの削除VirtualServerの削除管理ユニットの削除処理を実行する前
管理ユニットからの仮想サーバの登録解除VirtualServerからRealServerの削除仮想サーバの登録解除処理を実行する前
管理ユニット属する仮想サーバへの定義ディレクトリの反映※1VirtualServerの作成仮想サーバへ定義ディレクトリの反映処理がすべて完了したあと(仮想サーバが属する管理ユニットに対して,初めて反映処理を実行した場合だけ)※2
VirtualServerへRealServerの追加仮想サーバへ定義ディレクトリの反映処理がすべて完了したあと(管理ユニット内に初めて反映する仮想サーバがある場合だけ)※2
RealServerの更新(削除および追加)仮想サーバへ定義ディレクトリの反映処理がすべて完了したあと(簡易構築定義ファイルで論理Webサーバのポート番号を変更している場合だけ)
管理ユニットの起動※1管理ユニットに属する仮想サーバに対するRealServerの閉塞解除すべての仮想サーバの起動処理が完了したあと※3
管理ユニットの停止※1管理ユニットに属する仮想サーバに対するRealServerの閉塞仮想サーバの停止処理を実行する前※4
管理ユニットの閉塞※1管理ユニットに属する仮想サーバに対するRealServerの閉塞機能実行時
管理ユニットの閉塞解除※1管理ユニットに属する仮想サーバに対するRealServerの閉塞解除機能実行時
仮想サーバに対する操作仮想サーバの起動仮想サーバに対するRealServerの閉塞解除仮想サーバの起動処理が完了したあと
仮想サーバの停止仮想サーバに対するRealServerの閉塞仮想サーバの停止処理を実行する前
仮想サーバの閉塞仮想サーバに対するRealServerの閉塞機能実行時
仮想サーバの閉塞解除仮想サーバに対するRealServerの閉塞解除機能実行時
注※1
複数の仮想サーバに対して負荷分散機の処理を依頼した場合に,一部の仮想サーバに対する処理が失敗したときは,管理ユニットに属するすべての仮想サーバで処理に失敗したと見なします。
注※2
定義ディレクトリの反映処理が一度成功した管理ユニットへ,再度,反映処理を実行した場合,管理ユニットプロパティファイルの設定が変更されていても,負荷分散機上のVirtualServerおよびRealServerの設定は変更されません。設定を変更したい場合は,管理ユニットを再作成する必要があります。
注※3
一部の仮想サーバで起動に失敗している場合は,成功した仮想サーバに対して処理を依頼します。
注※4
管理ユニットに属するすべての仮想サーバ対して閉塞処理を依頼するため,一部の仮想サーバで停止に失敗した場合でも,すべての仮想サーバが閉塞状態となります。

(3) 注意事項