(57)【特許請求の範囲】
【請求項１】
複数のサーバに接続され、一のサーバ上で稼働する仮想サーバを他のサーバに移動する移動処理を実行する情報処理装置であって、
前記移動処理の対象から除外されるサーバの識別情報を記憶する除外サーバ記憶部を参照し、前記除外サーバ記憶部にて前記移動処理の対象から除外される旨が指定されたサーバを特定する除外サーバ特定部と、
前記複数のサーバのうちで、前記除外サーバ特定部にて特定されたサーバを除くサーバの中から、移動対象の仮想サーバの移動元のサーバ及び移動先のサーバの少なくとも一方を選択するサーバ選択部と、
前記移動処理の実行後に、前記移動元のサーバ及び移動先のサーバの少なくとも一方を、前記除外サーバ記憶部にて前記除外されるサーバとして記憶する除外サーバ情報更新部とを備えることを特徴とする情報処理装置。
【請求項２】
前記除外サーバ記憶部は、前記仮想サーバの移動処理を実行してから所定期間内にあるサーバを、前記除外されるサーバとして記憶することを特徴とする、請求項１に記載の情報処理装置。
【請求項３】
前記除外サーバ情報更新部は、現時刻に所定時間を加えた時刻を、前記移動処理の対象から除外される期間の終了時刻とし、前記移動元及び移動先の少なくとも一方のサーバの識別情報と、前記除外される期間の終了時刻とを対応付けて前記除外サーバ記憶部に記憶することを特徴とする、請求項２に記載の情報処理装置。
【請求項４】
前記移動対象の仮想サーバの負荷情報を取得し、該取得した負荷情報と、前記移動元及び移動先の少なくとも一方のサーバの識別情報とに基づいて、前記除外サーバ情報更新部にて加算する前記所定時間を決定する除外時間調整部を更に有することを特徴とする、請求項３に記載の情報処理装置。
【請求項５】
前記除外サーバ特定部は、現時刻と、前記除外サーバ記憶部に記憶された前記除外される期間の終了時刻とを比較し、前記複数のサーバのうちで、前記終了時刻が満了していないサーバを前記除外されるサーバとして特定することを特徴とする、請求項３又は４に記載の情報処理装置。
【請求項６】
複数の物理サーバと、一の物理サーバ上で稼働する仮想サーバを他の物理サーバに移動する移動処理を実行する自律制御サーバとを有する情報処理システムであって、
前記自律制御サーバが、前記移動処理の対象から除外される物理サーバの識別情報を記憶する除外サーバ記憶部を参照し、前記除外サーバ記憶部にて前記移動処理の対象から除外される旨が指定された物理サーバを特定する除外サーバ特定部と、前記複数の物理サーバのうちで、前記除外サーバ特定部にて特定された物理サーバを除く物理サーバの中から、移動対象の仮想サーバの移動元の物理サーバ及び移動先の物理サーバの少なくとも一方を選択するサーバ選択部と、前記移動処理の実行後に、前記移動元の物理サーバ及び移動先の物理サーバの少なくとも一方を、前記除外サーバ記憶部にて前記除外される物理サーバとして記憶する除外サーバ情報更新部とを備える、
ことを特徴とする情報処理システム。
【請求項７】
複数のサーバに接続され、サーバ上で稼働する仮想サーバを他のサーバに移動する移動処理の制御を行う情報処理装置を動作させる方法であって、
前記移動処理の対象から除外されるサーバの識別情報を記憶する除外サーバ記憶部を参照し、前記除外サーバ記憶部にて前記移動処理の対象から除外される旨が指定されたサーバを特定するステップと、
前記複数のサーバのうちで、前記特定するステップで特定されたサーバを除くサーバの中から、移動対象の仮想サーバの移動元のサーバ及び移動先のサーバの少なくとも一方を選択するステップと、
前記移動処理の実行後に、前記移動元のサーバ及び移動先のサーバの少なくとも一方を、前記除外サーバ記憶部にて前記除外されるサーバとして記憶するステップとを有することを特徴とする仮想サーバの移動処理の制御方法。
【請求項８】
複数のサーバに接続され、サーバ上で稼働する仮想サーバを他のサーバに移動する移動処理の制御を行うコンピュータに、
前記移動処理の対象から除外されるサーバの識別情報を記憶する除外サーバ記憶部を参照し、前記除外サーバ記憶部にて前記移動処理の対象から除外される旨が指定されたサーバを特定する処理と、
前記複数のサーバのうちで、前記特定する処理で特定されたサーバを除くサーバの中から、移動対象の仮想サーバの移動元のサーバ及び移動先のサーバの少なくとも一方を選択する処理と、
前記移動処理の実行後に、前記移動元のサーバ及び移動先のサーバの少なくとも一方を、前記除外サーバ記憶部にて前記除外されるサーバとして記憶する処理とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、仮想サーバの移動処理の制御方法、及び、プログラムに関し、更に詳しくは、一のサーバ上で稼働する仮想サーバを他のサーバに移動する移動処理の制御を行う情報処理装置、情報処理システム、仮想サーバの移動処理の制御方法、及び、プログラムに関する。
【背景技術】
【０００２】
１台の物理サーバ上に、複数の仮想サーバを構築する仮想サーバ技術がある。仮想サーバ技術に関して、特許文献１には、１台の物理サーバ上に、ソフトウェアを実行することによって複数の仮想サーバを構築し、それら複数の仮想サーバで複数の処理を同時に実行する技術が記載されている。仮想サーバ技術を用いることで、通信網によって接続された複数の物理サーバ上で、複数の仮想サーバを同時に稼動させるためのシステムを構築することが可能である。
【０００３】
複数の物理サーバ上で複数の仮想サーバが稼動する仮想サーバシステムでは、物理サーバのリソース使用率があらかじめ設定された上限値である高負荷しきい値を超えたとき、当該物理サーバで稼動している仮想サーバを、リソース使用率が比較的小さい他の物理サーバに移動することで、各物理サーバのリソース使用率を分散する技術が知られている。例えば、特許文献１には、各物理サーバの記憶容量のデータ、各仮想サーバで利用する記憶容量のデータ、及び、所定時間ごとの各仮想サーバのパフォーマンスの実測データを、仮想サーバシステムを管理する管理サーバが取得し、各物理サーバの負荷が高負荷にならないように仮想サーバを集約するように、各物理サーバに対して仮想サーバを配置することが記載されている。
【特許文献１】特許第３８６１０８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の仮想サーバシステムでは、仮想サーバを他の物理サーバへ移動してからしばらくの間は、仮想サーバの移動元の物理サーバ及び移動先の物理サーバの負荷の変動が大きい。このため、負荷変動が収束するまでに、それぞれの物理サーバの負荷データを基に物理サーバの負荷の予測と仮想サーバの移動とを行うと、次の仮想サーバの配置先の選択が不適切になる場合があった。すなわち、特許文献１に記載の技術には、情報処理を引き継ぐ際に情報処理の引継ぎ元または引継ぎ先として適切でないサーバが選択されるという場合があり、これに対する配慮が求められている。
【０００５】
本発明は、上記関連技術の問題点を解消し、仮想サーバの移動により発生する不連続な負荷変動の影響を除外して仮想サーバの移動に関わるサーバを選択できる情報処理装置、情報処理システム、仮想サーバの移動処理の制御方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の情報処理装置は、複数のサーバに接続され、一のサーバ上で稼働する仮想サーバを他のサーバに移動する移動処理を実行する情報処理装置であって、前記移動処理の対象から除外されるサーバの識別情報を記憶する除外サーバ記憶部を参照し、前記除外サーバ記憶部にて前記移動処理の対象から除外される旨が指定されたサーバを特定する除外サーバ特定部と、前記複数のサーバのうちで、前記除外サーバ特定部にて特定されたサーバを除くサーバの中から、移動対象の仮想サーバの移動元のサーバ及び移動先のサーバの少なくとも一方を選択するサーバ選択部と、前記移動処理の実行後に、前記移動元のサーバ及び移動先のサーバの少なくとも一方を、前記除外サーバ記憶部にて前記除外されるサーバとして記憶する除外サーバ情報更新部とを備えることを特徴とする。
【０００７】
本発明の情報処理システムは、複数の物理サーバと、一の物理サーバ上で稼働する仮想サーバを他の物理サーバに移動する移動処理を実行する自律制御サーバとを有する情報処理システムであって、前記自律制御サーバが、前記移動処理の対象から除外される物理サーバの識別情報を記憶する除外サーバ記憶部を参照し、前記除外サーバ記憶部にて前記移動処理の対象から除外される旨が指定された物理サーバを特定する除外サーバ特定部と、前記複数の物理サーバのうちで、前記除外サーバ特定部にて特定された物理サーバを除く物理サーバの中から、移動対象の仮想サーバの移動元の物理サーバ及び移動先の物理サーバの少なくとも一方を選択するサーバ選択部と、前記移動処理の実行後に、前記移動元の物理サーバ及び移動先の物理サーバの少なくとも一方を、前記除外サーバ記憶部にて前記除外される物理サーバとして記憶する除外サーバ情報更新部とを備えることを特徴とする。
【０００８】
本発明の仮想サーバの移動処理の制御方法は、複数のサーバに接続され、サーバ上で稼働する仮想サーバを他のサーバに移動する移動処理の制御を行う情報処理装置を動作させる方法であって、前記移動処理の対象から除外されるサーバの識別情報を記憶する除外サーバ記憶部を参照し、前記除外サーバ記憶部にて前記移動処理の対象から除外される旨が指定されたサーバを特定するステップと、前記複数のサーバのうちで、前記特定するステップで特定されたサーバを除くサーバの中から、移動対象の仮想サーバの移動元のサーバ及び移動先のサーバの少なくとも一方を選択するステップと、前記移動処理の実行後に、前記移動元のサーバ及び移動先のサーバの少なくとも一方を、前記除外サーバ記憶部にて前記除外されるサーバとして記憶するステップとを有することを特徴とする。
【０００９】
本発明のプログラムは、複数のサーバに接続され、サーバ上で稼働する仮想サーバを他のサーバに移動する移動処理の制御を行うコンピュータに、前記移動処理の対象から除外されるサーバの識別情報を記憶する除外サーバ記憶部を参照し、前記除外サーバ記憶部にて前記移動処理の対象から除外される旨が指定されたサーバを特定する処理と、前記複数のサーバのうちで、前記特定する処理で特定されたサーバを除くサーバの中から、移動対象の仮想サーバの移動元のサーバ及び移動先のサーバの少なくとも一方を選択する処理と、前記移動処理の実行後に、前記移動元のサーバ及び移動先のサーバの少なくとも一方を、前記除外サーバ記憶部にて前記除外されるサーバとして記憶する処理とを実行させることを特徴とする。
【発明の効果】
【００１０】
本発明の情報処理装置、情報処理システム、仮想サーバの移動処理の制御方法、及び、プログラムでは、仮想サーバの移動により発生する不連続な負荷変動の影響を除外して仮想サーバの移動に関わるサーバを選択できる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図１は、本発明の第１実施形態の情報処理システムを示している。本発明の第１の実施の形態である仮想サーバシステムは、複数の物理サーバ（サーバ装置）３０−１〜３０−ｍ（ｍは２以上の整数）と、物理サーバ３０で稼動する各仮想サーバを管理する自律制御サーバ（情報処理装置）２０とを有する。自律制御サーバ２０と物理サーバ３０とは、通信網１０を介して接続される。図１では、物理サーバ３０−１上で稼動する仮想サーバに符号３１−１−１〜３１−１−ｎ（ｎは２以上の整数）を付与し、物理サーバ３０−ｍ上で稼動する仮想サーバに符号３１−ｍ−１〜３１−ｍ−ｎを付与して識別している。物理サーバ３０−１〜３０−ｍは、例えば、コンピュータで読み取り可能な記録媒体（磁気ディスク、半導体メモリ、光ディスク等）に格納されたプログラムに従って処理を実行するコンピュータによって実現される。
【００１２】
第１実施形態では、情報処理の引継ぎの例として仮想サーバの移動を挙げて説明する。ここで、情報処理を他のサーバで引き継ぐとは、例えば、第１の物理サーバ上で動作する情報処理を停止して、同じ情報処理を第２の物理サーバ上で動作させることである。第１の物理サーバ上における情報処理の停止と第２の物理サーバにおける情報処理の開始とが厳密に同期していることを要しない。すなわち、情報処理を他のサーバで引き継ぐとは、状況が許す限り、第１の物理サーバと第２の物理サーバとが同じ情報処理を一定期間実行することを含み、また第１の物理サーバにおける情報処理が停止してから一定期間の経過後、第２の物理サーバが情報処理を開始することを含む。また、情報処理の引継ぎは、仮想サーバの移動に限定されない。
【００１３】
自律制御サーバ２０は、リソース情報収集部２１、移動先判断部２２（サーバ選択部）、仮想サーバ移動部２３、ガードタイム記憶部（除外サーバ記憶部）２４、除外サーバ特定部２５、及び、ガードタイム情報更新部（除外サーバ情報更新部）２６を備える。自律制御サーバ２０は、例えば、半導体集積回路により実現されるＣＰＵ（Central Processor Unit）、メモリ等を備えるコンピュータである。自律制御サーバ２０は、例えば、コンピュータで読み取り可能な記録媒体からの読出し、ネットワークからダウンロード、又は、その他の方法によりプログラムをメモリ上に配置し、ＣＰＵがメモリ上のプログラムを解釈実行することにより、リソース情報収集部２１、移動先判断部２２、仮想サーバ移動部２３、除外サーバ特定部２５、及び、ガードタイム情報更新部２６の各機能を実現する。
【００１４】
リソース情報収集部２１は、物理サーバ３０−１〜３０−ｍ、及び、仮想サーバ３１−１−１〜３１−ｍ−ｎから、それぞれのＣＰＵ使用率、メモリ使用率、記録媒体の入出力性能値（例えば最大データ転送速度に対する入出力データ転送速度の割合）、通信制御装置の入出力性能値（伝送速度や使用帯域等）等をリソース情報として取得する。リソース情報収集部２１は、自律制御サーバ２０と接続される物理サーバのサーバ名を記憶しており、記憶する物理サーバ名を用いて、物理サーバ３０−１〜３０−ｍからリソース情報を取得する。或いは、他の手段に接続される物理サーバ名の取得要求を発行し、その要求に応じて物理サーバのサーバ名を取得し、取得した物理サーバ名を用いて、物理サーバ３０−１〜３０−ｍからリソース情報を取得してもよい。
【００１５】
移動先判断部２２は、移動させる仮想サーバとその仮想サーバの移動先となる物理サーバとを決定する。移動先判断部２２は、あらかじめ定められた期間ごとに（例えば１分間隔、１時間間隔など）、移動対象と移動先とを決定してもよいし、外部から与えられる入力に応じて移動対象と移動先とを決定してもよい。移動先判断部２２は、移動させる仮想サーバと移動先の物理サーバの決定後、移動させる仮想サーバを識別する情報と、移動先となる物理サーバのサーバ名とを出力する。仮想サーバを識別する情報は、例えば、仮想サーバの名称、ネットワークアドレス、サーバの構成等から算出される値等であるが、これらに限定されない。
【００１６】
ガードタイム記憶部２４は、物理サーバのサーバ名とガードタイム終了時刻とを対応付けて記憶する。ガードタイムとは、当該物理サーバ３０が仮想サーバの移動元及び／又は移動先の候補から除外される期間のことであり、ガードタイム終了時刻は、その期間の終了時刻である。図２に、ガードタイム記憶部２４が記憶する情報のデータ構造例を示す。除外サーバ特定部２５は、ガードタイム記憶部２４を参照し、現時刻と、ガードタイム記憶部２４の各エントリの終了時刻とを比較し、ガードタイム内の物理サーバ名を特定する。例えば、ガードタイム記憶部２４が図２に示す情報を記憶し、現時刻が「２００７/１０/２３  １４：４０：２３」であれば、除外サーバ特定部２５は、ガードタイム終了時刻内の物理サーバのサーバ名「ＳＶ３」を出力する。
【００１７】
入力に応じて移動対象と移動先とを決定する例について説明する。移動先を決定する要求が入力されると、移動先判断部２２は、除外サーバ特定部２５に対して、ガードタイム内の物理サーバのリストを要求し、ガードタイム内の物理サーバ、つまり、仮想サーバの移動処理にて対象から除外される物理サーバのリストを取得する。移動先判断部２２は、自律制御サーバ２０に接続される物理サーバの中から、除外サーバ特定部２５より取得したリストに含まれる物理サーバを除外した上で、移動対象の仮想サーバ及び移動先となる物理サーバを選択する。移動対象の仮想サーバ及び移動先の物理サーバの選択は、リソース情報に基づいて行う。例えば、移動先判断部２２は、リソース情報収集部２１を用いて、除外サーバ特定部２５から取得した物理サーバ名のリストに含まれていない物理サーバのリソース情報を取得し、取得したリソース情報を参照して、移動対象と移動先とを選択する。
【００１８】
移動先判断部２２は、例えば、取得したリソース情報において、ＣＰＵ使用率、メモリ使用率、又は、単位時間あたりの記録媒体への入出力バイト数や、その他のパフォーマンスを示す指標が最も大きな値を示す物理サーバで稼動している仮想サーバを移動対象として定める。また、移動先判断部２２は、取得したリソース情報において、ＣＰＵ使用率、メモリ使用率、又は、単位時間あたりの記録媒体への入出力バイト数や、その他のパフォーマンスを示す指標が最も小さな値を示す物理サーバを移動先として定めてもよい。上記した移動対象と移動先の選択方法は一例でありこれに限定されない。本実施の形態では、従来より用いられている移動対象と移動先を選択する方法を用いることができる。
【００１９】
仮想サーバ移動部２３は、移動先判断部２２の決定に従って、仮想サーバを移動する。より詳細には、仮想サーバ移動部２３は、移動対象の仮想サーバを識別する情報と、移動先の物理サーバ名とが入力されると、仮想サーバを識別する情報で特定される仮想サーバを、物理サーバ名で示される物理サーバに移動させる。仮想サーバ移動部２３は、仮想サーバの移動の完了後、移動先の物理サーバ名をガードタイム情報更新部２６に通知する。また、仮想サーバ移動部２３は、移動先の物理サーバ名に代えて、又は、これと共に、仮想サーバが動作していた物理サーバ名をガードタイム情報更新部２６に通知してもよい。
【００２０】
ガードタイム情報更新部２６は、仮想サーバ移動部２３より物理サーバ名を受け取ると、その物理サーバ名とガードタイムの終了時刻とを対応付けてガードタイム記憶部２４に追加登録する。このとき、ガードタイム情報更新部２６は、例えば、物理サーバ名を受け取った時刻にあらかじめ定められた期間を加算した時刻をガードタイムの終了時刻として、ガードタイム記憶部２４に記憶する。加算する期間は、仮想サーバの移動に伴う負荷変動が収束する期間に応じた期間に設定することが好ましい。加算する期間は、設定ファイル等に記憶されていてもよく、或いは、物理サーバ名とともにガードタイム情報更新部２６に入力されてもよい。ガードタイムの終了時刻の算出方法は、例示であり上記の方法に限定されない。ガードタイムの終了時刻の算出方法は、物理サーバ名ごとに異なる方法を用いてもよいし、物理サーバ名を受け取った時刻の時間帯に応じて変更してもよい。
【００２１】
本実施形態では、仮想サーバの移動後に、移動先及び／又は移動元の物理サーバ名をガードタイム情報更新部２６に通知し、当該物理サーバのサーバ名を、ガードタイム終了時刻と共にガードタイム記憶部２４に登録する。このようにすることで、ガードタイム記憶部２４には、仮想サーバの移動処理を実行してから所定期間内にある物理サーバが、仮想サーバの移動元及び／又は移動先の候補から除外されるサーバとして記憶されることになる。従って、本実施形態では、移動先判断部２２にて、既に実行された仮想サーバの移動処理から所定期間が経過していない物理サーバを、仮想サーバの移動元及び／又は移動先の候補から除外して、移動対象の仮想サーバ及び移動先の物理サーバの選択を行うことになる。
【００２２】
図３に、仮想サーバシステムが備える自律制御サーバの処理手順例を示す。自律制御サーバ２０は、リソース情報収集部２１によって、あらかじめ物理サーバ３０−１〜３０−ｍ、及び、仮想サーバ３１−１−１〜３１−ｍ−ｎのリソース情報をそれぞれ取得している。移動先判断部２２は、除外サーバ特定部２５に対して、ガードタイム内の物理サーバのリストを要求する（ステップＡ１）。除外サーバ特定部２５は、ガードタイム記憶部２４を参照して、ガードタイム内の物理サーバのリストを生成し、これを移動先判断部２２に返答する。
【００２３】
移動先判断部２２は、ガードタイム内の物理サーバ名のリストをリソース情報収集部２１に渡し、ガードタイム外の物理サーバに関するリソース情報を取得する（ステップＡ２）。その後、移動先判断部２２は、ガードタイム外の物理サーバの中から、仮想サーバの移動元や移動先の物理サーバを決定する（ステップＡ３）。ここで、仮想サーバの移動元や移動先の物理サーバ、移動対象の仮想サーバの選択の方法には、従来技術を用いることができ、選択方法は特に制限されない。
【００２４】
自律制御サーバ２０は、ステップＡ３の処理により、移動先判断部２２が移動対象の仮想サーバと移動先の物理サーバとを決定すると、仮想サーバ移動部２３により、移動対象の仮想サーバを、移動先の物理サーバに移動させる（ステップＡ４）。例えば、ステップＡ３で、物理サーバ３０−１内の仮想サーバ３１−１−１を移動対象の仮想サーバとして決定したときは、自律制御サーバ２０は、移動元の物理サーバ３０−１に対して、仮想サーバ３１−１−１を、物理サーバ３０−ｍに移動させる旨のコマンドを発行する。物理サーバ３０−１が、コマンドに従って仮想サーバ３１−１−１を移動することで、仮想サーバの移動が実行される。
【００２５】
仮想サーバ移動部２３は、仮想サーバの移動完了後、移動先の物理サーバのサーバ名を、ガードタイム情報更新部２６に通知する（ステップＡ５）。このとき、仮想サーバ移動部２３は、移動先の仮想サーバに代えて、又は、これに加えて、移動元の物理サーバのサーバ名を、ガードタイム記憶部２４に通知してもよい。ガードタイム情報更新部２６は、物理サーバ名の通知を受けると、ガードタイム終了時刻を決定し、決定したガードタイム終了時刻と物理サーバメイトを対応付けて、ガードタイム記憶部２４に記憶する。
【００２６】
本実施形態では、仮想サーバの移動処理を行った後に、仮想サーバの移動元及び／又は移動先の物理サーバを、ガードタイム記憶部２４に記憶する。移動対象の仮想サーバ及び移動先の物理サーバの選択処理では、ガードタイム記憶部２４に記憶された物理サーバを除外して、移動対象の仮想サーバ及び／又は移動先の物理サーバを選択する。このようにすることで、仮想サーバの移動に伴って負荷が変動する物理サーバを除外した上で、残りの物理サーバを対象として仮想サーバの移動を行うことができる。また、ガードタイムとして、仮想サーバの移動から所定期間を設定することで、そのガードタイム内は、仮想サーバの移動元／移動先の物理サーバが仮想サーバ移動の候補から除外されることになり、仮想サーバ移動により発生する不連続な負荷変動の影響を除外して、仮想サーバの移動に関わるサーバを選択できる。
【００２７】
比較例として、ガードタイム記憶部２４を用いずに移動対象の仮想サーバ及び移動先の物理サーバの選択を行うことを考えると、仮想サーバの移動に伴う負荷変動の影響を排除して次の仮想サーバの移動を行うためには、負荷変動が収束するまで、全ての物理サーバ間で、仮想サーバの移動を抑制する必要がある。しかし、仮想サーバの移動に伴って負荷が大きく変動するのは、仮想サーバの移動に関係した移動元の物理サーバと移動先の物理サーバであり、その他の物理サーバの負荷は大きく変化しない。この場合、負荷が大きく変化しない物理サーバを含めて、仮想サーバの移動が一律に抑止されることで、キャパシティ不足や無駄なリソースの発生が生じる。これに対し、本実施形態では、仮想サーバの移動に関係した物理サーバを、仮想サーバ移動の対象から除外するため、残りの物理サーバ間では仮想サーバの移動が可能となる。従って、過去の仮想サーバの移動による負荷変動の影響を排除しつつ、キャパシティ不足や無駄なリソースの発生を回避することができる。また、ガードタイムに含まれない物理サーバは、ガードタイム内の物理サーバの負荷の収束を待つ必要がないため、仮想サーバの移動を行うインターバルを短縮できるという効果もある。
【００２８】
なお、第１の実施の形態では、情報処理の引継ぎの例として仮想サーバを移動する例について説明しているが、本実施形態はこれに限定されるものではない。例えば、引継ぎを行う情報処理は、Ｗｅｂサービスリクエストの処理であってもよい。Ｗｅｂサービスリクエストの処理を引き継ぐ場合、当該処理を識別する情報は、当該処理をサーバに実行させるためのプログラムの名称、そのプログラムに割り当てられるＧＵＩＤ（Ｇｌｏｂａｌｌｙ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ）、そのプログラムコードから算出される値等であっても良く、これらに限定されない。また、Ｗｅｂサービスリクエストの処理をサーバに実行させるためのプログラムを他のサーバに実行させるためのプログラムのインストールや起動に関わる技術は、従来技術を用いて行うものであり特に限定されない。
【００２９】
次に、本発明の第２実施形態について説明する。図４に、第２実施形態の情報処理システムを示す。本実施形態の情報処処理システムは、自律制御サーバ２０ａが、図１に示す第１実施形態における自律制御サーバ２０の構成に加えて、ガードタイム調整部（除外時間調整部）２７を備える。第１の実施の形態における構成要素と同様の構成要素は同一の符号を付し、その説明を省略する。
【００３０】
ガードタイム調整部２７には、移動対象の仮想サーバの負荷に関する情報と、移動先の物理サーバのサーバ名とが入力される。ガードタイム調整部２７は、移動対象の仮想サーバの負荷情報に基づいて、移動先の物理サーバに対して設定すべきガードタイムの期間を決定し、決定したガードタイムとなる期間と、移動先物理サーバのサーバ名を、出力する。ガードタイム調整部２７は、例えば、移動対象の仮想サーバの負荷があらかじめ定められたしきい値以上のときは、移動先の物理サーバのガードタイムとして通常のガードタイムとして使用する期間を出力し、しきい値よりも低いときは、通常のガードタイムよりも短い期間を出力する。
【００３１】
例えば、ファイル等によって設定された期間を通常のガードタイムとする場合、ガードタイム調整部２７は、移動対象の仮想サーバの負荷がしきい値よりも低いときは、通常のガードタイムから所定の期間を減算し、通常のガードタイムに１未満の重みを乗じ、或いは、その他の代数演算を行って、通常のガードタイムよりも短い期間を出力する。また、仮想サーバの負荷としきい値との比に応じて、ガードタイムを決定してもよい。例えば、移動対象の仮想サーバの負荷が５％で、しきい値となる負荷が２０％のときは、通常のガードタイムに１／４を乗じた期間を、移動先物理サーバのガードタイムとして出力してもよい。ここに記載した方法は一例であり、これには限定されない。
【００３２】
また、ガードタイム調整部２７に、移動先の物理サーバのサーバ名に代えて、又はこれに加えて、移動元の物理サーバのサーバ名が入力されてもよい。この場合、ガードタイム調整部２７は、移動対象の仮想サーバの負荷があらかじめ定められたしきい値より低いときには、移動元の物理サーバのガードタイムとして通常よりも短い期間を出力する。ガードタイム調整部２７に、移動先の物理サーバのサーバ名と移動元の物理サーバのサーバ名との双方が入力される場合、ガードタイム調整部２７は、移動元及び移動先のサーバのそれぞれについてガードタイムを求め、移動元及び移動先の物理サーバ名と求めたガードタイムとをそれぞれ対応付けて出力する。
【００３３】
続いて、本実施形態の動作を説明する。図５に、第２実施形態における自律制御サーバの処理手順を示す。自律制御サーバ２０ａは、リソース情報収集部２１によって、あらかじめ物理サーバ３０−１〜３０−ｍ、及び、仮想サーバ３１−１−１〜３１−ｍ−ｎのリソース情報をそれぞれ取得している。移動先判断部２２は、除外サーバ特定部２５に対して、ガードタイム内の物理サーバのリストを要求する（ステップＢ１）。除外サーバ特定部２５は、ガードタイム記憶部２４を参照して、ガードタイム内の物理サーバのリストを生成し、これを移動先判断部２２に返答する。
【００３４】
移動先判断部２２は、ガードタイム内の物理サーバ名のリストをリソース情報収集部２１に渡し、ガードタイム外の物理サーバに関するリソース情報を取得する（ステップＢ２）。その後、移動先判断部２２は、ガードタイム外の物理サーバの中から、仮想サーバの移動元や移動先の物理サーバを決定する（ステップＢ３）。ここで、仮想サーバの移動元や移動先の物理サーバ、移動対象の仮想サーバの選択の方法には、従来技術を用いることができ、選択方法は特に制限されない。
【００３５】
自律制御サーバ２０ａは、ステップＢ３の処理により、移動先判断部２２が移動対象の仮想サーバと移動先の物理サーバとを決定すると、仮想サーバ移動部２３により、移動対象の仮想サーバを、移動先の物理サーバに移動させる（ステップＢ４）。ここまでの処理は、第１実施形態における動作手順（図３）と同様である。
【００３６】
仮想サーバ移動部２３は、仮想サーバの移動に際して、移動対象の仮想サーバの負荷データを、リソース情報収集部２１を用いて取得する（ステップＢ５）。仮想サーバ移動部２３は、仮想サーバの移動完了後、移動対象の仮想サーバの負荷データと移動先物理サーバのサーバ名とを、ガードタイム調整部２７に通知する（ステップＢ６）。この通知の際に、仮想サーバ移動部２３は、移動先の物理サーバのサーバ名に代えて、又はこれに加えて、移動元の物理サーバのサーバ名を通知してもよい。
【００３７】
ガードタイム調整部２７は、移動対象の仮想サーバの負荷がしきい値よりも低いか否かを判断し、しきい値よりも低いときは、移動先の物理サーバのガードタイムを通常よりも短い期間とし、移動先の物理サーバのサーバ名とガードタイムとして設定する期間とを対応付けて、ガードタイム情報更新部２６に通知する（ステップＢ７）。移動対象の負荷がしきい値以上であるときは、ガードタイムを、通常の期間とする。また、ガードタイム調整部２７は、移動元の物理サーバのサーバ名が入力され、移動対象の仮想サーバの負荷がしきい値よりも低いときは、移動元の物理サーバのガードタイムを、通常よりも短い期間とし、移動元の物理サーバのサーバ名とガードタイムとして設定する期間とを対応付けて、ガードタイム情報更新部２６に通知する。
【００３８】
ガードタイム情報更新部２６は、ガードタイム調整部２７より物理サーバのサーバ名とガードタイムとして設定する期間とが通知されると、現時刻に通知された期間を加えた時刻をガードタイム終了時刻として、ガードタイム終了時刻と当該物理サーバのサーバ名とを対応付けて、ガードタイム記憶部２４に記憶する。
【００３９】
本実施形態では、移動対象の仮想サーバの負荷に基づいて、移動先及び／又は移動元の物理サーバに設定するガードタイムを決定する。移動対象の仮想サーバの負荷が低いときには、仮想サーバの移動に伴う負荷変動の収束は、負荷が高いときに比して短くなると考えられる。移動対象の仮想サーバの負荷が低いときに、移動元と移動先の物理サーバのガードタイムを短く設定することで、過去に仮想サーバの移動にて移動先又は移動元となった物理サーバが、仮想サーバの移動時にその候補から除外される期間をより短くすることができる。これにより、物理サーバの空きリソースを効率よく再利用することができる。
【００４０】
以上、本発明をその好適な実施形態に基づいて説明したが、本発明の情報処理装置、情報処理システム、仮想サーバの移動処理の制御方法、及び、プログラムは、上記実施形態にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
【図面の簡単な説明】
【００４１】
【図１】本発明の第１実施形態の情報処理システムの構成を示すブロック図。
【図２】ガードタイム記憶部のデータ構造を示す図。
【図３】情報処理システムの動作手順を示すフローチャート。
【図４】本発明の第２実施形態の情報処理システムの構成を示すブロック図。
【図５】第２実施形態の情報処理システムの動作手順を示すフローチャート。
【符号の説明】
【００４２】
１０：通信網
２０：自律制御サーバ
２１：リソース情報収集部
２２：移動先判断部
２３：仮想サーバ移動部
２４：ガードタイム記憶部
２５：除外サーバ特定部
２６：ガードタイム情報更新部
２７：ガードタイム調整部
３０：物理サーバ
３１：仮想サーバ
【図１】
0005056346.tif 000002
【図２】
0005056346.tif 000003
【図３】
0005056346.tif 000004
【図４】
0005056346.tif 000005
【図５】
0005056346.tif 000006