管理ユニットや仮想サーバの操作時に,負荷分散機と連携して,仮想サーバマネージャが負荷分散機に対して処理を依頼する機能です。この機能は,負荷分散機連携機能ともいいます。仮想サーバマネージャは,管理ユニットに属する仮想サーバの情報によって,次のような処理を負荷分散に依頼します。
仮想サーバマネージャが負荷分散機に対して処理を依頼すると,負荷分散機上では,VirtualServerとRealServerというオブジェクトが作成されます。負荷分散機のオブジェクトと管理ユニットの関係を次の図に示します。
図7-1 負荷分散機のオブジェクトと管理ユニットの関係
VirtualServerは,負荷分散機上で,リクエストの受け口となる仮想的なサーバを表すオブジェクトです。管理ユニットごとに一つ作成されます。RealServerは,負荷分散機上で,VirtualServerで受けたリクエストの振り分け先となる実際のサーバを表すオブジェクトです。管理ユニットに属する仮想サーバの数だけ作成されます。
ここでは,仮想サーバの閉塞を例に,負荷分散機上で実行される処理を説明します。仮想サーバの閉塞時に負荷分散機上で実行される処理の例を次の図に示します。
図7-2 仮想サーバの閉塞時に負荷分散機上で実行される処理の例
仮想サーバの閉塞時に,仮想サーバマネージャが負荷分散機に対して閉塞処理を依頼すると,負荷分散機上では,閉塞した仮想サーバに対するRealServerが閉塞されます。閉塞されたRealServerにはリクエストが振り分けられなくなり,RealServerに対応する仮想サーバにはリクエストが渡らなくなります。これによって,仮想サーバは閉塞された状態となります。
負荷分散機連携機能を使用する場合は,次の設定が必要になります。
設定で使用するファイルについては,「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を参照して負荷分散機に接続します。
負荷分散機連携機能を実行できるユーザは,呼び出し元の機能に従います。この機能は,次の表の実行する機能(呼び出し元の機能)から呼び出されます。管理ユニットや仮想サーバを操作して,負荷分散機連携機能が呼び出されると,仮想サーバマネージャは負荷分散機に対して処理を依頼します。負荷分散機へ依頼する処理が実行結果となります。
実行する機能ごとに負荷分散機へ依頼する処理とタイミングを次の表に示します。
表7-3 実行する機能ごとに負荷分散機へ依頼する処理とタイミング
実行する機能 | 負荷分散機へ依頼する処理 | 処理を依頼するタイミング | |
---|---|---|---|
管理ユニットに対する操作 | 管理ユニットの削除 | VirtualServerの削除 | 管理ユニットの削除処理を実行する前 |
管理ユニットからの仮想サーバの登録解除 | VirtualServerからRealServerの削除 | 仮想サーバの登録解除処理を実行する前 | |
管理ユニット属する仮想サーバへの定義ディレクトリの反映※1 | VirtualServerの作成 | 仮想サーバへ定義ディレクトリの反映処理がすべて完了したあと(仮想サーバが属する管理ユニットに対して,初めて反映処理を実行した場合だけ)※2 | |
VirtualServerへRealServerの追加 | 仮想サーバへ定義ディレクトリの反映処理がすべて完了したあと(管理ユニット内に初めて反映する仮想サーバがある場合だけ)※2 | ||
RealServerの更新(削除および追加) | 仮想サーバへ定義ディレクトリの反映処理がすべて完了したあと(簡易構築定義ファイルで論理Webサーバのポート番号を変更している場合だけ) | ||
管理ユニットの起動※1 | 管理ユニットに属する仮想サーバに対するRealServerの閉塞解除 | すべての仮想サーバの起動処理が完了したあと※3 | |
管理ユニットの停止※1 | 管理ユニットに属する仮想サーバに対するRealServerの閉塞 | 仮想サーバの停止処理を実行する前※4 | |
管理ユニットの閉塞※1 | 管理ユニットに属する仮想サーバに対するRealServerの閉塞 | 機能実行時 | |
管理ユニットの閉塞解除※1 | 管理ユニットに属する仮想サーバに対するRealServerの閉塞解除 | 機能実行時 | |
仮想サーバに対する操作 | 仮想サーバの起動 | 仮想サーバに対するRealServerの閉塞解除 | 仮想サーバの起動処理が完了したあと |
仮想サーバの停止 | 仮想サーバに対するRealServerの閉塞 | 仮想サーバの停止処理を実行する前 | |
仮想サーバの閉塞 | 仮想サーバに対するRealServerの閉塞 | 機能実行時 | |
仮想サーバの閉塞解除 | 仮想サーバに対するRealServerの閉塞解除 | 機能実行時 |