(57)【特許請求の範囲】
【請求項１】
複数の物理サーバ、及びサーバ管理装置がネットワークを介して接続されるサーバ管理システムであって、
前記物理サーバは、
前記物理サーバの電源のＯＮとＯＦＦとを制御する電源ユニットと、
前記物理サーバ上に仮想的に設けられた論理サーバの稼働又は休止の状態を制御する論理サーバ制御部と、
前記論理サーバを稼働する際に使用するリソースと、
前記リソースのリソース使用率を示す情報であるリソース使用率情報を前記サーバ管理装置に送信する物理サーバ状態通知部と、を備え、
前記サーバ管理装置は、
前記物理サーバ毎に、前記リソース使用率情報、前記リソース使用率の所定の上限値である上限閾値、及び前記リソース使用率の所定の下限値である下限閾値が記憶されるサーバ状態管理テーブルと、前記論理サーバ毎に論理サーバの稼働又は休止の状態を示す情報、及び当該論理サーバを制御している物理サーバを識別する情報が記憶される論理サーバ状態管理テーブルとを格納している記憶部と、
前記物理サーバから前記リソース使用率情報を受信し、受信した前記リソース使用率情報に基づいて前記サーバ状態管理テーブルを更新するサーバ状態管理部と、
前記サーバ状態管理テーブルを参照して前記リソース使用率と前記上限閾値とを比較し、前記リソース使用率が前記上限閾値を上回った前記物理サーバがあると判定した場合に、前記論理サーバ状態管理テーブルを参照して当該上回った物理サーバ上で休止状態の前記論理サーバを他の物理サーバに移行する移行指示を、当該上回った物理サーバに送信するリソース分割割当実行部と、
前記サーバ状態管理テーブルを参照して前記リソース使用率と前記下限閾値とを比較し、前記リソース使用率が前記下限閾値を下回った前記物理サーバがあると判定した場合に、前記論理サーバ状態管理テーブルを参照して当該下回った物理サーバ上で稼働状態及び休止状態である前記論理サーバを他の物理サーバに移行する移行指示を、当該下回った物理サーバに送信し、さらに、電源をＯＦＦすることを指示する第１の電源状態変更命令を当該物理サーバに送信するリソース集約割当実行部と、を備え、
前記論理サーバ状態管理テーブルには、論理サーバの稼働を中断可能な時間を示す中断許容時間情報が記憶され、
前記リソース集約割当実行部は、前記中断許容時間情報と移行元の物理サーバ及び移行先の候補となる物理サーバ間の通信速度とから、前記中断許容時間情報以内に移行可能な前記物理サーバを、前記論理サーバを移行する他の物理サーバとして選択する、
ことを特徴とするサーバ管理システム。
【請求項２】
前記リソース分割割当実行部は、
電源がＯＦＦされている前記物理サーバに対して、電源をＯＮすることを指示する第２の電源状態変更命令を送信し、当該物理サーバに、前記リソース使用率が前記上限閾値を上回った前記物理サーバ上で休止状態の前記論理サーバを移行する、
ことを特徴とする請求項１に記載のサーバ管理システム。
【請求項３】
前記リソース分割割当実行部は、
前記複数の物理サーバの内で前記リソース使用率が最も低い物理サーバを、前記論理サーバを移行する他の物理サーバとして選択する、
ことを特徴とする請求項１に記載のサーバ管理システム。
【請求項４】
前記物理サーバは、
前記物理サーバが有する前記論理サーバの少なくとも一部に状態変化が発生した場合に、前記論理サーバの状態の変化を示す論理サーバ状態変更情報を前記サーバ管理装置に送信する論理サーバ状態通知部をさらに備え、
前記サーバ管理装置は、
前記物理サーバから受信した前記論理サーバ状態変更情報に基づいて前記論理サーバ状態管理テーブルを更新する論理サーバ状態管理部をさらに備え、
前記リソース分割割当実行部は、前記論理サーバ状態管理テーブルの前記論理サーバの稼働又は休止の状態を示す情報が更新されたと判定した場合に、前記サーバ状態管理テーブルの前記リソース使用率と前記上限閾値とを比較し、
前記リソース集約割当実行部は、前記論理サーバ状態管理テーブルの前記論理サーバの稼働又は休止の状態を示す情報が更新されたと判定した場合に、前記サーバ状態管理テーブルの前記リソース使用率と前記下限閾値とを比較する、
ことを特徴とする請求項１ないし請求項３のいずれか１項に記載のサーバ管理システム。
【請求項５】
電源のＯＮとＯＦＦとを制御する電源ユニットと、物理サーバ上に仮想的に設けられた論理サーバの稼働又は休止の状態を制御する論理サーバ制御部と、前記論理サーバを稼働する際に使用するリソースと、を備える複数の物理サーバにネットワークを介して接続されるサーバ管理装置であって、
前記物理サーバ毎に、前記リソースのリソース使用率を示す情報であるリソース使用率情報、前記リソース使用率の所定の上限値である上限閾値、及び前記リソース使用率の所定の下限値である下限閾値が記憶されるサーバ状態管理テーブルと、前記論理サーバ毎に論理サーバの稼働又は休止の状態を示す情報、及び当該論理サーバを制御している物理サーバを識別する情報が記憶される論理サーバ状態管理テーブルとを格納している記憶部と、
前記物理サーバから前記リソースのリソース使用率を示す情報であるリソース使用率情報を受信し、受信した前記リソース使用率情報に基づいて前記サーバ状態管理テーブルを更新するサーバ状態管理部と、
前記サーバ状態管理テーブルを参照して前記リソース使用率と前記上限閾値とを比較し、前記リソース使用率が前記上限閾値を上回った前記物理サーバがあると判定した場合に、前記論理サーバ状態管理テーブルを参照して当該上回った物理サーバ上で休止状態の前記論理サーバを他の物理サーバに移行する移行指示を、当該上回った物理サーバに送信するリソース分割割当実行部と、
前記サーバ状態管理テーブルを参照して前記リソース使用率と前記下限閾値とを比較し、前記リソース使用率が前記下限閾値を下回った前記物理サーバがあると判定した場合に、前記論理サーバ状態管理テーブルを参照して当該下回った物理サーバ上で稼働状態及び休止状態である前記論理サーバを他の物理サーバに移行する移行指示を、当該下回った物理サーバに送信し、さらに、電源をＯＦＦすることを指示する第１の電源状態変更命令を当該物理サーバに送信するリソース集約割当実行部と、を備え、
前記論理サーバ状態管理テーブルには、論理サーバの稼働を中断可能な時間を示す中断許容時間情報が記憶され、
前記リソース集約割当実行部は、前記中断許容時間情報と移行元の物理サーバ及び移行先の候補となる物理サーバ間の通信速度とから、前記中断許容時間情報以内に移行可能な前記物理サーバを、前記論理サーバを移行する他の物理サーバとして選択する、
ことを特徴とするサーバ管理装置。
【請求項６】
電源のＯＮとＯＦＦとを制御する電源ユニットと、物理サーバ上に仮想的に設けられた論理サーバの稼働又は休止の状態を制御する論理サーバ制御部と、前記論理サーバを稼働する際に使用するリソースと、を備える複数の物理サーバにネットワークを介して接続されるサーバ管理装置のサーバ管理方法であって、
前記物理サーバ毎に、前記リソースのリソース使用率を示す情報であるリソース使用率情報、前記リソース使用率の所定の上限値である上限閾値、及び前記リソース使用率の所定の下限値である下限閾値が記憶されるサーバ状態管理テーブルと、前記論理サーバ毎に論理サーバの稼働又は休止の状態を示す情報、及び当該論理サーバを制御している物理サーバを識別する情報が記憶される論理サーバ状態管理テーブルとを格納している記憶部を備え、
前記物理サーバから前記リソースのリソース使用率を示す情報であるリソース使用率情報を受信し、受信した前記リソース使用率情報に基づいて前記サーバ状態管理テーブルを更新し、
前記サーバ状態管理テーブルを参照して前記リソース使用率と前記上限閾値とを比較し、前記リソース使用率が前記上限閾値を上回った前記物理サーバがあると判定した場合に、前記論理サーバ状態管理テーブルを参照して当該上回った物理サーバ上で休止状態の前記論理サーバを他の物理サーバに移行する移行指示を、当該上回った物理サーバに送信し、
前記サーバ状態管理テーブルを参照して前記リソース使用率と前記下限閾値とを比較し、前記リソース使用率が前記下限閾値を下回った前記物理サーバがあると判定した場合に、前記論理サーバ状態管理テーブルを参照して当該下回った物理サーバ上で稼働状態及び休止状態である前記論理サーバを他の物理サーバに移行する移行指示を、当該下回った物理サーバに送信し、さらに、電源をＯＦＦすることを指示する第１の電源状態変更命令を当該物理サーバに送信し、
前記論理サーバ状態管理テーブルには、論理サーバの稼働を中断可能な時間を示す中断許容時間情報が記憶され、
前記リソース使用率が前記下限閾値を下回った前記物理サーバがあると判定した場合には、前記中断許容時間情報と移行元の物理サーバ及び移行先の候補となる物理サーバ間の通信速度とから、前記中断許容時間情報以内に移行可能な前記物理サーバを、前記論理サーバを移行する他の物理サーバとして選択する、
ことを特徴とするサーバ管理方法。
【請求項７】
請求項６に記載のサーバ管理方法を、前記サーバ管理装置としてのコンピュータに実行させるためのサーバ管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のサーバで構成されるサーバ群のリソース及び電源を管理するための、サーバ管理システム、サーバ管理装置、サーバ管理方法、及びサーバ管理プログラムに関する。
【背景技術】
【０００２】
従来、分散コンピューティングシステムにおいて、分散コンピューティングシステム全体としての消費電力を低減する方法として、計算処理を実行する複数の計算処理装置の中から、消費電力の低い計算処理装置を選択して、計算処理を実行する技術がある（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−６３０６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載される技術は、消費電力の高低により計算処理装置を選択するものであって、計算処理装置のリソースに関する検討がなされていない。すなわち、いくらシステム全体として消費電力が低くなる場合でも、消費電力の低い計算処理装置(例えば、サーバ)のリソースの使用率が他の計算処理装置に比べて突出して高くなることは、システムを安全に運用する観点で言えば好ましくないという問題がある。また、消費電力の低い計算処理装置(例えば、サーバ)が、安全設計の範囲内でリソースを有効に使用して稼働した場合に、システム内で消費電力の高い計算処理装置(例えば、サーバ)のリソース使用率は低くなるので、消費電力の高い計算処理装置(例えば、サーバ)を稼働しておくための消費電力が無駄になるという問題がある。
【０００５】
本発明は前記問題に鑑みてなされたものであり、システム内の各サーバの負荷の突出を抑制するとともに、システム全体の電力量を低減することができる、サーバ管理システム、サーバ管理装置、サーバ管理方法、及びサーバ管理プログラムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するため、本発明に係るサーバ管理システムは、複数の物理サーバ、及びサーバ管理装置がネットワークを介して接続されるサーバ管理システムであって、前記物理サーバが、前記物理サーバの電源のＯＮとＯＦＦとを制御する電源ユニットと、前記物理サーバ上に仮想的に設けられた論理サーバの稼働又は休止の状態を制御する論理サーバ制御部と、前記論理サーバを稼働する際に使用するリソースと、前記リソースのリソース使用率を示す情報であるリソース使用率情報を前記サーバ管理装置に送信する物理サーバ状態通知部と、を備え、前記サーバ管理装置が、前記物理サーバ毎に、前記リソース使用率情報、前記リソース使用率の所定の上限値である上限閾値、及び前記リソース使用率の所定の下限値である下限閾値が記憶されるサーバ状態管理テーブルと、前記論理サーバ毎に論理サーバの稼働又は休止の状態を示す情報、及び当該論理サーバを制御している物理サーバを識別する情報が記憶される論理サーバ状態管理テーブルとを格納している記憶部と、前記物理サーバから前記リソース使用率情報を受信し、受信した前記リソース使用率情報に基づいて前記サーバ状態管理テーブルを更新するサーバ状態管理部と、前記サーバ状態管理テーブルを参照して前記リソース使用率と前記上限閾値とを比較し、前記リソース使用率が前記上限閾値を上回った前記物理サーバがあると判定した場合に、前記論理サーバ状態管理テーブルを参照して当該上回った物理サーバ上で休止状態の前記論理サーバを他の物理サーバに移行する移行指示を、当該上回った物理サーバに送信するリソース分割割当実行部と、前記サーバ状態管理テーブルを参照して前記リソース使用率と前記下限閾値とを比較し、前記リソース使用率が前記下限閾値を下回った前記物理サーバがあると判定した場合に、前記論理サーバ状態管理テーブルを参照して当該下回った物理サーバ上で稼働状態及び休止状態である前記論理サーバを他の物理サーバに移行する移行指示を、当該下回った物理サーバに送信し、さらに、電源をＯＦＦすることを指示する第１の電源状態変更命令を当該物理サーバに送信するリソース集約割当実行部と、を備え、前記論理サーバ状態管理テーブルには、論理サーバの稼働を中断可能な時間を示す中断許容時間情報が記憶され、前記リソース集約割当実行部は、前記中断許容時間情報と移行元の物理サーバ及び移行先の候補となる物理サーバ間の通信速度とから、前記中断許容時間情報以内に移行可能な前記物理サーバを、前記論理サーバを移行する他の物理サーバとして選択することを特徴とする。
ここで、前記リソースは、前記物理サーバのＣＰＵ、メモリ、ハードディスク、及びネットワークカードのいずれかであるのが好ましい。
【０００７】
このようにすることで、本発明に係るサーバ管理システムは、リソースの使用率が上限閾値を上回ったサーバがある場合に、論理サーバを他のサーバに移行し、また、下限閾値を下回ったサーバがある場合に論理サーバを他のサーバに移行するとともに、下限閾値を下回ったサーバの電源をＯＦＦ(切断)する。つまり、本発明に係るサーバ管理システムは、リソースの使用率が高いサーバの負荷の突出を抑制することができ、リソースの使用率が低いサーバの電源をＯＦＦすることができる。したがって、本発明に係るサーバ管理システムは、システムを安全に運用した上で、全体の電力量を低減することができる。
また、このようにすることで、本発明に係るサーバ管理システムは、稼働中の論理サーバ(ＶＭ)を移行する場合に、信頼性に関する情報である中断許容時間情報以内に移行可能なサーバを移行先として選択する。したがって、本発明に係るサーバ管理システムは、信頼性を考慮した論理サーバの移行を行うことができる。
【０００８】
また、本発明に係るサーバ管理システムは、前記リソース分割割当実行部が、電源がＯＦＦされている前記物理サーバに対して、電源をＯＮすることを指示する第２の電源状態変更命令を送信し、当該物理サーバに、前記リソース使用率が前記上限閾値を上回った前記物理サーバ上で休止状態の前記論理サーバを移行する、ことを特徴とする。
【０００９】
このようにすることで、本発明に係るサーバ管理システムは、リソースの使用率が上限閾値を上回ったサーバがある場合に、休止状態のサーバを起動する。したがって、本発明に係るサーバ管理システムは、システムを構成するサーバの負荷を全体的に低く制御することができる。
【００１２】
また、本発明に係るサーバ管理システムは、前記リソース分割割当実行部が、前記複数の物理サーバの内で前記リソース使用率が最も低い物理サーバを、前記論理サーバを移行する他の物理サーバとして選択することを特徴とする。
【００１３】
このようにすることで、本発明に係るサーバ管理システムは、リソースの使用率が上限閾値を上回ったサーバがある場合にリソース使用率が最も低いサーバを選択する。したがって、本発明に係るサーバ管理システムは、システムを構成するサーバの負荷を全体的に低く制御することができる。
【００１４】
また、本発明に係るサーバ管理システムは、前記物理サーバが、前記物理サーバが有する前記論理サーバの少なくとも一部に状態変化が発生した場合に、前記論理サーバの状態の変化を示す論理サーバ状態変更情報を前記サーバ管理装置に送信する論理サーバ状態通知部をさらに備え、前記サーバ管理装置が、前記物理サーバから受信した前記論理サーバ状態変更情報に基づいて前記論理サーバ状態管理テーブルを更新する論理サーバ状態管理部をさらに備え、前記リソース分割割当実行部が、前記論理サーバ状態管理テーブルの前記論理サーバの稼働又は休止の状態を示す情報が更新されたと判定した場合に、前記サーバ状態管理テーブルの前記リソース使用率と前記上限閾値とを比較し、前記リソース集約割当実行部が、前記論理サーバ状態管理テーブルの前記論理サーバの稼働又は休止の状態を示す情報が更新されたと判定した場合に、前記サーバ状態管理テーブルの前記リソース使用率と前記下限閾値とを比較することを特徴とする。
【００１５】
このようにすることで、本発明に係るサーバ管理システムは、論理サーバの状態が変更された場合にのみ判定を行う。したがって、本発明に係るサーバ管理システムは、リソース使用率が上限閾値を上回ったか否かの判定、又は下限閾値を下回ったか否かの判定を常に監視する必要がない。
【発明の効果】
【００１６】
本発明に係るサーバ管理システム、サーバ管理装置、サーバ管理方法、及びサーバ管理プログラムによれば、システム内の各サーバの負荷の突出を抑制するとともに、システム全体の電力量を低減することができる。
【図面の簡単な説明】
【００１７】
【図１】第１実施形態に係るサーバ管理システムの構成図である。
【図２】第１実施形態に係るサーバ群の構成図である。
【図３】第１実施形態に係るサーバ管理装置に格納される論理サーバ状態管理テーブルのデータ構成図である。
【図４】第１実施形態に係るサーバ管理装置に格納されるサーバ状態管理テーブルのデータ構成図である。
【図５】第１実施形態に係るサーバ管理システムで行われる処理を説明するためのシーケンス図（リソース使用率が下限閾値を下回った場合）である。
【図６】第１実施形態に係るサーバ管理システムで行われる処理を説明するためのシーケンス図（リソース使用率が上限閾値を上回った場合）である。
【図７】リソース使用率と上限閾値及び下限閾値との関係を説明するための図である。（ａ）は、リソース使用率が下限閾値を下回った場合を示し、（ｂ）は、リソース使用率が上限閾値を上回った場合を示す。
【図８】サーバ管理装置が行うリソース割当処理の概要を説明するための図である。（ａ）は、リソース使用率が下限閾値を下回った場合のリソース割当処理を示し、（ｂ）は、リソース使用率が上限閾値を上回った場合のリソース割当処理を示す。
【図９】第１実施形態に係るサーバ管理装置が行うリソース割当(全体処理)を説明するためのフローチャートである。
【図１０】第１実施形態に係るサーバ管理装置が行うリソース割当(サーバ選択処理)を説明するためのフローチャートである。
【図１１】第１実施形態に係るサーバ管理装置が行うリソース割当(サーバ・ＶＭ選択処理)を説明するためのフローチャートである。
【図１２】第１実施形態に係るサーバ管理システムの動作を説明するための図(時刻とリソース利用率との関係図)である。
【図１３】第１実施形態に係るサーバ管理システムの動作を説明するための図(サーバ管理装置とサーバとの関係を示すシーケンス図)である。
【図１４】第１実施形態に係るサーバ管理システムの動作(時刻ｔ０〜ｔ３におけるサーバの状態)を説明するための図である。
【図１５】第１実施形態に係るサーバ管理システムの動作(時刻ｔ４〜ｔ５におけるサーバの状態)を説明するための図である。
【図１６】第１実施形態に係るサーバ管理システムの動作(時刻ｔ６〜ｔ７におけるサーバの状態)を説明するための図である。
【図１７】第１実施形態に係るサーバ管理システムの動作(時刻ｔ８〜ｔ１０におけるサーバの状態)を説明するための図である。
【図１８】第１実施形態に係るサーバ管理システムの動作(時刻ｔ１１〜ｔ１２におけるサーバの状態)を説明するための図である。
【図１９】第２実施形態に係るサーバ管理システムの構成図である。
【図２０】第２実施形態に係るサーバ管理装置に格納される論理サーバ状態管理テーブルのデータ構成図である。
【図２１】第２実施形態に係るサーバ管理装置に格納される移行候補サーバ管理テーブルのデータ構成図である。
【図２２】第２実施形態に係るサーバ管理装置が行うリソース割当(全体処理)を説明するためのフローチャートである。
【図２３】第１実施形態に係るサーバ管理装置が行うリソース割当(サーバ選択処理)を説明するためのフローチャートである。
【図２４】第１実施形態及び第２実施形態に係るサーバ群の構成の変形例を示す図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照して、本発明の実施の形態につき詳細に説明する。
なお、各図は、本発明を十分に理解できる程度に、概略的に示してあるに過ぎない。よって、本発明は、図示例のみに限定されるものではない。なお、各図において、共通する構成要素や同様な構成要素については、同一の符号を付し、それらの重複する説明を省略する。
【００１９】
[第１実施形態]
以下、図１を参照して、第１実施形態に係るサーバ管理システム１０００の構成について説明する。なお、図１は、第１実施形態に係るサーバ管理システム１０００の構成図である。
【００２０】
≪サーバ管理システムの構成≫
第１実施形態に係るサーバ管理システム１０００は、ディスク装置１００と、６台のサーバ１〜６で構成されるサーバ群２００と、サーバ管理装置３００とがネットワーク４００を介して接続される構成である。次に、サーバ管理システム１０００を構成する各装置について説明する。
【００２１】
＜ディスク装置＞
ディスク装置１００は、サーバ群２００を構成するサーバ１〜６で実行される論理サーバ(ＶＭ)プログラム１〜論理サーバ(ＶＭ)プログラム３４が格納される。サーバ群２００を構成するサーバ１〜６がディスク装置１００に格納される論理サーバ(ＶＭ)プログラム１〜論理サーバ(ＶＭ)プログラム３４のいずれかを実行することで、論理サーバ(図２のＶＭ１等であり、これらをまとめて単に「ＶＭ：Virtual Machine」と呼ぶ場合がある)が、サーバ１〜６上で稼働する。なお、論理サーバ(ＶＭ)に対して、サーバ１〜６を物理サーバ１〜６と呼ぶ場合がある。
【００２２】
＜サーバ群＞
図２を参照して、第１実施形態に係るサーバ群２００の構成について説明する。なお、図２は、第１実施形態に係るサーバ群２００の構成図である。
サーバ群２００は、例えば、ブレードサーバである。第１実施形態では、サーバ群２００は、６台のサーバ１〜６で構成されることを想定しているが、サーバの数は６台に限定されず複数台であればよい。サーバ２〜６の構成は、サーバ１と同様なので、以下ではサーバ１の構成についてのみ説明しサーバ２〜６の構成の説明は省略する。サーバ１は、電源ユニット１１と、ＣＰＵ(Central Processing Unit)群１２と、メモリ１３と、制御部１４とで構成される。
【００２３】
電源ユニット１１は、サーバ１の電源の「ＯＮ」と「ＯＦＦ」とを制御する。電源ユニット１１は、電源が「ＯＮ」状態において、ＣＰＵ群１２、メモリ１３、及び制御部１４に電力を供給し、これらの装置を動作可能にする。第１実施形態では、電源ユニット１１は、論理機能付き多電源レベルの電源ユニットである場合を想定して説明する。その為、電源ユニット１１は、所定範囲(例えば、１．２Ｖ〜３．６Ｖの範囲)で自由に電源レベルを変換可能で、ＣＰＵ群１２で稼働する論理サーバ(ＶＭ)の数に応じて電源レベルが変化する。以下では、論理サーバ(ＶＭ)毎に与えられ、電源レベルが変化する仮想的な電源のことを論理電源と呼ぶ場合があり、これに対して、サーバ１〜６毎に与えられる電源のことを物理電源と呼ぶ場合がある。
【００２４】
ＣＰＵ群１２は、８個のＣＰＵ１２ａ〜１２ｈで構成される。第１実施形態では、ＣＰＵ群１２は、８個のＣＰＵ１２ａ〜１２ｈで構成されることを想定しているが、ＣＰＵの数は８個に限定されず複数個であればよい。なお、第１実施形態では、８個のＣＰＵ１２ａ〜１２ｈは同じ処理能力を備えるものとして説明する。
メモリ１３は、ディスク装置１００に格納されるＶＭプログラム１〜ＶＭプログラム３４が制御部１４内の後記する論理サーバ制御部１５の指示に基づき実行可能に展開される。
【００２５】
制御部１４は、論理サーバ制御部１５と、物理サーバ状態通知部１６と、論理サーバ状態通知部１７とを含めて構成される。なお、制御部１４は、説明の便宜上、ＣＰＵ群１２及びメモリ１３と異なる構成として図示しているが、実際は、ＣＰＵ群１２の一部とメモリ１３の一部、及びこれらの周辺回路で構成される。そして、この制御部１４は、例えば、図示しない記憶部に格納される図示しないプログラムをメモリ１３に展開し、ＣＰＵ群１２で実行することにより実現される。
【００２６】
論理サーバ制御部１５は、リソースとしてのＣＰＵ群１２、及びメモリ１３を制御して、論理サーバ(ＶＭ)を稼働する。以下では、ＣＰＵ群１２及びメモリ１３をまとめて「リソース」と呼ぶ場合がある。例えば、論理サーバ制御部１５は、ディスク装置１００(図１参照)に格納されるＶＭプログラム１〜ＶＭプログラム３４をメモリ１３に展開し、メモリ１３に展開されたＶＭプログラム１〜ＶＭプログラム３４をＣＰＵ群１２で実行させる。これにより、論理サーバ(ＶＭ)は、ＣＰＵ群１２上で稼働する。なお、論理サーバ(ＶＭ)の「稼働」に対して、サーバ群２００で稼働していない論理サーバ(ＶＭ)の状態を「休止」と呼ぶこととする。論理サーバ制御部１５は、例えば、稼働している論理サーバ(ＶＭ)の処理が終了すれば、論理サーバ(ＶＭ)を休止する。
【００２７】
また、論理サーバ制御部１５は、例えば、ネットワーク４００に通信可能に接続される図示しないクライアントからの要求に応じて休止している論理サーバ(ＶＭ)を稼働する。なお、論理サーバ制御部１５は、論理サーバ(ＶＭ)が休止している状態ではＶＭプログラム１〜ＶＭプログラム３４を実行するのに必要なメモリ１３上の領域及びＣＰＵ１２ａ〜１２ｈを確保しておらず、稼働するに際してリソースを確保する。
【００２８】
図２では、論理サーバ制御部１５は、ＶＭプログラム１をメモリ１３に展開し、メモリ１３に展開されたＶＭプログラム１をＣＰＵ１２ａで実行している様子を示している。これにより、論理サーバ(ＶＭ１)は、ＣＰＵ１２ａ上で稼働している。また、休止している論理サーバ(ＶＭ２)がサーバ１上で稼働することになった場合、論理サーバ制御部１５は、ＶＭプログラム２をメモリ１３に展開し(図２では破線表示)、メモリ１３に展開されたＶＭプログラム２をＣＰＵ１２ｂ，１２ｃで実行する。これにより、論理サーバ(ＶＭ２)は、ＣＰＵ１２ｂ，１２ｃ上で稼働することになる(図２では破線表示)。なお、論理サーバ(ＶＭ２)が稼働するに際して、メモリ１３上で確保する領域、及び使用するＣＰＵ１２ａ〜１２ｈの数が論理サーバ(ＶＭ１)に比べて多いのは、論理サーバ(ＶＭ２)が論理サーバ(ＶＭ１)に比べてリソースを多く消費することを示している。
【００２９】
物理サーバ状態通知部１６は、リソースとしてのＣＰＵ１２群やメモリ１３のリソース使用率を示す情報であるリソース使用率情報をサーバ管理装置３００に送信する。物理サーバ状態通知部１６がリソース使用率情報をサーバ管理装置３００に送信するタイミングは、任意であってよい。第１実施形態では、物理サーバ状態通知部１６は、極めて短い間隔で、リソース使用率情報をサーバ管理装置３００に送信していることとし、サーバ管理装置３００は、サーバ１の最新のリソース使用率を常に認識しているものとする。
【００３０】
また、物理サーバ状態通知部１６は、サーバ１の電源の状態「ＯＮ」又は「ＯＦＦ」を示す情報である電源状態情報をサーバ管理装置３００に送信する。
論理サーバ状態通知部１７は、サーバ１が制御している論理サーバ(ＶＭ)の状態「稼働」又は「休止」を示す情報であるＶＭ状態情報をサーバ管理装置３００に送信する。
以上で、第１実施形態に係るサーバ群２００の説明を終了する。
【００３１】
＜サーバ管理装置＞
図１に戻り、サーバ管理装置３００の構成を説明する。サーバ管理装置３００は、記憶部７０と、制御部８０とを備えて構成される。サーバ管理装置３００は、一般的なコンピュータであってよい。
記憶部７０は、例えばＨＤＤ(Hard Disk Drive)として構成される。記憶部７０には、論理サーバ状態管理テーブル７１と、サーバ状態管理テーブル７２とが格納される。
【００３２】
（論理サーバ状態管理テーブル）
図３を参照して、論理サーバ状態管理テーブル７１のデータ構成について説明する。論理サーバ状態管理テーブル７１は、ＶＭ識別子７１１と、ＶＭ状態７１２と、サーバ識別子７１３と、割当ＣＰＵ７１４と、割当メモリ７１５とで構成される。ＶＭ識別子７１１の欄には、サーバ１〜６が制御する論理サーバ(ＶＭ)を一意に識別する情報が格納される。第１実施形態では、「ＶＭ」以降の下付き数字がＶＭ識別子７１１に該当する。ＶＭ状態７１２の欄には、サーバ１〜６が制御する論理サーバ(ＶＭ)の状態が格納される。ＶＭ状態７１２には、「稼働」又は「休止」の２つの状態がある。
【００３３】
サーバ識別子７１３の欄には、ＶＭ識別子７１１に対応する論理サーバ(ＶＭ)を制御するサーバ１〜６を一意に識別する情報が格納される。割当ＣＰＵ７１４の欄には、ＶＭ識別子７１１に対応する論理サーバ(ＶＭ)をサーバ１〜６上で稼働する際に、必要なＣＰＵの数(個)が格納される。割当メモリ７１５の欄には、ＶＭ識別子７１１に対応する論理サーバ（ＶＭ）をサーバ１〜６上で稼働する際に、必要なメモリの領域(MByte)が格納される。
【００３４】
（サーバ状態管理テーブル）
次に、図４を参照して、サーバ状態管理テーブル７２のデータ構成について説明する。サーバ状態管理テーブル７２は、サーバ識別子７２１と、電源状態７２２と、最大リソースに対する割当中のＣＰＵ数７２３と、最大リソースに対する割当中のメモリ領域７２４と、ＣＰＵ使用率７２５と、メモリ使用率７２６と、下限閾値７２７と、上限閾値７２８とで構成される。サーバ識別子７２１の欄には、サーバ１〜６を一意に識別する情報が格納される。電源状態７２２の欄には、サーバ識別子７２１に対応するサーバ１〜６の電源の状態が格納される。電源が「ＯＮ」されていれば「稼働」が格納され、電源が「ＯＦＦ」されていれば「休止」が格納される。
【００３５】
最大リソースに対する割当中のＣＰＵ数７２３の欄には、サーバ識別子７２１に対応するサーバ１〜６が備えるＣＰＵ総数(表では「最大リソース」と表示)と、稼働中の論理サーバ(ＶＭ)に割り当てられている割当中ＣＰＵ数(表では「割当中」と表示)とが格納される。最大リソースに対する割当中のメモリ領域７２４の欄には、サーバ識別子７２１に対応するサーバ１〜６が備えるメモリ総領域(図４では「最大リソース」と表示)と、稼働中の論理サーバ(ＶＭ)に割り当てられている割当中メモリ領域(図４では「割当中」と表示)が格納される。
【００３６】
ＣＰＵ使用率７２５の欄には、サーバ識別子７２１に対応するサーバ１〜６のＣＰＵ使用率(％)が格納される。メモリ使用率７２６の欄には、サーバ識別子７２１に対応するサーバ１〜６のメモリ使用率(％)が格納される。下限閾値７２７の欄には、サーバ識別子７２１に対応するサーバ１〜６が備えるＣＰＵやメモリ等のリソースのリソース使用率の所定の下限閾値が格納される。ここで、下限閾値７２７は、電力を有効に使うことを考慮する場合には高めに設定し、サーバ管理システム１０００(図１参照)の安全設計を考慮する場合には低めに設定するのがよい。上限閾値７２８の欄には、サーバ識別子７２１に対応するサーバ１〜６が備えるＣＰＵやメモリ等のリソースのリソース使用率の所定の上限閾値が格納される。ここで、上限閾値７２８は、リソースを有効に使うことを考慮する場合には高めに設定し、サーバ管理システム１０００(図１参照)の安全設計を考慮する場合には低めに設定するのがよい。
【００３７】
第１実施形態では、ＣＰＵ使用率の下限閾値と、メモリ使用率の下限閾値とを同様に設定していることを前提としているので、まとめてリソースの下限閾値７２７としているが、ＣＰＵとメモリとでそれぞれ別の下限閾値７２７を設定するようにしてもよい。また、同様に、第１実施形態では、ＣＰＵ使用率の上限閾値と、メモリ使用率の上限閾値とを同様に設定していることを前提としているので、まとめてリソースの上限閾値７２８としているが、ＣＰＵとメモリとでそれぞれ別の上限閾値７２８を設定するようにしてもよい。
【００３８】
なお、論理サーバ状態管理テーブル７１(図３参照)及びサーバ状態管理テーブル７２(図４参照)に格納される情報は、後記するサーバ状態管理部８１、論理サーバ状態管理部８２、及びリソース割当実行部８３が更新する情報を除いて、サーバ管理装置３００の管理者が適宜更新する。
【００３９】
図１に戻り、引き続きサーバ管理装置３００の構成を説明する。制御部８０は、ＣＰＵ、及びこれらの周辺回路等（いずれも図示せず）から構成される。また、制御部８０は、サーバ状態管理部８１と、論理サーバ状態管理部８２(ＶＭ状態管理部８２)と、リソース割当実行部８３とを含んで構成される。そして、この制御部８０は、記憶部７０に格納される図示しないプログラムをメモリ(不図示)に展開し、実行することにより実現される。
【００４０】
次に、図５及び図６を適宜参照して、制御部８０が実現する各機能を説明する。なお、図５は、第１実施形態に係るサーバ管理システム１０００で行われる処理を説明するためのシーケンス図（リソース使用率が下限閾値を下回った場合）である。図６は、第１実施形態に係るサーバ管理システム１０００で行われる処理を説明するためのシーケンス図（リソース使用率が上限閾値を上回った場合）である。
【００４１】
（サーバ状態管理部）
サーバ状態管理部８１は、サーバ群２００を構成するサーバ１〜６の状態を管理する。例えば、サーバ状態管理部８１は、サーバ管理装置８１が起動した場合やサーバ群２００を構成するサーバ１〜６を起動させた場合に、サーバ１〜６の電源の状態「ＯＮ」又は「ＯＦＦ」を示す情報である電源状態情報を初期情報としてサーバ１〜６から受信する（図５及び図６のステップＳ１００）。そして、サーバ状態管理部８１は、受信した電源状態情報に基づいて、サーバ状態管理テーブル７２(図４参照)の電源状態７２２を更新する。
【００４２】
また、サーバ状態管理部８１は、詳細を後記するリソース割当実行部８３からサーバ１〜６に対して指示される電源状態変更命令に基づいて、サーバ１〜６の電源状態が変更された場合にも同様に、電源状態情報をサーバ１〜６から受信する（図５のステップＳ１６５、図６のステップＳ１９５）。そして、この場合にも、サーバ状態管理部８１は、受信した電源状態情報に基づいて、サーバ状態管理テーブル７２を更新する。
【００４３】
また、サーバ状態管理部８１は、サーバ１〜６から極めて短い間隔でリソースのリソース使用率を示すリソース使用率情報を受信し、受信したリソース使用率情報に基づいて、サーバ状態管理テーブル７２(図４参照)の、ＣＰＵ使用率７２５及びメモリ使用率７２６を更新する。これにより、サーバ状態管理テーブル７２(図４参照)の、ＣＰＵ使用率７２５及びメモリ使用率７２６は、常に最新の情報となっている。
【００４４】
（論理サーバ状態管理部）
論理サーバ状態管理部８２は、サーバ群２００を構成するサーバ１〜６が制御する論理サーバ(ＶＭ)の状態を管理する。例えば、論理サーバ状態管理部８２は、サーバ管理装置８１が起動した場合やサーバ群２００を構成するサーバ１〜６を起動させた場合に、サーバ１〜６が制御している論理サーバ(ＶＭ)の状態「稼働」又は「休止」を示す情報であるＶＭ状態情報を初期情報としてサーバ１〜６から受信する（図５及び図６のステップＳ１００）。そして、論理サーバ状態管理部８２は、受信したＶＭ状態情報に基づいて、論理サーバ状態管理テーブル７１(図３参照)のＶＭ状態７１２と、サーバ状態管理テーブル７２(図４参照)の最大リソースに対する割当中のＣＰＵ数７２３及び最大リソースに対する割当中のメモリ領域７２４とを更新する。
【００４５】
また、論理サーバ状態管理部８２は、サーバ１〜６で制御する論理サーバ(ＶＭ)が行っている処理が終了することにより休止し、又は休止している論理サーバ(ＶＭ)がクライアントからの要求に応じて稼働することなどで、論理サーバ(ＶＭ)の状態が変更された場合に、ＶＭ状態情報をサーバ１〜６から受信する（図５及び図６のステップＳ１１０）。そして、この場合も、論理サーバ状態管理部８２は、受信したＶＭ状態情報に基づいて、論理サーバ状態管理テーブル７１及びサーバ状態管理テーブル７２を更新する。
【００４６】
また、論理サーバ状態管理部８２は、詳細を後記するリソース割当実行部８３からサーバ１〜６に対して指示されるＶＭ移行命令に基づいて、サーバ群２００を構成するあるサーバ１〜６で制御している論理サーバ(ＶＭ)を他のサーバ１〜６に移行した場合に、移行後のＶＭ状態情報を移行先のサーバ１〜６から受信する（図５のステップＳ１５５、図６のステップＳ２０５）。そして、この場合も、論理サーバ状態管理部８２は、受信したＶＭ状態情報に基づいて、論理サーバ状態管理テーブル７１及びサーバ状態管理テーブル７２を更新する。
【００４７】
（リソース割当実行部）
リソース割当実行部８３は、サーバ１〜６が制御する論理サーバ(ＶＭ)をサーバ１〜６間で移行する処理の指示やサーバ１〜６の電源の状態(「ＯＮ」又は「ＯＦＦ」)を切り替える指示をする。第１実施形態では、リソース割当実行部８３が行う論理サーバ(ＶＭ)の移行、及びサーバ１〜６の電源の状態の切り替えを「リソースの割り当て」又は「リソース割当」と呼ぶ場合がある。
【００４８】
例えば、リソース割当実行部８３は、サーバ１〜６で稼働する論理サーバ(ＶＭ)が行っている処理が終了することにより休止し、又は休止している論理サーバ(ＶＭ)がクライアントからの要求に応じて稼働することなどで、論理サーバ(ＶＭ)の状態が変更されたことにより、ＶＭ状態情報をサーバ１〜６から受信し（図５及び図６のステップＳ１１０）、リソース使用率がサーバ状態管理テーブル７２の下限閾値７２７、又は上限閾値７２８を超えた場合にサーバ１〜６に対してリソースの割り当てを実行する（図５のステップＳ１１５，ステップＳ１５０，ステップＳ１６０、図６のステップＳ１１５，ステップＳ１９０，ステップＳ２００）。
【００４９】
以下では、図７及び図８を参照して、リソース割当の概要を説明する。図７は、リソース使用率と上限閾値及び下限閾値との関係を説明するための図である。図８は、サーバ管理装置が行うリソース割当処理の概要を説明するための図である。なお、リソース割当処理には、リソース使用率が下限閾値を下回った場合(図８（ａ）)と、リソース使用率が上限閾値を上回った場合(図８（ｂ）)との２通りの処理がある。
【００５０】
（Ａ）リソース使用率が下限閾値を下回った場合のリソース割当
まず最初に、リソース使用率が下限閾値を下回った場合のリソース割当を説明する。なお、リソース割当実行部８３の内、リソース使用率が下限閾値を下回った場合のリソース割当を行う機能を「リソース集約割当実行部」と呼ぶ場合がある。
【００５１】
ここで、サーバ１では、当初論理サーバ(ＶＭ１〜ＶＭ６)が稼働していたが、論理サーバ(ＶＭ１〜ＶＭ５)が休止し、それに伴い、サーバ１のリソース使用率(ＣＰＵ使用率及びメモリ使用率)が低下したと想定する。サーバ１の物理サーバ状態通知部１６は、低下したリソース使用率を示すリソース使用率情報をサーバ管理装置３００に送信し、また、論理サーバ状態通知部１７は、論理サーバ(ＶＭ１〜ＶＭ５)が「休止」及び論理サーバ(ＶＭ６)が「稼働」状態であることを示すＶＭ状態情報をサーバ管理装置３００に送信する。
【００５２】
サーバ管理装置３００のサーバ状態管理部８１は、サーバ１から送信されたリソース使用率情報を受信し、サーバ状態管理テーブル７２(図４参照)を更新する。また、論理サーバ状態管理部８２は、サーバ１から送信されるＶＭ状態情報を受信し、論理サーバ状態管理テーブル７１(図３参照)を更新する。ここで、サーバ１のＣＰＵ使用率７２５、及びメモリ使用率７２６は、図７（ａ）に示すように、下限閾値７２７を下回っているものとする。
【００５３】
サーバ管理装置３００のリソース割当実行部８３は、サーバ状態管理テーブル７２を参照し、ＣＰＵ使用率７２５、及びメモリ使用率７２６が下限閾値７２７を下回ったか否かを判定する。図７（ａ）に示すようにリソース使用率であるＣＰＵ使用率７２５、及びメモリ使用率７２６は下限閾値７２７を下回っているので、リソース割当実行部８３は、サーバ１が制御する休止状態の論理サーバ(ＶＭ１〜ＶＭ５)及び稼働状態の論理サーバ(ＶＭ６)を、サーバ群２００内の他のサーバ２〜６に移行することを示すＶＭ移行命令を移行元であるサーバ１に送信する（図５のステップＳ１５０）。これにより、論理サーバ(ＶＭ１〜ＶＭ６)の制御は、他のサーバ２〜６に移ることになる。図８（ａ）は、論理サーバ(ＶＭ１〜ＶＭ６)の制御が、サーバ２に移行した場合を示しており、移行先のサーバの選択は後記するアルゴリズムで詳細を説明する。
【００５４】
また、リソース割当実行部８３は、電源の状態を「ＯＮ」から「ＯＦＦ」に切り替えることを示す電源状態変更命令を移行元のサーバ１に対して送信する（図５のステップＳ１６０）。これにより、サーバ１の電源ユニット１１(図２参照)は、電源を「ＯＮ」から「ＯＦＦ」に切り替え、サーバ１は休止状態になる。図８（ａ）では、サーバ１の休止状態を、破線と共に「サーバ１(ｏｆｆ)」として表現している。
【００５５】
（Ｂ）リソース使用率が上限閾値を上回った場合のリソース割当
次に、リソース使用率が上限閾値を上回った場合のリソース割当を説明する。なお、リソース割当実行部８３の内、リソース使用率が上限閾値を上回った場合のリソース割当を行う機能を「リソース分割割当実行部」と呼ぶ場合がある。
【００５６】
ここで、サーバ５では、当初論理サーバ(ＶＭ２３〜ＶＭ３２)が休止していたが、論理サーバ(ＶＭ２７〜ＶＭ３２)が順次稼働し(論理サーバ(ＶＭ２３〜ＶＭ２６)は依然として休止)、それに伴い、サーバ５のリソース使用率が上昇したと想定する。サーバ５の物理サーバ状態通知部５６は、上昇したリソース使用率を示すリソース使用率情報をサーバ管理装置３００に送信し、また、論理サーバ状態通知部１７は、論理サーバ(ＶＭ２３〜ＶＭ２６)が「休止」及び論理サーバ(ＶＭ２７〜ＶＭ３２)が「稼働」状態であることを示すＶＭ状態情報をサーバ管理装置３００に送信する。
【００５７】
サーバ管理装置３００のサーバ状態管理部８１は、サーバ５から送信されたリソース使用率情報を受信し、サーバ状態管理テーブル７２(図４参照)を更新する。また、論理サーバ状態管理部８２は、サーバ１から送信されるＶＭ状態情報を受信し、論理サーバ状態管理テーブル７１(図３参照)を更新する。ここで、サーバ５のＣＰＵ使用率７２５、及びメモリ使用率７２６は、図７（ｂ）に示すように、上限閾値７２８を上回っているものとする。
【００５８】
サーバ管理装置３００のリソース割当実行部８３は、サーバ状態管理テーブル７２を参照し、ＣＰＵ使用率７２５、及びメモリ使用率７２６が上限閾値７２８を上回ったか否かを判定する。図７（ｂ）に示すようにリソース使用率であるＣＰＵ使用率７２５、及びメモリ使用率７２６は上限閾値７２８を上回っているので、リソース割当実行部８３は、サーバ５が制御する休止状態の論理サーバ(ＶＭ２３〜ＶＭ２６)を、サーバ群２００内の他のサーバ１〜４，６に移行することを示すＶＭ移行命令を移行元であるサーバ５に送信する（図６のステップＳ２００）。これにより、論理サーバ(ＶＭ２３〜ＶＭ２６)の制御は、他のサーバ１〜４，６に移ることになる。図８（ｂ）は、論理サーバ(ＶＭ２３〜ＶＭ２６)の制御が、サーバ６に移行した場合を示している。
【００５９】
なお、リソース割当実行部８３は、論理サーバ(ＶＭ)の移行先の電源の状態が「ＯＦＦ」である場合に、ＶＭ移行命令に先立って、電源の状態を「ＯＦＦ」から「ＯＮ」に切り替えることを示す電源状態変更命令を移行先のサーバ１〜４，６に対して送信する（図６のステップＳ１９０）。これにより、移行先のサーバ１〜４，６の電源の状態は、「ＯＮ」から「ＯＦＦ」に切り替えられ、移行先のサーバ１〜４，６は稼働状態になる。
【００６０】
次に、図９〜図１２を参照して、リソース割当実行部８３が行うリソース割当に関するアルゴリズムを説明する。図９は、第１実施形態に係るサーバ管理装置３００が行うリソース割当(全体処理)を説明するためのフローチャートである。
サーバ１〜６が制御する論理サーバ(ＶＭ)の状態が変更された(変化した)場合に、サーバ管理装置３００の論理サーバ状態管理部８２は、サーバ１〜６から送信されるＶＭ状態情報を受信し（ステップＳ１１０）、論理サーバ状態管理テーブル７１を更新する。
【００６１】
次に、リソース割当実行部８３は、サーバ状態管理テーブル７２を参照し、リソース使用率(ＣＰＵ使用率７２５、メモリ使用率７２６のどちらか一方又は両方)が下限閾値７２７を下回ったか否かを判定する（ステップＳ１２０）。リソース使用率が下限閾値７２７を下回ったと判定された場合（ステップＳ１２０“Ｙｅｓ”）に、処理はステップＳ１３０に進む。一方、リソース使用率が下限閾値７２７を下回っていないと判定された場合（ステップＳ１２０“Ｎｏ”）に、処理はステップＳ１７０に進む。
【００６２】
前記ステップＳ１２０“Ｙｅｓ”の場合に、リソース割当実行部８３は、サーバ状態管理テーブル７２を参照し、リソース使用率が下限閾値７２７を下回ったサーバのサーバ識別子７２１に対応する最大リソースに対する割当中のＣＰＵ数７２３と、最大リソースに対する割当中のメモリ領域７２４とを取得する（ステップＳ１３０）。ステップＳ１３０で取得した情報を、「稼働状態のＶＭ総リソース」と呼ぶ場合がある。そして、処理はステップＳ１４０に進む。
【００６３】
ステップＳ１４０の処理の詳細を、図１０に示す。図１０は、第１実施形態に係るサーバ管理装置３００が行うリソース割当(サーバ選択処理)を説明するためのフローチャートである。リソース割当実行部８３は、ステップＳ１３０で取得した稼働状態のＶＭ総リソースである最大リソースに対する割当中のＣＰＵ数７２３と、最大リソースに対する割当中のメモリ領域７２４とを入力データとする（ステップＳ４１０）。また、リソース割当実行部８３は、変数ＭＡＸに初期値(例えば「最小値」)を設定し、変数ＭＩＮに初期値(例えば「最大値」)を設定する。
【００６４】
次に、リソース割当実行部８３は、サーバ群２００の中から任意の１つのサーバ(以下、「第１のサーバ」と呼ぶ)を選択し、ステップＳ４３０〜ステップＳ４８０の処理を行う。第１のサーバの処理が終了したら、他の「第２のサーバ」、「第３のサーバ」、・・・を選択し、ステップＳ４３０〜ステップＳ４８０の処理を行う。つまり、ステップＳ４２０のループ処理は、サーバ単位に繰り返し行う（ステップＳ４２０）。
【００６５】
次に、リソース割当実行部８３は、選択した１つのサーバが備えるリソースの中から任意の１つのリソース(以下、「第１のリソース」と呼ぶ)を選択し、ステップＳ４３０〜ステップＳ４６０の処理を行う。第１のリソースの処理が終了したら、他の「第２のリソース」、「第３のリソース」、・・・を選択し、ステップＳ４３０〜ステップＳ４６０の処理を行う。つまり、ステップＳ４３０のループ処理は、使用リソース単位に繰り返し行う（ステップＳ４３０）。ここでは、第１のリソースとしてＣＰＵが選択され、第２のリソースとしてメモリが選択されたとする。
【００６６】
次に、リソース割当実行部８３は、ステップＳ４１０で入力した最大リソースに対する割当中のＣＰＵ数７２３の内の割当中ＣＰＵ数と、第１のサーバのサーバ識別子７２１に対応する最大リソースに対する割当中のＣＰＵ数７２３の内の割当中ＣＰＵ数を加算し、第１のサーバのサーバ識別子７２１に対応する最大リソースに対する割当中のＣＰＵ数７２３の内のＣＰＵ総数の割合(以下、「リソース割合」と呼ぶ)を計算し（ステップＳ４４０）、計算した値を変数Ｋに設定する。
【００６７】
次に、リソース割当実行部８３は、ステップＳ４４０で設定した変数Ｋと変数ＭＡＸを比較し(ステップＳ４５０)、変数Ｋが変数ＭＡＸよりも大きい場合(ステップＳ４５０“Ｙｅｓ”)に、変数ＭＡＸを変数Ｋに置き換える（ステップＳ４６０）。一方、変数Ｋが変数ＭＡＸよりも大きくない場合(ステップＳ４５０“Ｎｏ”)に、変数ＭＡＸを変数Ｋに置き換える処理は行わない。
【００６８】
次に、リソース割当実行部８３は、第２のリソースとしてメモリを選択し、ステップＳ４４０〜ステップＳ４６０の処理を行う。つまり、ステップＳ４３０のループ処理が終了した時点で、第１のサーバのリソースの内、リソース割合が最も高いリソースのリソース割合（以下、「サーバ毎リソース割合」と呼ぶ）が求められる。
【００６９】
次に、リソース割当実行部８３は、ステップＳ４２０で設定した変数ＭＡＸと変数ＭＩＮとを比較し(ステップＳ４７０)、変数ＭＡＸが変数ＭＩＮよりも小さい場合(ステップＳ４７０“Ｙｅｓ”)に、変数ＭＩＮを変数ＭＡＸに置き換える（ステップＳ４８０）。一方、変数ＭＡＸが変数ＭＩＮよりも小さくない場合(ステップＳ４７０“Ｎｏ”)に、変数ＭＩＮを変数ＭＡＸに置き換える処理は行わない。
【００７０】
次に、リソース割当実行部８３は、第２のサーバを選択し、ステップＳ４２０〜ステップＳ４８０の処理を行う。つまり、ステップＳ４２０のループ処理が終了した時点で、サーバ群２００を構成する各サーバの中で、最も低いサーバ毎リソース割合及び最も低いサーバ毎リソース割合を有するサーバが求められる。当該サーバが移行先のサーバとなる。そして、処理は図９のステップＳ１５０に進む。
【００７１】
次に、リソース割当実行部８３は、ステップＳ１２０でリソース使用率が下限閾値７２７を下回ったと判定した移行元のサーバに対して、ステップＳ１４０で最も低いサーバ毎リソース割合を有するサーバを移行先とするＶＭ移行命令を送信する。これにより、移行元の論理サーバ(ＶＭ)は、移行先のサーバに移行する（ステップＳ１５０）。
【００７２】
次に、リソース割当実行部８３は、ステップＳ１２０でリソース使用率が下限閾値７２７を下回ったと判定した移行元のサーバに対して、電源の状態を「ＯＮ」から「ＯＦＦ」に切り替えることを示す電源状態変更命令を送信する。これにより、移行元のサーバの電源は「ＯＮ」から「ＯＦＦ」に切り替えられる（ステップＳ１６０）。
【００７３】
一方、前記ステップＳ１２０“Ｎｏ”の場合に、処理はステップＳ１７０に進む。リソース割当実行部８３は、サーバ状態管理テーブル７２を参照し、リソース使用率(ＣＰＵ使用率７２５、メモリ使用率７２６のいずれか一方又は両方)が上限閾値７２８を上回ったか否かを判定する（ステップＳ１７０）。リソース使用率が上限閾値７２８を上回ったと判定された場合（ステップＳ１７０“Ｙｅｓ”）に、処理はステップＳ１８０に進む。一方、リソース使用率が上限閾値７２８を上回っていないと判定された場合（ステップＳ１７０“Ｎｏ”）に、処理は終了する。
【００７４】
前記ステップＳ１７０“Ｙｅｓ”の場合に、処理はステップＳ１８０に進む。ステップＳ１８０の処理の詳細を、図１１に示す。図１１は、第１実施形態に係るサーバ管理装置３００が行うリソース割当(サーバ・ＶＭ選択処理)を説明するためのフローチャートである。
【００７５】
最初に、リソース割当実行部８３は、サーバ状態管理テーブル７２を参照し、電源状態７２２が「休止」状態のサーバをランダムに１つ選択する（ステップＳ５１０）。当該サーバが移行先のサーバとなる。次に、リソース割当実行部８３は、論理サーバ状態管理テーブル７１を参照し、サーバ識別子７１３がステップＳ１７０でリソース使用率が上限閾値７２８を上回ったと判定したサーバである論理サーバ(ＶＭ)を１つ選択(以下、「第１の論理サーバ(ＶＭ)」と呼ぶ)し、ステップＳ５３０〜ステップＳ５４０の処理を行う。第１の論理サーバ(ＶＭ)の処理が終了したら、他の「第２の論理サーバ(ＶＭ)」、「第３の論理サーバ(ＶＭ)」、・・・を選択し、ステップＳ５３０〜ステップＳ５４０の処理を行う。つまり、ステップＳ５２０のループ処理は、論理サーバ(ＶＭ)単位に繰り返し行う（ステップＳ５２０）。
【００７６】
次に、リソース割当実行部８３は、ステップＳ５２０で選択した第１の論理サーバ(ＶＭ)のＶＭ電源がＯＦＦか否か、すなわち、ＶＭ状態７１２が「休止」状態であるか否かを判定し（ステップＳ５３０）、ステップＳ５３０で“Ｙｅｓ”と判定した場合に、第１の論理サーバ(ＶＭ)を移行するサーバとして選択する(ステップＳ５４０)。次に、リソース割当実行部８３は、第２の論理サーバを選択し、ステップＳ５３０〜ステップＳ５４０の処理を行う。つまり、ステップＳ５２０の処理を終了した時点で、ステップＳ５１０で選択したサーバが制御する休止状態の論理サーバ(ＶＭ)のすべてが選択される。なお、上記したステップＳ１８０の処理の他に、リソース割当実行部８３は、サーバ状態管理テーブル７２を参照し、電源状態７２２が「稼働」状態のサーバの内、リソース使用率が最も低いサーバを移行先と選択することもできる。そして、処理は図９のステップＳ１９０に進む。
【００７７】
次に、リソース割当実行部８３は、ステップＳ１８０で選択した移行先のサーバに対して、電源の状態を「ＯＦＦ」から「ＯＮ」に切り替えることを示す電源状態変更命令を送信する。これにより、移行先のサーバの電源は「ＯＦＦ」から「ＯＮ」に切り替えられる（ステップＳ１９０）。
【００７８】
次に、リソース割当実行部８３は、ステップＳ１７０でリソース使用率が上限閾値７２８を上回ったと判定した移行元のサーバに対して、ステップＳ１８０で選択したサーバを移行先とする、ステップＳ１８０で選択した休止状態の論理サーバ(ＶＭ)のＶＭ移行命令を送信する。これにより、移行元の論理サーバ(ＶＭ)は、移行先のサーバに移行する（ステップＳ２００）。
以上で、第１実施形態に係るサーバ管理装置３００の構成の説明を終了する。また、第１実施形態に係るサーバ管理システム１０００の構成の説明を終了する。
【００７９】
≪サーバ管理システムの動作≫
図１２〜図１８を参照して、第１実施形態に係るサーバ管理システム１０００の動作について説明する。図１２は、時刻とリソース利用率との関係図である。図１３は、サーバ管理装置３００とサーバ１〜３との関係を示すシーケンス図である。図１４〜図１８は、各時刻におけるサーバ１〜３の状態を示す図である。ここで、前提として、サーバ群２００は、３台のサーバ１〜３で構成され、各サーバ１〜３は、稼働状態である６つの論理サーバ(ＶＭ)を制御している(図１４（ａ）参照)。
【００８０】
時刻ｔ１において、サーバ１が制御する論理サーバ(ＶＭ１〜ＶＭ５)、及びサーバ２が制御する論理サーバ(ＶＭ７，ＶＭ８)の論理電源が切断されたことで、これらの論理サーバが休止したとする(図１４（ｂ）参照)。サーバ１の論理サーバ状態通知部１７及びサーバ２の論理サーバ状態通知部２７は、論理サーバ(ＶＭ)の状態の変化を確認したことにより、サーバ管理装置３００に対して、ＶＭ状態情報を送信する（図１３のステップＳ１）。
【００８１】
サーバ管理装置３００のリソース割当実行部８３は、論理サーバ状態管理テーブル７１を参照し、サーバ１のリソース利用率が下限閾値を下回ったことを確認し、サーバ２を移行先と決定したとする。そして、リソース割当実行部８３は、サーバ１に対して、移行先をサーバ２とするＶＭ移行命令を送信する（ステップＳ２）。サーバ１の論理サーバ制御部１５は、ＶＭ移行命令に従って、制御する論理サーバ(ＶＭ１〜ＶＭ６)をサーバ２に移行する（ステップＳ３）。なお、リソース割当実行部８３は、サーバ２のリソース利用率が、上限閾値を上回ることも下限閾値を下回ることもないため、サーバ２に対して、ＶＭ移行命令を送信しない(図１２参照)。
【００８２】
時刻ｔ２において、サーバ３が制御する論理サーバ(ＶＭ１３，ＶＭ１４)の論理電源が切断されたことで、これらの論理サーバが休止したとする(図１４（ｃ）参照)。サーバ３の論理サーバ状態通知部３７は、論理サーバ(ＶＭ)の状態の変化を確認したことにより、サーバ管理装置３００に対して、ＶＭ状態情報を送信する（ステップＳ４）。リソース割当実行部８３は、サーバ３のリソース利用率が、上限閾値を上回ることも下限閾値を下回ることもないため、サーバ３に対して、ＶＭ移行命令を送信しない(図１２参照)。
【００８３】
また、サーバ１が制御していた論理サーバ(ＶＭ１〜ＶＭ６)のサーバ２への移行が完了したとする。サーバ１の論理サーバ状態通知部１７は、論理サーバ(ＶＭ)の状態の変化を確認したことにより、サーバ管理装置３００に対して、ＶＭ状態情報を送信する（ステップＳ５）。サーバ管理装置３００のリソース割当実行部８３は、論理サーバ状態管理テーブル７１を参照し、サーバ１のリソース利用率が０％になったことを確認し、サーバ１に対して、電源を「ＯＦＦ」とする電源状態変更命令を送信する（ステップＳ６）。サーバ１の電源ユニット１１は、電源状態変更命令に従って、物理電源を切断すると共に、物理サーバ状態通知部１６は、電源の状態の変化を確認したことにより、サーバ管理装置３００に対して、電源状態情報を送信する（ステップＳ７）。
【００８４】
時刻ｔ３において、サーバ３が制御する論理サーバ(ＶＭ１５〜ＶＭ１８)の論理電源が切断されたことで、これらの論理サーバが休止したとする。サーバ３の論理サーバ状態通知部３７は、論理サーバ(ＶＭ)の状態の変化を確認したことにより、サーバ管理装置３００に対して、ＶＭ状態情報を送信する（ステップＳ８）。サーバ管理装置３００のリソース割当実行部８３は、論理サーバ状態管理テーブル７１を参照し、サーバ３のリソース利用率が下限閾値を下回ったことを確認し、サーバ２を移行先と決定したとする。そして、リソース割当実行部８３は、サーバ１に対して、移行先をサーバ２とするＶＭ移行命令を送信する（ステップＳ９）。サーバ３の論理サーバ制御部３５は、ＶＭ移行命令に従って、制御する論理サーバ(ＶＭ１３〜ＶＭ１８)をサーバ２に移行する（ステップＳ１０）。
【００８５】
時刻ｔ４において、サーバ３が制御していた論理サーバ(ＶＭ１３〜ＶＭ１８)のサーバ２への移行が完了したとする。サーバ１の論理サーバ状態通知部１７は、論理サーバ(ＶＭ)の状態の変化を確認したことにより、サーバ管理装置３００に対して、ＶＭ状態情報を送信する（ステップＳ１１）。サーバ管理装置３００のリソース割当実行部８３は、論理サーバ状態管理テーブル７１を参照し、サーバ３のリソース利用率が０％になったことを確認し、サーバ３に対して、電源を「ＯＦＦ」とする電源状態変更命令を送信する（ステップＳ１２）。サーバ３の電源ユニット３１は、電源状態変更命令に従って、物理電源を切断すると共に、物理サーバ状態通知部３６は、電源の状態の変化を確認したことにより、サーバ管理装置３００に対して、電源状態情報を送信する（ステップＳ１３）。これにより、図１５（ｂ）に示す状態になる(時刻ｔ５)。
【００８６】
時刻ｔ６において、サーバ２が制御している論理サーバ(ＶＭ１，ＶＭ２)の論理電源が起動されたことで、これらの論理サーバが稼働したとする(図１６（ａ）参照)。サーバ２の論理サーバ状態通知部２７は、論理サーバ(ＶＭ)の状態の変化を確認したことにより、サーバ管理装置３００に対して、ＶＭ状態情報を送信する（ステップＳ１４）。サーバ管理装置３００のリソース割当実行部８３は、論理サーバ状態管理テーブル７１を参照し、サーバ２のリソース利用率が上限閾値を上回ったことを確認し、サーバ１を移行先と決定したとする。そして、サーバ管理装置３００のリソース割当実行部８３は、サーバ１に対して、電源を「ＯＮ」とする電源状態変更命令を送信する（ステップＳ１５）。サーバ１の電源ユニット１１は、電源状態変更命令に従って、物理電源を起動すると共に、物理サーバ状態通知部１６は、電源の状態の変化を確認したことにより、サーバ管理装置３００に対して、電源状態情報を送信する（ステップＳ１６）。
【００８７】
時刻ｔ７において、リソース割当実行部８３は、サーバ２に対して、移行先をサーバ１とする論理サーバ(ＶＭ２〜ＶＭ８，ＶＭ１３〜ＶＭ１８)のＶＭ移行命令を送信する（ステップＳ１７）。サーバ２の論理サーバ制御部２５は、ＶＭ移行命令に従って、制御する論理サーバ(ＶＭ２〜ＶＭ８，ＶＭ１３〜ＶＭ１８)をサーバ２に移行する（ステップＳ１８）。これにより、図１７（ａ）に示す状態になる(時刻ｔ８)。
【００８８】
時刻ｔ９において、サーバ１が制御している論理サーバ(ＶＭ３，ＶＭ１4〜ＶＭ１８)の論理電源が起動されたことで、これらの論理サーバが稼働したとする(図１７（ｂ）参照)。サーバ１の論理サーバ状態通知部１７は、論理サーバ(ＶＭ)の状態の変化を確認したことにより、サーバ管理装置３００に対して、ＶＭ状態情報を送信する（ステップＳ１９）。サーバ管理装置３００のリソース割当実行部８３は、論理サーバ状態管理テーブル７１を参照し、サーバ１のリソース利用率が上限閾値を上回ったことを確認し、サーバ３を移行先と決定したとする。そして、サーバ管理装置３００のリソース割当実行部８３は、サーバ３に対して、電源を「ＯＮ」とする電源状態変更命令を送信する（ステップＳ２０）。
【００８９】
時刻ｔ１０において、サーバ３の電源ユニット３１は、電源状態変更命令に従って、物理電源を起動すると共に、物理サーバ状態通知部３６は、電源の状態の変化を確認したことにより、サーバ管理装置３００に対して、電源状態情報を送信する（ステップＳ２１）。リソース割当実行部８３は、サーバ１に対して、移行先をサーバ３とする論理サーバ(ＶＭ４〜ＶＭ８，ＶＭ１３)のＶＭ移行命令を送信する（ステップＳ２２）。サーバ１の論理サーバ制御部１５は、ＶＭ移行命令に従って、制御する論理サーバ(ＶＭ４〜ＶＭ８，ＶＭ１３)をサーバ３に移行する（ステップＳ２３）。
【００９０】
時刻ｔ１１において、サーバ３が制御している論理サーバ(ＶＭ４〜ＶＭ８，ＶＭ１３)の論理電源が起動されたことで、これらの論理サーバが稼働したとする(図１８（ｂ）参照)。サーバ３の論理サーバ状態通知部３７は、論理サーバ(ＶＭ)の状態の変化を確認したことにより、サーバ管理装置３００に対して、ＶＭ状態情報を送信する（ステップＳ２４）。リソース割当実行部８３は、サーバ３のリソース利用率が、上限閾値を上回ることも下限閾値を下回ることもないため、サーバ３に対して、ＶＭ移行命令を送信しない。これにより、図１８（ｂ）に示す状態になる(時刻ｔ１２)。
以上で、サーバ管理システム１０００の動作の説明を終了する。
【００９１】
以上のように、第１実施形態に係るサーバ管理システム１０００は、リソースの使用率が上限閾値を上回ったサーバがある場合に、論理サーバを他のサーバに移行し、また、下限閾値を下回ったサーバがある場合に論理サーバを他のサーバに移行するとともに、下限閾値を下回ったサーバの電源をＯＦＦ(切断)する。つまり、第１実施形態に係るサーバ管理システム１０００は、リソースの使用率が高いサーバの負荷の突出を抑制することができ、リソースの使用率が低いサーバの電源をＯＦＦすることができる。したがって、第１実施形態に係るサーバ管理システム１０００は、システムを安全に運用した上で、全体の電力量を低減することができる。
【００９２】
また、第１実施形態に係るサーバ管理システム１０００は、リソースの使用率が上限閾値を上回ったサーバがある場合に、休止状態のサーバを起動する。したがって、第１実施形態に係るサーバ管理システム１０００は、システムを構成するサーバの負荷を全体的に低く制御することができる。
【００９３】
また、第１実施形態に係るサーバ管理システム１０００は、リソースの使用率が上限閾値を上回ったサーバがある場合にリソース使用率が最も低いサーバを選択する。したがって、第１実施形態に係るサーバ管理システム１０００は、システムを構成するサーバの負荷を全体的に低く制御することができる。
さらに、第１実施形態に係るサーバ管理システム１０００は、リソースの使用率が下限閾値を下回ったサーバがある場合にリソース使用率が最も低いサーバを選択する。したがって、第１実施形態に係るサーバ管理システム１０００は、システムを構成するサーバの負荷を全体的に低く制御することができる。
【００９４】
また、第１実施形態に係るサーバ管理システム１０００は、論理サーバの状態が変更された場合にのみ判定を行う。したがって、第１実施形態に係るサーバ管理システム１０００は、リソース使用率が上限閾値を上回ったか否かの判定、又は下限閾値を下回ったか否かの判定を常に監視する必要がない。
【００９５】
[第２実施形態]
第１実施形態に係るサーバ管理システム１０００では、リソースの使用率が下限閾値を下回ったサーバがある場合に稼働する論理サーバを他のサーバに移行するとともに、下限閾値を下回ったサーバの電源をＯＦＦ(切断)することが可能であった。
第２実施形態に係るサーバ管理システム１０００Ａでは、各論理サーバ(ＶＭ)に信頼性を定義する。定義する信頼性の一例としては、サービス停止の許容時間が挙げられる。そして、第２実施形態に係るサーバ管理システム１０００Ａは、稼働中の論理サーバ(ＶＭ)を移行する際に、この信頼性を考慮した移行を行う。
【００９６】
≪第２実施形態に係るサーバ管理システムの構成≫
次に、第２実施形態に係るサーバ管理システムについて説明する。
図１９は、第２実施形態に係るサーバ管理システム１０００Ａの構成図である。第２実施形態に係るサーバ管理システム１０００Ａは、第１実施形態に係るサーバ管理システム１０００(図１参照)と比べて、サーバ管理装置３００Ａの構成が異なる。第２実施形態に係るサーバ管理装置３００Ａは、第１実施形態に係るサーバ管理装置３００と比べて、論理サーバ状態管理テーブル７１Ａの構成が異なる。また、第２実施形態に係るサーバ管理装置３００Ａは、以降候補サーバ管理テーブル７３が追加されている。また、第２実施形態に係るサーバ管理装置３００Ａは、リソース割当実行部８３Ａの処理の内容が異なる。以下、第２実施形態に係るサーバ管理装置３００Ａの変更点を説明する。
【００９７】
（論理サーバ状態管理テーブル）
図２０を参照して、論理サーバ状態管理テーブル７１Ａのデータ構成について説明する。論理サーバ状態管理テーブル７１Ａは、第１実施形態に係る論理サーバ状態管理テーブル７１と比べて、さらにサービス中断許容時間７１６が構成として追加されている。
サービス中断許容時間７１６の欄には、ＶＭ識別子７１１に該当する論理サーバ(ＶＭ)が稼働状態(ＶＭ状態７１２が「稼働」)の場合で、当該論理サーバ(ＶＭ)の移行によりサービスの中断が許容される時間(ｓ)が格納される。サービス中断許容時間７１６は、信頼性に関する情報である。
【００９８】
（移行候補サーバ管理テーブル）
図２１を参照して、移行候補サーバ管理テーブル７３のデータ構成について説明する。移行候補サーバ管理テーブル７３は、サーバ識別子７３１と、第１の移行候補７３２と、第２の移行候補７３３と、第３の移行候補７３４と、・・・、第ｎの移行候補７３９とで構成される。
【００９９】
サーバ識別子７３１の欄には、サーバ１〜６を一意に識別する情報が格納される。第１の移行候補７３２の欄には、サーバ識別子７３１に対応するサーバ１〜６が制御する論理サーバ(ＶＭ)を移行する第１の候補のサーバ１〜６を識別する情報が格納される。第２の移行候補７３３の欄には、サーバ識別子７３１に対応するサーバ１〜６が制御する論理サーバ(ＶＭ)を移行する第２の候補(第１の候補の次の候補)のサーバ１〜６を識別する情報が格納される。第３の移行候補７３４の欄には、サーバ識別子７３１に対応するサーバ１〜６が制御する論理サーバ(ＶＭ)を移行する第３の候補(第２の候補の次の候補)のサーバ１〜６を識別する情報が格納される。第ｎ(ｎは任意の数)の移行候補７３９の欄には、サーバ識別子７３１に対応するサーバ１〜６が制御する論理サーバ(ＶＭ)を移行する第ｎの候補(第ｎ−１の候補の次の候補)のサーバ１〜６を識別する情報が格納される。
【０１００】
第１の移行候補７３２、第２の移行候補７３３、第３の移行候補７３４、・・・、第ｎの移行候補７３９は、サーバ識別子７３１に対応するサーバ１〜６との関係で決定される。例えば、サーバ間のＰｉｎｇの応答速度が早い順に第１の候補と決定し、または、サーバ間の物理的な位置情報(距離)が近い順に第１の候補と決定する。移行候補サーバ管理テーブル７３は、随時更新するようにしてもよい。
【０１０１】
（リソース割当実行部）
図２２を参照して、リソース割当実行部８３Ａが行うリソース割当に関するアルゴリズムを説明する。図２２は、第２実施形態に係るサーバ管理装置３００Ａが行うリソース割当(全体処理)を説明するためのフローチャートである。
リソース割当実行部８３Ａは、第１実施形態のリソース割当実行部８３と比べて、サーバ選択処理(ステップＳ１４０Ａ)が異なる。サーバ選択処理(ステップＳ１４０Ａ)の詳細を、図２３に示す。
【０１０２】
図２３は、第２実施形態に係るサーバ管理装置３００Ａが行うリソース割当(サーバ選択処理)を説明するためのフローチャートである。
ステップＳ４１０に続いて、リソース割当実行部８３Ａは、ステップＳ４１０で入力した稼働状態のＶＭ総リソースが「０」であるか判定し(ステップＳ４１１)、稼働状態のＶＭ総リソースが「０」である場合(ステップＳ４１１“Ｙｅｓ”)に処理はステップＳ４２０に進む。一方、稼働状態のＶＭ総リソースが「０」でない場合(ステップＳ４１１“Ｎｏ”)に処理はステップＳ４１２に進む。
【０１０３】
ステップＳ４１１“Ｎｏ”の場合に、リソース割当実行部８３Ａは、図２０に示す論理サーバ状態管理テーブル７１Ａを参照し、稼働状態のＶＭ総リソースの内で最も小さいサービス中断許容時間７１６を取得し、取得した最も小さいサービス中断許容時間７１６と移行元と移行先の候補のサーバ１〜６間の通信速度とに基づいて、図２１に示す第１の移行候補７３２、第２の移行候補７３３、第３の移行候補７３４、・・・、第ｎの移行候補７３９の中からどこまでの移行候補に実際に移行可能か否かを決定する。
【０１０４】
次に、リソース割当実行部８３Ａは、ステップＳ４１２で決定した移行候補を、第１の移行候補７３２から順に選択し、ステップＳ４１４〜ステップＳ４１５の処理を繰り返し行う（ステップＳ４１３）。
【０１０５】
次に、リソース割当実行部８３Ａは、ステップＳ４１０で入力した最大リソースに対する割当中のＣＰＵ数７２３の内の割当中ＣＰＵ数と、第１のサーバのサーバ識別子７２１に対応する最大リソースに対する割当中のＣＰＵ数７２３の内の割当中ＣＰＵ数を加算し、第１のサーバのサーバ識別子７２１に対応する最大リソースに対する割当中のＣＰＵ数７２３の内のＣＰＵ総数の割合(「リソース割合」)を計算し（ステップＳ４１４）、計算したリソース割合がサーバ状態管理テーブル７２(図４参照)の移行先のサーバの上限閾値７２８を超えていないか否かを判定する（ステップＳ４１５）。
【０１０６】
サーバの上限閾値７２８を超えていない場合(ステップＳ４１５“Ｙｅｓ”)に、当該サーバを移行先のサーバに決定し、処理は図９のステップＳ１５０に進む。一方、サーバの上限閾値７２８を超えている場合(ステップＳ４１５“Ｎｏ”)に、リソース割当実行部８３Ａは、次の移行候補を選択し、ステップＳ４１４〜ステップＳ４１５の処理を行う。移行候補が無くなれば移行処理を終了する。
以上で、第２実施形態に係るサーバ管理装置３００Ａの構成の説明を終了する。また、第２実施形態に係るサーバ管理システム１０００Ａの構成の説明を終了する。
【０１０７】
以上のように、第２実施形態に係るサーバ管理システム１０００Ａは、稼働中の論理サーバ(ＶＭ)を移行する場合に、信頼性に関する情報である中断許容時間情報以内に移行可能なサーバを移行先として選択する。したがって、本発明に係るサーバ管理システムは、信頼性を考慮した論理サーバの移行を行うことができる。
【０１０８】
[変形例]
以上、本発明の第１実施形態及び第２実施形態について説明したが、本発明はこれに限定されるものではなく、その趣旨を変えない範囲で実施することができる。第１実施形態及び第２実施形態の変形例を以下に示す。
【０１０９】
（リソース）
第１実施形態及び第２実施形態では、ＣＰＵ群１２，２２，３２及びメモリ１３，２３，３３をリソースとして上限閾値及び下限閾値を設定したが、その他にも、例えば、ディスク装置１００をリソースとしてディスクの使用率に上限閾値及び下限閾値を設定してもよい。また、図２４に示すように、サーバ１〜６が備えるネットワークカード群１８，２８，３８等をリソースとして、ネットワークカード群１８，２８，３８を用いて通信を行う場合に、ネットワークカード群１８，２８，３８の使用率に上限閾値及び下限閾値を設定してもよい。
【０１１０】
（電源ユニット）
第１実施形態及び第２実施形態では、電源ユニット１１，２１，３１がサーバの電源の「ＯＮ」と「ＯＦＦ」とを制御していたが、これ以外にも、電源ユニット１１，２１，３１は、スタンバイモード、省電力モード等を制御するようにしてもよい。この場合、電源ユニット１１，２１，３１は、電源を「ＯＦＦ」する代わりにこれらのモードにすることで、電源を「ＯＦＦ」するのと同様に電力量を低減することができる。
【０１１１】
（サーバ管理システム）
第１実施形態及び第２実施形態では、サーバ群２００が複数あり、その複数のサーバ群２００をサーバ管理装置３００が管理することを想定していたので、サーバ群２００とサーバ管理装置３００とを別々の装置とする構成にしていたが、サーバ管理装置３００をサーバ群２００内に配設する構成にすることもできる。また、第１実施形態及び第２実施形態では、ディスク装置１００とサーバ群２００とを別々の装置とする構成にしていたが、ディスク装置１００をサーバ群２００内に配設する構成にすることもできる。
【０１１２】
また、第１実施形態及び第２実施形態では、サーバ管理装置３００のサーバ状態管理テーブル７２に下限閾値７２７、及び上限閾値７２８を格納しておく構成としたが、サーバ群２００内に下限閾値７２７、及び上限閾値７２８を格納する構成として、サーバ管理装置３００は、サーバ１〜６のリソース使用率が下限閾値７２７を下回った旨の情報、又は上限閾値７２８を上回った旨の情報をサーバ群２００から受信するようにしてもよい。
【符号の説明】
【０１１３】
１〜６    サーバ
１１，２１，３１  電源ユニット
１２，２２，３２  ＣＰＵ群（リソース）
１３，２３，３３  メモリ（リソース）
１５，２５，３５  論理サーバ制御部
１６，２６，３６  物理サーバ状態通知部
１７，２７，３７  論理サーバ状態通知部
１８          ネットワークカード群（リソース）
７１，７１Ａ  論理サーバ状態管理テーブル
７２          サーバ状態管理テーブル
７３          移行候補サーバ管理テーブル
８１          サーバ状態管理部
８２          論理サーバ状態管理部
８３，８３Ａ  リソース割当実行部（リソース集約割当実行部、リソース分割割当実行部）
１００        ディスク装置（リソース）
２００        サーバ群
３００，３００Ａ  サーバ管理装置
４００        ネットワーク
１０００，１０００Ａ  サーバ管理システム
【図１】
0005576827.tif 000002
【図２】
0005576827.tif 000003
【図３】
0005576827.tif 000004
【図４】
0005576827.tif 000005
【図５】
0005576827.tif 000006
【図６】
0005576827.tif 000007
【図７】
0005576827.tif 000008
【図８】
0005576827.tif 000009
【図９】
0005576827.tif 000010
【図１０】
0005576827.tif 000011
【図１１】
0005576827.tif 000012
【図１２】
0005576827.tif 000013
【図１３】
0005576827.tif 000014
【図１４】
0005576827.tif 000015
【図１５】
0005576827.tif 000016
【図１６】
0005576827.tif 000017
【図１７】
0005576827.tif 000018
【図１８】
0005576827.tif 000019
【図１９】
0005576827.tif 000020
【図２０】
0005576827.tif 000021
【図２１】
0005576827.tif 000022
【図２２】
0005576827.tif 000023
【図２３】
0005576827.tif 000024
【図２４】
0005576827.tif 000025