(57)【要約】【課題】最小限の予備ホストで、様々なリソース種別のホストを提供して、多様な仮想マシンの生成要求に対応するとともに、障害にも対応可能となる仮想化環境のリソース管理システムを提供することを課題とする。【解決手段】リソース管理サーバ１００のホスト割当部１０２が、利用者の要求する仮想マシンを、要求に含まれるリソース種別で、ＣＰＵとメモリの空きのあるホスト２００に割当て、ホスト管理部１０３が、割当てられたホスト２００に仮想マシンの起動を指示することで、リソース管理システム１は、要求された仮想マシンを生成することができる。空きのあるホストがない場合には、リソース種別管理部１０４が、予備ホスト２００−Ｚにリソース種別に対応したＯＳの設定を指示した後に、仮想マシンを割当て、ホスト管理部１０３が予備ホスト２００−Ｚに仮想マシンの起動を指示する。【選択図】図７
2018025946.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ端末から生成要求を受付けた仮想マシンを稼働させる複数のホストコンピュータと、前記ホストコンピュータへの前記仮想マシンの割当てを行うリソース管理サーバとが、通信ネットワークを介して接続されるリソース管理システムであって、
前記リソース管理サーバは、
（１）前記ホストコンピュータのリソース種別とホストコンピュータＯＳ設定内容とを格納するリソース種別情報、及び、（２）前記ホストコンピュータの前記リソース種別と、新規に割当て可能な仮想マシンの性能要件を含む所定の要件を示す割当可能要件と、稼働中か待機中かを示す稼働状態とを格納するホストコンピュータ情報を、記憶する記憶部と、
前記ホストコンピュータ情報から、前記リソース種別が前記生成要求により指定されたリソース種別であることと、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が稼働中であることとを条件にして、前記仮想マシンが稼働可能な稼働中の前記ホストコンピュータを示す仮想マシン稼働可能ホストコンピュータを探索し、
前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在する場合、探索された前記仮想マシン稼働可能ホストコンピュータに前記仮想マシンを割当てるホスト割当部と、
前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在しない場合、前記ホストコンピュータ情報から、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が待機中であることとを条件にして、前記仮想マシンが稼働可能な待機中の前記ホストコンピュータを示す仮想マシン稼働可能予備ホストコンピュータを探索し、探索された前記仮想マシン稼働可能予備ホストコンピュータに前記仮想マシンを割当て、前記リソース種別情報にある、前記生成要求により指定されたリソース種別に対応した前記ホストコンピュータＯＳ設定内容の設定指示を、前記仮想マシン稼働可能予備ホストコンピュータに送信するリソース種別管理部とを備え、
前記ホストコンピュータは、
前記リソース管理サーバから前記設定指示を受信した場合に、前記ホストコンピュータＯＳ設定内容の設定を実行するＯＳ設定部を備える
ことを特徴とするリソース管理システム。
【請求項２】
前記ホストコンピュータ情報には、前記ホストコンピュータが搭載するハードウェアを示す搭載ハードウェアが併せて格納され、
前記リソース種別情報には、前記ホストコンピュータが前記リソース種別であるために搭載すべきハードウェアを示す前提ハードウェアが併せて格納されており、
前記リソース種別管理部は、前記ホストコンピュータ情報からの前記仮想マシン稼働可能予備ホストコンピュータの前記探索の条件に、前記搭載ハードウェアが前記生成要求により指定されたリソース種別に対応する前記リソース種別情報の前記前提ハードウェアを含むことを加えて探索する
ことを特徴とする請求項１に記載のリソース管理システム。
【請求項３】
ユーザ端末から生成要求を受付けた仮想マシンを稼働させる複数のホストコンピュータと、前記ホストコンピュータへの前記仮想マシンの割当てを行うリソース管理サーバとが、通信ネットワークを介して接続されるリソース管理システムの前記リソース管理サーバであって、
（１）前記ホストコンピュータのリソース種別とホストコンピュータＯＳ設定内容とを格納するリソース種別情報、及び、（２）前記ホストコンピュータの前記リソース種別と、新規に割当て可能な仮想マシンの性能要件を含む所定の要件を示す割当可能要件と、稼働中か待機中かを示す稼働状態とを格納するホストコンピュータ情報を、記憶する記憶部と、
前記ホストコンピュータ情報から、前記リソース種別が前記生成要求により指定されたリソース種別であることと、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が稼働中であることとを条件にして、前記仮想マシンが稼働可能な稼働中の前記ホストコンピュータを示す仮想マシン稼働可能ホストコンピュータを探索し、
前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在する場合、探索された前記仮想マシン稼働可能ホストコンピュータに前記仮想マシンを割当てるホスト割当部と、
前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在しない場合、前記ホストコンピュータ情報から、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が待機中であることとを条件にして、前記仮想マシンが稼働可能な待機中の前記ホストコンピュータを示す仮想マシン稼働可能予備ホストコンピュータを探索し、探索された前記仮想マシン稼働可能予備ホストコンピュータに前記仮想マシンを割当て、前記リソース種別情報にある、前記生成要求により指定されたリソース種別に対応した前記ホストコンピュータＯＳ設定内容の設定指示を、前記仮想マシン稼働可能予備ホストコンピュータに送信するリソース種別管理部とを備える
ことを特徴とするリソース管理サーバ。
【請求項４】
ユーザ端末から生成要求を受付けた仮想マシンを稼働させる複数のホストコンピュータと、前記ホストコンピュータへの前記仮想マシンの割当てを行うリソース管理サーバとが、通信ネットワークを介して接続されるリソース管理システムのリソース管理方法であって、
前記リソース管理サーバは、
（１）前記ホストコンピュータのリソース種別とホストコンピュータＯＳ設定内容とを格納するリソース種別情報、及び、（２）前記ホストコンピュータの前記リソース種別と、新規に割当て可能な仮想マシンの性能要件を含む所定の要件を示す割当可能要件と、稼働中か待機中かを示す稼働状態とを格納するホストコンピュータ情報を、記憶する記憶部を備えており、
前記ホストコンピュータ情報から、前記リソース種別が前記生成要求により指定されたリソース種別であることと、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が稼働中であることとを条件にして、前記仮想マシンが稼働可能な稼働中の前記ホストコンピュータを示す仮想マシン稼働可能ホストコンピュータを探索し、
前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在する場合、探索された前記仮想マシン稼働可能ホストコンピュータに前記仮想マシンを割当てるステップと、
前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在しない場合、前記ホストコンピュータ情報から、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が待機中であることとを条件にして、前記仮想マシンが稼働可能な待機中の前記ホストコンピュータを示す仮想マシン稼働可能予備ホストコンピュータを探索し、探索された前記仮想マシン稼働可能予備ホストコンピュータに前記仮想マシンを割当て、前記リソース種別情報にある、前記生成要求により指定されたリソース種別に対応した前記ホストコンピュータＯＳ設定内容の設定指示を、前記仮想マシン稼働可能予備ホストコンピュータに送信するステップとを実行し、
前記ホストコンピュータは、
前記リソース管理サーバから前記設定指示を受信した場合に、前記ホストコンピュータＯＳ設定内容を設定するステップを実行する
ことを特徴とするリソース管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシンが稼働するホストコンピュータのリソース種別が異なる、仮想化環境のリソース管理システム、リソース管理サーバ及びリソース管理方法に関する。
【背景技術】
【０００２】
仮想化環境を使ったクラウドサービスでは、仮想化技術を用いて物理的なコンピュータ（以下、ホストコンピュータ又はホストと記す）上に複数の論理的コンピュータ（以下、仮想マシン又はＶＭ（Virtual Machine）と記す）を稼働させ、高効率で柔軟なＶＭ提供サービスを実現している。
【０００３】
利用者からのＶＭ生成要求を受付けて、複数のホストの中からＶＭが稼働するホストを割当てて起動したり、ホストに障害が発生した場合に別のホストにＶＭを移動したりする仮想化環境を、管理し、運用する仮想化基盤ソフトウェアが提供されている（例えば非特許文献１）。利用者は、ユーザ端末を通じて、ＶＭの仕様としてＣＰＵ（Central Processing Unit）数やメモリ容量等を指定して、ＶＭ生成を仮想化基盤ソフトウェアに要求する。
【０００４】
仮想化基盤ソフトウェアは、稼働しているホストの中で、利用者が指定した仕様のＶＭが稼働可能なホストを探索し、探索が成功した場合には当該ホストにＶＭを割当てて、ＶＭの起動を指示する。仮想化基盤ソフトウェアは、ＶＭが稼働可能なホストか否かを、ホストの空いているＣＰＵ数やメモリ容量から判断する。ＶＭが稼働可能なホストの探索に失敗した場合、即ち、稼働しているどのホストにもＣＰＵやメモリ等の空きがなく、ＶＭが稼働可能な、稼働中のホストがない場合には、仮想化基盤ソフトウェアは、ＶＭが稼働しておらず待機しているホスト（以下、予備ホストと記す）を稼働させ、ＶＭを割当ててＶＭの起動を指示する。
【０００５】
予備ホストが必要となるのは、利用者からＶＭ生成を要求され、稼働中のホストに空きがない場合だけではない。稼働中のホストの障害時にも予備ホストは必要となる。即ち、稼働中のホストに障害が発生して、当該ホストで稼働していたＶＭを他の稼働中のホストに移動させる場合に、稼働中のホストに空きがないときには、仮想化基盤ソフトウェアは、予備ホストを稼働させて、ＶＭを予備ホストに移動させる。こうすることで、仮想化基盤の利用者や管理者の操作なしに、障害から復旧させることができ、継続してＶＭを提供することができる。
このように、利用者からの要求に応じてＶＭを生成したり、ホストの障害時でもＶＭを継続して利用できるようにしたりするために、仮想化環境には、平常時においてはＶＭが稼働することなく待機している予備ホストが必要である。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】“OpenStack Open Source Cloud Computing Software”、［online］、［平成２８年７月２７日検索］、インターネット＜ＵＲＬ：http://www.openstack.org/＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記の仮想化環境を提供する仮想化基盤ソフトウェアとして、非特許文献１に記載のソフトウェアがある。このソフトウェアにおける、生成要求されるＶＭの仕様として、ＣＰＵ数やメモリ容量の他に、ホストのハードウェア要件を指定することができる。ハードウェア（以下、ＨＷとも記す）の要件の例として、高帯域のネットワークを利用するためのＮＩＣ（Network Interface Card）や高速な画像処理を行うためのＧＰＵ（Graphics Processing Unit）等が利用可能なこと、がある。また一般の例には、ゲートウェイとして用いるＶＭの仕様として、通信用のキューの長さや送信バッファサイズ等のホストのＯＳ（Operating System）に特定の設定を求める場合もある。
【０００８】
ＣＰＵ数やメモリ容量と異なり、ホストＯＳの設定（ホストＯＳ設定）は、当該ホストで稼働する全てのＶＭにとって共通であり、ホストが稼働中に変わることはない。また、ハードウェア要件についても、ホストが稼働中に変わることはない。
【０００９】
このために、異なるハードウェア要件やホストＯＳ設定ごとに、それぞれに対応した複数の種別（以下、リソース種別と記す）のホストが必要となる。さらに、リソース種別ごとに、それぞれ予備ホストが必要となる。
【００１０】
クラウドサービス事業者のような大規模な仮想化環境であるならば、リソース種別ごとに、一定数以上の予備ホストを用意しておくことは可能である。しかしながら、小規模で、自組織内のＶＭ提供サービスであるプライベートクラウドサービスでは、最小限のホストで仮想化環境を運用することが求められ、リソース種別ごとに、それぞれ予備ホストを用意することは困難である。
【００１１】
本発明は、上記の問題を解決するものであり、最小限の予備ホストで、様々なリソース種別のホストを提供して、多様なＶＭの生成要求に対応するとともに、障害にも対応可能となる仮想化環境のリソース管理システム、リソース管理サーバ及びリソース管理方法を提供することを課題とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するための手段として、請求項１に係る発明は、ユーザ端末から生成要求を受付けた仮想マシンを稼働させる複数のホストコンピュータと、前記ホストコンピュータへの前記仮想マシンの割当てを行うリソース管理サーバとが、通信ネットワークを介して接続されるリソース管理システムであって、前記リソース管理サーバは、（１）前記ホストコンピュータのリソース種別とホストコンピュータＯＳ設定内容とを格納するリソース種別情報、及び、（２）前記ホストコンピュータの前記リソース種別と、新規に割当て可能な仮想マシンの性能要件を含む所定の要件を示す割当可能要件と、稼働中か待機中かを示す稼働状態とを格納するホストコンピュータ情報を、記憶する記憶部と、前記ホストコンピュータ情報から、前記リソース種別が前記生成要求により指定されたリソース種別であることと、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が稼働中であることとを条件にして、前記仮想マシンが稼働可能な稼働中の前記ホストコンピュータを示す仮想マシン稼働可能ホストコンピュータを探索し、前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在する場合、探索された前記仮想マシン稼働可能ホストコンピュータに前記仮想マシンを割当てるホスト割当部と、前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在しない場合、前記ホストコンピュータ情報から、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が待機中であることとを条件にして、前記仮想マシンが稼働可能な待機中の前記ホストコンピュータを示す仮想マシン稼働可能予備ホストコンピュータを探索し、探索された前記仮想マシン稼働可能予備ホストコンピュータに前記仮想マシンを割当て、前記リソース種別情報にある、前記生成要求により指定されたリソース種別に対応した前記ホストコンピュータＯＳ設定内容の設定指示を、前記仮想マシン稼働可能予備ホストコンピュータに送信するリソース種別管理部とを備え、前記ホストコンピュータは、前記リソース管理サーバから前記設定指示を受信した場合に、前記ホストコンピュータＯＳ設定内容の設定を実行するＯＳ設定部を備えることを特徴とするリソース管理システムである。
【００１３】
上記課題を解決するための手段として、請求項４に係る発明は、ユーザ端末から生成要求を受付けた仮想マシンを稼働させる複数のホストコンピュータと、前記ホストコンピュータへの前記仮想マシンの割当てを行うリソース管理サーバとが、通信ネットワークを介して接続されるリソース管理システムのリソース管理方法であって、前記リソース管理サーバは、（１）前記ホストコンピュータのリソース種別とホストコンピュータＯＳ設定内容とを格納するリソース種別情報、及び、（２）前記ホストコンピュータの前記リソース種別と、新規に割当て可能な仮想マシンの性能要件を含む所定の要件を示す割当可能要件と、稼働中か待機中かを示す稼働状態とを格納するホストコンピュータ情報を、記憶する記憶部を備えており、前記ホストコンピュータ情報から、前記リソース種別が前記生成要求により指定されたリソース種別であることと、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が稼働中であることとを条件にして、前記仮想マシンが稼働可能な稼働中の前記ホストコンピュータを示す仮想マシン稼働可能ホストコンピュータを探索し、前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在する場合、探索された前記仮想マシン稼働可能ホストコンピュータに前記仮想マシンを割当てるステップと、前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在しない場合、前記ホストコンピュータ情報から、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が待機中であることとを条件にして、前記仮想マシンが稼働可能な待機中の前記ホストコンピュータを示す仮想マシン稼働可能予備ホストコンピュータを探索し、探索された前記仮想マシン稼働可能予備ホストコンピュータに前記仮想マシンを割当て、前記リソース種別情報にある、前記生成要求により指定されたリソース種別に対応した前記ホストコンピュータＯＳ設定内容の設定指示を、前記仮想マシン稼働可能予備ホストコンピュータに送信するステップとを実行し、前記ホストコンピュータは、前記リソース管理サーバから前記設定指示を受信した場合に、前記ホストコンピュータＯＳ設定内容を設定するステップを実行することを特徴とするリソース管理方法である。
【００１４】
かかる構成によれば、リソース管理システムは、ユーザ端末からの仮想マシン生成要求時に指定されたリソース種別のホストコンピュータ（仮想マシン稼働可能ホストコンピュータ）に仮想マシンを割当てることができる。さらに、複数のリソース種別のホストコンピュータとして稼働可能な予備ホストコンピュータ（仮想マシン稼働可能予備ホストコンピュータ）を用意しておけば、リソース管理システムがＯＳ設定を行い、予備ホストコンピュータを必要なリソース種別のホストコンピュータとして稼働させることができる。このため、リソース種別ごとに予備ホストコンピュータを用意する必要がなくなり、最小限のホストコンピュータで、様々なリソース種別に対応した仮想化環境を構築することができる。さらに、ホストコンピュータに障害が発生した場合でも、予備ホストコンピュータを障害が発生したホストコンピュータと同じリソース種別のホストコンピュータとして稼働させて、仮想マシンを移動することで、仮想化基盤の利用者や管理者の操作なしに、障害から復旧させることができる。
【００１５】
上記課題を解決するための手段として、請求項２に係る発明は、前記ホストコンピュータ情報には、前記ホストコンピュータが搭載するハードウェアを示す搭載ハードウェアが併せて格納され、前記リソース種別情報には、前記ホストコンピュータが前記リソース種別であるために搭載すべきハードウェアを示す前提ハードウェアが併せて格納されており、前記リソース種別管理部は、前記ホストコンピュータ情報からの前記仮想マシン稼働可能予備ホストコンピュータの前記探索の条件に、前記搭載ハードウェアが前記生成要求により指定されたリソース種別に対応する前記リソース種別情報の前記前提ハードウェアを含むことを加えて探索することを特徴とする請求項１に記載のリソース管理システムである。
【００１６】
かかる構成によれば、リソース管理システムは、リソース種別としてホストコンピュータのＯＳ設定に加えて、ハードウェア要件も考慮して予備ホストコンピュータを選択し、仮想マシンを割当てることができる。
【００１７】
上記課題を解決するための手段として、請求項３に係る発明は、ユーザ端末から生成要求を受付けた仮想マシンを稼働させる複数のホストコンピュータと、前記ホストコンピュータへの前記仮想マシンの割当てを行うリソース管理サーバとが、通信ネットワークを介して接続されるリソース管理システムの前記リソース管理サーバであって、（１）前記ホストコンピュータのリソース種別とホストコンピュータＯＳ設定内容とを格納するリソース種別情報、及び、（２）前記ホストコンピュータの前記リソース種別と、新規に割当て可能な仮想マシンの性能要件を含む所定の要件を示す割当可能要件と、稼働中か待機中かを示す稼働状態とを格納するホストコンピュータ情報を、記憶する記憶部と、前記ホストコンピュータ情報から、前記リソース種別が前記生成要求により指定されたリソース種別であることと、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が稼働中であることとを条件にして、前記仮想マシンが稼働可能な稼働中の前記ホストコンピュータを示す仮想マシン稼働可能ホストコンピュータを探索し、前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在する場合、探索された前記仮想マシン稼働可能ホストコンピュータに前記仮想マシンを割当てるホスト割当部と、前記探索の結果、前記仮想マシン稼働可能ホストコンピュータが存在しない場合、前記ホストコンピュータ情報から、前記割当可能要件が前記生成要求により指定された前記仮想マシンの前記性能要件を含む所定の要件を満たすことと、前記稼働状態が待機中であることとを条件にして、前記仮想マシンが稼働可能な待機中の前記ホストコンピュータを示す仮想マシン稼働可能予備ホストコンピュータを探索し、探索された前記仮想マシン稼働可能予備ホストコンピュータに前記仮想マシンを割当て、前記リソース種別情報にある、前記生成要求により指定されたリソース種別に対応した前記ホストコンピュータＯＳ設定内容の設定指示を、前記仮想マシン稼働可能予備ホストコンピュータに送信するリソース種別管理部とを備えることを特徴とするリソース管理サーバである。
【００１８】
かかる構成によれば、リソース管理サーバは、ユーザ端末からの仮想マシン生成要求時に指定されたリソース種別のホストコンピュータ（仮想マシン稼働可能ホストコンピュータ）に仮想マシンを割当てることができる。さらに、複数のリソース種別のホストコンピュータとして稼働可能な予備ホストコンピュータ（仮想マシン稼働可能予備ホストコンピュータ）を用意しておけば、リソース管理サーバが、予備ホストコンピュータにＯＳ設定を実行させ、必要なリソース種別のホストコンピュータとして稼働させることができる。このため、リソース種別ごとに予備ホストコンピュータを用意する必要がなくなり、最小限のホストコンピュータで、様々なリソース種別に対応した仮想化環境を構築することができる。さらに、ホストコンピュータに障害が発生した場合でも、予備ホストコンピュータを障害が発生したホストコンピュータと同じリソース種別のホストコンピュータとして稼働させて、仮想マシンを移動することで、仮想化基盤の利用者や管理者の操作なしに、障害から復旧させることができる。
【発明の効果】
【００１９】
本発明によれば、最小限の予備ホストで、様々なリソース種別のホストを提供して、多様なＶＭの生成要求に対応するとともに、障害にも対応可能となる仮想化環境のリソース管理システム、リソース管理サーバ及びリソース管理方法を提供することができる。
【図面の簡単な説明】
【００２０】
【図１】本実施形態に係るリソース管理システムの全体構成を例示する図である。
【図２】本実施形態に係るリソース管理サーバの構成を例示する機能ブロック図である。
【図３】本実施形態に係るリソース管理サーバの記憶部に記憶されるリソース種別情報の構成を例示する図である。
【図４】本実施形態に係るリソース管理サーバの記憶部に記憶されるＶＭ情報の構成を例示する図である。
【図５】本実施形態に係るリソース管理サーバの記憶部に記憶されるホスト情報の構成を例示する図である。
【図６】本実施形態に係るホストの構成を例示する機能ブロック図である。
【図７】本実施形態に係るＶＭ生成要求の受付からＶＭ起動までのリソース管理システムの全体処理を例示するフローチャートである。
【図８】比較例のリソース管理システムの全体構成を例示した図である。
【発明を実施するための形態】
【００２１】
以下、本発明の実施形態のリソース管理システムを、図面を参照しつつ説明する。
≪比較例のリソース管理システム≫
図８は、比較例としての従来のリソース管理システム１ａの全体構成を例示した図である。
ユーザ端末３００は、仮想化環境の利用者が利用するコンピュータであり、このユーザ端末３００からリソース管理サーバ１００ａに、ＣＰＵ数やメモリ容量等を指定して、ＶＭ生成を要求する。ユーザ端末３００は、ＣＰＵ数やメモリ容量等に加えて、リソース種別に当たるハードウェア要件やホストＯＳ設定を指定する場合もある。
【００２２】
ホスト２００ａは、ＶＭが稼働するコンピュータである。ホスト２００ａには、ＶＭが割当てられ、ＶＭが起動済みである、稼働中のホスト（２００ａ−Ａ−１、２００ａ−Ａ−２、２００ａ−Ｂ−１、２００ａ−Ｂ−２、２００ａ−Ｃ−１及び２００ａ−Ｃ−２）と、ＶＭは割当てられておらず待機中の予備ホスト（２００ａ−Ａ−Ｚ、２００ａ−Ｂ−Ｚ及び２００ａ−Ｃ−Ｚ）とがある。
【００２３】
ホスト２００ａは、ハードウェア要件やホストＯＳ設定などのリソース種別によって、区別される。ハードウェア要件の例として、高帯域ネットワークに対応したＮＩＣが利用可能、高速画像処理用のＧＰＵ等の特殊なハードウェアが利用可能、などがある。ホストＯＳ設定の例としては、通信用のキューの長さや送信バッファサイズ等のパラメータ設定の他に、ホスト２００ａがＮＩＣやＧＰＵを利用するためのＯＳ設定、又は、共有メモリのオン／オフの設定、などがある。図８は、ホストＯＳ設定に３種類あり、ホスト２００ａ−Ａ−１とホスト２００ａ−Ａ−２と予備ホスト２００ａ−Ａ−ＺとにはホストＯＳ設定Ａが設定済みであり、ホスト２００ａ−Ｂ−１とホスト２００ａ−Ｂ−２と予備ホスト２００ａ−Ｂ−ＺとにはホストＯＳ設定Ｂが設定済みであり、ホスト２００ａ−Ｃ−１とホスト２００ａ−Ｃ−２と予備ホスト２００ａ−Ｃ−ＺとにはホストＯＳ設定Ｃが設定済みであることを示している。
ハードウェア要件に係るリソース種別については、そのリソース種別のホスト２００ａ全てに、当該ハードウェアが搭載されている。
【００２４】
リソース管理サーバ１００ａは、ユーザ端末３００からのＶＭの生成要求を受付け、ユーザ端末３００から指定されたＣＰＵ数やメモリ容量を確保できる稼働中のホスト（２００ａ−Ａ−１、２００ａ−Ａ−２、２００ａ−Ｂ−１、２００ａ−Ｂ−２、２００ａ−Ｃ−１及び２００ａ−Ｃ−２）を探索する。探索に成功した場合には、リソース管理サーバ１００ａは、当該ホスト２００ａにＶＭを割当て、ＶＭの起動を指示する。探索に失敗した場合には、リソース管理サーバ１００ａは、予備ホスト（２００ａ−Ａ−Ｚ、２００ａ−Ｂ−Ｚ又は２００ａ−Ｃ−Ｚ）に稼働開始を指示し、ＶＭを割当ててＶＭの起動を指示する。
【００２５】
ユーザ端末３００から、リソース種別の指定を受けた場合には、リソース管理サーバ１００ａは、その種別に対応した探索を行う。例えば、ホストＯＳ設定Ｂが指定された場合には、リソース管理サーバ１００ａは、ホストＯＳ設定Ｂに対応する稼働中のホスト（２００ａ−Ｂ−１と２００ａ−Ｂ−２）を探索する。探索に失敗した場合には、リソース管理サーバ１００ａは、予備ホスト２００ａ−Ｂ−Ｚを稼働させ、ＶＭを割当ててＶＭの起動を指示する。
【００２６】
１つのホスト２００ａに異なるホストＯＳ設定を行うと、設定が競合する場合があるため、１つの稼働中ホスト２００ａには、１つのホストＯＳ設定のみが可能である。また、比較例のリソース管理システム１ａでは、予備ホスト（２００ａ−Ａ−Ｚ、２００ａ−Ｂ−Ｚ及び２００ａ−Ｃ−Ｚ）のホストＯＳ設定は固定であり、変更することができない。
このため、ＶＭが稼働していない予備ホスト（２００ａ−Ａ−Ｚ、２００ａ−Ｂ−Ｚ及び２００ａ−Ｃ−Ｚ）を最低でもリソース種別の数の分だけ用意する必要があり、ホスト２００ａの利用効率性が低いという課題がある。
【００２７】
≪本実施形態のリソース管理システム≫
図１は、本実施形態に係るリソース管理システム１の全体構成を例示する図である。
本実施形態に係るリソース管理サーバ１００では後述するリソース種別管理部１０４（図２参照）を備え、ホスト２００では後述するＯＳ設定部２０１（図６参照）を備え、稼働開始時にホストＯＳ設定を実行することを可能とした。稼働中のホスト（２００−Ａ−１、２００−Ａ−２、２００−Ｂ−１、２００−Ｂ−２、２００−Ｃ−１及び２００−Ｃ−２）にＣＰＵやメモリの空きがなく、要求のあったＶＭを割当てることができない場合には、リソース管理サーバ１００は、予備ホスト２００−Ｚに必要なホストＯＳ設定を実行させた上で稼働させ、ＶＭを割当ててＶＭを起動させることができる。
【００２８】
図８の比較例では、あらかじめホストＯＳ設定を行った予備ホスト（２００ａ−Ａ−Ｚ、２００ａ−Ｂ−Ｚ及び２００ａ−Ｃ−Ｚ）を用意していた。これに対して、図１の本実施形態の技術では、予備ホスト２００−Ｚが必要となった時点で、必要となったリソース種別のホストＯＳ設定を実行して、予備ホスト２００−Ｚを当該リソース種別のホスト２００として稼働させることができる。このため、予めホストＯＳ設定を行う予備ホスト（図８の２００ａ−Ａ−Ｚ、２００ａ−Ｂ−Ｚ及び２００ａ−Ｃ−Ｚ）を削減して、最小限の予備ホスト２００−Ｚのみを用意すれば良く、ホスト２００の利用効率性が向上する。
【００２９】
以下、リソース管理システム１を構成する各装置について、図面を参照しながら詳細に説明する。
≪リソース管理サーバの構成≫
図２は、本実施形態に係るリソース管理サーバ１００の構成を例示する機能ブロック図である。
リソース管理サーバ１００は、ワークステーションやパソコン等の汎用コンピュータで実現され、制御部１１と、記憶部１２と、入出力部１３とを備える。装置内部のＣＰＵ等の演算処理装置がメモリに記憶された制御プログラムを実行することによって、制御部１１として機能する。制御部１１は、ＶＭ生成要求受付部１０１と、ホスト割当部１０２と、ホスト管理部１０３と、リソース種別管理部１０４とを備える。
【００３０】
また、リソース管理サーバ１００は、ＲＡＭ（Random Access Memory）、フラッシュメモリ等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される記憶部１２を備え、リソース種別情報１１１と、ＶＭ情報１１２と、ホスト情報１１３とを格納する。
入出力部１３は、ホスト２００やユーザ端末３００等との間の情報の送受信を行う。入出力部１３は、ネットワークを介して情報の送受信を行う通信インタフェース（図の記載なし）と、キーボードやモニタ等の入出力インタフェース（図の記載なし）とから構成される。
以下、制御部１１と記憶部１２に含まれる構成について説明する。
【００３１】
制御部１１にあるＶＭ生成要求受付部１０１は、ユーザ端末３００から入出力部１３を介してＶＭの生成要求を受付ける。ＶＭの生成要求（ＶＭ生成要求）は、ＶＭの仕様として、利用可能なＣＰＵ数やメモリ容量、ディスク容量等を指定し、さらに付加的に、記憶部１２に記憶されるリソース種別情報１１１（後述する図３参照）に示される、ホスト２００のハードウェア要件やホストＯＳ設定のリソース種別を指定する。指定方法については後述する。ＶＭ生成要求受付部１０１は、指定されたＶＭの仕様を、記憶部１２に記憶されるＶＭ情報１１２（後述する図４参照）に格納する。
請求項に記載の仮想マシンの性能要件を含む所定の要件とは、ＣＰＵ数とメモリ容量等の性能要件を含み、付加的にインターネットからのアクセス可否などの要件を含んだ要件である。本実施形態では、仮想マシンの性能要件を含む所定の要件は、ＣＰＵ数とメモリ容量であるとして説明を進める。
【００３２】
図３は、本実施形態に係るリソース管理サーバ１００の記憶部１２に記憶されるリソース種別情報１１１の構成を例示する図である。
リソース種別情報１１１は、例えば、テーブル形式のデータであり、１以上の行（以下、レコードと記す）を含む。各レコードは、１つのリソース種別を表し、属性として、リソース種別ＩＤと、ホストＯＳ設定内容（請求項のホストコンピュータＯＳ設定内容）と、ＨＷ（請求項の前提ハードウェア）とを含む。
【００３３】
リソース種別ＩＤは、リソース種別の識別情報である。
ホストＯＳ設定内容は、リソース種別に対応したホストＯＳ設定の内容であり、設定するためのコマンドや設定ファイル名、設定ファイルの内容等を示す。予備ホスト２００−Ｚが、ホストＯＳ設定内容にある設定を実行することで、リソース種別のホスト２００として稼働することができる。図３には、メモリ共有機能のオン／オフの設定やＮＩＣを利用するための設定、通信用キューの長さの設定の例を示している。
ＨＷは、リソース種別に対応するために、ホスト２００に搭載が求められる付加的なハードウェアを示す。図３には、高帯域ネットワーク対応のＮＩＣの例を示している。
【００３４】
図４は、本実施形態に係るリソース管理サーバ１００の記憶部１２に記憶されるＶＭ情報１１２の構成を例示する図である。
ＶＭ情報１１２は、例えば、テーブル形式のデータである。各レコードは１つのＶＭを表し、属性として、ＶＭＩＤと、ＣＰＵ数と、メモリ容量と、ディスク容量と、リソース種別ＩＤと、ホストＩＤと、状態とを含む。
【００３５】
ＶＭＩＤは、ＶＭの識別情報である。ＣＰＵ数はＶＭに割当てられたＣＰＵ数であり、ＶＭの生成要求時のＶＭの仕様に含まれていたＣＰＵ数が、制御部１１のＶＭ生成要求受付部１０１によって格納される。メモリ容量とディスク容量も同様である。リソース種別ＩＤはＶＭの生成要求時のＶＭの仕様に含まれていたリソース種別の識別情報であり、ＶＭが稼働するホスト２００のリソース種別である。ホストＩＤは、ＶＭが稼働するホスト２００の識別情報である。状態はＶＭの稼働状態を示し、ＶＭの生成要求を受付けた状態を示す「受付済」、ＶＭが稼働するホスト２００の割当が決まった状態を示す「割当済」、ＶＭが稼働を開始した状態を示す「稼働中」の何れかの値である。
状態が「受付済」であり、ＶＭが稼働するホスト２００の割当が決まっていない場合には、ホストＩＤは「−」となる。
【００３６】
図２に戻り、制御部１１にあるホスト割当部１０２は、稼働中のホスト（２００−Ａ、２００−Ｂ及び２００−Ｃ）の中から、ＶＭの生成要求で指定されたリソース種別に合致し、ＶＭが稼働可能なホスト２００を探索し、割当てる。この割当てる処理の際、ホスト割当部１０２は、記憶部１２に記憶されるホスト情報１１３（後述する図５参照）にある未割当ＣＰＵ数や未割当メモリ容量を参照して、ホスト２００にＶＭの割当てが可能か否かを判断する。また、ホスト割当部１０２は、割当てた結果であるホストの識別情報を、記憶部１２に記憶されるＶＭ情報１１２（図４）のホストＩＤに格納する。
【００３７】
図５は、本実施形態に係るリソース管理サーバ１００の記憶部１２に記憶されるホスト情報１１３の構成を例示する図である。
ホスト情報１１３（請求項のホストコンピュータ情報）は、例えば、テーブル形式のデータであり、各レコードは、１つのホスト２００を表し、属性として、ホストＩＤと、リソース種別ＩＤと、ＣＰＵ数と、メモリ容量と、ＨＷと、未割当ＣＰＵ数と、未割当メモリ容量と、状態とを含む。
【００３８】
ホストＩＤは、ホスト２００の識別情報である。リソース種別ＩＤは、ホスト２００のリソース種別の識別情報である。予備ホスト２００−Ｚの場合には、リソース種別は未定なので、リソース識別ＩＤは「−」となる。
ＣＰＵ数は、ホスト２００上のＶＭが利用可能なＣＰＵ数の総和を示す。メモリ容量は、ホスト２００上のＶＭが利用可能なメモリ容量の総和を示す。ＨＷ（請求項の搭載ハードウェア）は、ホスト２００が搭載し、ＶＭが利用可能な付加的なハードウェアを示す。ハードウェアの例として、ＳＲ−ＩＯＶなどのＮＩＣやＧＰＵ等がある。
【００３９】
未割当ＣＰＵ数は、ホストＩＤで識別されるホスト２００に割当てられたＶＭが利用していないＣＰＵの数であり、これから割当てられるＶＭが利用可能なＣＰＵ数である。未割当メモリ容量は、ホスト２００に割当てられたＶＭが利用していないメモリの容量であり、これから割当てられるＶＭが利用可能なメモリ容量である。予備ホスト２００−Ｚの場合には、未割当ＣＰＵ数と未割当メモリ容量は、それぞれＣＰＵ数とメモリ容量とする。
請求項の割当可能要件は、未割当ＣＰＵ数と未割当メモリ容量等の性能に関係する要件を含み、付加的にインターネットからのアクセス可否などの要件を含んだ要件である。本実施形態では、割当可能要件は、未割当ＣＰＵ数と未割当メモリ容量であるとして説明を進める。
【００４０】
状態（請求項の稼働状態）は、ホスト２００の状態を示し、ＶＭが割当てられ、ＶＭが稼働している状態を示す「稼働中」、又は、割当てられたＶＭがなく、予備ホスト２００−Ｚとして待機中であることを示す「待機中」の何れかの値となる。
【００４１】
図２に戻り、制御部１１にあるホスト管理部１０３は、要求されたＶＭの起動を、割当の決まったホスト２００に入出力部１３経由で指示する。
【００４２】
リソース種別管理部１０４は、ホスト割当部１０２が、稼働中のホスト（２００−Ａ、２００−Ｂ及び２００−Ｃ）にＶＭを割当てることができない場合に、ＶＭを割当てる予備ホスト２００−Ｚを選択する。即ち、リソース種別管理部１０４は、記憶部１２にあるリソース種別情報１１１を参照し、記憶部１２にあるホスト情報１１３を探索して、予備ホスト２００−Ｚを選択する。
さらに、リソース種別管理部１０４は、選択した予備ホスト２００−ＺにホストＯＳ設定を入出力部１３経由で指示（請求項の設定指示）し、ＶＭの生成要求にあったリソース種別のホスト２００として稼働させる。
【００４３】
リソース種別情報１１１、ＶＭ情報１１２及びホスト情報１１３は、リソース管理サーバ１００の記憶部１２に記憶される情報であるが、ホスト２００からもアクセス可能である。
ＶＭ生成要求受付部１０１、ホスト割当部１０２、ホスト管理部１０３、リソース種別管理部１０４、リソース種別情報１１１、ＶＭ情報１１２及びホスト情報１１３は、全てをリソース管理サーバ１００が保有する構成になっているが、一部を別のサーバが保有する構成も可能である。
【００４４】
≪ホストの構成≫
図６は、本実施形態に係るホスト２００の構成を例示する機能ブロック図である。
ホスト２００（請求項のホストコンピュータ）は、ワークステーションやパソコン等の汎用コンピュータで実現され、制御部２１と、記憶部２２と、入出力部２３とを備える。装置内部のＣＰＵ等の演算処理装置がメモリに記憶された制御プログラムを実行することによって、制御部２１として機能する。制御部２１は、ＯＳ設定部２０１と、ＶＭ管理部２０２とを備える。
【００４５】
また、ホスト２００は、ＲＡＭ（Random Access Memory）、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される記憶部２２を備える。さらに、ホスト２００は、付加的にＳＲ−ＩＯＶやＧＰＵ等のハードウェアを搭載している。
入出力部２３は、リソース管理サーバ１００やユーザ端末３００等との間の情報の送受信を行う。入出力部２３は、ネットワークを介して情報の送受信を行う通信インタフェース（図の記載なし）と、キーボードやモニタ等の入出力インタフェース（図の記載なし）とから構成される。
以下、制御部２１に含まれる構成について説明する。
【００４６】
ＯＳ設定部２０１は、リソース管理サーバ１００のリソース種別管理部１０４の指示により、ホストＯＳ設定を実行する。即ち、リソース種別管理部１０４が送信したリソース種別ＩＤを入出力部２３経由で受信し、リソース種別情報１１１（図３）にある、リソース種別ＩＤに対応するホストＯＳ設定内容を、入出力部２３経由で入手して、そのコマンドや設定ファイルに従ってＯＳのパラメータの設定などを実行する。ホストＯＳ設定を実行することで、予備ホスト２００−Ｚが、特定のリソース種別のホスト２００として稼働する。
【００４７】
ＶＭ管理部２０２は、リソース管理サーバ１００のホスト管理部１０３の指示により、ホスト２００に割当てられたＶＭを起動する。即ち、ホスト管理部１０３が送信したＶＭＩＤを入出力部２３経由で受信し、ＶＭ情報１１２（図４）にある、ＶＭＩＤに対応するＶＭを生成して起動する。
【００４８】
≪リソース管理システムの全体処理≫
図７は、本実施形態に係るＶＭ生成要求の受付からＶＭ起動までのリソース管理システム１の全体処理を例示するフローチャートである。
以下、図７を参照しながら、ＶＭ生成要求を受付けてから、ＶＭが稼働するホスト２００を割当てて、ＶＭを起動するまでのリソース管理システム１の処理全体を説明する。
【００４９】
リソース管理サーバ１００のＶＭ生成要求受付部１０１が、ユーザ端末３００からのＶＭ生成要求を受付け（ステップＳ７０１）、要求内容をＶＭ情報１１２（図４）に追加し、ＶＭＩＤをホスト割当部１０２に送信して、ＶＭ割当を指示する。
ＶＭ生成要求には、ＶＭが利用するＣＰＵ数やメモリ容量、ディスク容量等のＶＭの仕様が含まれる。さらに付加的に、ＮＩＣやＧＰＵなどのハードウェア要件や特定のホストＯＳ設定など、ＶＭが稼働するホスト２００のリソース種別を指定することが可能である。リソース種別の指定方法については、後述する。
【００５０】
ＶＭ生成要求の内容はＶＭ情報１１２（図４）に格納される。即ち、ＶＭ生成要求受付部１０１は、ＶＭ情報１１２にレコードを追加し、ＶＭの識別情報を新規生成してＶＭＩＤに格納し、ＶＭ生成要求に含まれたＶＭのＣＰＵ数とメモリ容量とディスク容量とを、それぞれＣＰＵ数、メモリ容量、ディスク容量に格納する。リソース種別が指定されれば、ＶＭ生成要求受付部１０１は、当該リソース種別の識別情報をリソース種別ＩＤに格納する。リソース種別の指定がなければ、ＶＭ生成要求受付部１０１は、予めリソース管理システム１が定めたリソース種別ＩＤを格納する。ＶＭ生成要求受付部１０１は、稼働するホスト２００が未割当なのでホストＩＤを「−」とし、状態を「受付済」とする。
【００５１】
リソース種別の指定方法として、リソース種別情報１１１（図３）にあるリソース種別ＩＤを直接指定する方法の他に、要求するハードウェアやホストＯＳ設定の内容を指定する方法がある。他にも、ネットワークや入出力等の性能要件、又は、ネットワークゲートウェイやデータベースサーバ等のＶＭの用途など、抽象的な条件を指定、最適なリソース種別を選択することが可能である。
【００５２】
ステップＳ７０１のＶＭ生成要求の受付の後、ホスト割当部１０２は、ＶＭ生成要求受付部１０１からＶＭＩＤを受信し、要求のあったＶＭを稼働させるホスト２００を、稼働中のホスト２００の中で探索する（ステップＳ７０２）。
即ち、ホスト情報１１３（図５）の中で、状態が「稼働中」、リソース種別ＩＤがＶＭのリソース種別ＩＤに一致し、未割当ＣＰＵ数がＶＭのＣＰＵ数以上、未割当メモリ容量がＶＭのメモリ容量以上のレコードを探索する。なお、ＶＭのＣＰＵ数とメモリ容量とリソース種別ＩＤは、ＶＭ情報１１２の中のＶＭ生成要求受付部１０１から受信したＶＭＩＤに対応するレコードから入手することができる。
【００５３】
ステップＳ７０２に続いて、ホスト割当部１０２は、ステップＳ７０２の探索した結果、稼働中のホスト２００でＶＭが稼働可能なホスト２００（請求項の仮想マシン稼働可能ホストコンピュータ）が存在するか否かを判定する（ステップＳ７０３）。
ステップＳ７０３でＹ（稼働可能なホスト２００が存在）ならば、当該ホスト２００にＶＭを割当てて、ＶＭ起動指示をホスト管理部１０３に通知する。
ステップＳ７０３でＮ（稼働可能なホスト２００が存在せず）ならば、予備ホスト２００−Ｚに割当てるようリソース種別管理部１０４に通知する。
【００５４】
ステップＳ７０３の判定の結果、稼働中のホスト２００でＶＭが稼働可能なホスト２００が存在すれば（Ｓ７０３のＹ）、ホスト割当部１０２は、そのホスト２００の識別情報をＶＭ情報１１２のホストＩＤに書込み、状態を「割当済」に更新する。複数の稼働可能なホスト２００が存在した場合には、ホスト割当部１０２は、任意の１つを選択して、ＶＭ情報１１２を更新する。ホスト割当部１０２は、任意の１つを選択する以外に、ホスト２００の負荷状態を参照して、低い負荷のホスト２００を選択することも可能である。
続いて、ホスト割当部１０２は、ＶＭの起動を当該ホスト２００に指示するよう、ホスト管理部１０３にＶＭＩＤを通知する。
【００５５】
ステップＳ７０３の判定の結果、稼働中のホスト２００でＶＭが稼働可能なホスト２００が存在しなければ（Ｓ７０３のＮ）、ホスト割当部１０２は、予備ホスト２００−ＺにＶＭを割当てるよう、リソース種別管理部１０４にリソース種別ＩＤとＶＭＩＤとを通知する。
【００５６】
ステップＳ７０３でＹへ分岐する場合、即ちＶＭが稼働可能なホスト２００が存在した場合には、ホスト管理部１０３は、ホスト割当部１０２よりＶＭＩＤを受信し、ＶＭ情報１１２の中のＶＭＩＤに対応するレコードのホストＩＤに当たるホスト２００へＶＭＩＤを通知してＶＭ起動を指示する（ステップＳ７０４）。
【００５７】
ステップＳ７０４の後、ホスト管理部１０３からＶＭＩＤを受信したホスト２００のＶＭ管理部２０２は、受信したＶＭＩＤに対応するＶＭ情報１１２のレコードにアクセスし、ＶＭのＣＰＵ数、メモリ容量、ディスク容量を入手し、これらが利用可能なＶＭを生成して起動する（ステップＳ７０５）。
続いて、ＶＭ管理部２０２は、ホスト情報１１３の自身のレコードの未割当ＣＰＵ数と未割当メモリ容量を、それぞれＶＭのＣＰＵ数とメモリ容量の分だけ減じる。さらに、ＶＭ情報１１２のＶＭＩＤに対応するレコードの状態を「稼働中」に更新する。
以上で、リソース管理システム１は、ユーザ端末３００が要求したＶＭを、稼働中のホスト（２００−Ａ、２００−Ｂ又は２００−Ｃ）上に起動する。
【００５８】
ステップＳ７０３でＮへ分岐する場合、即ちＶＭが稼働可能な、稼働中のホスト２００が存在しない場合の処理を以下で説明する。
稼働中のホスト（２００−Ａ、２００−Ｂ及び２００−Ｃ）のいずれにおいてもＶＭが稼働できないので、ホスト割当部１０２からリソース種別ＩＤとＶＭＩＤとを受信したリソース種別管理部１０４は、稼働させてＶＭを割当てる予備ホスト２００−Ｚを選択する（ステップＳ７０６）。
【００５９】
具体的には、リソース種別管理部１０４は、リソース種別情報１１１（図３）の中の、受信したリソース種別ＩＤに対応したレコードのＨＷを入手して、ホスト情報１１３の中で状態が「待機中」であり、リソース種別が「−」であり、ＨＷがリソース種別情報１１１から入手したＨＷを含み、未割当ＣＰＵ数がＶＭのＣＰＵ数以上、未割当メモリ容量がＶＭのメモリ容量以上であるレコードを探索する。以下、探索が成功したとして説明する。
【００６０】
リソース種別管理部１０４は、探索で見つかった予備ホスト２００−Ｚ（請求項の仮想マシン稼働可能予備ホストコンピュータ）のレコードのリソース種別ＩＤを、ホスト割当部１０２から受信したリソース種別ＩＤに更新する。
続いて、リソース種別管理部１０４は、ＶＭＩＤに当たるＶＭ情報１１２のレコードのホストＩＤを予備ホスト２００−Ｚの識別情報に、状態を「割当済」に更新する。
【００６１】
ステップＳ７０６に続いて、リソース種別管理部１０４は、当該予備ホスト２００−Ｚに、リソース種別ＩＤとＶＭＩＤを送信して、ホストＯＳ設定を指示（請求項の設定指示）する（ステップＳ７０７）。
【００６２】
ステップＳ７０７に続いて、ホストＯＳ設定を指示された、予備ホスト２００−ＺのＯＳ設定部２０１は、リソース種別ＩＤとＶＭＩＤとを受信し、リソース種別情報１１１の中のリソース種別ＩＤに対応するレコードにあるホストＯＳ設定内容の設定を実行する（ステップＳ７０８）。
続いて、ＯＳ設定部２０１は、自身である予備ホスト２００−Ｚの稼働を開始し、ホスト情報１１３の中の自身のレコードの状態を「稼働中」に更新し、リソース種別管理部１０４から受信したＶＭＩＤをホスト管理部１０３に送信して、ＶＭ稼働の準備ができたことを通知する。
【００６３】
ステップＳ７０８に続いて、ＶＭ稼働の準備の通知を受信したホスト管理部１０３は、予備ホスト２００−ＺからＶＭＩＤを受信し、ステップＳ７０４と同様に、ＶＭ起動を予備ホスト２００−Ｚに指示する（ステップＳ７０９）。
【００６４】
ステップＳ７０９に続いて、ＶＭ起動指示を受信した予備ホスト２００−ＺのＶＭ管理部２０２は、ステップＳ７０５と同様にして、ＶＭを生成して起動する（ステップＳ７１０）。
以上で、リソース管理システム１は、ユーザ端末３００が要求したＶＭを、予備ホスト２００−Ｚ上に起動する。
【００６５】
≪リソース管理システムの効果≫
本実施形態では、ＶＭの仕様として、ＣＰＵ数やメモリ容量等のように１つのホスト２００上でＶＭが動的に選択できる仕様の他に、利用可能なハードウェア要件やホストＯＳ設定等、１つのホスト２００で固定的なリソース種別という仕様を別に設けた。
従来までのリソース管理システム１ａでは、リソース種別を指定して、ＶＭを要求することは可能であったが、各ホスト２００ａでリソース種別は固定的であり、リソース種別を切り換えることはできなかった。このために、ＶＭの増加時やホスト２００ａの障害時に使われ、通常は待機している予備ホスト（図８の２００ａ−Ａ−Ｚ、２００ａ−Ｂ−Ｚ及び２００ａ−Ｃ−Ｚ）をリソース種別ごとに、それぞれ用意しておく必要があり、ホスト２００ａの利用効率が落ちる原因となっていた。
本実施形態のリソース管理システム１では、リソース種別に応じて、ホストＯＳ設定を、ホスト２００の稼働開始時に動的に行える機構を新たに設けた。これにより、複数のリソース種別に対応できる予備ホスト２００−Ｚを用意しておけば、必要となった時点で、必要となったリソース種別のホスト２００を稼働させることができる。このために、予備ホスト２００−Ｚの数を減らし、最小限のホスト２００で、様々なリソース種別に対応した仮想化環境を構築することができる。さらに、ホスト２００に障害が発生した場合でも、障害発生した同じリソース種別の予備ホスト２００−Ｚを動的に用意することができ、仮想化環境の利用者や管理者の手を借りずに、障害から復旧することができる。
【符号の説明】
【００６６】
１      リソース管理システム
１００  リソース管理サーバ
１１    制御部
１２    記憶部
１３    入出力部
１０１  ＶＭ生成要求受付部
１０２  ホスト割当部
１０３  ホスト管理部
１０４  リソース種別管理部
１１１  リソース種別情報
１１２  ＶＭ情報
１１３  ホスト情報
２００  ホスト（ホストコンピュータ）
２１    制御部
２２    記憶部
２３    入出力部
２０１  ＯＳ設定部
２０２  ＶＭ管理部
３００  ユーザ端末
【図１】
2018025946.tif 000003
【図２】
2018025946.tif 000004
【図３】
2018025946.tif 000005
【図４】
2018025946.tif 000006
【図５】
2018025946.tif 000007
【図６】
2018025946.tif 000008
【図７】
2018025946.tif 000009
【図８】
2018025946.tif 000010