第1のプロセッサと、前記第1のプロセッサに接続される第1のメモリと、前記第1のプロセッサに接続され、外部装置と接続するための第1のインタフェースとを備え、計算機上に生成された仮想計算機が実行するジョブを管理する管理サーバであって、前記管理サーバは、複数の前記ジョブから構成されるジョブネットの情報を管理し、前記仮想計算機に対して前記ジョブネットに含まれる前記ジョブを割り当てるジョブ管理部と、前記ジョブネットにおける前記ジョブの実行状況を監視し、前記ジョブを実行する前記仮想計算機における障害を検出した場合に、回復処理を実行する回復部と、を備え、第1のジョブネットの実行命令を受信した場合に、前記第1のジョブネットに含まれる前記ジョブを前記仮想計算機に割り当て、前記第1のジョブネットに含まれる第1のジョブを実行する第1の仮想計算機に障害が発生した場合に、前記第1のジョブネットに含まれる前記ジョブのうち、割り当てを変更する対象ジョブを特定し、前記対象ジョブを実行するために必要な前記仮想計算機の性能を決定し、前記決定された性能を有する新規仮想計算機へ、前記対象ジョブを割り当てるための変更情報を生成することを特徴とするジョブ管理サーバ。前記ジョブ管理サーバは、さらに、前記ジョブネットの構成と、前記ジョブネットの完了期限とに関する情報を格納するジョブネット管理情報を格納し、前記ジョブネットは、前記ジョブの実行経路であるパスを含み、前記ジョブ管理サーバは、前記第1のジョブネットに含まれる前記パス毎に、当該パスに含まれる全ての前記ジョブの実行時間の合計値である完了予測時間を算出し、前記算出されたパスの完了予測時間に基づいて前記ジョブネット管理情報を参照して、前記第1のジョブネットの前記完了期限以内に完了しない対象パスを特定し、前記特定された対象パスに含まれる前記ジョブのうち、前記第1のジョブ及び前記第1のジョブの完了後に実行される前記ジョブを、前記対象ジョブとして特定することを特徴とする請求項1に記載のジョブ管理サーバ。前記ジョブ管理サーバは、前記対象パスの完了予測時間が、前記第1のジョブネットの完了期限内になるように、前記対象ジョブを割り当てる前記仮想計算機の性能を決定することを特徴とする請求項2に記載のジョブ管理サーバ。前記ジョブ管理サーバは、さらに、前記ジョブと、前記仮想計算機の性能と、前記ジョブの完了時間を表す実行時間との対応関係を格納するジョブ実行時間管理情報を格納し、前記ジョブ実行時間管理情報を参照して、前記対象ジョブの割り当てが変更される前の前記仮想計算機における第1の実行時間を取得し、前記ジョブ実行時間管理情報を参照して、前記第1の実行時間より短い前記実行時間で前記対象ジョブの実行が可能な前記仮想計算機の性能を検索し、検索された前記仮想計算機の性能を前記新規仮想計算機の性能として決定することを特徴とする請求項3に記載のジョブ管理サーバ。前記ジョブ管理サーバは、さらに、前記計算機上に生成された前記仮想計算機の構成及び状態に関する仮想構成情報を格納し、前記仮想構成情報を参照して、前記決定された仮想計算機の性能を満たし、かつ、他の前記ジョブが割り当てられていない前記仮想計算機が存在するか否かを判定し、前述した条件を満たす前記仮想計算機が存在する場合には、当該仮想計算機を前記新規仮想計算機として使用するための予約処理を実行して、予約された前記新規仮想計算機に前記対象ジョブを割り当てるための前記変更情報を生成し、前述した条件を満たす前記仮想計算機が存在しない場合には、前記決定された仮想計算機の性能を満たす前記新規仮想計算機を生成するための情報を含み、生成された前記新規仮想計算機に前記対象ジョブを割り当てるための前記変更情報を生成することを特徴とする請求項4に記載のジョブ管理サーバ。前記ジョブ管理サーバは、前記対象パスの中から第2のジョブを選択し、前記ジョブ実行時間管理情報を参照して、前記第2のジョブの割り当て変更前の前記仮想計算機における第2の実行時間を取得し、前記ジョブ実行時間管理情報を参照して、前記第2の実行時間より短い前記実行時間で前記第2のジョブの実行が可能な前記仮想計算機の性能を前記第2のジョブを割り当てる前記新規仮想計算機の性能として決定し、前記新規仮想計算機へ前記第2のジョブの割り当てが変更された場合の前記対象パスの完了予測時間を算出し、前記算出された対象パスの完了予測時間が、前記第1のジョブネットの完了期限内であるか否かを判定し、前記算出された完了予測時間が、前記第1のジョブネットの完了期限内ではない場合には、前記対象パスの中から第3のジョブを選択し、前記ジョブ実行時間管理情報を参照して、前記第3のジョブの割り当て変更前の前記仮想計算機における第3の実行時間を取得し、前記ジョブ実行時間管理情報を参照して、前記第3の実行時間より短い前記実行時間で前記第3のジョブの実行が可能な前記仮想計算機の性能を前記第3のジョブを割り当てる前記新規仮想計算機の性能として決定することを特徴とする請求項2に記載のジョブ管理サーバ。複数の計算機と、前記計算機上に生成された仮想計算機が実行するジョブを管理する管理サーバとを備える計算機システムにおけるジョブ管理方法であって、前記各計算機は、第1のプロセッサと、前記第1のプロセッサに接続される第1のメモリと、前記第1のプロセッサに接続され、前記ジョブ管理サーバと接続するための第1のインタフェースとを有し、前記管理サーバは、第2のプロセッサと、前記第2のプロセッサに接続される第2のメモリと、前記第2のプロセッサに接続され、前記計算機と接続するための第2のインタフェースとを有し前記第2のメモリは、複数の前記ジョブから構成されるジョブネットの情報を管理し、前記仮想計算機に対して前記ジョブネットに含まれる前記ジョブを割り当てるジョブ管理部と、前記ジョブネットにおける前記ジョブの実行状況を監視し、前記ジョブを実行する前記仮想計算機における障害を検出した場合に、回復処理を実行する回復部と、を実現するためのプログラムを格納し、前記プログラムは前記第2のプロセッサによって実行され、前記ジョブ管理方法は、前記管理サーバが、第1のジョブネットの実行命令を受信した場合に、前記第1のジョブネットに含まれる前記ジョブを前記仮想計算機に割り当てる第1のステップと、前記管理サーバが、前記第1のジョブネットに含まれる第1のジョブを実行する第1の仮想計算機において障害の発生が検出された場合に、前記第1のジョブネットに含まれる前記ジョブのうち、割り当てを変更する対象ジョブを特定する第2のステップと、前記管理サーバが、前記対象ジョブを実行するために必要な前記仮想系先の性能を決定する第3のステップと、前記決定された性能を有する新規仮想計算機へ、前記対象ジョブを割り当てるための変更情報を生成する第4のステップと、を含むことを特徴とするジョブ管理方法。前記ジョブ管理サーバは、さらに、前記ジョブネットの構成と、前記ジョブネットの完了期限とに関する情報を格納するジョブネット管理情報を格納し、前記ジョブネットは、前記ジョブの実行経路であるパスを含み、前記第2のステップは、前記第1のジョブネットに含まれる前記パス毎に、当該パスに含まれる全ての前記ジョブの実行時間の合計値である完了予測時間を算出する第5のステップと、前記算出されたパスの完了予測時間に基づいて前記ジョブネット管理情報を参照して、前記第1のジョブネットの前記完了期限以内に完了しない対象パスを特定する第6のステップと、前記特定された対象パスに含まれる前記ジョブのうち、前記第1のジョブ及び前記第1のジョブの完了後に実行される前記ジョブを、前記対象ジョブとして特定する第7のステップと、を含むことを特徴とする請求項7に記載のジョブ管理方法。前記第3のステップでは、前記対象パスの完了予測時間が、前記第1のジョブネットの完了期限内になるように、前記対象ジョブを割り当てる前記仮想計算機の性能を決定することを特徴とする請求項8に記載のジョブ管理方法。前記ジョブ管理サーバは、さらに、前記ジョブと、前記仮想計算機の性能と、前記ジョブの完了時間を表す実行時間との対応関係を格納するジョブ実行時間管理情報を格納し、前記第3のステップは、前記ジョブ実行時間管理情報を参照して、前記対象ジョブの割り当てが変更される前の前記仮想計算機における第1の実行時間を取得する第8のステップと、前記ジョブ実行時間管理情報を参照して、前記第1の実行時間より短い前記実行時間で前記対象ジョブの実行が可能な前記仮想計算機の性能を検索する第9のステップと、を含むことを特徴とする請求項9に記載のジョブ管理方法。前記ジョブ管理サーバは、さらに、前記計算機上に生成された前記仮想計算機の構成及び状態に関する仮想構成情報を格納し、前記第3のステップは、前記仮想構成情報を参照して、前記決定された仮想計算機の性能を満たし、かつ、他の前記ジョブが割り当てられていない前記仮想計算機が存在するか否かを判定するステップと、前述した条件を満たす仮想計算機が存在する場合には、当該仮想計算機を前記新規仮想計算機として使用するための予約処理を実行して、予約された前記新規仮想計算機に前記対象ジョブを割り当てるための前記変更情報を生成するステップと、前述した条件を満たす仮想計算機が存在しない場合には、前記特定された仮想計算機の性能を満たす前記新規仮想計算機を生成するための情報を含み、生成された前記新規仮想計算機に前記対象ジョブを割り当てるための前記変更情報を生成するステップと、を含むことを特徴とする請求項10に記載のジョブ管理方法。前記第3のステップは、前記対象パスの中から第2のジョブを選択するステップと、前記ジョブ実行時間管理情報を参照して、前記第2のジョブの割り当て変更前の前記仮想計算機における第2の実行時間を取得するステップと、前記ジョブ実行時間管理情報を参照して、前記第2の実行時間より短い前記実行時間で前記第2のジョブの実行が可能な前記仮想計算機の性能を決定するステップと、前記新規仮想計算機へ前記第2のジョブの割り当てが変更された場合の前記対象パスの完了予測時間を算出するステップと、前記算出された対象パスの完了予測時間が、前記第1のジョブネットの完了期限内であるか否かを判定するステップと、前記算出された完了予測時間が、前記第1のジョブネットの完了期限内ではない場合には、前記対象パスの中から第3のジョブを選択するステップと、前記ジョブ実行時間管理情報を参照して、前記第3のジョブの割り当て変更前の前記仮想計算機における第3の実行時間を取得するステップと、前記ジョブ実行時間管理情報を参照して、前記第3の実行時間より短い前記実行時間で前記第3のジョブの実行が可能な前記仮想計算機の性能を前記第3のジョブを割り当てる前記新規仮想計算機の性能として決定するステップと、を含むことを特徴とする請求項8に記載のジョブ管理方法。しかし、特許文献1に記載の発明では、ジョブを移動するための計算機を予め準備する必要がある。また、特許文献2に記載の発明では、一つのジョブネットに対して、第1のサーバと第2のサーバとを用意する必要があり、他のジョブネットが使用するリソースが占有される。また、従来技術では、ジョブネットの終了時間も考慮されていないため、ジョブを移動しても所定の時間内に当該ジョブが完了せず、業務全体に影響を与える可能性がある。本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、第1のプロセッサと、前記第1のプロセッサに接続される第1のメモリと、前記第1のプロセッサに接続され、外部装置と接続するための第1のインタフェースとを備え、計算機上に生成された仮想計算機が実行するジョブを管理する管理サーバであって、前記管理サーバは、複数の前記ジョブから構成されるジョブネットの情報を管理し、前記仮想計算機に対して前記ジョブネットに含まれる前記ジョブを割り当てるジョブ管理部と、前記ジョブネットにおける前記ジョブの実行状況を監視し、前記ジョブを実行する前記仮想計算機における障害を検出した場合に、回復処理を実行する回復部と、を備え、第1のジョブネットの実行命令を受信した場合に、前記第1のジョブネットに含まれる前記ジョブを前記仮想計算機に割り当て、前記第1のジョブネットに含まれる第1のジョブを実行する第1の仮想計算機に障害が発生した場合に、前記第1のジョブネットに含まれる前記ジョブのうち、割り当てを変更する対象ジョブを特定し、前記対象ジョブを実行するために必要な前記仮想計算機の性能を決定し、前記決定された性能を有する新規仮想計算機へ、前記対象ジョブを割り当てるための変更情報を生成することを特徴とする。本発明の一形態によれば、管理サーバは、ジョブネットを構成するジョブの実行に必要な仮想計算機の性能を自動的に決定することができる。これによって、予めジョブを移動させるための待機系の仮想サーバを用意する必要がなく、物理リソースを有効に活用することができる。また、本発明の一形態によれば、実行期限時間内にジョブネットの処理が終了するように仮想計算機の性能が決定されるため、業務全体に影響を与えることなく障害に対応することが可能となる。図1は、本発明の実施形態における計算機システムの構成を説明するブロック図である。計算機システムは、ジョブ管理サーバ100及び複数のサーバ200から構成される。ジョブ管理サーバ100と各サーバ200とは、管理ネットワーク300を介して接続される。なお、管理ネットワーク300は、WAN、LAN等が考えられるが、互いに通信できるものであればどのような接続方法を用いてもよい。また、ジョブ管理サーバ100とサーバ200とが直接接続されていてもよい。ジョブ管理サーバ100は、計算機システムの構成、及び各サーバ200上で実行されるジョブのスケジュールを管理する。ジョブ管理サーバ100は、構成管理部110、ジョブ管理部120、障害回復部130、構成管理DB140、及びジョブDB150を備える。構成管理部110は、計算機システムの構成を管理する。ここで、計算機システムの構成は、サーバ200の物理構成、仮想サーバ220の構成、及びネットワークの接続構成等が含まれる。ジョブ管理部120は、各サーバ200上で稼動する仮想サーバ220上で実行されるジョブを管理する。ジョブ管理部120は、ジョブのスケジューラ機能を備える。ジョブ管理部120は、当該機能を用いて、ジョブの配置、ジョブの実行順序を管理する。障害回復部130は、ジョブを実行する仮想サーバ220に障害発生した場合に、障害回復処理を実行する。構成管理DB140は、計算機システムの構成を示す情報を格納する。ジョブDB150は、ジョブを管理するための情報を格納する。なお、ジョブ管理サーバ100の構成については、図2を用いて説明する。サーバ200は、複数の仮想サーバ220を生成し、当該仮想サーバ220を稼動させる。サーバ200は、仮想化制御部210を備える。仮想化制御部210は、仮想サーバ220の生成、及び管理を行う。具体的には、サーバ200が備える物理リソースを仮想サーバ220に割り当てることによって、仮想サーバ220を生成する。なお、仮想サーバ220に対する物理リソースの割り当て方法はどのような方法であってもよい。例えば、論理的に分割された物理リソースLPARを割り当てる方法、及び時分割で物理リソースを割り当てる方法等が考えられる。仮想サーバ220は、ジョブを実行する仮想的な計算機である。仮想サーバ220は、OS230を備え、当該OS230が一以上のジョブ240を実行する。なお、サーバ200の構成については図3を用いて説明する。図2は、本発明の実施形態におけるジョブ管理サーバ100のハードウェア構成及びソフトウェア構成の一例を示すブロック図である。ジョブ管理サーバ100は、プロセッサ400、メモリ410、入出力インタフェース420、及びネットワークインタフェース430を備える。プロセッサ400は、メモリ410に格納されるプログラムを実行する。プロセッサ400がプログラムを実行することによって、ジョブ管理サーバ100が備える機能を実現することができる。メモリ410は、プロセッサ400によって実行されるプログラム及び当該プログラムを実行するために必要な情報を格納する。メモリ410は、構成管理部110、ジョブ管理部120、障害回復部130、構成管理DB140、及びジョブDB150を格納する。以下、構成管理部110、ジョブ管理部120、及び障害回復部130を主語として処理を説明する場合には、プロセッサ400によって各構成部を実現するプログラムが実行されていることを示す。構成管理DB140は、物理構成管理テーブル141、仮想構成管理テーブル142、デプロイ実行時間管理テーブル143、及び空きリソース管理テーブル144を格納する。物理構成管理テーブル141は、サーバ200が有する物理リソースの構成及びソフトウェア構成に関する情報を格納する。物理構成管理テーブル141の詳細については、図5を用いて後述する。仮想構成管理テーブル142は、仮想サーバ220の構成情報を格納する。なお、仮想構成管理テーブル142の詳細については、図6を用いて後述する。デプロイ実行時間管理テーブル143は、ジョブのデプロイ処理の実行時間に関する情報を格納する。ここで、ジョブのデプロイ処理とは、仮想サーバ220を生成し、生成された仮想サーバ220にジョブを割り当てて、ジョブ開始までの設定をするための処理を示す。なお、デプロイ実行時間管理テーブル143の詳細については、図7を用いて後述する。空きリソース管理テーブル144は、各サーバ200における未使用の物理リソースのリソース量に関する情報を格納する。なお、空きリソース管理テーブル144の詳細については、図8を用いて後述する。なお、空きリソース管理テーブル144は、物理構成管理テーブル141及び仮想構成管理テーブル142を用いて作成することが可能であるため、予め構成管理DB140に格納されている必要はない。この場合、所定の処理が実行される場合に、ジョブ管理サーバ100によって生成され、メモリ410上に格納される。ジョブDB150は、ジョブネット構成管理テーブル151、ジョブネット実行管理テーブル152、ジョブ実行時間管理テーブル153、及び割り当て管理テーブル154を格納する。ジョブネット構成管理テーブル151は、ジョブネットの構成情報を格納する。ここで、ジョブネットとは、ジョブの実行順序を表すジョブのグループを示す。なお、ジョブネット構成管理テーブル151の詳細については、図9を用いて後述する。ジョブネット実行管理テーブル152は、ジョブネットに含まれる各ジョブの実行状態を示す情報を格納する。なお、ジョブネット実行管理テーブル152の詳細については、図10を用いて後述する。ジョブ実行時間管理テーブル153は、仮想サーバ220毎の各ジョブの実行時間に関する情報を格納する。すなわち、各仮想サーバ220のスペック毎にジョブの実行時間が格納される。ここで、仮想サーバ220のスペックとは、仮想サーバ220に割り当てられるプロセッサ及びメモリの性能、並びにOSの種類が含まれる。なお、ジョブ実行時間管理テーブル153の詳細については、図11を用いて後述する。割り当て管理テーブル154は、障害発生時に、ジョブの割り当て先を変更するための情報を格納する。なお、割り当て管理テーブル154の詳細については、図12を用いて後述する。なお、図2に示す例では、各DBは、メモリ410上に格納されているが、ストレージシステムなどの外部装置に格納されていてもよい。この場合、ジョブ管理サーバ100が、ストレージシステム図示省略から各DBを読み出し、メモリ410上に読み出された各DBを格納する。入出力インタフェース420は、ストレージシステム等の外部装置と接続するためのインタフェースである。ネットワークインタフェース430は、ネットワークを介して各サーバ200と接続するためのインタフェースである。なお、ジョブ管理サーバ100は、構成管理部110、ジョブ管理部120、及び障害回復部130が備える機能を実現するためのハードウェアを備えていてもよい。図3は、本発明の実施形態におけるサーバ200のハードウェア構成及びソフトウェア構成の一例を説明するブロック図である。サーバ200は、プロセッサ500、メモリ510、入出力インタフェース520、ネットワークインタフェース530、及びディスク装置540を備える。プロセッサ500は、メモリ510に格納されるプログラムを実行する。プロセッサ500がプログラムを実行することによって、サーバ200が備える機能を実現することができる。メモリ510は、プロセッサ500によって実行されるプログラム及び当該プログラムを実行するために必要な情報を格納する。メモリ510は、仮想化制御部210を格納する。また、メモリ510には、仮想化制御部210によって制御される仮想サーバ220のインスタンスが複数格納される。仮想サーバ220は、OS230を備え、当該OS230によって一以上のジョブ240が実行される。入出力インタフェース520は、ストレージシステム等の外部装置と接続するためのインタフェースである。ネットワークインタフェース530は、ネットワークを介してジョブ管理サーバ100と接続するためのインタフェースである。ディスク装置540は、各種データを格納する記憶媒体であり、例えば、HDD等が考えられる。なお、サーバ200は、ディスク装置540以外の記憶媒体、例えば、SSDを備えていてもよい。図4は、本発明の実施形態におけるジョブネットの一例を示す説明図である。ジョブネット600は、複数のジョブから構成されるグループであり、各ジョブの実行順序が指定されている。本実施形態では、一つのジョブネット600が一つの業務に対応するものとする。図4に示す例では、ジョブ2の実行後に、ジョブ3又はジョブ6に分岐している。これは、所定の条件を満たす場合にジョブ3若しくはジョブ6のいずれかが実行されるジョブネット、又は、ジョブ3及びジョブ6が並列実行されるジョブネットを示す。図4に示す例では、ジョブの開始からジョブの終了までの実行経路を示すパスが3つ存在する。1つ目のパスは、ジョブ1、ジョブ2、ジョブ3、ジョブ4、及びジョブ5の順でジョブが実行されるパスである。2つ目のパスは、ジョブ1、ジョブ2、ジョブ6、ジョブ7、及びジョブ5の順にジョブが実行されるパスである。3つ目のパスは、ジョブ1、ジョブ2、ジョブ6、及びジョブ8の順にジョブが実行されるパスである。本実施形態では、ジョブ管理サーバ100の管理者によって予め所定のジョブネットが登録されている場合を例に説明する。以下、各DBに格納されるテーブルについて説明する。図5は、本発明の実施形態における物理構成管理テーブル141の一例を示す説明図である。物理構成管理テーブル141は、サーバ名701、仮想化制御部名702、プロセッサ703、メモリ704、及び記憶容量705を含む。サーバ名701は、サーバ200を一意に識別するための識別子を格納する。仮想化制御部名702、サーバ名701に対応するサーバ200が備える仮想化制御部210の識別子を格納する。プロセッサ703は、サーバ名701に対応するサーバ200が備えるプロセッサ500の性能情報を格納する。ここで、プロセッサ500の性能情報は、周波数及びコア数を示す。なお、プロセッサ500の性能情報には他の情報が含まれてもよい。メモリ704は、サーバ名701に対応するサーバ200が備えるメモリ510の性能情報を格納する。ここで、メモリ510の性能情報は、メモリ容量を示す。なお、メモリ510の性能情報には、他の情報が含まれてもよい。記憶容量705は、サーバ名701に対応するサーバ200が備えるディスク装置540の性能情報を格納する。ここで、ディスク装置540の性能情報は、ディスク装置540の記憶容量を示す。なお、ディスク装置540の性能情報には、他の情報が含まれてもよい。図6は、本発明の実施形態における仮想構成管理テーブル142の一例を示す説明図である。仮想構成管理テーブル142は、仮想サーバ名801、サーバ名802、OS803、プロセッサ804、メモリ805、記憶容量806、及び状態807を含む。仮想サーバ名801は、仮想サーバ220を一意に識別するための識別子を格納する。サーバ名802は、仮想サーバ名801に対応する仮想サーバ220が生成されているサーバ200を一意に識別するための識別子を格納する。サーバ名802は、サーバ名701と同一のものである。OS803は、仮想サーバ名801に対応する仮想サーバ220が備えるOS230を識別するための識別子を格納する。プロセッサ804は、仮想サーバ名801に対応する仮想サーバ220に割り当てられたプロセッサの性能情報を格納する。具体的には、周波数及びコア数が格納される。なお、仮想サーバ220に割り当てられたプロセッサの性能情報には他の情報が含まれてもよい。メモリ805は、仮想サーバ名801に対応する仮想サーバ220に割り当てられたメモリの性能情報を格納する。具体的には、メモリ容量が格納される。なお、仮想サーバ220に割り当てられたメモリの性能情報には他の情報が含まれてもよい。記憶容量806は、仮想サーバ名801に対応する仮想サーバ220に割り当てられた記憶領域の性能情報を格納する。具体的には、記憶領域の容量を示す。なお、仮想サーバ名801に対応する仮想サーバ220に割り当てられた記憶領域の性能情報には、他の情報が含まれてもよい。状態807は、仮想サーバ名801に対応する仮想サーバ220の稼動状態を示す情報を格納する。具体的には、リソース予約、作成中、未使用、予約、使用中及び消去中のいずれかが格納される。リソース予約は、仮想サーバ220に割り当てるリソースが確保された状態を示す。作成中は、仮想サーバ220が生成されている状態を示す。未使用は、ジョブが割り当てられていない状態を示す。予約は、生成された仮想サーバ220にジョブが割り当てられ、かつ、当該ジョブが実行されていない状態を示す。使用中は、生成された仮想サーバ220がジョブを実行している状態を示す。消去中は、生成された仮想サーバ220が消去中である状態を示す。仮想サーバ220を消去することによって、当該仮想サーバ220に割り当てられていた物理リソースを解放することができ、空きリソースを確保することが可能となる。図7は、本発明の実施形態におけるデプロイ実行時間管理テーブル143の一例を示す説明図である。デプロイ実行時間管理テーブル143は、サーバ名901、OS902、及びデプロイ時間903を含む。サーバ名901は、サーバ200を一意に識別するための識別子を格納する。サーバ名901はサーバ名701と同一のものである。OS902は、サーバ名901に対応するサーバ200上に生成される仮想サーバ220が備えるOS230の識別子を格納する。OS902は、OS803と同一のものである。デプロイ時間903は、サーバ名901に対応するサーバ200がデプロイ処理の実行に要する時間を格納する。図8は、本発明の実施形態における空きリソース管理テーブル144の一例を示す説明図である。空きリソース管理テーブル144は、サーバ名1001、プロセッサ1002、メモリ1003、及び記憶容量1004を含む。サーバ名1001は、サーバ200を一意に識別するための識別子を格納する。サーバ名1001は、サーバ名701と同一のものである。プロセッサ1002は、サーバ名1001に対応するサーバ200のプロセッサ500のうち、未割当てのプロセッサ500の性能情報を格納する。なお、プロセッサ1002には、プロセッサ703からプロセッサ804を減算した値が格納される。例えば、周波数が2GHz、コア数8のプロセッサを備えるサーバ200上に、周波数が2GHz、コア数が2のプロセッサが割り当てられた仮想サーバ220が2つ生成されている場合、プロセッサ1002には8GHzが格納される。メモリ1003は、サーバ名1001に対応するサーバ200のメモリ510のうち、未割当てのメモリ510の性能情報を格納する。なお、メモリ1003には、メモリ704からメモリ805を減算した値が格納される。記憶容量1004は、サーバ名1001に対応するサーバ200が備えるディスク装置540のうち、仮想サーバ220に未割当てのディスク装置540の性能情報を格納する。図9は、本発明の実施形態におけるジョブネット構成管理テーブル151の一例を示す説明図である。ジョブネット構成管理テーブル151は、ジョブネット名1101、ジョブ名1102、関連ジョブ1103、ジョブ開始条件1104、及び実行期限時間1105を含む。ジョブネット名1101は、ジョブネットを一意に識別するための識別子を格納する。ジョブ名1102は、ジョブネット名1101に対応するジョブネットに含まれるジョブ240の識別子を格納する。関連ジョブ1103は、ジョブ名1102に対応するジョブ240の実行後に開始されるジョブ240の識別子が格納される。なお、ジョブ名1102に対応するジョブ240が実行された後に処理が終了する場合には、処理の終了を示すEXITが格納される。ジョブ開始条件1104は、関連ジョブ1103に対応するジョブ240が開始される条件を格納する。開始条件がない場合には、開始条件がない旨を示す情報が格納される。実行期限時間1105は、ジョブネット名1101に対応するジョブネットの処理の期限を表す情報が格納される。図5に示す例では、処理の実行時間が格納されているが、午前0時等の時刻情報が格納されてもよい。図10は、本発明の実施形態におけるジョブネット実行管理テーブル152の一例を示す説明図である。ジョブネット実行管理テーブル152は、ジョブネット名1201、ジョブ名1202、仮想サーバ名1203、状態1204、経過時間1205、及び戻り値1206を含む。ジョブネット名1201は、ジョブネットを一意に識別するための識別子を格納する。ジョブネット名1201は、ジョブネット名1101と同一のものである。ジョブ名1202は、ジョブネット名1201に対応するジョブネットに含まれるジョブ240の識別子を格納する。ジョブ名1202は、ジョブ名1102と同一のものである。仮想サーバ名1203は、ジョブ名1202に対応するジョブ240を実行する仮想サーバ220を一意に識別するための識別子を格納する。すなわち、ジョブ240が割り当てられた仮想サーバ220の識別子を格納する。状態1204は、ジョブ名1202に対応するジョブ240の実行状態を示す情報を格納する。具体的には、実行待ち、実行中、正常終了、及び異常終了等が格納される。なお、異常終了の場合には、当該異常に対して障害回復処理の実行状態を示す情報として未対応、対応中、及び対応済み等の情報が含まれてもよい。経過時間1205は、ジョブ名1202に対応するジョブ240の実行時間を格納する。状態1204が正常終了の場合には、ジョブ240の開始から終了までの間の実行時間が格納される。状態が異常終了の場合には、ジョブの240の開始から異常発生までの間の実行時間が格納される。なお、状態1204が実行待ち及び実行中の場合には経過時間1205には値は格納されない。戻り値1206は、ジョブ名1202に対応するジョブ240が実行されることによって出力される戻り値を格納する。図11は、本発明の実施形態におけるジョブ実行時間管理テーブル153の一例を示す説明図である。ジョブ実行時間管理テーブル153は、ジョブ名1301、スペック1302、及び実行時間1303を含む。ジョブ名1301は、ジョブ240を一意に識別するための識別子を格納する。スペック1302は、ジョブ名1301に対応するジョブ240を実行する仮想サーバ220の性能情報を格納する。スペック1302は、OS1304、プロセッサ1305、及びメモリ1306を含む。OS1304は、仮想サーバ220が備えるOS230の識別子を格納する。プロセッサ1305は、仮想サーバ220に割り当てられたプロセッサの性能情報を格納する。メモリ1306は、仮想サーバ220に割り当てられたメモリの性能情報を格納する。実行時間1303は、スペック1302に示されたスペックを有する仮想サーバ220がジョブ名1301に対応するジョブ240を実行した場合の実行時間を格納する。なお、ジョブ実行時間管理テーブル153は、ジョブ240の実行履歴に基づいて生成されてもよいし、予め管理者が設定してもよい。また、管理者が予め設定した後、ジョブ管理サーバ100がジョブの実行履歴を収集して逐次更新してもよい。図12は、本発明の実施形態における割り当て管理テーブル154の一例を示す説明図である。割り当て管理テーブル154は、パス名1401、ジョブ名1402、状態1403、経過時間1404、完了予測時間1405、完了予測時間1406、及びスペック1407を含む。パス名1401は、ジョブネットにおけるパスを一意に識別するための識別子を格納する。ジョブ名1402は、パス名1401に対応するパスに含まれるジョブ240を一意に識別するための識別子を格納する。なお、ジョブ名1402には、ジョブ240の実行順に識別子が格納される。状態1403は、ジョブ名1402に対応するジョブ240の実行状態を格納する。状態1403は、状態1204と同一のものである。経過時間1404は、ジョブ名1402に対応するジョブ240の実行時間を格納する。なお、経過時間1404は、経過時間1205と同一のものである。完了予測時間1405は、ジョブ名1402に対応するジョブ240が完了する予測時間を格納する。完了予測時間1405には、障害の発生よってジョブ240の割り当てが変更される前の予測時間が格納される。状態1403が正常終了の場合、完了予測時間1405には、経過時間1404の値と同一の値が格納される。状態1403が障害発生の場合、完了予測時間1405には、経過時間1404の値、仮想サーバ220のデプロイ時間、及びジョブ240の実行時間の合計値が格納される。仮想サーバ220のデプロイ時間は、デプロイ実行時間管理テーブル143のデプロイ時間903の値である。ジョブ240の実行時間は、ジョブ実行時間管理テーブル153の実行時間1303の値である。状態1403が実行待ちの場合、完了予測時間1405には、ジョブ240の実行時間、すなわち、ジョブ実行時間管理テーブル153の実行時間1303の値が格納される。完了予測時間1406は、障害の発生によってジョブ名1402に対応するジョブ240が新たな仮想サーバ220に割り当てられた場合に、当該ジョブ240が完了する予測時間を格納する。完了予測時間1406には、ジョブ実行時間管理テーブル153の実行時間1303の値が格納される。スペック1407は、ジョブ240の割り当て変更後の仮想サーバ220の性能情報を格納する。以下、本発明の処理について説明する。図13は、本発明の実施形態における処理の概要を説明するフローチャートである。ジョブ管理サーバ100は、所定の業務に対応するジョブネットの処理を開始するため、ジョブネット構成管理テーブル151から対応するジョブネットの情報を読み出すステップS1501。なお、ジョブ管理サーバ100は、管理者からジョブネットの開始命令が入力された場合、又は、ジョブネットの開始時間になった場合に処理を開始する。ジョブ管理サーバ100は、読み出されたジョブネットの情報に基づいて、当該ジョブネットに含まれるジョブ240のデプロイ処理を実行するステップS1502。具体的には、ジョブ管理サーバ100は、ジョブネットに含まれるジョブ240を割り当てる仮想サーバ220を決定し、各仮想サーバ220にジョブ240を割り当てる。なお、ジョブ240のデプロイ処理は、公知の方法を用いればよいため説明を省略する。以下、ジョブ240が割り当てられた仮想サーバ220を実行系の仮想サーバ220とも記載する。ジョブ管理サーバ100は、実行系の仮想サーバ220にジョブ240の実行を命令するステップS1503。例えば、図8に示すジョブネット600の場合、まず、ジョブ管理サーバ100は、ジョブ1が割り当てられた仮想サーバ220に当該ジョブ1の実行を命令する。当該実行命令を受信した仮想サーバ220は、ジョブ1の実行を開始する。ジョブ管理サーバ100は、実行中のジョブ240に障害が発生したか否かを監視するステップS1504。ジョブ240の障害管理の方法としては、ジョブ管理サーバ100が、実行系の仮想サーバ220に問い合わせる方法、実行系の仮想サーバ220から障害発生の通知を受信する方法等が考えられ。ただし、本発明は障害の監視方法に限定されない。ジョブ管理サーバ100は、実行中のジョブ240に障害が発生したか否かを判定するステップS1505。すなわち、実行中のジョブ240において障害の発生が検出されたか否かが判定される。実行中のジョブ240に障害が発生してない場合には、ジョブ管理サーバ100は、実行系の仮想サーバ220からジョブ240の完了通知を受信するステップS1506。なお、当該完了通知には、ジョブ240の実行結果である、返り値が含まれる。このとき、ジョブ管理サーバ100は、ジョブ240を完了した実行系の仮想サーバ220を消去するか否かを選択するための情報を管理者に対して表示してもよい。仮想サーバ220が消去されると空きリソースが増加する。一方、仮想サーバ220をそのまま残した場合、他のジョブ240を割り当てる仮想サーバ220として利用することができる。また、ジョブ管理サーバ100は、ジョブ240を完了した実行系の仮想サーバ220を自動的に消去してもよい。ジョブ管理サーバ100は、読み出されたジョブネットの情報に基づいて、次に実行するジョブ240が存在するか否かを判定するステップS1507。なお、ジョブ管理サーバ100は、ジョブネットの情報と、ジョブ240の完了通知に含まれる返り値に基づいて、次に実行するジョブ240が存在するか否かを判定できる。次に実行するジョブ240が存在すると判定された場合、ジョブ管理サーバ100は、ステップS1503に戻り、次のジョブ240の実行を実行系の仮想サーバ220に命令する。次に実行するジョブ240が存在しないと判定された場合、ジョブ管理サーバ100は、処理を終了する。ステップS1505において、実行中のジョブ240に障害が発生した場合、ジョブ管理サーバ100は、障害回復処理を実行するステップS1508。当該処理によって、ジョブ管理サーバ100は、障害が発生した実行系の仮想サーバ220上で実行されたジョブ240を含む複数のジョブ240を、新たな仮想サーバ220に移動できる。なお、障害回復処理の詳細については、図14を用いて後述する。図14は、本発明の実施形態における障害回復処理の詳細を説明するフローチャートである。障害回復処理は、実行系の仮想サーバ220の障害を検出した障害回復部130によって実行される。障害回復部130は、対象パスを特定するためのパス特定処理を実行するステップS1601。ここで、対象パスとは、ジョブネットに含まれるパスのうち、実行期限時間1105内にパス内の全ジョブが終了しないパスを示す。なお、パス特定処理の詳細については、図15を用いて後述する。障害回復部130は、パス特定処理の結果に基づいて、対象パスが存在するか否かを判定するステップS1602。対象パスが存在する場合には、当該対象パスに含まれるジョブ240の移動を考慮する必要があるためである。対象パスが存在すると判定された場合、障害回復部130は、スペック決定処理を実行するステップS1603。スペック決定処理では、実行期限時間1105内にパスに含まれる全てのジョブ240を完了するために必要な仮想サーバ220のスペックが決定される。なお、スペック決定処理の詳細については、図16A及び図16Bを用いて後述する。以下、ステップS1603において決定される仮想サーバ220のスペックを要求スペックとも記載する。また、新たにジョブ240が割り当てられる仮想サーバ220を新規仮想サーバ220とも記載する。障害回復部130は、要求スペックに基づいて、新規仮想サーバ220の予約処理を実行しステップS1604、処理を終了する。なお、予約処理の詳細については、図18を用いて後述する。ステップS1602において、対象パスが存在しないと判定された場合、障害回復部130は、障害が発生した実行系の仮想サーバ220の性能情報を取得するステップS1605。具体的には、障害回復部130は、ジョブネットの識別子及びジョブ240の識別子に基づいてジョブネット実行管理テーブル152を参照して、障害が発生した実行系の仮想サーバ220を特定する。さらに、障害回復部130は、実行系の仮想サーバ220の識別子に基づいて仮想構成管理テーブル142を参照して、実行系の仮想サーバ220の性能情報を取得する。障害回復部130は、取得された実行系の仮想サーバ220の性能情報に基づいて、障害が発生した実行系の仮想サーバ220と同一のスペックを有する新規仮想サーバ220の予約処理を実行するステップS1605。なお、新規仮想サーバ220のスペックは、障害が発生した実行系の仮想サーバ220以上のスペックを有していればよい。なお、障害回復部130は、予約処理が終了した後、新規仮想サーバ220へジョブ240の割り当てを変更するための変更情報を生成する。生成された変更情報は、ジョブ管理部120に出力される。ジョブ管理部120は、入力された変更情報に基づいて、ジョブ240の割り当てを変更する。図15は、本発明の実施形態におけるパス特定処理の詳細を説明するフローチャートである。障害回復部130は、読み出されたジョブネットの情報を参照して、当該ジョブネットにおける全てのパスを抽出するステップS1701。具体的には、障害回復部130は、障害が発生した実行系の仮想サーバ220が実行していたジョブ240以下に分岐可能な全てのパスを抽出する。例えば、図8に示すジョブネット600において、ジョブ2を実行する実行系の仮想サーバ220に障害が発生した場合には、以下の3つのパスが抽出される。すなわち、パス1ジョブ1、ジョブ2、ジョブ3、ジョブ4、ジョブ5、パス2ジョブ1、ジョブ2、ジョブ6、ジョブ7、ジョブ5、及びパス3ジョブ1、ジョブ2、ジョブ6、ジョブ8の3つのパスが抽出される。また、ジョブ6を実行する仮想サーバ220に障害が発生した場合には、前述したパス2及びパス3が抽出される。なお、障害回復部130は、抽出されたパスに1から始まる識別番号を付与する。障害回復部130は、識別番号を1に設定しステップS1702、最初のパスを選択するステップS1703。次に、障害回復部130は、割り当て管理テーブル154に、選択されたパスに対応するエントリを生成するステップS1704。ここで、図16A及び図16Bを用いて、エントリの生成方法について説明する。図16A及び図16Bは、本発明の実施形態における割り当て管理テーブル154のエントリの生成方法を説明するフローチャートである。まず、障害回復部130は、抽出されたパスの情報に基づいて、パス名1401、ジョブ名1402に必要な情報を格納するステップS1801。また、障害回復部130は、ジョブネット実行管理テーブル152の対応するエントリの状態1204を参照して、状態1403に必要な情報を格納するステップS1802。次に、障害回復部130は、割り当て管理テーブル154から一つのジョブ240を選択するステップS1803。なお、ジョブ240の選択方法としては、割り当て管理テーブル154の上から順に選択する方法が考えられる。障害回復部130は、選択されたジョブ240の状態1403が正常終了であるか否かを判定するステップS1804。選択されたジョブ240の状態1403が正常終了であると判定された場合、障害回復部130は、経過時間1404、完了予測時間1405、及び完了予測時間1406のそれぞれに値を格納するステップS1805。具体的には、障害回復部130は、経過時間1404、完了予測時間1405、及び完了予測時間1406のそれぞれに経過時間1205と同一の値を格納する。その後、障害回復部130は、パスに含まれる全てのジョブ240について処理が完了したか否かを判定するステップS1806。パスに含まれる全てのジョブ240について処理が完了していないと判定された場合、障害回復部130は、ステップS1803に戻り同様の処理ステップS1803~ステップS1819を実行する。パスに含まれる全てのジョブ240について処理が完了したと判定された場合、障害回復部130は、処理を終了する。ステップS1804において、選択されたジョブ240の状態1403が正常終了でないと判定された場合、障害回復部130は、選択されたジョブ240の状態1403が実行待ちであるか否かを判定するステップS1810。選択されたジョブ240の状態1403が実行待ちであると判定された場合、障害回復部130は、当該ジョブ240が割り当てられた実行系の仮想サーバ220の性能情報を取得するステップS1811。具体的には、以下のような処理が実行される。障害回復部130は、ジョブネット実行管理テーブル152を参照して、ジョブ名1402と一致するエントリを検索する。当該エントリの仮想サーバ名1203が、ジョブ名1402に対応するジョブ240が割り当てられた実行系の仮想サーバ220の識別子を示す。さらに、障害回復部130は、仮想構成管理テーブル142を参照して、仮想サーバ名1203に一致するエントリを検索する。当該エントリのOS803、プロセッサ804、及びメモリ805が、実行系の仮想サーバ220の性能情報である。次に、障害回復部130は、選択されたジョブ240を実行系の仮想サーバ220が実行した場合の実行時間を取得するステップS1812。具体的には、障害回復部130は、ジョブ実行時間管理テーブル153を参照して、ジョブ240の識別子及び実行系の仮想サーバ220の性能情報と一致するエントリを検索する。当該エントリの実行時間1303が、選択されたジョブ240の実行時間である。障害回復部130は、取得された実行時間1303を完了予測時間1405に格納しステップS1813、ステップS1806に進む。なお、状態1403が実行待ちのエントリの経過時間1404及び完了予測時間1406には値は格納されない。ステップS1810において、選択されたジョブ240の状態1403が実行待ちでないと判定された場合、すなわち、選択されたジョブ240の状態1403が障害発生の場合、障害回復部130は、当該ジョブ240が割り当てられた実行系の仮想サーバ220の性能情報を取得するステップS1814。なお、当該処理はステップS1811と同一の処理である。障害回復部130は、取得された実行系の仮想サーバ220の性能情報に基づいて、ジョブの240の実行時間を取得するステップS1815。なお、当該処理はステップS1812と同一の処理である。障害回復部130は、ジョブ240の開始から障害発生までの間の経過時間を取得するステップS1816。具体的には、障害回復部130は、ジョブネット実行管理テーブル152を参照して、ジョブ240の識別子に一致するエントリを検索する。当該エントリの経過時間1205が、ジョブ240の開始から障害発生までの間の経過時間である。障害回復部130は、実行系の仮想サーバ220が稼動するサーバ200を特定するステップS1817。具体的には、障害回復部130は、仮想構成管理テーブル142を参照して、実行系の仮想サーバ220の識別子と一致するエントリを検索する。当該エントリのサーバ名802名が、実行系の仮想サーバ220が稼動するサーバ200の識別子である。障害回復部130は、ジョブ240のデプロイ処理の実行時間を取得するステップS1818。具体的には、障害回復部130は、デプロイ実行時間管理テーブル143を参照し、サーバ名802と一致するエントリを検索する。当該エントリのデプロイ時間903が、ジョブ240のデプロイ処理の実行時間である。障害回復部130は、取得された情報に基づいて、経過時間1404及び完了予測時間1405に値を格納しステップS1819、ステップS1806に進む。具体的には、障害回復部130は、取得された実行時間1303の値を経過時間1404に格納する。また、障害回復部130は、取得された経過時間1205、実行時間1303、及びデプロイ時間903を合計し、当該合計値を完了予測時間1405に格納する。以上がステップS1704の処理である。図15の説明に戻る。障害回復部130は、パスに含まれる全てのジョブ240の完了予測時間1405の合計値を算出しステップS1705、算出された合計値が実行期限時間1105より大きいか否かを判定するステップS1706。すなわち、障害が発生したジョブ240のみを移動させた場合に、実行期限時間内にジョブネットの処理が完了するか否かが判定される。なお、実行期限時間1105が時刻で指定されている場合には、以下のような判定方法が考えられる。障害回復部130は、ジョブネットの開始時刻に算出された合計値を加算して終了時刻を算出する。障害回復部130は、算出された終了時刻が実行期限時間1105に示された時刻を超過するか否かを判定する。算出された合計値が実行期限時間1105より大きいと判定された場合、障害回復部130は、ステップS1708に進む。算出された合計値が実行期限時間1105以下であると判定された場合、障害回復部130は、割り当て管理テーブル154からパスのエントリを削除するステップS1707。障害回復部130は、全てのパスについて処理が完了したか否かを判定するステップS1708。全てのパスについて処理が完了していないと判定された場合、障害回復部130は、パスの識別番号を1加算してステップS1703に戻り、同様の処理ステップS1703~ステップS1709を実行する。全てのパスについて処理が完了したと判定された場合、障害回復部130は、処理を終了する。図17A及び図17Bは、本発明の実施形態におけるスペック決定処理の詳細を説明するフローチャートである。障害回復部130は、割り当て管理テーブル154から一つのパスを選択するステップS1901。障害回復部130は、選択されたパスに含まれるジョブ240の中から、検索対象のジョブ240を一つ選択するステップS1902。ここで、検索対象のジョブ240とは、状態1403が、障害発生及び実行待ちであるエントリを示す。以下、ステップS1902において選択されたジョブ240を対象ジョブとも記載する。障害回復部130は、ジョブ実行時間管理テーブル153を参照し、対象ジョブ240を割り当てる新規仮想サーバ220のスペックを決定するステップS1903。すなわち、要求スペックが決定される。具体的には、以下のような処理が実行される。障害回復部130は、ジョブ実行時間管理テーブル153から対象ジョブ240のジョブ名1402と一致するエントリを検索する。障害回復部130は、検索されたエントリの実行時間1303が、対象ジョブ240の完了予測時間1405より小さいか否かを判定する。検索されたエントリの実行時間1303が、対象ジョブ240の完了予測時間1405より小さいと判定された場合、障害回復部130は、当該エントリのスペック1302を要求スペックとして決定する。なお、要求スペックは複数決定されてもよい。次に、障害回復部130は、実行時間の短縮ができるか否かを判定するステップS1904。具体的には、ステップS1903において要求スペックが一以上決定されか否かが判定される。要求スペックが決定されなかった場合、すなわち、検索されたエントリの実行時間1303が、対象ジョブ240の完了予測時間1405より小さいエントリが存在しない場合、実行時間の短縮ができないと判定される。実行時間の短縮ができないと判定された場合、障害回復部130は、対象ジョブ240に対応するエントリのスペック1407に短縮不可を格納するステップS1905。また、障害回復部130は、完了予測時間1406に完了予測時間1405と同一の値を格納する。実行時間の短縮ができると判定された場合、障害回復部130は、仮想構成管理テーブル142を参照して、新規仮想サーバ220のスペック、すなわち、要求スペックスペック1302を満たす仮想サーバ220が予約可能か否かを判定するステップS1908。当該処理では、要求スペックスペック1302を満たし、かつ、使用可能な仮想サーバ220が存在するか否かが判定される。具体的には以下のような処理が実行される。障害回復部130は、仮想構成管理テーブル142を参照して、要求スペックスペック1302を満たす仮想サーバ220を検索する。本実施形態では、要求スペックスペック1302と同一のスペックを有する仮想サーバ220を検索するものとする。なお、本発明はこれに限定されず、要求スペックスペック1302以上のスペックを有する仮想サーバ220が検索されてもよい。要求スペックスペック1302を満たす仮想サーバ220が存在しない場合には、新規仮想サーバ220の予約が不可能であると判定される。要求スペックスペック1302を満たす仮想サーバ220が存在すると判定された場合、障害回復部130は、検索された仮想サーバ220に対応するエントリの状態807が未使用であるか否かを判定する。なお、障害回復部130は、状態807が作成中のエントリであるか否かを判定してもよい。検索された仮想サーバ220に対応するエントリの状態807が未使用でない場合、仮想サーバ220の予約が不可能であると判定される。一方、検索された仮想サーバ220に対応するエントリの状態807が未使用である場合、仮想サーバ220の予約が可能であると判定される。なお、ステップS1903において複数の要求スペックが決定された場合、最もスペックの高い要求スペックの情報を格納する方法が考えられる。ただし、本発明はこれに限定されず、他の要求スペックの情報が格納されてもよい。要求スペックスペック1302を満たす仮想サーバ220の予約が可能であると判定された場合、障害回復部130は、対象ジョブ240に対応するエントリの完了予測時間1406に、新規仮想サーバ220に対応するエントリの実行時間1303の値を格納するステップS1909。さらに、障害回復部130は、対象ジョブ240に対応するエントリのスペック1407に、要求スペックスペック1302の情報を格納しステップS1910、ステップS1906に進む。ステップS1908において、要求スペックスペック1302を満たす仮想サーバ220の予約が不可能であると判定された場合、障害回復部130は、要求スペックスペック1302を満たす仮想サーバ220が生成できるか否かを判定するステップS1911。すなわち、新規仮想サーバ220が生成できるか否かが判定される。具体的には、障害回復部130は、空きリソース管理テーブル144を参照して、新規仮想サーバ220を生成するための空きリソースが存在するか否かを判定する。新規仮想サーバ220を生成するための空きリソースが存在しない場合、新規仮想サーバ220が生成できないと判定される。一方、新規仮想サーバ220を生成する空きリソースが存在する場合、新規仮想サーバ220が生成できると判定される。このとき、新規仮想サーバ220の生成が可能なサーバ200の識別子が取得される。新規仮想サーバ220を生成できないと判定された場合、障害回復部130は、対象ジョブ240に対応するエントリのスペック1407に短縮不可を格納するステップS1905。また、障害回復部130は、完了予測時間1406に完了予測時間1405と同一の値を格納する。新規仮想サーバ220を生成できると判定された場合、障害回復部130は、完了予測時間1406に、実行時間1303とデプロイ時間903との合計値を格納しステップS1912、ステップS1910に進む。なお、デプロイ時間903は、取得されたサーバ200の識別子に一致するエントリのデプロイ時間903である。障害回復部130は、選択されたパスに含まれる全てのジョブ240について処理が完了したか否かを判定するステップS1906。選択されたパスに含まれる全てのジョブ240について処理が完了していないと判定された場合、障害回復部130は、ステップS1902に戻り、次のジョブ240を選択して同様の処理を実行するステップS1902~ステップS1908。選択されたパスに含まれる全てのジョブ240について処理が完了していると判定された場合、障害回復部130は、割り当て管理テーブル154の全てのパスについて処理が完了したか否かを判定するステップS1907。割り当て管理テーブル154の全てのパスについて処理が完了していないと判定された場合、障害回復部130は、割り当て管理テーブル154から次のパスを選択しステップS1901、同様の処理を実行するステップS1901~ステップS1908。割り当て管理テーブル154の全てのパスについて処理が完了していると判定された場合、障害回復部130は、処理を終了する。以上の処理によって割り当て管理テーブル154の全てのカラムに必要な情報が格納される。図18は、本発明の実施形態における予約処理の詳細を説明するフローチャートである。障害回復部130は、割り当て管理テーブル154から一つのパスを選択するステップS2001。当該処理は、ステップS1901と同一の処理である。障害回復部130は、選択されたパスに含まれるジョブ240の中から、検索対象のジョブ240を一つ選択するステップS2002。具体的には、スペック1407に要求スペックが格納されたエントリが選択される。障害回復部130は、選択されたエントリのスペック1407を満たす仮想サーバ220の予約が可能か否かを判定するステップS2003。当該処理は、ステップS1908と同一の処理である。なお、障害回復部130は、ステップS1908の判定結果を用いてもよい。スペック1407を満たす仮想サーバ220の予約が可能であると判定された場合、障害回復部130は、当該仮想サーバ220に対応するエントリの状態807を使用予約に変更するステップS2004。また、障害回復部130は、当該仮想サーバ220へのジョブ240の割り当てを変更するための変更情報を生成し、ジョブ管理部120に出力する。変更情報には、少なくとも仮想サーバ220の識別子及びジョブ240の識別子が含まれる。なお、ジョブ管理部120は、変更情報が入力されると、当該変更情報に基づいてジョブの240の割り当てを変更する。障害回復部130は、選択されたパスに含まれる全てのジョブ240について処理が完了したか否かを判定するステップS2005。選択されたパスに含まれる全てのジョブ240について処理が完了していないと判定された場合、障害回復部130は、ステップS2002に戻り、次のジョブ240を選択して同様の処理を実行するステップS2002~ステップS2009。選択されたパスに含まれる全てのジョブ240について処理が完了していると判定された場合、障害回復部130は、割り当て管理テーブル154の全てのパスについて処理が完了したか否かを判定するステップS2006。割り当て管理テーブル154の全てのパスについて処理が完了していないと判定された場合、障害回復部130は、割り当て管理テーブル154から次のパスを選択しステップS2001、同様の処理を実行するステップS2001~ステップS2009。ステップS2003において、スペック1407を満たす仮想サーバ220の予約が不可能であると判定された場合、障害回復部130は、空きリソース管理テーブル144を参照し、新規仮想サーバ220が生成可能なサーバ200を検索するステップS2007。障害回復部130は、仮想構成管理テーブル142に新たなエントリを作成しステップS2008、ステップS2005に進む。具体的には、障害回復部130は、新たに生成されたエントリの仮想サーバ名801、サーバ名802、OS803、プロセッサ804、メモリ805、及び記憶容量806に必要な情報を格納し、また、状態807にリソース予約を格納する。さらに、障害回復部130は、新規仮想サーバ220へのジョブ240の割り当てを変更するための変更情報を生成し、ジョブ管理部120に出力する。変更情報には、サーバ200の識別子、仮想サーバ220の識別子、要求スペック及びジョブ240の識別子が含まれる。なお、ジョブ管理部120は、変更情報が入力されると、当該変更情報に基づいて、サーバ200に新規仮想サーバ220の生成要求を送信する。このとき、ジョブ管理部120は、状態807に作成中に変更する。サーバ200は、新規仮想サーバ220の生成命令を受信すると、当該生成命令に含まれる要求スペックに基づいて、新規仮想サーバ220を生成し、生成が完了した旨をジョブ管理サーバ100に通知する。当該通知を受信したジョブ管理部120は、新規仮想サーバ220にジョブ240を割り当てる。また、ジョブ管理部120は、状態807を予約に変更する。さらに、ジョブ管理部120は、空きリソース管理テーブル144のうち、仮想サーバ220が生成されたサーバ200に対応するエントリから予約されたリソースを減算することによって各カラムを更新する。なお、障害回復部130は、ステップS1604及びステップS1607の検索処理の結果を管理者に表示し、予約処理を実行するか否かを選択できるようにしてもよい。本発明の一形態によれば、ジョブ240を実行する仮想サーバ220に障害が発生した場合に、当該ジョブ240の実行に必要な仮想サーバ220の性能を決定し、仮想サーバ220が予約される。これによって、予めジョブを移動させるための待機系のサーバ200又は待機系の仮想サーバ220を用意する必要がない。また、ジョブ240の実行時に仮想サーバ220が生成され、ジョブ240の完了後は仮想サーバ220が消去されるため物理リソースを有効に活用することができる。また、本発明の一形態によれば、実行期限時間1105内にジョブネットの処理が終了しない場合には、さらに、ジョブネット全体を考慮した、ジョブ240の割り当てが変更スケジューリングされる。したがって、業務全体に影響を与えることなく障害に対応することが可能となる。[変形例]変形例では、スペック決定処理において、必要な数だけのジョブ240の割り当てを変更する点が異なる。以下、差異を中心に説明する。図19A及び図19Bは、本発明の実施形態におけるスペック決定処理の詳細を説明するフローチャートである。ステップS1901~ステップS1912は、同一の処理であるため説明を省略する。変形例では、ステップS1905及びステップS1910の後に、障害回復部130が、割り当て変更後の完了予測時間の合計値を算出するステップS2101。具体的には、障害回復部130は、ステップS1902において選択されたジョブ240については完了予測時間1406の値を読み出し、ステップS1902においてまだ選択されていないジョブ240については完了予測時間1405の値を読み出す。さらに、障害回復部130は、読み出された完了予測時間1406の値と完了予測時間1405の値とを合計する。障害回復部130は、算出された完了予測時間の合計値が実行期限時間1105より小さいか否かを判定するステップS2102。算出された完了予測時間の合計値が実行期限時間1105より小さいと判定された場合、障害回復部130は、選択されたパスについてのスペック決定処理を終了し、ステップS1907に進む。算出された完了予測時間の合計値が実行期限時間1105以上であると判定された場合、障害回復部130は、ステップS1906に進む。当該処理によって、必要なジョブ240についてのみ割り当てが変更されるため、システム全体の負荷を低減でき、また、リソースの使用量を抑制することができる。