(57)【要約】【課題】複数種類のハイパーバイザー及び複数種類のハイパーバイザー上で起動される仮想マシンを容易に管理する。【解決手段】利用者端末から起動要求を受信した場合に、起動要求に含まれる仮想マシン種類情報（起動）から仮想マシンの種類がＫＶＭを示すものであるかＸｅｎを示すものであるかを特定する。起動する仮想マシン数が、未起動仮想マシン台数を超えているか否かを判定し、起動する仮想マシン数が未起動仮想マシン台数を超えていると判定された場合、ブランク状態の新たな物理サーバにＫＶＭ（Ｘｅｎ）ハイパーバイザーの設定を行うと決定する。そして、ブランク状態の物理サーバに対してＫＶＭ（Ｘｅｎ）ハイパーバイザーの設定を行う。ＫＶＭ（Ｘｅｎ）ハイパーバイザーの設定がされた物理サーバにおいて、起動要求に含まれる起動マシン数情報及び優先度情報に基づいてＫＶＭ（Ｘｅｎ）の仮想マシンを起動する。【選択図】図１２
2014164434.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンを起動させる起動要求を受信する受信手段と、
前記起動要求を受信したことに基づいて、起動対象となる前記仮想マシンの種類を特定する種類特定手段と、
前記種類特定手段で特定した種類に対応する種類のハイパーバイザーを物理サーバに設定する設定手段と、
前記設定手段によって設定されたハイパーバイザー上で、前記起動要求に応じた前記仮想マシンを起動する仮想マシン起動手段と、を備え、
前記設定手段は、前記仮想マシンの起動状況に応じて、前記ハイパーバイザーを設定する対象の物理サーバを特定する、
ことを特徴とする情報処理装置。
【請求項２】
前記仮想マシンの起動履歴を記憶する履歴記憶手段と、
前記履歴記憶手段で記憶した前記仮想マシンの起動履歴から、予め定められた時刻における前記仮想マシンの起動状況を予測する予測手段と、をさらに備え、
前記種類特定手段は、前記予測手段で予測した結果に基づいて、前記仮想マシンの種類を特定し、
前記設定手段は、前記予測手段で予測した結果に基づいて特定された前記仮想マシンの種類に対応する種類のハイパーバイザーを物理サーバに設定する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記起動要求は、優先度情報を含み、
前記履歴記憶手段は、前記優先度情報を含む前記仮想マシンの起動履歴を記憶し、
前記種類特定手段は、前記優先度情報に基づいて、前記仮想マシンの種類を特定する、
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
物理サーバに設定された同じ種類のハイパーバイザー上で起動している仮想マシンを、該ハイパーバイザーが設定された物理サーバ間で移行する仮想マシン移行手段をさらに備える、
ことを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
仮想マシンを起動させる起動要求を受信する受信ステップと、
前記起動要求を受信したことに基づいて、起動対象となる前記仮想マシンの種類を特定する種類特定ステップと、
前記種類特定ステップで特定した種類に対応する種類のハイパーバイザーを物理サーバに設定する設定ステップと、
前記設定ステップで設定されたハイパーバイザー上で、前記起動要求に応じた前記仮想マシンを起動する仮想マシン起動ステップと、を含み、
前記設定ステップでは、前記仮想マシンの起動状況に応じて、前記ハイパーバイザーを設定する対象の物理サーバを特定する、
ことを特徴とする情報処理方法。
【請求項６】
コンピュータを、
仮想マシンを起動させる起動要求を受信する受信手段、
前記起動要求を受信したことに基づいて、起動対象となる前記仮想マシンの種類を特定する種類特定手段、
前記種類特定手段で特定した種類に対応する種類のハイパーバイザーを物理サーバに設定する設定手段、
前記設定手段によって設定されたハイパーバイザー上で、前記起動要求に応じた前記仮想マシンを起動する仮想マシン起動手段、として機能させ、
前記設定手段は、前記仮想マシンの起動状況に応じて、前記ハイパーバイザーを設定する対象の物理サーバを特定する、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
物理サーバ上で仮想マシンを起動させ、ネットワークを介して該仮想マシンをユーザに提供することが行われている（例えば、特許文献１参照）。特許文献１に記載された仮想マシン管理システムは、仮想マシンが起動されるハイパーバイザーを予め物理サーバに設定しておき、ユーザからの仮想マシンの起動要求に応じて、物理サーバのハイパーバイザー上で仮想マシンを起動する。物理サーバへのハイパーバイザーの設定は、管理者が物理サーバに専用のソフトウェアをインストールする等して行われる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２４４１８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載された仮想マシン管理システムでは、ハイパーバイザーを物理サーバに設定する場合には、管理者が作業を行う必要がある。そのため、物理サーバが複数用意されている場合には、管理者が全ての物理サーバに対して作業を行うことになる。従って、物理サーバへのハイパーバイザーの設定に手間がかかる。また、上記仮想マシン管理システムでは、用意した全ての物理サーバに１種類のハイパーバイザーを設定することしかできず、異なる種類のハイパーバイザー上で起動される仮想マシンを要求する場合には、当該異なる種類のハイパーバイザーを物理サーバに設定し直す必要があり、この場合にも管理者が物理サーバに対して作業を行うことになる。従って、複数種類のハイパーバイザー及び複数種類のハイパーバイザー上で起動される仮想マシンを容易に管理するという観点からみると未だ十分とはいえない。
【０００５】
本発明は、上記の課題に鑑みてなされたものであり、複数種類のハイパーバイザー及び複数種類のハイパーバイザー上で起動される仮想マシンを容易に管理することができる情報処理装置、情報処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の第１の観点に係る情報処理装置は、
仮想マシンを起動させる起動要求を受信する受信手段と、
前記起動要求を受信したことに基づいて、起動対象となる前記仮想マシンの種類を特定する種類特定手段と、
前記種類特定手段で特定した種類に対応する種類のハイパーバイザーを物理サーバに設定する設定手段と、
前記設定手段によって設定されたハイパーバイザー上で、前記起動要求に応じた前記仮想マシンを起動する仮想マシン起動手段と、を備え、
前記設定手段は、前記仮想マシンの起動状況に応じて、前記ハイパーバイザーを設定する対象の物理サーバを特定する、
ことを特徴とする。
【０００７】
なお、情報処理装置は、
前記仮想マシンの起動履歴を記憶する履歴記憶手段と、
前記履歴記憶手段で記憶した前記仮想マシンの起動履歴から、予め定められた時刻における前記仮想マシンの起動状況を予測する予測手段と、をさらに備え、
前記種類特定手段は、前記予測手段で予測した結果に基づいて、前記仮想マシンの種類を特定し、
前記設定手段は、前記予測手段で予測した結果に基づいて特定された前記仮想マシンの種類に対応する種類のハイパーバイザーを物理サーバに設定する、
ようにしてもよい。
【０００８】
また、前記起動要求は、優先度情報を含み、
前記履歴記憶手段は、前記優先度情報を含む前記仮想マシンの起動履歴を記憶し、
前記種類特定手段は、前記優先度情報に基づいて、前記仮想マシンの種類を特定する、
ようにしてもよい。
【０００９】
また、情報処理装置は、
物理サーバに設定された同じ種類のハイパーバイザー上で起動している仮想マシンを、該ハイパーバイザーが設定された物理サーバ間で移行する仮想マシン移行手段をさらに備える、
ようにしてもよい。
【００１０】
また、本発明の第２の観点に係る情報処理方法は、
仮想マシンを起動させる起動要求を受信する受信ステップと、
前記起動要求を受信したことに基づいて、起動対象となる前記仮想マシンの種類を特定する種類特定ステップと、
前記種類特定ステップで特定した種類に対応する種類のハイパーバイザーを物理サーバに設定する設定ステップと、
前記設定ステップで設定されたハイパーバイザー上で、前記起動要求に応じた前記仮想マシンを起動する仮想マシン起動ステップと、を含み、
前記設定ステップでは、前記仮想マシンの起動状況に応じて、前記ハイパーバイザーを設定する対象の物理サーバを特定する、
ことを特徴とする。
【００１１】
また、本発明の第３の観点に係るプログラムは、
コンピュータを、
仮想マシンを起動させる起動要求を受信する受信手段、
前記起動要求を受信したことに基づいて、起動対象となる前記仮想マシンの種類を特定する種類特定手段、
前記種類特定手段で特定した種類に対応する種類のハイパーバイザーを物理サーバに設定する設定手段、
前記設定手段によって設定されたハイパーバイザー上で、前記起動要求に応じた前記仮想マシンを起動する仮想マシン起動手段、として機能させ、
前記設定手段は、前記仮想マシンの起動状況に応じて、前記ハイパーバイザーを設定する対象の物理サーバを特定する、
ことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、複数種類のハイパーバイザー及び複数種類のハイパーバイザー上で起動される仮想マシンを容易に管理することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態に係る情報処理装置を備えた情報処理システムの構成を示すブロック図である。
【図２】図１の情報処理装置の構成を示す図である。
【図３】図１の情報処理システムにおける物理サーバのハイパーバイザー上で起動している仮想マシンの移行を説明するための図である。
【図４】図１の情報処理装置が備えるマシン管理テーブルを説明するための図である。
【図５】図１の情報処理システムにおける物理サーバの設定状況や仮想マシンの起動状況を示す図である。
【図６】図１の情報処理装置が備える起動状況管理テーブルを説明するための図である。
【図７】図１の情報処理装置が備える起動履歴を説明するための図である。
【図８】図１の情報処理装置が備える起動履歴を説明するための図である。
【図９】図１の情報処理装置が備える起動履歴を説明するための図である。
【図１０】図１の情報処理装置が備える起動履歴を説明するための図である。
【図１１】図１の情報処理装置の制御メイン処理を説明するためのフローチャートである。
【図１２】図１１の制御メイン処理における仮想マシン起動処理を説明するためのフローチャートである。
【図１３】図１１の制御メイン処理における仮想マシン停止処理を説明するためのフローチャートである。
【図１４】図１１の制御メイン処理における予測処理を説明するためのフローチャートである。
【図１５】図１４の予測処理において算出された仮想マシンの起動予測台数などを示す図である。
【図１６】図１４の予測処理における予測設定処理を説明するためのフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態に係る情報処理装置１について、図面を参照して説明する。
【００１５】
図１に示すように情報処理装置１及び１２個の物理サーバ３（３ａ、３ｂ、３ｃ、・・・３ｌ）は、インターネット等のネットワークＮＷに接続されている。また、複数の利用者端末５（５１、５２、・・・５ｎ）はネットワークＮＷに接続されている。物理サーバ３には、後述するようにハイパーバイザーが設定され、１台の物理サーバ３のハイパーバイザー上では仮想マシンが１０台起動可能である。
【００１６】
情報処理装置１は、物理サーバ３に設定されるハイパーバイザー及びハイパーバイザー上で起動または停止される仮想マシンを管理する。ハイパーバイザーは、コンピュータの仮想化技術のひとつである仮想マシンを実現するためのソフトウェア（制御プログラム）である。なお、ハイパーバイザーは、仮想化モニタや仮想化ＯＳと呼ばれることもある。ハイパーバイザーには、ＫＶＭ（Kernel-based Virtual Machine）と呼ばれるハイパーバイザー（以下、ＫＶＭハイパーバイザーという。）、Ｘｅｎ（ゼン）と呼ばれるハイパーバイザー（以下、Ｘｅｎハイパーバイザーという。）等がある。以下、この実施の形態では、ＫＶＭハイパーバイザーとＸｅｎハイパーバイザーの２種類のハイパーバイザーを用いて説明するが、ハイパーバイザーの種類はこれらのものに限られず、他の種類のハイパーバイザーであってもよい。
【００１７】
また、仮想マシンには、ＫＶＭハイパーバイザー上で起動される種類の仮想マシン（以下、ＫＶＭの仮想マシンという。）と、Ｘｅｎハイパーバイザー上で起動される種類の仮想マシン（以下、Ｘｅｎの仮想マシンという。）と、がある。
【００１８】
情報処理装置１は、図２に示すように制御部１１、記憶部１３、通信部１５、ＲＴＣ（Real Time Clock）１６を備えており、これらの各部はバス１７を介して接続されている。
【００１９】
制御部１１は、ＣＰＵ（Central Processor Unit）及びＲＡＭ（Random Access Memory）等を備え、バス１７を介して記憶部１３、通信部１５、ＲＴＣ１６などの各部の動作を制御するものである。制御部１１は、受信部２１、接続連携部２３、物理サーバ決定部２５、物理サーバ設定部２７、ＫＶＭ仮想マシン制御部２９、Ｘｅｎ仮想マシン制御部３１、仮想マシン移行部３７及び予測部３９の機能部を備える。これらの機能部は、ＲＡＭを作業領域として使用して記憶部１３に記憶されたプログラムを実行することにより実現される。
【００２０】
受信部２１は、通信部１５を介してネットワークと接続し、利用者端末５から送信された、仮想マシンを起動させる起動要求及び仮想マシンを停止させる停止要求を受信する。起動要求には、起動する仮想マシンの種類を示す仮想マシン種類情報（起動）と、起動する仮想マシン数を示す起動マシン数情報と、「優先度が高い」又は「優先度が低い」を示す優先度情報とが含まれている。停止要求には、停止する仮想マシンの種類を示す仮想マシン種類情報（停止）と、起動中の仮想マシンを搭載している物理サーバ３を示す物理サーバ情報と、停止する仮想マシンの台数を示す停止マシン数情報と、ユーザを特定するＩＤを示すユーザＩＤ情報と、「優先度が高い」又は「優先度が低い」を示す優先度情報とが含まれている。
【００２１】
接続連携部２３は、起動要求に含まれる仮想マシン種類情報（起動）から仮想マシンの種類がＫＶＭを示すものかＸｅｎを示すものかを特定する。接続連携部２３は、仮想マシンの種類がＫＶＭを示すものであると特定した場合、ＫＶＭ仮想マシン制御部２９及び物理サーバ決定部２５に起動要求を渡す。また、接続連携部２３は、仮想マシンの種類がＸｅｎを示すものであると特定した場合、Ｘｅｎ仮想マシン制御部３１及び物理サーバ決定部２５に起動要求を渡す。
【００２２】
接続連携部２３は、停止要求に含まれる仮想マシン種類情報（停止）から仮想マシンの種類がＫＶＭを示すものかＸｅｎを示すものかを特定する。接続連携部２３は、仮想マシンの種類がＫＶＭを示すものであると特定した場合、ＫＶＭ仮想マシン制御部２９に停止要求を渡す。また、接続連携部２３は、仮想マシンの種類がＸｅｎを示すものであると特定した場合、Ｘｅｎ仮想マシン制御部３１に停止要求を渡す。
【００２３】
物理サーバ決定部２５は、接続連携部２３から起動要求を受けとると、ブランク状態（いずれの種類のハイパーバイザーの設定も行われていない状態）の物理サーバ３に、当該起動要求に含まれる仮想マシン種類情報（起動）により示される仮想マシンの種類に対応する種類のハイパーバイザー（ＫＶＭハイパーバイザー又はＸｅｎハイパーバイザー）の設定を行うか否かを決定する。ここで、物理サーバ決定部２５は、起動要求に含まれる起動マシン数情報で指定されたＫＶＭ又はＸｅｎの仮想マシンの台数が、当該仮想マシン種類情報（起動）で示される種類に対応する種類のハイパーバイザーの設定がされた物理サーバ３における未起動仮想マシン台数を超えるか否かを判定（未起動仮想マシンが足りるか否かを判定）し、未起動仮想マシン台数を超えると判定された場合には、ブランク状態の新たな物理サーバ３に当該起動要求に含まれる仮想マシン種類情報（起動）により示される仮想マシンの種類に対応する種類のハイパーバイザーの設定を行うと決定する。
【００２４】
物理サーバ決定部２５は、ハイパーバイザーの設定を行うために必要な物理サーバ３の台数を特定し、特定した台数がブランク状態の物理サーバ３の台数以下である場合（ブランク状態の物理サーバ３が足りる場合）には、特定した台数分だけブランク状態の物理サーバ３から任意に指定し、指定した物理サーバ３に対してハイパーバイザーの設定を行うように物理サーバ設定部２７に指示をする。特定した台数がブランク状態の物理サーバ３の台数を超える場合（ブランク状態の物理サーバ３が足りない場合）には、ブランク状態の物理サーバ３がある台数分だけ物理サーバ３に対してハイパーバイザーの設定を行うように物理サーバ設定部２７に指示をする。また、ブランク状態の物理サーバ３が存在しない場合には、物理サーバ決定部２５は、仮想マシンの起動が不可能であることを、起動要求を送信した利用者端末５に通知する。なお、この場合には、物理サーバ決定部２５は、物理サーバ設定部２７へ指示をしない。
【００２５】
物理サーバ設定部２７が行うハイパーバイザーの設定が完了したあと、物理サーバ決定部２５は、当該起動要求に含まれる仮想マシン種類情報（起動）により示される仮想マシンの種類に応じた仮想マシン制御部（ＫＶＭ仮想マシン制御部２９又はＸｅｎ仮想マシン制御部３１）に、仮想マシンの起動を指示する。
【００２６】
また、上記起動要求に含まれる起動マシン数情報で指定されたＫＶＭ又はＸｅｎの仮想マシンの台数が、当該仮想マシン種類情報（起動）で示される種類に対応する種類のハイパーバイザーの設定がされた物理サーバ３における未起動仮想マシン台数を超えるか否かの判定において、未起動仮想マシン台数を超えないと判定された場合には、物理サーバ決定部２５は、物理サーバ設定部２７にハイパーバイザーの設定の指示をすることなく、当該起動要求に含まれる仮想マシン種類情報（起動）により示される仮想マシンの種類に応じた仮想マシン制御部（ＫＶＭ仮想マシン制御部２９又はＸｅｎ仮想マシン制御部３１）に、仮想マシンの起動を指示する。
【００２７】
物理サーバ決定部２５は、１０分毎に実行される後述する予測処理において、予測部３９が算出した最大起動予測台数が、算出対象の仮想マシンの種類に対応する種類のハイパーバイザーの設定がされた物理サーバ３における当該種類の仮想マシンの最大起動可能台数を超えるか否かを判定し、最大起動可能台数を超えると判定された場合には、ブランク状態の新たな物理サーバ３に当該算出対象の仮想マシンの種類に対応する種類のハイパーバイザーの設定を行うと決定する。物理サーバ決定部２５は、ハイパーバイザーの設定を行うために必要な物理サーバ３の台数を特定し、特定した台数がブランク状態の物理サーバ３の台数以下である場合（ブランク状態の物理サーバ３が足りる場合）には、特定した台数分だけブランク状態の物理サーバ３から任意に指定し、指定した物理サーバ３に対してハイパーバイザーの設定を行うように物理サーバ設定部２７に指示をする。特定した台数がブランク状態の物理サーバ３の台数を超える場合（ブランク状態の物理サーバ３が足りない場合）には、ブランク状態の物理サーバ３がある台数分だけ物理サーバ３に対してハイパーバイザーの設定を行うように物理サーバ設定部２７に指示をする。また、ブランク状態の物理サーバ３が存在しない場合には、物理サーバ決定部２５は、物理サーバ設定部２７へ指示をしない。
【００２８】
上記予測部３９が算出した最大起動予測台数が、算出対象の仮想マシンの種類に対応する種類のハイパーバイザーの設定がされた物理サーバ３における当該種類の仮想マシンの最大起動可能台数を超えるか否かの判定において、最大起動可能台数を超えないと判定された場合には、物理サーバ決定部２５は、物理サーバ設定部２７にハイパーバイザーの設定の指示をしない。
【００２９】
また、物理サーバ決定部２５は、ＫＶＭハイパーバイザー又はＸｅｎハイパーバイザーの設定がされた物理サーバ３における仮想マシン起動可能台数から、予測部３９が算出したＫＶＭ又はＸｅｎの仮想マシンについての最大起動予測台数を引いた数が、予め定められた数、この実施の形態では３０以上であるか否かを判定し、３０以上である場合には、ＫＶＭハイパーバイザー又はＸｅｎハイパーバイザーの設定がされた物理サーバ３に、ＫＶＭハイパーバイザー及びＸｅｎハイパーバイザーの設定がされていない状態（ブランク状態）にするブランク設定を行うと決定する。物理サーバ決定部２５は、ブランク設定を行うために必要な物理サーバ３の台数を特定し、特定した台数分だけ、仮想マシンが１台も起動されていない状態の物理サーバ３から任意に指定し、指定した物理サーバ３に対してブランク設定を行うように物理サーバ設定部２７に指示をする。
【００３０】
上記判定において、ＫＶＭハイパーバイザー又はＸｅｎハイパーバイザーの設定がされた物理サーバ３における仮想マシン起動可能台数から、予測部３９が算出したＫＶＭ又はＸｅｎの仮想マシンについての最大起動予測台数を引いた数が、３０未満である場合には、物理サーバ決定部２５は、物理サーバ設定部２７にブランク設定の指示をしない。
【００３１】
物理サーバ設定部２７は、物理サーバ決定部２５からハイパーバイザーの設定の指示を受けた場合には、当該指示において指定された物理サーバ３に対し当該指示された種類に応じたハイパーバイザーの設定を行う。ハイパーバイザーの設定が完了すると、物理サーバ設定部２７は、物理サーバ決定部２５にハイパーバイザーの設定が完了した旨を通知する。
【００３２】
また、物理サーバ設定部２７は、物理サーバ決定部２５からブランク設定の指示を受けた場合には、当該指示において指定された物理サーバ３に対しブランク設定を行う。ブランク設定が完了すると、物理サーバ設定部２７は、物理サーバ決定部２５にブランク設定が完了した旨を通知する。
【００３３】
ＫＶＭ仮想マシン制御部２９は、物理サーバ決定部２５から仮想マシンの起動の指示を受けた場合、ＫＶＭハイパーバイザーの設定がされた物理サーバ３において、起動要求に含まれる起動マシン数情報及び優先度情報に基づいてＫＶＭの仮想マシンを起動する。また、ＫＶＭ仮想マシン制御部２９は、接続連携部２３から停止要求を受けとると、当該停止要求に含まれる物理サーバ情報が示す物理サーバ３において、停止マシン数情報、ユーザＩＤ情報及び優先度情報に基づいてＫＶＭの仮想マシンを停止する。
【００３４】
Ｘｅｎ仮想マシン制御部３１は、物理サーバ決定部２５から仮想マシンの起動の指示を受けた場合、Ｘｅｎハイパーバイザーの設定がされた物理サーバ３において、起動要求に含まれる起動マシン数情報及び優先度情報に基づいてＸｅｎの仮想マシンを起動する。また、Ｘｅｎ仮想マシン制御部３１は、接続連携部２３から停止要求を受けとると、当該停止要求に含まれる物理サーバ情報が示す物理サーバ３において、停止マシン数情報、ユーザＩＤ情報及び優先度情報に基づいてＸｅｎの仮想マシンを停止する。
【００３５】
仮想マシン移行部３７は、ＫＶＭ又はＸｅｎハイパーバイザー上で起動しているＫＶＭ又はＸｅｎの仮想マシンを、ＫＶＭ又はＸｅｎハイパーバイザーが設定された物理サーバ３間で移行して、ＫＶＭ又はＸｅｎの仮想マシンが１台も起動されていない物理サーバ３を構築する起動中仮想マシン移行処理を実行する。
【００３６】
例えば、図３（Ａ）に示すように、２つの物理サーバ３ａ、３ｂにはＫＶＭハイパーバイザーが設定されている。そして、物理サーバ３ａのＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシンの台数（起動仮想マシン台数）は６台で、起動していないＫＶＭの仮想マシンの台数（未起動仮想マシン台数）は４台である。また、物理サーバ３ｂのＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシンの台数（起動仮想マシン台数）は３台で、起動していないＫＶＭの仮想マシンの台数（未起動仮想マシン台数）は７台である。この状態において、仮想マシン移行部３７は、起動中仮想マシン移行処理において、例えば物理サーバ３ｂのＫＶＭハイパーバイザー上で起動している３台のＫＶＭの仮想マシンに対応するＫＶＭの仮想マシンを、物理サーバ３ａのＫＶＭハイパーバイザー上で起動させ、その後、物理サーバ３ｂのＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシンを停止させる。その結果、図３（Ｂ）に示すように物理サーバ３ａのＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシンの台数は９台となり、起動していないＫＶＭの仮想マシンの台数は１台となる。また、物理サーバ３ｂのＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシンの台数は０台となり、起動していないＫＶＭの仮想マシンの台数は１０台となる。このように仮想マシン移行部３７は、ＫＶＭハイパーバイザーが設定された物理サーバ３ａ、３ｂ間で、起動しているＫＶＭの仮想マシンを移行して、ＫＶＭの仮想マシンが１台も起動されていない物理サーバ３ｂを構築する。物理サーバ３ａには起動中の仮想マシンが集約され、物理サーバ３ａの利用効率が良い状態となる。
【００３７】
予測部３９は、後述する起動履歴４３から、予め定められた時刻における仮想マシンの起動予測台数などを算出する。この実施の形態では、一例として、後述する起動履歴４３の移動平均値及び乖離率を用いて、予測タイミングの時刻から１０分後に起動されることが予測される仮想マシンの起動予測台数を算出する。具体的には、予測タイミングの時刻から遡って過去２５区間の乖離率のうち最大の乖離率を、予測タイミングの時刻の移動平均値に乗じて、起動予測台数を算出する。予測部３９が算出する仮想マシンの起動予測台数には、図１５に示すように優先度が高いＫＶＭの仮想マシンの起動予測台数、優先度が低いＫＶＭの仮想マシンの起動予測台数、優先度が高いＸｅｎの仮想マシンの起動予測台数及び優先度が低いＸｅｎの仮想マシンの起動予測台数がある。また、予測部３９は、優先度が低いＫＶＭの仮想マシンの起動予測台数と優先度が高いＫＶＭの仮想マシンの起動予測台数とを足しあわせてＫＶＭの仮想マシンの最大起動予測台数を算出し、優先度が高いＸｅｎの仮想マシンの起動予測台数と優先度が低いＸｅｎの仮想マシンの起動予測台数とを足しあわせてＸｅｎの仮想マシンの最大起動予測台数を算出する。
【００３８】
通信部１５は、インターネット等のネットワークＮＷに繋ぐＮＩＣ（Network Interface Card）等から構成されている。通信部１５は、制御部１１に接続されるとともに、ネットワークＮＷを介して、利用者端末５との間でデータの送受信を行うものである。
【００３９】
ＲＴＣ１６は、現在の日時（「年」、「月」、「日」、「時」、「分」、「秒」）を示すために計時を行う装置である。
【００４０】
記憶部１３は、フラッシュメモリ、ハードディスク、ＤＶＤ−ＲＡＭ（Digital Versatile Disc Random-Access Memory）、ＤＶＤ−ＲＷ（Digital Versatile Disc ReWritable）等の不揮発性メモリから構成され、マシン管理テーブル４１と起動状況管理テーブル４２と起動履歴４３（４３ａ〜４３ｄ）とを備えている。
【００４１】
マシン管理テーブル４１について説明する。
【００４２】
マシン管理テーブル４１は、物理サーバ３の設定状況や仮想マシンの起動状況を示す値（データ）を格納し、仮想マシンの起動や停止、物理サーバ３へのハイパーバイザーの設定やブランク設定が行われた後に、マシン管理テーブル更新処理が実行されることによって格納される値が更新されるものである。
【００４３】
図４は、マシン管理テーブル４１の一例を示している。マシン管理テーブル４１では、例えば、ハイパーバイザーＩＤ、ハイパーバイザー名、割り当て物理サーバ台数、１物理サーバ当りの仮想マシン起動可能台数、仮想マシン最大起動可能台数、起動中仮想マシン台数、未起動仮想マシン台数の各項目が設定されている。さらに起動中仮想マシン台数には、起動要求に含まれる優先度情報に応じて、「優先度が高い」に対応する優先度：高と、「優先度が低い」に対応する優先度：低の項目が設定されている。
【００４４】
マシン管理テーブル４１のハイパーバイザーＩＤには、「０」、「１」、「２」の３つのＩＤが設定されている。ハイパーバイザー名には、ハイパーバイザーが設定されていないことを示す「ブランク」、ＫＶＭハイパーバイザーが設定されていることを示す「ＫＶＭ」、Ｘｅｎハイパーバイザーが設定されていることを示す「Ｘｅｎ」の３つの名称が設定されている。ハイパーバイザー名「ブランク」は、ハイパーバイザーＩＤ「０」に対応し、ハイパーバイザー名「ＫＶＭ」は、ハイパーバイザーＩＤ「１」に対応しており、ハイパーバイザー名「Ｘｅｎ」は、ハイパーバイザーＩＤ「２」に対応している。
【００４５】
マシン管理テーブル４１における割り当て物理サーバ台数には、ブランク状態の物理サーバ３の台数、ＫＶＭハイパーバイザーが設定されている物理サーバ３の台数、Ｘｅｎハイパーバイザーが設定されている物理サーバ３の台数を示す値が格納される。１物理サーバ当りの仮想マシン起動可能台数には、１つの物理サーバ３に設定されたＫＶＭ又はＸｅｎハイパーバイザー上で仮想マシンが起動することができる台数を示す値が格納される。仮想マシン最大起動可能台数には、ＫＶＭ又はＸｅｎハイパーバイザーが設定された全ての物理サーバ３においてＫＶＭ又はＸｅｎの仮想マシンを起動することができる最大の台数を示す値が格納される。起動中仮想マシン台数には、ＫＶＭハイパーバイザー上で起動している全てのＫＶＭの仮想マシンの台数を示す値が優先度毎に格納され、また、Ｘｅｎハイパーバイザー上で起動している全てのＸｅｎの仮想マシンの台数を示す値が優先度毎に格納される。未起動仮想マシン台数には、ＫＶＭ又はＸｅｎハイパーバイザーが設定された全ての物理サーバ３においてＫＶＭ又はＸｅｎの仮想マシンの未起動の台数を示す値が格納される。
【００４６】
一例として、図５は、予測タイミングの時刻である１０：５０の時点の物理サーバ３の設定状況や仮想マシンの起動状況を示している。図５（Ａ）に示すように４つの物理サーバ３（３ａ〜３ｄ）には、ＫＶＭハイパーバイザーが設定されている。上述したように１台の物理サーバ３のハイパーバイザー上では仮想マシンが１０台起動可能であるので、４つの物理サーバ３（３ａ〜３ｄ）のＫＶＭハイパーバイザー上ではＫＶＭの仮想マシンが最大４０台分起動可能となっている。この起動可能な４０台分のうち１４台が優先度の高いＫＶＭの仮想マシンとして起動しており、１１台が優先度の低いＫＶＭの仮想マシンとして起動している。従って、起動可能な４０台分のうち１５台分が未起動となっている。このような状態においては、図４に示すようにハイパーバイザーＩＤ「１」及びハイパーバイザー名「ＫＶＭ」に対応する割り当て物理サーバ台数には「４」が格納され、１物理サーバ当りの仮想マシン起動可能台数には「１０」が格納されており、仮想マシン最大起動可能台数には「４０」が格納されている。また、起動中仮想マシン台数の優先度：高には「１４」が格納され、起動中仮想マシン台数の優先度：低には「１１」が格納されており、未起動仮想マシン台数には「１５」が格納されている。
【００４７】
また、図５（Ｂ）に示すように２つの物理サーバ３（３ｅ〜３ｆ）には、Ｘｅｎハイパーバイザーが設定されている。上述したように１台の物理サーバ３のハイパーバイザー上では仮想マシンが１０台起動可能であるので、２つの物理サーバ３（３ｅ〜３ｆ）のＸｅｎハイパーバイザー上ではＸｅｎの仮想マシンが最大２０台分起動可能となっている。この起動可能な２０台分のうち３台が優先度の高いＸｅｎの仮想マシンとして起動しており、４台が優先度の低いＸｅｎの仮想マシンとして起動している。従って、起動可能な２０台分のうち１３台分が未起動となっている。このような状態においては、図４に示すようにハイパーバイザーＩＤ「２」及びハイパーバイザー名「Ｘｅｎ」に対応する割り当て物理サーバ台数には「２」が格納され、１物理サーバ当りの仮想マシン起動可能台数には「１０」が格納されており、仮想マシン最大起動可能台数には「２０」が格納されている。また、起動中仮想マシン台数の優先度：高には「３」が格納され、起動中仮想マシン台数の優先度：低には「４」が格納されており、未起動仮想マシン台数には「１３」が格納されている。
【００４８】
また、図５（Ｃ）に示すように６つの物理サーバ３（３ｇ〜３ｌ）には、ハイパーバイザーが設定されておらず、６つの物理サーバ３（３ｇ〜３ｌ）はブランク状態となっている。このような状態においては、図４に示すようにハイパーバイザーＩＤ「０」及びハイパーバイザー名「ブランク」に対応する割り当て物理サーバ台数には「６」が格納されている。なお、１物理サーバ当りの仮想マシン起動可能台数、仮想マシン最大起動可能台数、起動中仮想マシン台数及び未起動仮想マシン台数には、「０」が格納されている。
【００４９】
次に、起動状況管理テーブル４２について説明する。
【００５０】
起動状況管理テーブル４２は、各物理サーバ３における仮想マシンの起動状況を示す値を格納し、仮想マシンの起動や停止、起動している仮想マシンの移行が行われた後に、起動状況管理テーブル更新処理が実行されることによって格納される値が更新されるものである。図６は、起動状況管理テーブル４２の一例を示している。起動状況管理テーブル４２では、例えば、物理サーバＩＤ、ＫＶＭ起動カウント値、ＫＶＭ未起動カウント値、Ｘｅｎ起動カウント値、Ｘｅｎ未起動カウント値の各項目が設定されている。
【００５１】
起動状況管理テーブル４２の物理サーバＩＤには、「３ａ」、「３ｂ」、「３ｃ」・・・「３ｌ」の１２個のＩＤが設定されている。物理サーバＩＤ「３ａ」には物理サーバ３ａが、物理サーバＩＤ「３ｂ」には物理サーバ３ｂが、物理サーバＩＤ「３ｃ」には物理サーバ３ｃが、・・・物理サーバＩＤ「３ｌ」には物理サーバ３ｌが、それぞれ対応している。
【００５２】
起動状況管理テーブル４２におけるＫＶＭ起動カウント値には、物理サーバ３にＫＶＭハイパーバイザーが設定されている場合に、当該物理サーバ３のＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシン台数を示す値が格納される。また、ＫＶＭ未起動カウント値には、物理サーバ３にＫＶＭハイパーバイザーが設定されている場合に、当該物理サーバ３のＫＶＭハイパーバイザー上における未起動のＫＶＭの仮想マシン台数を示す値が格納される。
【００５３】
起動状況管理テーブル４２におけるＸｅｎ起動カウント値には、物理サーバ３にＸｅｎハイパーバイザーが設定されている場合に、当該物理サーバ３のＸｅｎハイパーバイザー上で起動しているＸｅｎの仮想マシン台数を示す値が格納される。また、Ｘｅｎ未起動カウント値には、物理サーバ３にＸｅｎハイパーバイザーが設定されている場合に、当該物理サーバ３のＸｅｎハイパーバイザー上における未起動のＸｅｎの仮想マシン台数を示す値が格納される。
【００５４】
図６（Ａ）は、予測タイミングの時刻である１０：５０の時点の各物理サーバ３における仮想マシンの起動状況を示している。上述したように４つの物理サーバ３（３ａ〜３ｄ）にはＫＶＭハイパーバイザーが設定され、２つの物理サーバ３（３ｅ〜３ｆ）にはＸｅｎハイパーバイザーが設定されており、６つの物理サーバ３（３ｇ〜３ｌ）はブランク状態となっている。
【００５５】
物理サーバ３ａのＫＶＭハイパーバイザー上では、１０台の仮想マシンが起動している（図５（Ａ）参照）。物理サーバ３ｂのＫＶＭハイパーバイザー上では、１０台の仮想マシンが起動している（図５（Ａ）参照）。物理サーバ３ｃのＫＶＭハイパーバイザー上では、５台の仮想マシンが起動している。また、物理サーバ３ｄのＫＶＭハイパーバイザー上では、仮想マシンが１台も起動していない（図５（Ａ）参照）。このような状態においては、図６（Ａ）に示すように物理サーバＩＤ「３ａ」に対応するＫＶＭ起動カウント値には「１０」が格納され、ＫＶＭ未起動カウント値には「０」が格納される。物理サーバＩＤ「３ｂ」に対応するＫＶＭ起動カウント値には「１０」が格納され、ＫＶＭ未起動カウント値には「０」が格納される。物理サーバＩＤ「３ｃ」に対応するＫＶＭ起動カウント値には「５」が格納され、ＫＶＭ未起動カウント値には「５」が格納される。また、物理サーバＩＤ「３ｄ」に対応するＫＶＭ起動カウント値には「０」が格納され、ＫＶＭ未起動カウント値には「１０」が格納される。なお、４つの物理サーバ３（３ａ〜３ｄ）にはＫＶＭハイパーバイザーが設定されているので、物理サーバＩＤ「３ａ」〜「３ｄ」に対応するＸｅｎ起動カウント値及びＸｅｎ未起動カウント値にはそれぞれ「０」が格納される。
【００５６】
また、物理サーバ３ｅのＸｅｎハイパーバイザー上では、７台の仮想マシンが起動している。物理サーバ３ｆのＸｅｎハイパーバイザー上では、仮想マシンが１台も起動していない（図５（Ｂ）参照）。このような状態においては、図６（Ａ）に示すように物理サーバＩＤ「３ｅ」に対応するＸｅｎ起動カウント値には「７」が格納され、Ｘｅｎ未起動カウント値には「３」が格納される。物理サーバＩＤ「３ｆ」に対応するＸｅｎ起動カウント値には「０」が格納され、Ｘｅｎ未起動カウント値には「１０」が格納される。なお、２つの物理サーバ３（３ｅ〜３ｆ）にはＸｅｎハイパーバイザーが設定されているので、物理サーバＩＤ「３ｅ」〜「３ｆ」に対応するＫＶＭ起動カウント値及びＫＶＭ未起動カウント値にはそれぞれ「０」が格納される。
【００５７】
また、上述したように６つの物理サーバ３（３ｇ〜３ｌ）は、ブランク状態となっている。このような状態においては、図６（Ａ）に示すように物理サーバＩＤ「３ｇ」〜「３ｌ」に対応するＫＶＭ起動カウント値、ＫＶＭ未起動カウント値、Ｘｅｎ起動カウント値及びＸｅｎ未起動カウント値にはそれぞれ「０」が格納される。
【００５８】
ここで、仮想マシンを停止させる停止要求を受信したことに基づいて、後述する仮想マシン停止処理において物理サーバ３ａのＫＶＭハイパーバイザー上で起動されていた仮想マシンが４台、物理サーバ３ｂのＫＶＭハイパーバイザー上で起動されていた仮想マシンが７台、物理サーバ３ｃのＫＶＭハイパーバイザー上で起動されていた仮想マシンが５台それぞれ停止され、起動状況管理テーブル更新処理が実行されると、起動状況管理テーブル４２は、図６（Ｂ）に示す状態となる。
【００５９】
図６（Ｂ）に示すように物理サーバＩＤ「３ａ」に対応するＫＶＭ起動カウント値には「６」が格納され、ＫＶＭ未起動カウント値には「４」が格納される。物理サーバＩＤ「３ｂ」に対応するＫＶＭ起動カウント値には「３」が格納され、ＫＶＭ未起動カウント値には「７」が格納される。物理サーバＩＤ「３ｃ」に対応するＫＶＭ起動カウント値には「０」が格納され、ＫＶＭ未起動カウント値には「１０」が格納される。なお、物理サーバ３ｄ〜３ｌにおける仮想マシンの起動状況には変更がないので、物理サーバＩＤ「３ｄ」〜「３ｌ」に対応する起動カウント値及び未起動カウント値は更新されない。
【００６０】
次に、図６（Ｂ）に示す状態において、上述した仮想マシン移行部３７による起動中仮想マシン移行処理が実行された場合、図３（Ｂ）に示すように物理サーバ３ａのＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシンの台数は９台となり、起動していないＫＶＭの仮想マシンの台数は１台となる。また、物理サーバ３ｂのＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシンの台数は０台となり、起動していないＫＶＭの仮想マシンの台数は１０台となる。このような状態において起動状況管理テーブル更新処理が実行されると、起動状況管理テーブル４２は、図６（Ｃ）に示す状態となる。
【００６１】
図６（Ｃ）に示すように物理サーバＩＤ「３ａ」に対応するＫＶＭ起動カウント値には「９」が格納され、ＫＶＭ未起動カウント値には「１」が格納される。物理サーバＩＤ「３ｂ」に対応するＫＶＭ起動カウント値には「０」が格納され、ＫＶＭ未起動カウント値には「１０」が格納される。なお、物理サーバ３ｃ〜３ｌにおける仮想マシンの起動状況には変更がないので、物理サーバＩＤ「３ｃ」〜「３ｌ」に対応する起動カウント値及び未起動カウント値は更新されない。
【００６２】
次に、起動履歴４３について説明する。
【００６３】
起動履歴４３は、予め定められた時刻における仮想マシンの起動台数等の履歴を記憶するものである。この実施の形態では、予測タイミングの時刻において当該時刻に起動している仮想マシンの起動台数を記憶する履歴記憶処理を実行することによって、起動履歴４３には予測タイミングの時刻毎の起動台数の履歴が記憶される。予測タイミングの時刻は、一例として、６：５０、７：００、・・・１０：５０といった１０分毎の時刻に設定されている。
【００６４】
図７〜図１０は、起動履歴４３の一例を示している。起動履歴４３には、図７（Ａ）に示す優先度が高いＫＶＭの仮想マシンの起動履歴４３ａ、図８（Ａ）に示す優先度が低いＫＶＭの仮想マシンの起動履歴４３ｂ、図９（Ａ）に示す優先度が高いＸｅｎの仮想マシンの起動履歴４３ｃ及び図１０（Ａ）に示す優先度が低いＸｅｎの仮想マシンの起動履歴４３ｄといったように仮想マシンの種類及び優先度に応じて４つの起動履歴４３（４３ａ〜４３ｄ）が用意されている。起動履歴４３（４３ａ〜４３ｄ）では、例えば、時刻、起動台数、移動平均値、乖離率の各項目が設定されている。
【００６５】
起動履歴４３の時刻には、履歴記憶処理が実行される時刻である６：５０、７：００、・・・１０：５０といった１０分毎の時刻が設定される。起動台数には、上記時刻に起動している仮想マシンの起動台数を示す値が格納される。移動平均値には、上記時刻から遡って過去２５区間の起動台数の平均値が格納される。乖離率には、移動平均値に対して起動台数がどれだけ離れているかを示す値が格納される。
【００６６】
例えば、予測タイミングの時刻である１０：５０の時点においては、上述したように優先度の高いＫＶＭの仮想マシンは１４台起動しているので、図７（Ａ）の起動履歴４３ａに示すように、時刻１０：５０に対応する起動台数には「１４」が格納される。時刻１０：５０に対応する移動平均値には、時刻１０：５０から遡って過去２５区間の起動台数の平均値、即ち、時刻６：５０〜時刻１０：５０の起動台数の平均値「１１．９」が格納される。また、時刻１０：５０に対応する乖離率には、｛（起動台数−移動平均値）／移動平均値｝×１００の計算式により算出された値「１７．４」が格納される。
【００６７】
また、予測タイミングの時刻である１０：５０の時点においては、上述したように優先度の低いＫＶＭの仮想マシンは１１台起動しているので、図８（Ａ）の起動履歴４３ｂに示すように、時刻１０：５０に対応する起動台数には「１１」が格納される。時刻１０：５０に対応する移動平均値には、時刻１０：５０から遡って過去２５区間の起動台数の平均値、即ち、時刻６：５０〜時刻１０：５０の起動台数の平均値「８．６」が格納される。また、時刻１０：５０に対応する乖離率には、｛（起動台数−移動平均値）／移動平均値｝×１００の計算式により算出された値「２７．３」が格納される。
【００６８】
予測タイミングの時刻である１０：５０の時点においては、上述したように優先度の高いＸｅｎの仮想マシンは３台起動しているので、図９（Ａ）の起動履歴４３ｃに示すように、時刻１０：５０に対応する起動台数には「３」が格納される。時刻１０：５０に対応する移動平均値には、時刻１０：５０から遡って過去２５区間の起動台数の平均値、即ち、時刻６：５０〜時刻１０：５０の起動台数の平均値「１．９」が格納される。また、時刻１０：５０に対応する乖離率には、｛（起動台数−移動平均値）／移動平均値｝×１００の計算式により算出された値「５６．３」が格納される。
【００６９】
また、予測タイミングの時刻である１０：５０の時点においては、上述したように優先度の低いＸｅｎの仮想マシンは４台起動しているので、図１０（Ａ）の起動履歴４３ｄに示すように、時刻１０：５０に対応する起動台数には「４」が格納される。時刻１０：５０に対応する移動平均値には、時刻１０：５０から遡って過去２５区間の起動台数の平均値、即ち、時刻６：５０〜時刻１０：５０の起動台数の平均値「２．１」が格納される。また、時刻１０：５０に対応する乖離率には、｛（起動台数−移動平均値）／移動平均値｝×１００の計算式により算出された値「８８．７」が格納される。
【００７０】
なお、図７（Ｂ）〜図１０（Ｂ）は、図７（Ａ）〜図１０（Ａ）の起動履歴４３をグラフで示したものである。
【００７１】
図１に示す物理サーバ３は、ＣＰＵ、ＲＡＭ、記憶部等を備えるコンピュータ装置から構成され、設定されたＫＶＭハイパーバイザーやＸｅｎハイパーバイザー上でＫＶＭ又はＸｅｎの仮想マシンが動作するためのサーバである。物理サーバ３は、ＫＶＭハイパーバイザーの設定又はＸｅｎハイパーバイザーの設定が行われた状態で、１台あたりＫＶＭの仮想マシンを１０台又はＸｅｎの仮想マシンを１０台起動可能である（図３参照）。
【００７２】
次に、本実施の形態に係る情報処理装置１の動作について、図１１〜図１６を参照して説明する。まず、情報処理装置１の制御部１１が実行する制御メイン処理について、図１１を用いて説明する。
【００７３】
制御メイン処理は、情報処理装置１に電源が投入されることにより開始される。制御メイン処理を開始すると、受信部２１は、利用者端末５から要求を受信したか否かを判定する（ステップＳ１１）。ステップＳ１１にて利用者端末５から要求を受信したと判定された場合（ステップＳ１１；Ｙｅｓ）、接続連携部２３は、受信部２１によって受信された要求が、仮想マシンを起動させる起動要求であるか仮想マシンを停止させる停止要求であるかを判定する（ステップＳ１２）。ステップＳ１２にて起動要求であると判定された場合（ステップＳ１２；［０］）、接続連携部２３は、起動要求に含まれる仮想マシン種類情報（起動）から仮想マシンの種類がＫＶＭを示すものであるかＸｅｎを示すものであるかを特定する（ステップＳ１３）。ステップＳ１３にて仮想マシンの種類がＫＶＭを示すものであると特定された場合、接続連携部２３は、ＫＶＭ仮想マシン制御部２９及び物理サーバ決定部２５に起動要求を渡す（ステップＳ１４）。また、ステップＳ１３にて仮想マシンの種類がＸｅｎを示すものであると特定された場合、接続連携部２３は、Ｘｅｎ仮想マシン制御部３１及び物理サーバ決定部２５に起動要求を渡す（ステップＳ１４）。ステップＳ１４の処理を実行した後、制御部１１は、仮想マシン起動処理を実行する（ステップＳ１５）。
【００７４】
ステップＳ１５の仮想マシン起動処理について、図１２を用いて説明する。なお、ステップＳ１５の仮想マシン起動処理においては、受信した起動要求に含まれる仮想マシン種類情報（起動）から特定された仮想マシンの種類がＫＶＭを示すものであるかＸｅｎを示すものであるかにかかわらす、同じフローになるので、仮想マシン種類情報（起動）から特定された仮想マシンの種類がＫＶＭを示すものである場合について説明することとし、仮想マシン種類情報（起動）から特定された仮想マシンの種類がＸｅｎを示すものである場合については説明を省略する。
【００７５】
ステップＳ１５の仮想マシン起動処理を開始すると、物理サーバ決定部２５は、まず、起動要求に含まれる起動マシン数情報から起動する仮想マシン数を特定する（ステップＳ３１）。そして、物理サーバ決定部２５は、マシン管理テーブル４１のハイパーバイザーＩＤ「１」（ハイパーバイザー名「ＫＶＭ」）に対応する未起動仮想マシン台数に格納された値を読み取り、ＫＶＭハイパーバイザーの設定がなされた物理サーバ３における未起動仮想マシン台数を特定する（ステップＳ３２）。
【００７６】
次に、物理サーバ決定部２５は、ステップＳ３１にて特定された起動する仮想マシン数と、ステップＳ３２にて特定された未起動仮想マシン台数とを比較し、起動する仮想マシン数が、未起動仮想マシン台数を超えているか否かを判定する（ステップＳ３３）。ステップＳ３３にて起動する仮想マシン数が未起動仮想マシン台数を超えていると判定された場合（ステップＳ３３；Ｙｅｓ）、物理サーバ決定部２５は、ブランク状態の新たな物理サーバ３にＫＶＭハイパーバイザーの設定を行うと決定する（ステップＳ３４）。
【００７７】
そして、物理サーバ決定部２５は、ＫＶＭハイパーバイザーの設定を行うために必要な物理サーバ３の台数を特定する（ステップＳ３５）。ここで、例えば起動する仮想マシン数から未起動仮想マシン台数を引いた数が１〜１０のいずれかである場合には、ＫＶＭハイパーバイザーの設定を行う物理サーバ３の台数を１台と特定し、起動する仮想マシン数から未起動仮想マシン台数を引いた数が１１〜２０のいずれかである場合には、ＫＶＭハイパーバイザーの設定を行う物理サーバ３の台数を２台と特定する。同様に、起動する仮想マシン数から未起動仮想マシン台数を引いた数が２１〜３０のいずれか、３１〜４０のいずれか、・・・である場合には、ＫＶＭハイパーバイザーの設定を行う物理サーバ３の台数を３台、４台、・・・と特定する。
【００７８】
次に、物理サーバ決定部２５は、マシン管理テーブル４１のハイパーバイザーＩＤ「０」（ハイパーバイザー名「ブランク」）に対応する割り当て物理サーバ台数に格納された値を読み取り、ブランク状態の物理サーバ３の台数を特定する（ステップＳ３６）。そして、物理サーバ決定部２５は、ステップＳ３５にて特定した必要な物理サーバ３の台数と、ステップＳ３６にて特定したブランク状態の物理サーバ３の台数とを比較し、必要な物理サーバ３の台数が、ブランク状態の物理サーバ３の台数を超えているか否かを判定する（ステップＳ３７）。ステップＳ３７にて必要な物理サーバ３の台数がブランク状態の物理サーバ３の台数を超えていないと判定された場合（ステップＳ３７；Ｎｏ）、物理サーバ決定部２５は、ステップＳ３５にて特定した台数分だけブランク状態の物理サーバ３から任意に指定し、指定した物理サーバ３に対してＫＶＭハイパーバイザーの設定を行うように物理サーバ設定部２７に指示をする（ステップＳ３８）。
【００７９】
また、ステップＳ３７にて必要な物理サーバ３の台数がブランク状態の物理サーバ３の台数を超えていると判定された場合には（ステップＳ３７；Ｙｅｓ）、物理サーバ決定部２５は、ブランク状態の物理サーバ３の台数が０であるか否かを判定する（ステップＳ３９）。ステップＳ３９にてブランク状態の物理サーバ３の台数が０でないと判定された場合には（ステップＳ３９；ＮＯ）、物理サーバ決定部２５は、ステップＳ３６にて特定したブランク状態の物理サーバ３の台数分だけブランク状態の物理サーバ３に対してＫＶＭハイパーバイザーの設定を行うように物理サーバ設定部２７に指示をする（ステップＳ３８）。
【００８０】
ステップＳ３８の処理を実行した後、物理サーバ設定部２７は、ステップＳ３８の指示に基づいて、指定されたブランク状態の物理サーバ３に対してＫＶＭハイパーバイザーの設定を行う（ステップＳ４０）。
【００８１】
ステップＳ４０の処理を実行した後、ステップＳ３９にてブランク状態の物理サーバ３の台数が０であると判定された場合（ステップＳ３９；Ｙｅｓ）又はステップＳ３３にて起動する仮想マシン数が未起動仮想マシン台数を超えていないと判定された場合には（ステップＳ３３；Ｎｏ）、物理サーバ決定部２５は、ＫＶＭ仮想マシン制御部２９に仮想マシンの起動を指示する（ステップＳ４６）。
【００８２】
なお、ステップＳ３９にてブランク状態の物理サーバ３の台数が０であると判定された場合や（ステップＳ３９；Ｙｅｓ）、ステップＳ３９にてブランク状態の物理サーバ３の台数が０でないと判定され（ステップＳ３９；ＮＯ）、ステップＳ３６にて特定したブランク状態の物理サーバ３の台数分だけブランク状態の物理サーバ３に対してＫＶＭハイパーバイザーの設定を行った場合には（ステップＳ３８、ステップＳ４０）、起動する仮想マシン数が未起動仮想マシン台数を未だ超えている状態である。この場合には、ステップＳ４６において、物理サーバ決定部２５は、ＫＶＭ仮想マシン制御部２９に未起動仮想マシン台数分の仮想マシンの起動を指示する。
【００８３】
次に、ＫＶＭ仮想マシン制御部２９は、物理サーバ決定部２５から仮想マシンの起動の指示を受けると、ＫＶＭハイパーバイザーの設定がされた物理サーバ３において、起動要求に含まれる起動マシン数情報及び優先度情報に基づいてＫＶＭの仮想マシンを起動する（ステップＳ４７）。例えば、優先度情報が「優先度が高い」を示す場合、起動マシン数情報で示される台数分のＫＶＭの仮想マシンを優先度が高いものとして起動する。また、優先度情報が「優先度が低い」を示す場合、起動マシン数情報で示される台数分のＫＶＭの仮想マシンを優先度が低いものとして起動する。なお、上記したようにステップＳ４６にて物理サーバ決定部２５が未起動仮想マシン台数分の仮想マシンの起動を指示した場合には、当該指示された台数のＫＶＭの仮想マシンを起動する。
【００８４】
そして、ＫＶＭの仮想マシンを起動した後、ＫＶＭ仮想マシン制御部２９は、ＫＶＭの仮想マシンを起動したことを、起動要求を送信した利用者端末５に通知する。この通知には、起動した仮想マシンの種類を示す仮想マシン種類情報、起動した仮想マシンを搭載している物理サーバ３を示す物理サーバ情報、起動した仮想マシンの台数を示す起動済マシン数情報、起動した仮想マシンの優先度情報などが含まれている。ステップＳ４７の処理を実行した後、制御部１１は、マシン管理テーブル更新処理を実行する（ステップＳ４８）。
【００８５】
ステップＳ４８のマシン管理テーブル更新処理では、マシン管理テーブル４１の各項目に格納されている値を更新する。具体的には、マシン管理テーブル４１におけるハイパーバイザー名「ブランク」に対応する割り当て物理サーバ台数に格納されている値を読み出し、ステップＳ４０にてハイパーバイザーの設定が行われた物理サーバ３の台数分の値を、読み出した値から引き、その結果をマシン管理テーブル４１の割り当て物理サーバ台数に再度格納する。また、マシン管理テーブル４１におけるハイパーバイザー名「ＫＶＭ」に対応する割り当て物理サーバ台数に格納されている値を読み出し、ステップＳ４０にてハイパーバイザーの設定が行われた物理サーバ３の台数分の値を、読み出した値に足し、その結果を割り当て物理サーバ台数に再度格納する。そして、ハイパーバイザー名「ＫＶＭ」に対応する仮想マシン最大起動可能台数に格納されている値を読み出し、ステップＳ４０にてハイパーバイザーの設定が行われた物理サーバ３の台数に１０を乗じて得た値を、読み出した値に足し、その結果をマシン管理テーブル４１の仮想マシン最大起動可能台数に再度格納する。さらに、ハイパーバイザー名「ＫＶＭ」に対応する未起動仮想マシン台数に格納されている値を読み出し、ステップＳ４０にてハイパーバイザーの設定が行われた物理サーバ３の台数に１０を乗じて得た値を、読み出した値に足し、その結果をマシン管理テーブル４１の未起動仮想マシン台数に再度格納する。
【００８６】
また、マシン管理テーブル４１におけるハイパーバイザー名「ＫＶＭ」に対応する起動中仮想マシン台数に格納されている値を読み出し、ステップＳ４７にて起動されたＫＶＭの仮想マシンの台数分の値を、読み出した値に足し、その結果をマシン管理テーブル４１の起動中仮想マシン台数に再度格納する。なお、起動されたＫＶＭの仮想マシンが優先度の高いものである場合には、マシン管理テーブル４１の起動中仮想マシン台数における優先度：高に対して上記処理が実行され、起動されたＫＶＭの仮想マシンが優先度の低いものである場合には、マシン管理テーブル４１の起動中仮想マシン台数における優先度：低に対して上記処理が実行される。また、ハイパーバイザー名「ＫＶＭ」に対応する未起動仮想マシン台数に格納されている値を読み出し、ステップＳ４７にて起動されたＫＶＭの仮想マシンの台数分の値を、読み出した値から引き、その結果をマシン管理テーブル４１の未起動仮想マシン台数に再度格納する。
【００８７】
ステップＳ４８の処理を実行した後、制御部１１は、起動状況管理テーブル更新処理を実行する（ステップＳ４９）。ステップＳ４９の起動状況管理テーブル更新処理では、起動状況管理テーブル４２におけるカウント値を更新する。例えば、図６（Ａ）に示す状態から、ステップＳ４７にて物理サーバ３ｃのＫＶＭハイパーバイザー上でＫＶＭの仮想マシンが１台起動した場合、物理サーバＩＤ「３ｃ」に対応するＫＶＭ起動カウント値に格納された値「５」を読み出し、読み出した値に「１」を足し、その結果である「６」を起動状況管理テーブル４２のＫＶＭ起動カウント値に再度格納する。また、物理サーバＩＤ「３ｃ」に対応するＫＶＭ未起動カウント値に格納された値「５」を読み出し、読み出した値から「１」を引き、その結果である「４」を起動状況管理テーブル４２のＫＶＭ未起動カウント値に再度格納する。
【００８８】
図１２に示すようにステップＳ４９の処理を実行した後、制御部１１は、仮想マシン起動処理を終了する。
【００８９】
図１１に戻り、ステップＳ１２にて停止要求であると判定された場合（ステップＳ１２；［１］）、接続連携部２３は、停止要求に含まれる仮想マシン種類情報（停止）がＫＶＭを示すものでああるかＸｅｎを示すものであるか特定する（ステップＳ１８）。ステップＳ１８にてＫＶＭを示すものであると特定した場合、接続連携部２３は、ＫＶＭ仮想マシン制御部２９に停止要求を渡す（ステップＳ１９）。また、ステップＳ１８にてＸｅｎを示すものであると特定した場合、接続連携部２３は、Ｘｅｎ仮想マシン制御部３１に停止要求を渡す（ステップＳ１９）。ステップＳ１９の処理を実行した後、制御部１１は、仮想マシン停止処理を実行する（ステップＳ２０）。
【００９０】
ステップＳ２０の仮想マシン停止処理について、図１３を用いて説明する。なお、ステップＳ２０の仮想マシン停止処理においては、受信した停止要求に含まれる仮想マシン種類情報（停止）から特定された仮想マシンの種類がＫＶＭを示すものであるかＸｅｎを示すものであるかにかかわらす、同じフローになるので、仮想マシン種類情報（停止）から特定された仮想マシンの種類がＫＶＭを示すものである場合について説明することとし、仮想マシン種類情報（停止）から特定された仮想マシンの種類がＸｅｎを示すものである場合については説明を省略する。
【００９１】
ステップＳ２０の仮想マシン停止処理を開始すると、ＫＶＭ仮想マシン制御部２９は、当該停止要求に含まれる物理サーバ情報が示す物理サーバ３において、当該停止要求に含まれる停止マシン数情報、ユーザＩＤ情報及び優先度情報に基づいてＫＶＭの仮想マシンを停止する（ステップＳ５１）。例えば、優先度情報が「優先度が高い」を示す場合、ユーザＩＤ情報が示すＩＤ及び「優先度が高い」に対応するＫＶＭの仮想マシンのうち停止マシン数情報で示される台数のＫＶＭの仮想マシンを停止する。また、優先度情報が「優先度が低い」を示す場合、ユーザＩＤ情報が示すＩＤ及び「優先度が低い」に対応するＫＶＭの仮想マシンのうち停止マシン数情報で示される台数のＫＶＭの仮想マシンを停止する。
【００９２】
ステップＳ５１の処理を実行した後、制御部１１は、マシン管理テーブル更新処理を実行する（ステップＳ５２）。
【００９３】
ステップＳ５２のマシン管理テーブル更新処理では、マシン管理テーブル４１の各項目に格納されている値を更新する。具体的には、マシン管理テーブル４１におけるハイパーバイザー名「ＫＶＭ」に対応する起動中仮想マシン台数に格納されている値を読み出し、ステップＳ５１にて停止された仮想マシンの台数分の値を、読み出した値から引き、その結果をマシン管理テーブル４１の起動中仮想マシン台数に再度格納する。なお、停止されたＫＶＭの仮想マシンが優先度の高いものである場合には、マシン管理テーブル４１の起動中仮想マシン台数における優先度：高に対して上記処理が実行され、停止されたＫＶＭの仮想マシンが優先度の低いものである場合には、マシン管理テーブル４１の起動中仮想マシン台数における優先度：低に対して上記処理が実行される。また、マシン管理テーブル４１におけるハイパーバイザー名「ＫＶＭ」に対応する未起動仮想マシン台数に格納されている値を読み出し、ステップＳ５１にて停止された仮想マシンの台数分の値を、読み出した値に足し、その結果をマシン管理テーブル４１の未起動仮想マシン台数に再度格納する。
【００９４】
ステップＳ５２の処理を実行した後、制御部１１は、起動状況管理テーブル更新処理を実行する（ステップＳ５２Ａ）。ステップＳ５２Ａの起動状況管理テーブル更新処理では、起動状況管理テーブル４２におけるカウント値を更新する。例えば、上述したように図６（Ａ）に示す状態から、物理サーバ３ａのＫＶＭハイパーバイザー上で起動されていた仮想マシンが４台、物理サーバ３ｂのＫＶＭハイパーバイザー上で起動されていた仮想マシンが７台、物理サーバ３ｃのＫＶＭハイパーバイザー上で起動されていた仮想マシンが５台それぞれ停止された場合には、起動状況管理テーブル４２は、図６（Ｂ）に示す状態に更新される。
【００９５】
次に、仮想マシン移行部３７は、ＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシンを、ＫＶＭハイパーバイザーが設定された物理サーバ３（３ａ〜３ｄ）間で移行可能であるか否か判定する（ステップＳ５３）。ステップＳ５３では、一例として、仮想マシン移行部３７は、起動状況管理テーブル４２の物理サーバＩＤ「３ａ」に対応するＫＶＭ未起動カウント値を読み出す。そして、状況管理テーブル４２の物理サーバＩＤ「３ｂ」〜「３ｄ」に対応するＫＶＭ起動カウント値を順次読み出し、物理サーバＩＤ「３ａ」に対応するＫＶＭ未起動カウント値と順次比較する。物理サーバＩＤ「３ｂ」〜「３ｄ」に対応するＫＶＭ起動カウント値のうち、１以上、かつ、物理サーバＩＤ「３ａ」に対応するＫＶＭ未起動カウント値以下のものがある場合、仮想マシン移行部３７は、ＫＶＭの仮想マシンを移行可能であると判定する。物理サーバＩＤ「３ｂ」〜「３ｄ」に対応するＫＶＭ起動カウント値のうち、１以上、かつ、物理サーバＩＤ「３ａ」に対応するＫＶＭ未起動カウント値以下のものがない場合、仮想マシン移行部３７は、起動状況管理テーブル４２の物理サーバＩＤ「３ｂ」に対応するＫＶＭ未起動カウント値を読み出す。そして、状況管理テーブル４２の物理サーバＩＤ「３ｃ」、「３ｄ」に対応するＫＶＭ起動カウント値を順次読み出し、物理サーバＩＤ「３ｂ」に対応するＫＶＭ未起動カウント値と順次比較する。物理サーバＩＤ「３ｃ」、「３ｄ」に対応するＫＶＭ起動カウント値のうち、１以上、かつ、物理サーバＩＤ「３ｂ」に対応するＫＶＭ未起動カウント値以下のものがある場合、仮想マシン移行部３７は、ＫＶＭの仮想マシンを移行可能であると判定する。物理サーバＩＤ「３ｃ」、「３ｄ」に対応するＫＶＭ起動カウント値のうち、１以上、かつ、物理サーバＩＤ「３ｂ」に対応するＫＶＭ未起動カウント値以下のものがない場合、仮想マシン移行部３７は、起動状況管理テーブル４２の物理サーバＩＤ「３ｃ」に対応するＫＶＭ未起動カウント値を読み出す。そして、状況管理テーブル４２の物理サーバＩＤ「３ｄ」に対応するＫＶＭ起動カウント値を読み出し、物理サーバＩＤ「３ｃ」に対応するＫＶＭ未起動カウント値と比較する。物理サーバＩＤ「３ｄ」に対応するＫＶＭ起動カウント値が、１以上、かつ、物理サーバＩＤ「３ｃ」に対応するＫＶＭ未起動カウント値以下である場合、仮想マシン移行部３７は、ＫＶＭの仮想マシンを移行可能であると判定する。
【００９６】
例えば、図６（Ｂ）に示すよう物理サーバＩＤ「３ａ」に対応するＫＶＭ起動カウント値には「６」が格納され、ＫＶＭ未起動カウント値には「４」が格納されており、物理サーバＩＤ「３ｂ」に対応するＫＶＭ起動カウント値には「３」が格納され、ＫＶＭ未起動カウント値には「７」が格納されている。このような状態において、ステップＳ５３では、起動状況管理テーブル４２の物理サーバＩＤ「３ａ」に対応するＫＶＭ未起動カウント値「４」を読み出す。そして、状況管理テーブル４２の物理サーバＩＤ「３ｂ」に対応するＫＶＭ起動カウント値「３」を読み出し、物理サーバＩＤ「３ａ」に対応するＫＶＭ未起動カウント値「４」と比較する。物理サーバＩＤ「３ｂ」に対応するＫＶＭ起動カウント値「３」は、１以上、かつ、物理サーバＩＤ「３ａ」に対応するＫＶＭ未起動カウント値「４」以下であるので、仮想マシン移行部３７は、ＫＶＭの仮想マシンを物理サーバ３ａと物理サーバ３ｂとの間で移行可能であると判定する。
【００９７】
ステップＳ５３にて仮想マシンを移行可能であると判定された場合（ステップＳ５３；Ｙｅｓ）、仮想マシン移行部３７は、移行可能であるとの判定対象であった物理サーバ３間において起動中の仮想マシンを移行する起動中仮想マシン移行処理を実行する（ステップＳ５４）。ステップＳ５４の起動中仮想マシン移行処理では、一例として、上記したようにステップＳ５３においてＫＶＭの仮想マシンを物理サーバ３ａと物理サーバ３ｂとの間で移行可能であると判定された場合、仮想マシン移行部３７は、物理サーバ３ｂのＫＶＭハイパーバイザー上で起動している３台のＫＶＭの仮想マシンに対応するＫＶＭの仮想マシンを、物理サーバ３ａのＫＶＭハイパーバイザー上で起動させ、その後、物理サーバ３ｂのＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシンを停止させる。これにより、図３（Ｂ）に示すように起動中の仮想マシンが１つの物理サーバ３ａに集約される。ステップＳ５４の起動中仮想マシン移行処理を実行した場合には、仮想マシン移行部３７は、移行した対象の仮想マシンを利用しているユーザの利用者端末５に通知をする。この通知には、移行した仮想マシンの種類を示す仮想マシン種類情報、移行後の仮想マシンを搭載している物理サーバ３を示す物理サーバ情報、移行した仮想マシンの台数を示す移行マシン数情報、移行した仮想マシンの優先度情報などが含まれている。
【００９８】
ステップＳ５４の処理を実行した後、制御部１１は、起動状況管理テーブル更新処理を実行する（ステップＳ５５）。ステップＳ５５の起動状況管理テーブル更新処理では、起動状況管理テーブル４２におけるカウント値を更新する。例えば、上記したようにステップＳ５４においてＫＶＭの仮想マシンを物理サーバ３ａと物理サーバ３ｂとの間で移行した場合、物理サーバＩＤ「３ａ」に対応するＫＶＭ起動カウント値に格納された値「６」を読み出し、読み出した値に「３」を足し、その結果である「９」を起動状況管理テーブル４２のＫＶＭ起動カウント値に再度格納する。また、物理サーバＩＤ「３ａ」に対応するＫＶＭ未起動カウント値に格納された値「４」を読み出し、読み出した値から「３」を引き、その結果である「１」を起動状況管理テーブル４２のＫＶＭ未起動カウント値に再度格納する。また、物理サーバＩＤ「３ｂ」に対応するＫＶＭ起動カウント値に格納された値「３」を読み出し、読み出した値から「３」を引き、その結果である「０」を起動状況管理テーブル４２のＫＶＭ起動カウント値に再度格納する。また、物理サーバＩＤ「３ｂ」に対応するＫＶＭ未起動カウント値に格納された値「７」を読み出し、読み出した値に「３」を足し、その結果である「１０」を起動状況管理テーブル４２のＫＶＭ未起動カウント値に再度格納する。これにより起動状況管理テーブル４２は、図６（Ｃ）に示す状態となる。
【００９９】
テップＳ５５の処理を実行した後又はステップＳ５３にて仮想マシンを移行可能でないと判定された場合（ステップＳ５３；Ｎｏ）、制御部１１は、仮想マシン停止処理を終了する。
【０１００】
図１１に戻り、ステップＳ１１にて利用者端末５から要求を受信していないと判定された場合（ステップＳ１１；Ｎｏ）、ステップＳ１５の仮想マシン起動処理を実行した後又はステップＳ２０の仮想マシン停止処理を実行した後、制御部１１は、ＲＴＣ１６が計時している現在日時から予測タイミングであるか否かを判定する（ステップＳ２１）。この実施の形態では、予測タイミングは、予め定められた時刻、例えば１０：４０、１０：５０といった１０分毎の時刻に設定される。
【０１０１】
ステップＳ２１にて予測タイミングであると判定された場合（ステップＳ２１；Ｙｅｓ）、制御部１１は、履歴記憶処理を実行する（ステップＳ２２）。
【０１０２】
ステップＳ２２の履歴記憶処理では、制御部１１は、図４に示すマシン管理テーブル４１の各起動中仮想マシン台数に格納された値をそれぞれ読み出し、仮想マシンの種類及び優先度に応じた起動履歴４３（４３ａ〜４３ｄ）における予測タイミングの時刻に対応する起動台数に、読み出した値をそれぞれ格納する。制御部１１は、起動履歴４３（４３ａ〜４３ｄ）に格納された値から移動平均値及び乖離率を計算して、起動履歴４３（４３ａ〜４３ｄ）における予測タイミングの時刻に対応する移動平均値及び乖離率に、計算した値を格納する。
【０１０３】
ステップＳ２２の処理を実行した後、制御部１１は、予測処理を実行する（ステップＳ２３）。
【０１０４】
ステップＳ２３の予測処理について、図１４を用いて説明する。
【０１０５】
ステップＳ２３の予測処理を開始すると、予測部３９は、まず、各起動履歴４３（４３ａ〜４３ｄ）の移動平均値及び乖離率を用いて予測タイミングの時刻から１０分後に起動されることが予測される各種類及び各優先度に応じた仮想マシンの起動予測台数を算出する。そして、予測部３９は、優先度が高いＫＶＭの仮想マシンの起動予測台数と優先度が低いＫＶＭの仮想マシンの起動予測台数とを足しあわせてＫＶＭの仮想マシンの最大起動予測台数を算出し、優先度が高いＸｅｎの仮想マシンの起動予測台数と優先度が低いＸｅｎの仮想マシンの起動予測台数とを足しあわせてＸｅｎの仮想マシンの最大起動予測台数を算出する（ステップＳ７１）。
【０１０６】
図１５は、一例として、予測タイミングの時刻である１０：５０に予測部３９が算出した、各種類に応じた仮想マシンの起動予測台数及び仮想マシンの最大起動予測台数を示している。なお、予測タイミングの時刻は１０：５０であるので、その１０分後の時刻１１：００が予測時刻となる。また、各起動履歴４３（４３ａ〜４３ｄ）の各項目には、予測タイミングの時刻１０：５０において実行されたステップＳ２２の履歴記憶処理によって、図７〜図１０に示すように時刻１０：５０までの各値が格納されている。
【０１０７】
上述したように予測部３９は、予測タイミングの時刻から遡って過去２５区間の乖離率のうち最大の乖離率を、予測タイミングの時刻の移動平均値に乗じて、起動予測台数を算出する。
【０１０８】
図７（Ａ）に示すように、優先度が高いＫＶＭの仮想マシンの起動履歴４３ａにおける時刻１０：５０から遡って過去２５区間（時刻６：５０〜時刻１０：５０）の乖離率のうち最大の乖離率は、時刻８：２０における乖離率「１５９．１」％である。また、時刻１０：５０における移動平均値は「１１．９」台である。従って、優先度が高いＫＶＭの仮想マシンの起動予測台数は、乖離率「１５９．１」％を、移動平均値「１１．９」台に乗じて得た「１８．９」台となる（図１５（Ａ）参照）。
【０１０９】
図８（Ａ）に示すように、優先度が低いＫＶＭの仮想マシンの起動履歴４３ｂにおける時刻１０：５０から遡って過去２５区間（時刻６：５０〜時刻１０：５０）の乖離率のうち最大の乖離率は、時刻７：００における乖離率「２７６．７」％である。また、時刻１０：５０における移動平均値は「８．６」台である。従って、優先度が低いＫＶＭの仮想マシンの起動予測台数は、乖離率「２７６．７」％を、移動平均値「８．６」台に乗じて得た「２３．８」台となる（図１５（Ａ）参照）。
【０１１０】
そして、上述したように予測部３９は、優先度が高いＫＶＭの仮想マシンの起動予測台数と優先度が低いＫＶＭの仮想マシンの起動予測台数とを足しあわせてＫＶＭの仮想マシンの最大起動予測台数を算出する。
【０１１１】
図１５（Ａ）に示すように、優先度が高いＫＶＭの仮想マシンの起動予測台数は「１８．９」台であり、優先度が低いＫＶＭの仮想マシンの起動予測台数は「２３．８」台である。従って、ＫＶＭの仮想マシンの最大起動予測台数は、「１８．９」台と「２３．８」台とを足し合わせた「４２．７」台となる。
【０１１２】
図９（Ａ）に示すように、優先度が高いＸｅｎの仮想マシンの起動履歴４３ｃにおける時刻１０：５０から遡って過去２５区間（時刻６：５０〜時刻１０：５０）の乖離率のうち最大の乖離率は、時刻７：３０における乖離率「１９４．１」％である。また、時刻１０：５０における移動平均値は「１．９」台である。従って、優先度が高いＸｅｎの仮想マシンの起動予測台数は、乖離率「１９４．１」％を、移動平均値「１．９」台に乗じて得た「３．７」台となる（図１５（Ｂ）参照）。
【０１１３】
また、図１０（Ａ）に示すように、優先度が低いＸｅｎの仮想マシンの起動履歴４３ｄにおける時刻１０：５０から遡って過去２５区間（時刻６：５０〜時刻１０：５０）の乖離率のうち最大の乖離率は、時刻８：５０における乖離率「１３４．４」％である。また、時刻１０：５０における移動平均値は「２．１」台である。従って、優先度が低いＸｅｎの仮想マシンの起動予測台数は、乖離率「１３４．４」％を、移動平均値「２．１」台に乗じて得た「２．８」台となる（図１５（Ｂ）参照）。
【０１１４】
そして、上述したように予測部３９は、優先度が高いＸｅｎの仮想マシンの起動予測台数と優先度が低いＸｅｎの仮想マシンの起動予測台数とを足しあわせてＸｅｎの仮想マシンの最大起動予測台数を算出する。
【０１１５】
図１５（Ｂ）に示すように、優先度が高いＸｅｎの仮想マシンの起動予測台数は「３．７」台であり、優先度が低いＸｅｎの仮想マシンの起動予測台数は「２．８」台である。従って、Ｘｅｎの仮想マシンの最大起動予測台数は、「３．７」台と「２．８」台とを足し合わせた「６．５」台となる。
【０１１６】
図１４に示すステップＳ７１の処理を実行した後、物理サーバ決定部２５は、ハイパーバイザーの設定の順番を決定する（ステップＳ７２）。ステップＳ７２では、一例として、物理サーバ決定部２５は、ステップＳ７１にて算出した優先度が高いＫＶＭの仮想マシンの起動予測台数と優先度が高いＸｅｎの仮想マシンの起動予測台数とを比較し、Ｘｅｎの仮想マシンの起動予測台数よりもＫＶＭの仮想マシンの起動予測台数が大きい場合には、ＫＶＭハイパーバイザーの設定を先に行うと決定する（ステップＳ７２）。また、ＫＶＭの仮想マシンの起動予測台数よりもＸｅｎの仮想マシンの起動予測台数が大きい場合には、Ｘｅｎハイパーバイザーの設定を先に行うと決定する（ステップＳ７２）。
【０１１７】
例えば、図１５に示す予測結果では、優先度が高いＫＶＭの仮想マシンの起動予測台数は「１８．９」台であるのに対し、優先度が高いＸｅｎの仮想マシンの起動予測台数は「３．７」台である。優先度が高いＫＶＭの仮想マシンの起動予測台数「１８．９」と優先度が高いＸｅｎの仮想マシンの起動予測台数「３．７」とを比較すると、Ｘｅｎの仮想マシンの起動予測台数よりもＫＶＭの仮想マシンの起動予測台数が大きいので、この場合には、ステップＳ７２にてＫＶＭハイパーバイザーの設定を先に行うと決定する。
【０１１８】
ステップＳ７２の処理を実行した後、制御部１１は、ステップＳ７２にて先に設定を行うと決定されたハイパーバイザーの種類に応じた予測設定処理を実行し（ステップＳ７３）、その後、他方のハイパーバイザーの種類に応じた予測設定処理を実行する（ステップＳ７４）。ステップＳ７３の予測設定処理と、ステップＳ７４の予測設定処理とは、ハイパーバイザーの種類にかかわらず同じフローになるので、ステップＳ７３の予測設定処理について説明することとし、ステップＳ７４の予測設定処理については説明を省略する。
【０１１９】
ステップＳ７３の予測設定処理について、図１６を用いて説明する。なお、ステップＳ７３の予測設定処理では、ステップＳ７２にてＫＶＭハイパーバイザーの設定を先に行うと決定した場合について説明する。
【０１２０】
ステップＳ７３の予測設定処理を開始すると、物理サーバ決定部２５は、まず、ステップＳ７１にて算出されたＫＶＭの仮想マシンの最大起動予測台数と、マシン管理テーブル４１のハイパーバイザー名「ＫＶＭ」に対応する仮想マシン最大起動可能台数とを比較し、ＫＶＭの仮想マシンの最大起動予測台数が、仮想マシン最大起動可能台数を超えているか否かを判定する（ステップＳ８１）。ステップＳ８１にてＫＶＭの仮想マシンの最大起動予測台数が仮想マシン最大起動可能台数を超えていると判定された場合（ステップＳ８１；Ｙｅｓ）、物理サーバ決定部２５は、ブランク状態の新たな物理サーバ３にＫＶＭハイパーバイザーの設定を行うと決定する（ステップＳ８２）。
【０１２１】
そして、物理サーバ決定部２５は、ＫＶＭハイパーバイザーの設定を行うために必要な物理サーバ３の台数を特定する（ステップＳ８３）。ここで、例えばＫＶＭの仮想マシンの最大起動予測台数から仮想マシン最大起動可能台数を引いた数が１〜１０のいずれかである場合には、ＫＶＭハイパーバイザーの設定を行う物理サーバ３の台数を１台と特定し、ＫＶＭの仮想マシンの最大起動予測台数から仮想マシン最大起動可能台数を引いた数が１１〜２０のいずれかである場合には、ＫＶＭハイパーバイザーの設定を行う物理サーバ３の台数を２台と特定する。同様に、ＫＶＭの仮想マシンの最大起動予測台数から仮想マシン最大起動可能台数を引いた数が２１〜３０のいずれか、３１〜４０のいずれか、・・・である場合には、ＫＶＭハイパーバイザーの設定を行う物理サーバ３の台数を３台、４台、・・・と特定する。
【０１２２】
例えば、図１５に示す予測結果では、ＫＶＭの仮想マシンの最大起動予測台数は「４２．７」台であり、また、図４に示すようにＫＶＭの仮想マシン最大起動可能台数は「４０」台である。この場合には、上記予測設定処理のステップＳ８１において、ＫＶＭの仮想マシンの最大起動予測台数「４２．７」が仮想マシン最大起動可能台数「４０」を超えていると判定される（ステップＳ８１；Ｙｅｓ）。そして、ステップＳ８２においてブランク状態の新たな物理サーバ３にＫＶＭハイパーバイザーの設定を行うと決定される。ＫＶＭの仮想マシンの最大起動予測台数「４２．７」から仮想マシン最大起動可能台数「４０」を引いた数は「２．７」であるので、ステップＳ８３においてＫＶＭハイパーバイザーの設定を行う物理サーバ３の台数を１台と特定される。
【０１２３】
図１６のステップ８３の処理を実行した後、物理サーバ決定部２５は、マシン管理テーブル４１のハイパーバイザーＩＤ「０」（ハイパーバイザー名「ブランク」）に対応する割り当て物理サーバ台数に格納された値を読み取り、ブランク状態の物理サーバ３の台数を特定する（ステップＳ８３Ａ）。そして、物理サーバ決定部２５は、ステップＳ８３にて特定した必要な物理サーバ３の台数と、ステップＳ８３Ａにて特定したブランク状態の物理サーバ３の台数とを比較し、必要な物理サーバ３の台数が、ブランク状態の物理サーバ３の台数を超えているか否かを判定する（ステップＳ８４）。ステップＳ８４にて必要な物理サーバ３の台数がブランク状態の物理サーバ３の台数を超えていないと判定された場合（ステップＳ８４；Ｎｏ）、物理サーバ決定部２５は、ステップＳ８３にて特定した台数分だけブランク状態の物理サーバ３から任意に指定し、指定した物理サーバ３に対してＫＶＭハイパーバイザーの設定を行うように物理サーバ設定部２７に指示をする（ステップＳ８６）。
【０１２４】
また、ステップＳ８４にて必要な物理サーバ３の台数がブランク状態の物理サーバ３の台数を超えていると判定された場合には（ステップＳ８４；Ｙｅｓ）、物理サーバ決定部２５は、ブランク状態の物理サーバ３の台数が０であるか否かを判定する（ステップＳ８５）。ステップＳ８５にてブランク状態の物理サーバ３の台数が０でないと判定された場合には（ステップＳ８５；ＮＯ）、物理サーバ決定部２５は、ステップＳ８３Ａにて特定した台数分だけブランク状態の物理サーバ３に対してＫＶＭハイパーバイザーの設定を行うように物理サーバ設定部２７に指示をする（ステップＳ８６）。
【０１２５】
ステップＳ８６の処理を実行した後、物理サーバ設定部２７は、ステップＳ８６の指示に基づいて、指定されたブランク状態の物理サーバ３に対してＫＶＭハイパーバイザーの設定を行う（ステップＳ８７）。そして、ステップＳ８７の処理を実行した後、制御部１１は、マシン管理テーブル更新処理を実行する（ステップＳ８８）。
【０１２６】
ステップＳ８８のマシン管理テーブル更新処理では、マシン管理テーブル４１の各項目に格納されている値を更新する。具体的には、マシン管理テーブル４１におけるハイパーバイザー名「ブランク」に対応する割り当て物理サーバ台数に格納されている値を読み出し、ステップＳ８７にてハイパーバイザーの設定が行われた物理サーバ３の台数分の値を、読み出した値から引き、その結果をマシン管理テーブル４１の割り当て物理サーバ台数に再度格納する。
【０１２７】
また、マシン管理テーブル４１におけるハイパーバイザー名「ＫＶＭ」に対応する割り当て物理サーバ台数に格納されている値を読み出し、ステップＳ８７にてハイパーバイザーの設定が行われた物理サーバ３の台数分の値を、読み出した値に足し、その結果を割り当て物理サーバ台数に再度格納する。そして、ハイパーバイザー名「ＫＶＭ」に対応する仮想マシン最大起動可能台数に格納されている値を読み出し、ステップＳ４０にてハイパーバイザーの設定が行われた物理サーバ３の台数に１０を乗じて得た値を、読み出した値に足し、その結果をマシン管理テーブル４１の仮想マシン最大起動可能台数に再度格納する。さらに、ハイパーバイザー名「ＫＶＭ」に対応する未起動仮想マシン台数に格納されている値を読み出し、ステップＳ４０にてハイパーバイザーの設定が行われた物理サーバ３の台数に１０を乗じて得た値を、読み出した値に足し、その結果をマシン管理テーブル４１の未起動仮想マシン台数に再度格納する。
【０１２８】
ステップＳ８８の処理を実行した後、又はステップＳ８５にてブランク状態の物理サーバ３の台数が０であると判定された場合（ステップＳ８５；Ｙｅｓ）、制御部１１は、予測設定処理を終了する。
【０１２９】
また、ステップＳ８１にてＫＶＭの仮想マシンの最大起動予測台数が仮想マシン最大起動可能台数を超えていないと判定された場合（ステップＳ８１；Ｎｏ）、物理サーバ決定部２５は、ＫＶＭハイパーバイザーの設定がされた物理サーバ３におけるＫＶＭの仮想マシンの最大起動可能台数から、ステップＳ７１にて算出されたＫＶＭの仮想マシンについての最大起動予測台数を引いた数が、予め定められた数以上であるか否かを判定する（ステップＳ９１）。この実施の形態では、予め定められた数を、例えば３０とし、ステップＳ９１では、ＫＶＭの仮想マシンの最大起動可能台数からＫＶＭの仮想マシンについての最大起動予測台数を引いた数が３０以上であるか否かを判定するものとして説明する。
【０１３０】
ステップＳ９１にてＫＶＭの仮想マシンの最大起動可能台数からＫＶＭの仮想マシンについての最大起動予測台数を引いた数が３０以上であると判定された場合（ステップＳ９１；Ｙｅｓ）、物理サーバ決定部２５は、ＫＶＭハイパーバイザーの設定がされた物理サーバ３に対しＫＶＭハイパーバイザー及びＸｅｎハイパーバイザーの設定がされていない状態（ブランク状態）にするブランク設定を行うと決定する（ステップＳ９２）。そして、物理サーバ決定部２５は、ブランク設定を行うために必要な物理サーバ３の台数を特定する（ステップＳ９３）。ここで、例えばＫＶＭの仮想マシンの最大起動可能台数からＫＶＭの仮想マシンについての最大起動予測台数を引いた数が、３０〜３９のいずれかである場合には、ブランク設定を行う物理サーバ３の台数を１台と特定し、ＫＶＭの仮想マシンの最大起動可能台数からＫＶＭの仮想マシンについての最大起動予測台数を引いた数が、４０〜４９のいずれかである場合には、ブランク設定を行う物理サーバ３の台数を２台と特定する。同様に、ＫＶＭの仮想マシンの最大起動可能台数からＫＶＭの仮想マシンについての最大起動予測台数を引いた数が、５０〜５９のいずれか、６０〜６９のいずれか、・・・である場合には、ブランク設定を行う物理サーバ３の台数を３台、４台、・・・と特定する。
【０１３１】
ステップＳ９３の処理を実行した後、物理サーバ決定部２５は、ＫＶＭハイパーバイザーが設定され、かつ、ＫＶＭの仮想マシンが１台も起動されていない物理サーバ３を特定する。例えば、物理サーバ決定部２５は、起動状況管理テーブル４２のＫＶＭ未起動カウント値を読み出し、読み出した値が「１０」である場合に、当該ＫＶＭ未起動カウント値が「１０」に対応する物理サーバ３を、ＫＶＭの仮想マシンが１台も起動されていないものであると特定する。物理サーバ決定部２５は、特定した物理サーバ３のうちからステップＳ９３にて特定したブランク設定を行うために必要な物理サーバ３の台数分だけ任意に指定し、指定した物理サーバ３に対してブランク設定を行うように物理サーバ設定部２７に指示をする（ステップＳ９４）。
【０１３２】
ステップＳ９４の処理を実行した後、物理サーバ設定部２７は、ステップＳ９４の指示に基づいて、指定された物理サーバ３に対してブランク設定を行う（ステップＳ９５）。ステップＳ９５の処理を実行した後、制御部１１は、マシン管理テーブル更新処理を実行する（ステップＳ９６）。
【０１３３】
ステップＳ９６のマシン管理テーブル更新処理では、マシン管理テーブル４１の各項目に格納されている値を更新する。具体的には、マシン管理テーブル４１におけるハイパーバイザー名「ブランク」に対応する割り当て物理サーバ台数に格納されている値を読み出し、ステップＳ９５にてブランク設定が行われた物理サーバ３の台数分の値を、読み出した値に足し、その結果をマシン管理テーブル４１の割り当て物理サーバ台数に再度格納する。
【０１３４】
また、マシン管理テーブル４１におけるハイパーバイザー名「ＫＶＭ」に対応する割り当て物理サーバ台数に格納されている値を読み出し、ステップＳ９５にてブランク設定が行われた物理サーバ３の台数分の値を、読み出した値から引き、その結果をマシン管理テーブル４１の割り当て物理サーバ台数に再度格納する。そして、ハイパーバイザー名「ＫＶＭ」に対応する仮想マシン最大起動可能台数に格納されている値を読み出し、ステップＳ９５にてブランク設定が行われた物理サーバ３の台数に１０を乗じて得た値を、読み出した値から引き、その結果をマシン管理テーブル４１の仮想マシン最大起動可能台数に再度格納する。さらに、ハイパーバイザー名「ＫＶＭ」に対応する未起動仮想マシン台数に格納されている値を読み出し、ステップＳ９５にてブランク設定が行われた物理サーバ３の台数に１０を乗じて得た値を、読み出した値から引き、その結果をマシン管理テーブル４１の未起動仮想マシン台数に再度格納する。
【０１３５】
ステップＳ９６の処理を実行した後又はステップＳ９１にてＫＶＭの仮想マシンの最大起動可能台数からＫＶＭの仮想マシンについての最大起動予測台数を引いた数が３０以上でないと判定された場合（ステップＳ９１；Ｎｏ）、制御部１１は、予測設定処理を終了する。
【０１３６】
図１４に戻り、ステップＳ７３の処理を実行した後、制御部１１は、Ｘｅｎハイパーバイザーに応じた予測設定処理を実行する（ステップＳ７４）。上述したようにステップＳ７４の予測設定処理は、ステップＳ７３の予測設定処理と同じフローになるので、ステップＳ７４の予測設定処理については説明を省略する。
【０１３７】
ステップＳ７４の処理を実行した後、制御部１１は、予測処理を終了する。
【０１３８】
図１１に戻り、ステップＳ２３の処理を実行した後又はステップＳ２１にて予測タイミングでないと判定された場合（ステップＳ２１；Ｎｏ）、制御部１１は、ステップＳ１１に戻って上記処理を繰り返し実行する。
【０１３９】
以上説明したように、上記実施の形態に係る情報処理装置１によれば、利用者端末５から起動要求を受信した場合に、例えばステップＳ１３において起動要求に含まれる仮想マシン種類情報（起動）から仮想マシンの種類がＫＶＭを示すものであるかＸｅｎを示すものであるかを特定する。ステップＳ１５の仮想マシン起動処理において、起動する仮想マシン数が、未起動仮想マシン台数を超えているか否かを判定し（ステップＳ３３）、起動する仮想マシン数が未起動仮想マシン台数を超えていると判定された場合（ステップＳ３３；Ｙｅｓ）、ブランク状態の新たな物理サーバ３にＫＶＭ（Ｘｅｎ）ハイパーバイザーの設定を行うと決定する（ステップＳ３４）。そして、ブランク状態の物理サーバ３に対してＫＶＭ（Ｘｅｎ）ハイパーバイザーの設定を行う（ステップＳ４０）。ＫＶＭ（Ｘｅｎ）ハイパーバイザーの設定がされた物理サーバ３において、起動要求に含まれる起動マシン数情報及び優先度情報に基づいてＫＶＭ（Ｘｅｎ）の仮想マシンを起動する（ステップＳ４７）。このように、起動要求において示される仮想マシンの種類がＫＶＭ及びＸｅｎというように複数種類ある場合でも、仮想マシンの種類を特定し、特定した種類に対応する種類のハイパーバイザーを物理サーバ３に設定して、該ハイパーバイザーの設定された物理サーバ３において起動要求において示される仮想マシンを起動する。従って、複数種類のハイパーバイザー及び複数種類のハイパーバイザー上で起動される仮想マシンを容易に管理することができる
【０１４０】
上記実施の形態に係る情報処理装置１によれば、例えば、起動台数、移動平均値、乖離率を含む仮想マシンの起動履歴４３（図７〜図１０参照）を記憶し、ステップＳ７１にて各起動履歴４３の移動平均値及び乖離率を用いて予測タイミングの時刻から１０分後に起動されることが予測される各種類及び各優先度に応じた仮想マシンの起動予測台数を算出する。さらに、ＫＶＭの仮想マシンの最大起動予測台数及びＸｅｎの仮想マシンの最大起動予測台数を算出する。そして、例えば、ステップＳ７１にて算出した優先度が高いＫＶＭの仮想マシンの起動予測台数と優先度が高いＸｅｎの仮想マシンの起動予測台数とを比較し、Ｘｅｎの仮想マシンの起動予測台数よりもＫＶＭの仮想マシンの起動予測台数が大きい場合には、ＫＶＭハイパーバイザーの設定を先に行うと決定する（ステップＳ７２）。ステップＳ７３の予測設定処理において、ＫＶＭの仮想マシンの最大起動予測台数が、仮想マシン最大起動可能台数を超えていると判定された場合（ステップＳ８１；Ｙｅｓ）、ブランク状態の新たな物理サーバ３にＫＶＭハイパーバイザーの設定を行うと決定する（ステップＳ８２）。そして、ブランク状態の物理サーバ３に対してＫＶＭハイパーバイザーの設定を行う（ステップＳ８７）。このように、仮想マシンの起動履歴から、予め定められた時刻における仮想マシンの起動状況を予測し、予測結果に基づいて、仮想マシンの種類を特定し、当該仮想マシンの種類に対応する種類のハイパーバイザーをブランク状態の物理サーバ３に設定するので、起動が予測される仮想マシンの台数分を予め用意しておくことができる。
【０１４１】
上記実施の形態に係る情報処理装置１によれば、例えば、図７〜図１０に示すように仮想マシンの種類及び優先度に応じて４つの起動履歴４３（４３ａ〜４３ｄ）が用意されている。ステップＳ７１にて算出した、優先度が高いＫＶＭの仮想マシンの起動予測台数と優先度が高いＸｅｎの仮想マシンの起動予測台数とを比較し、Ｘｅｎの仮想マシンの起動予測台数よりもＫＶＭの仮想マシンの起動予測台数が大きい場合には、ＫＶＭハイパーバイザーの設定を先に行うと決定する（ステップＳ７２）。このように、優先度情報に基づいて、仮想マシンの種類を特定するので、ブランク状態の物理サーバ３が少なくなった場合でも優先度に応じた種類のハイパーバイザーを設定することができる。
【０１４２】
上記実施の形態に係る情報処理装置１によれば、例えば、ステップＳ５３においてＫＶＭの仮想マシンを物理サーバ３ａと物理サーバ３ｂとの間で移行可能であると判定された場合、物理サーバ３ｂのＫＶＭハイパーバイザー上で起動している３台のＫＶＭの仮想マシンに対応するＫＶＭの仮想マシンを、物理サーバ３ａのＫＶＭハイパーバイザー上で起動させ、その後、物理サーバ３ｂのＫＶＭハイパーバイザー上で起動しているＫＶＭの仮想マシンを停止させる（ステップＳ５４）。このように物理サーバ３に設定された同じ種類のハイパーバイザー上で起動している仮想マシンを、該ハイパーバイザーが設定された物理サーバ３間で移行するので、起動中の仮想マシンが１つの物理サーバ３に集約され、物理サーバ３の利用効率を良くすることができる。
【０１４３】
なお、本発明は上記実施形態に限定されず、種々の応用及び変形が可能である。
【０１４４】
上記実施の形態では、起動する仮想マシン数が、未起動仮想マシン台数を超えているか否かを判定し（ステップＳ３３）、起動する仮想マシン数が未起動仮想マシン台数を超えていると判定された場合（ステップＳ３３；Ｙｅｓ）、ブランク状態の新たな物理サーバ３にＫＶＭ（Ｘｅｎ）ハイパーバイザーの設定を行うと決定した（ステップＳ３４）。しかし、ハイパーバイザーの設定を行うと決定するための判定基準は上記のものに限られず、判定基準を適宜変更してもよい。
【０１４５】
上記実施の形態では、ステップＳ７３の予測設定処理において、ＫＶＭの仮想マシンの最大起動予測台数が、仮想マシン最大起動可能台数を超えていると判定された場合（ステップＳ８１；Ｙｅｓ）、ブランク状態の新たな物理サーバ３にＫＶＭハイパーバイザーの設定を行うと決定した（ステップＳ８２）。しかし、ハイパーバイザーの設定を行うと決定するための判定基準は上記のものに限られず、判定基準を適宜変更してもよい。
【０１４６】
上記実施の形態では、ステップＳ９１にてＫＶＭの仮想マシンの最大起動可能台数からＫＶＭの仮想マシンについての最大起動予測台数を引いた数が３０（予め定められた数）以上であると判定された場合（ステップＳ９１；Ｙｅｓ）、ＫＶＭハイパーバイザーの設定がされた物理サーバ３に対しＫＶＭハイパーバイザー及びＸｅｎハイパーバイザーの設定がされていない状態（ブランク状態）にするブランク設定を行うと決定した（ステップＳ９２）。しかし、ハイパーバイザーの設定がされた物理サーバ３にブランク設定を行うと決定する判定基準は上記のものに限られず、判定基準を適宜変更してもよい。
【０１４７】
上記実施の形態では、仮想マシンの起動予測台数を、移動平均値及び乖離率を用いて算出したが、仮想マシンの起動予測台数の算出方法は、移動平均値や乖離率を用いるものに限られない。移動平均値に代えて、例えば、過去１２ヶ月間の同じ日時の起動台数の平均値を用いてもよく、また、過去１ヶ月間の同時刻の起動台数の平均値を用いてもよい。また、乖離率に変えて、例えば予め定めた固定の率を用いてもよい。その他、仮想マシンの起動予測台数を算出できる方法であれば、どのような方法を採用してもよい。
【０１４８】
上記実施の形態では、予測タイミングの時刻を、６：５０、７：００、・・・１０：５０といった１０分毎の時刻に設定したが、例えば１０：３０、１１：００といった３０分毎の時刻や１０：００、１１：００といった１時間毎の時刻に設定してもよい。
【０１４９】
上記実施の形態では、物理サーバ３の数を１２個としたが、物理サーバ３の数を１１個以下または１３個以上としてもよい。また、１台の物理サーバ３のハイパーバイザー上では仮想マシンが１０台起動可能であるとしたが、１台の物理サーバ３のハイパーバイザー上で起動できる仮想マシンの数を９台以下または１１台以上としてもよい。
【０１５０】
上記実施の形態では、優先度情報を、「優先度が高い」又は「優先度が低い」といった２つの優先度を示すものとしたが、３つ以上の優先度を示すものとしてもよい。例えば、３つの優先度を示す優先度情報としては、「優先度が高い」、「優先度が中」、「優先度が低い」といった３つの優先度を示すものがある。
【０１５１】
上記実施の形態では、仮想マシン制御部を、ＫＶＭ仮想マシン制御部２９とＸｅｎ仮想マシン制御部３１の２つで構成したが、仮想マシン制御部の個数は、２つに限定されず、仮想マシン制御部の個数を１つまたは３つ以上としてもよい。
【０１５２】
上記実施の形態では、ステップＳ３９にてブランク状態の物理サーバ３の台数が０であると判定された場合や（ステップＳ３９；Ｙｅｓ）、ステップＳ３９にてブランク状態の物理サーバ３の台数が０でないと判定され（ステップＳ３９；ＮＯ）、ステップＳ３６にて特定したブランク状態の物理サーバ３の台数分だけブランク状態の物理サーバ３に対してＫＶＭハイパーバイザーの設定を行った場合（ステップＳ３８、ステップＳ４０）、起動する仮想マシン数が未起動仮想マシン台数を未だ超えている状態であり、この場合には、ステップＳ４６において、ＫＶＭ仮想マシン制御部２９に未起動仮想マシン台数分の仮想マシンの起動を指示した。しかし、起動する仮想マシン数が未起動仮想マシン台数を超えている状態である場合には、ＫＶＭ仮想マシン制御部２９に仮想マシンの起動を指示せず、ＫＶＭの仮想マシンを１台も起動しないようにしてもよい。
【０１５３】
また、仮想マシンの起動要求の予約を受け付けられるようにし、例えば、ステップＳ２３の予測処理において、予約されている起動要求を考慮して、仮想マシンの起動予測台数などを算出してもよい。
【０１５４】
また、コンピュータがプログラムを実行することで、情報処理装置１の機能を実現してもよい。情報処理装置１の機能を実現するためのプログラムは、ＵＳＢメモリ、ＳＤメモリカード、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＤＶＤ（Digital Versatile Disc）、ＢＤ（Blu-ray Disc）、ＨＤＤ（Hard Disc Drive）等のコンピュータ読み取り可能な記録媒体に記憶されてもよいし、ネットワークを介してコンピュータにダウンロードされてもよい。
【０１５５】
また、その他、具体的な細部構成等についても適宜変更可能である。
【符号の説明】
【０１５６】
１      情報処理装置
３（３ａ、３ｂ、３ｃ、・・・３ｌ）      物理サーバ
５（５１、５２、・・・５ｎ）      利用者端末
１１      制御部
１３      記憶部
１５      通信部
１６      ＲＴＣ
１７      バス
２１      受信部
２３      接続連携部
２５      物理サーバ決定部
２７      物理サーバ設定部
２９      ＫＶＭ仮想マシン制御部
３１      Ｘｅｎ仮想マシン制御部
３７      仮想マシン移行部
３９      予測部
４１      マシン管理テーブル
４２      起動状況管理テーブル
４３（４３ａ〜４３ｄ）      起動履歴
ＮＷ      ネットワーク
【図１】
2014164434.tif 000003
【図２】
2014164434.tif 000004
【図３】
2014164434.tif 000005
【図４】
2014164434.tif 000006
【図５】
2014164434.tif 000007
【図６】
2014164434.tif 000008
【図７】
2014164434.tif 000009
【図８】
2014164434.tif 000010
【図９】
2014164434.tif 000011
【図１０】
2014164434.tif 000012
【図１１】
2014164434.tif 000013
【図１２】
2014164434.tif 000014
【図１３】
2014164434.tif 000015
【図１４】
2014164434.tif 000016
【図１５】
2014164434.tif 000017
【図１６】
2014164434.tif 000018