論理的な機器および物理的な機器のそれぞれを当該複数の機器のそれぞれと対応付けられた複数の種類の資源のそれぞれとして認識し、当該複数の機器間の接続を制御する制御サーバであって、前記複数の種類の資源のうち相互に接続可能な複数の資源の組み合わせとして予め定められた接続対象資源に対する処理である接続処理を実行する際の条件を定義した接続定義情報と、前記複数の種類の資源のそれぞれに対応する機器に、前記接続処理に基づいた操作を含む相互に異なる複数の操作を行うために、当該資源に対して実行する相互に異なる複数の資源処理を定義した資源定義情報とを記憶する資源定義管理部を有し、前記資源定義管理部は、前記接続対象資源を接続する指示を受け付けると、前記接続定義情報と前記資源定義情報とに基づき、当該接続対象資源に対して実行する前記接続処理と前記複数の資源処理のそれぞれとの実行手順を生成し、前記資源定義管理部にて生成された実行手順に従って当該接続対象資源に対して前記接続処理を実行する資源管理部と、前記資源定義管理部にて生成された実行手順に従って当該接続対象資源に対して前記複数の資源処理のそれぞれを実行することにより、当該接続対象資源に対応する機器の操作を行う資源操作部と、を有する制御サーバ。請求項1に記載の制御サーバにおいて、前記複数の種類の資源のそれぞれは、属性情報を具備することが可能であり、前記接続処理は、前記接続対象資源のうち、接続先となる接続先資源が具備する属性情報の属性値を、接続元となる接続元資源の属性情報の属性値として設定する処理であり、前記複数の資源処理は、前記接続元資源に設定された属性値を、当該接続元資源に対応する機器に設定する操作を行うための資源処理である属性値設定用資源処理を含み、前記接続定義情報は、前記属性値設定用資源処理を前記接続処理よりも前に実行することを前記条件として定義する制御サーバ。論理的な機器および物理的な機器のそれぞれを当該複数の機器のそれぞれと対応付けられた複数の種類の資源のそれぞれとして認識し、当該複数の機器間の接続を制御する制御サーバにおける制御方法であって、前記複数の種類の資源のうち相互に接続可能な複数の資源の組み合わせとして予め定められた接続対象資源を接続する指示を受け付ける処理と、当該接続対象資源に対する処理である接続処理を実行する際の条件を定義した接続定義情報と、前記複数の種類の資源のそれぞれに対応する機器に、前記接続処理に基づいた操作を含む相互に異なる複数の操作を行うために、当該資源に対して実行する相互に異なる複数の資源処理を定義した資源定義情報とに基づき、当該接続対象資源に対して実行する前記接続処理と前記複数の資源処理のそれぞれとの実行手順を生成する処理と、前記生成した実行手順に従って当該接続対象資源に対して前記接続処理および前記複数の資源処理のそれぞれを実行することにより、当該接続対象資源に対応する機器の操作を行う処理と、を有する制御方法。請求項3に記載の制御方法において、前記複数の種類の資源のそれぞれは、属性情報を具備することが可能であり、前記接続処理は、前記接続対象資源のうち、接続先となる接続先資源が具備する属性情報の属性値を、接続元となる接続元資源の属性情報の属性値として設定する処理であり、前記複数の資源処理は、前記接続元資源に設定された属性値を、当該接続元資源に対応する機器に設定する操作を行うための資源処理である属性値設定用資源処理を含み、前記接続定義情報は、前記属性値設定用資源処理を前記接続処理よりも前に実行することを前記条件として定義する制御方法。論理的な機器および物理的な機器のそれぞれを当該複数の機器のそれぞれと対応付けられた複数の種類の資源のそれぞれとして認識し、当該複数の機器間の接続を制御する制御サーバに、前記複数の種類の資源のうち相互に接続可能な複数の資源の組み合わせとして予め定められた接続対象資源を接続する指示を受け付ける機能と、当該接続対象資源に対する処理である接続処理を実行する際の条件を定義した接続定義情報と、前記複数の種類の資源のそれぞれに対応する機器に、前記接続処理に基づいた操作を含む相互に異なる複数の操作を行うために、当該資源に対して実行する相互に異なる複数の資源処理を定義した資源定義情報とに基づき、当該接続対象資源に対して実行する前記接続処理と前記複数の資源処理のそれぞれとの実行手順を生成する機能と、前記生成した実行手順に従って当該接続対象資源に対して前記接続処理および前記複数の資源処理のそれぞれを実行することにより、当該接続対象資源に対応する機器の操作を行う機能と、を実現させるためのプログラム。請求項5に記載のプログラムにおいて、前記複数の種類の資源のそれぞれは、属性情報を具備することが可能であり、前記接続処理は、前記接続対象資源のうち、接続先となる接続先資源が具備する属性情報の属性値を、接続元となる接続元資源の属性情報の属性値として設定する処理であり、前記複数の資源処理は、前記接続元資源に設定された属性値を、当該接続元資源に対応する機器に設定する操作を行うための資源処理である属性値設定用資源処理を含み、前記接続定義情報は、前記属性値設定用資源処理を前記接続処理よりも前に実行することを前記条件として定義するプログラム。ここで、データセンタにおいては、複数の機器のそれぞれにて管理されている値を用いて他の機器の制御を行いたい場合がある。具体的には、レイヤ3スイッチにおいてVLANIDVirtualLocalAreaNetworkIDIDentificationとIPInternetProtocolアドレスとの対応付けサブネットベースVLAN方式が管理されている場合、VLANIDと、そのVLANIDに対応する範囲のIPアドレスのいずれかとを仮想マシンに設定し、その仮想マシンがVLANIDを用いて通信を行えるようすることが考えられる。IaaSInfrastructureasaSevice等では、利用者に仮想マシンを提供する場合、他の利用者がその仮想マシンにアクセスできないことが重要である。このような場合、複数の利用者のそれぞれにVALNIDとIPアドレスとを付与し、仮想マシンはそのVLANIDとIPアドレスとを用いて通信することにより、他の利用者からのネットワークの隔離性を確保する方式が一般的である。従って、データセンタにおいては上述したようなレイヤ3スイッチと仮想マシンとの連携、つまり複数の機器の接続が頻繁に起こり得る。特許文献1に開示されている方法では、物理的な機器および論理的な機器のそれぞれを資源として認識している。この場合、例えばレイヤ3スイッチによって管理されるVLANIDやIPアドレスを仮想マシンに設定するといった複数の機器間の接続を実現するためには、複数の機器の接続に必要な情報を機器から取得する仕組みや、取得した情報を他の機器に設定する仕組みを個別に組み込まねばならない。そのため、特許文献1に開示されている技術を用いても、接続の対象となる複数の機器や、その複数の機器の接続方法が変わると、システム全体の改修が必要となり、新たな機能を提供する機器を迅速かつ柔軟に取り込むことができないという問題点がある。本発明は、システムに新たな機能を提供する機器を迅速かつ柔軟に取り込むことを可能にする制御サーバ、制御方法およびプログラムを提供することを目的とする。上記目的を達成するために本発明の制御サーバは、論理的な機器および物理的な機器のそれぞれを当該複数の機器のそれぞれと対応付けられた複数の種類の資源のそれぞれとして認識し、当該複数の機器間の接続を制御する制御サーバであって、前記複数の種類の資源のうち相互に接続可能な複数の資源の組み合わせとして予め定められた接続対象資源に対する処理である接続処理を実行する際の条件を定義した接続定義情報と、前記複数の種類の資源のそれぞれに対応する機器に、前記接続処理に基づいた操作を含む相互に異なる複数の操作を行うために、当該資源に対して実行する相互に異なる複数の資源処理を定義した資源定義情報とを記憶する資源定義管理部を有し、前記資源定義管理部は、前記接続対象資源を接続する指示を受け付けると、前記接続定義情報と前記資源定義情報とに基づき、当該接続対象資源に対して実行する前記接続処理と前記複数の資源処理のそれぞれとの実行手順を生成し、前記資源定義管理部にて生成された実行手順に従って当該接続対象資源に対して前記接続処理を実行する資源管理部と、前記資源定義管理部にて生成された実行手順に従って当該接続対象資源に対して前記複数の資源処理のそれぞれを実行することにより、当該接続対象資源に対応する機器の操作を行う資源操作部と、を有する。また、上記目的を達成するために本発明の制御方法は、論理的な機器および物理的な機器のそれぞれを当該複数の機器のそれぞれと対応付けられた複数の種類の資源のそれぞれとして認識し、当該複数の機器間の接続を制御する制御サーバにおける制御方法であって、前記複数の種類の資源のうち相互に接続可能な複数の資源の組み合わせとして予め定められた接続対象資源を接続する指示を受け付ける処理と、当該接続対象資源に対する処理である接続処理を実行する際の条件を定義した接続定義情報と、前記複数の種類の資源のそれぞれに対応する機器に、前記接続処理に基づいた操作を含む相互に異なる複数の操作を行うために、当該資源に対して実行する相互に異なる複数の資源処理を定義した資源定義情報とに基づき、当該接続対象資源に対して実行する前記接続処理と前記複数の資源処理のそれぞれとの実行手順を生成する処理と、前記生成した実行手順に従って当該接続対象資源に対して前記接続処理および前記複数の資源処理のそれぞれを実行することにより、当該接続対象資源に対応する機器の操作を行う処理と、を有する。また、上記目的を達成するために本発明のプログラムは、論理的な機器および物理的な機器のそれぞれを当該複数の機器のそれぞれと対応付けられた複数の種類の資源のそれぞれとして認識し、当該複数の機器間の接続を制御する制御サーバに、前記複数の種類の資源のうち相互に接続可能な複数の資源の組み合わせとして予め定められた接続対象資源を接続する指示を受け付ける機能と、当該接続対象資源に対する処理である接続処理を実行する際の条件を定義した接続定義情報と、前記複数の種類の資源のそれぞれに対応する機器に、前記接続処理に基づいた操作を含む相互に異なる複数の操作を行うために、当該資源に対して実行する相互に異なる複数の資源処理を定義した資源定義情報とに基づき、当該接続対象資源に対して実行する前記接続処理と前記複数の資源処理のそれぞれとの実行手順を生成する機能と、前記生成した実行手順に従って当該接続対象資源に対して前記接続処理および前記複数の資源処理のそれぞれを実行することにより、当該接続対象資源に対応する機器の操作を行う機能と、を実現させる。本発明は以上説明したように構成されているので、接続の対象となる複数の機器や、複数の機器の接続方法が変わっても、接続定義情報や接続処理の処理内容を更新すればよく、システム全体の改修をする必要がない。従って、システムに新たな機能を提供する機器を迅速かつ柔軟に取り込むことが可能となる。以下に、本発明の実施の形態について図面を参照して説明する。図1は、本発明の制御サーバを適用した仮想マシン提供システムの実施の一形態の構成を示すブロック図である。本実施形態の仮想マシン提供システムでは、ある利用者に提供されている仮想マシンが他の利用者に使用されないように、ネットワークの隔離性を確保するものとする。ここでは、複数の利用者のそれぞれにVLANIDを付与し、レイヤ3スイッチにてVLANIDとサブネットワークとを対応付けるサブネットベースVLAN方式。そして、対応するサブネットワーク内のIPアドレスを仮想マシンに割り当てて仮想マシンを設定した後、その仮想マシンを利用者に提供する。これにより、他の利用者からのネットワークの隔離性が確保される。本実施形態の仮想マシン提供システムは図1に示すように、操作端末10と、制御サーバ20と、物理サーバ30と、物理的な機器であるレイヤ3スイッチ40とを備えている。操作端末10と、制御サーバ20と、物理サーバ30と、レイヤ3スイッチ40とは、コンピュータネットワーク50によって接続され、相互に通信を行うことが可能である。コンピュータネットワーク50は例えば、データセンタ内の通信網である。物理サーバ30は、論理的な機器である複数の仮想マシンのそれぞれが設定されるサーバであり、複数の仮想マシンのそれぞれに割り当てられるCPUコア不図示や、メモリ不図示、ハードディスクドライブ不図示等の複数の種類のハードウェアを備えている。また、物理サーバ30は、仮想マシンを制御するためのハイパーバイザを備えている。物理サーバ30は、制御サーバ20からの指示に応じ、ハイパーバイザを用いて複数の種類のハードウェアのそれぞれを分割して仮想マシンに割り当てる。レイヤ3スイッチ40は、物理サーバ30と外部ネットワーク100との間に配置される。レイヤ3スイッチ40は、物理サーバ30に設定された仮想マシンへのアクセスに対し、VLANIDとIPアドレスとによる制御を行う。操作端末10は、仮想マシン提供システムの利用者等が、制御サーバ20に対する各種の指示を入力するために用いる端末である。操作端末10は、入力された指示の内容を示す指示通知を制御サーバ20へ送信する。図2は、図1に示した制御サーバ20の一構成例を示すブロック図である。図1に示した制御サーバ20は、物理的な機器および論理的な機器のそれぞれを、上述した複数の種類の資源として認識する。図1に示した制御サーバ20は図2に示すように、資源管理部21と、資源定義管理部22と、資源配備管理部23と、資源操作部24とを備えている。資源管理部21は、資源定義管理部22にて記憶されている資源定義情報に基づいて複数の種類の資源を生成する。なお、資源定義情報については後述する。資源管理部21は、生成した複数の種類の資源のそれぞれを管理するための資源テーブルを備えている。また、資源は属性情報を具備することが可能であり、資源管理部21は、複数の種類の資源のそれぞれの属性情報を管理するための資源属性テーブルを記憶している。また、資源管理部21は、複数の種類の資源のそれぞれの現在の状態を管理するための資源状態テーブルを備えている。なお、資源管理部21が備えるテーブルに記憶された情報は、システムダウンからの復旧やロールバック等に備えてシステム上に永続化される。図3は、図2に示した資源管理部21が備えるテーブルの一構成例を示す図であり、aは資源テーブルの一構成例を示す図、bは資源属性テーブルの一構成例を示す図、cは資源状態テーブルの一構成例を示す図である。資源テーブルは図3aに示すように、3つのカラムから構成され、複数の種類の資源のそれぞれを一意に識別する資源IDと、その資源の資源名と、その資源に対応する機器の操作を行うために用いられるドライバである資源ドライバの資源ドライバ名とを対応付けて1つのレコードとして記憶している。資源属性テーブルは図3bに示すように、3つのカラムから構成され、複数の種類の資源のそれぞれを一意に識別する資源IDと、その資源の属性情報と、その属性情報の属性値とを対応付けて1つのレコードとして記憶している。資源状態テーブルは図3cに示すように、2つのカラムから構成され、複数の種類の資源のそれぞれを一意に識別する資源IDと、その資源の状態とを対応付けて1つのレコードとして記憶している。なお、本実施形態において資源の状態としては、すべての種類の資源に対して共通に、未割当、割当済および起動中の3つが定義される。なお、資源の状態が未割当の状態とは、資源管理部21が資源定義情報に基づいてその資源を生成したときの状態である。このように、複数の種類の資源のそれぞれは、未割当、割当済および起動中のいずれかの状態をとる。この複数の状態は、資源管理部21からの指示に応じ、複数の種類の資源のそれぞれに対応する機器の操作を行うために用いられる複数の資源ドライバ毎に設定された複数の操作IFであり、資源処理である複数の種類の資源SPIServiceProviderInterfaceのそれぞれを資源操作部24が実行することによって遷移する。図4は、複数の種類の資源SPIのそれぞれと、その資源SPIを実行することによる資源の状態の遷移との対応を説明するための図である。図4に示すように、属性値設定用資源処理である割当SPIは、資源の状態を未割当から割当済に遷移させる資源SPIである。割当済の状態とは、ソフトウェアリソースやハードウェアリソースを資源に割り当てた状態である。従って、例えば仮想マシン用ドライバであれば、割当SPIは、物理サーバ30にCPUコア、メモリ、ディスクを確保させるための資源SPIとなる。また、例えばレイヤ3スイッチ用ドライバであれば、割当SPIは、レイヤ3スイッチにVLANIDを確保させるための資源SPIとなる。また、図4に示すように、起動SPIは、資源の状態を割当済から起動中に遷移させる資源SPIである。起動中の状態とは、資源が利用可能な状態である。従って、例えば仮想マシン用ドライバであれば、起動SPIは、物理サーバ30に仮想マシンを起動してログインできるようにさせるため資源SPIとなる。なお、レイヤ3スイッチ資源では、割当済と起動中との間に差はない。従って、レイヤ3スイッチ用ドライバの起動SPIはNoOperationNOPとなる。ただし、この場合でも状態は、割当済から起動中へ遷移する。また、図4に示すように、停止SPIは資源の状態を起動中から割当済に遷移させる資源SPIであり、解放SPIは資源の状態を割当済から未割当に遷移させる資源SPIである。また、資源管理部21は、仮想マシンの提供の指示を受け付けたことを示す指示通知を操作端末10から受信すると、シナリオの生成を要求するためのシナリオ生成要求を資源定義管理部22へ出力する。なお、シナリオは、例えば、複数の種類の資源のうち接続可能な複数の資源の組み合わせとして予め定められた接続対象資源を接続する際の実行手順である。その後、資源管理部21は、資源定義管理部22が生成したシナリオを示すシナリオ情報を資源定義管理部22から受け付ける。そして、資源管理部21は、受け付けたシナリオ情報を資源配備管理部23へ出力する。なお、シナリオが実行されるときの資源管理部21の動作の詳細については後述する。再度、図2を参照すると、資源定義管理部22は、複数の種類の資源のそれぞれに対応する複数の資源定義情報を記憶している。資源定義情報は、資源管理部21が資源を生成する際のひな型となる情報である。図5は、図2に示した資源定義管理部22が記憶している資源定義情報の一例を示す図であり、aは仮想マシン資源の資源定義情報の一例を示す図、bはレイヤ3スイッチ資源の資源定義情報の一例を示す図である。資源定義情報では図5に示すように、資源名と、その資源の属性情報属性値と、その資源に対応する資源ドライバ名と、その資源ドライバに設定された資源SPI名とが定義されている。なお、資源定義情報の属性情報にはデフォルト値を定義することができ、資源が生成されたときは、デフォルト値が属性値として設定される。属性値は資源を生成した後に変更することが可能であり、1つの資源定義情報に基づき、属性値が相互に異なる複数の資源を生成することも可能である。図6は、図2に示した資源管理部21が生成する資源の一例を示す図である。図6に示すように、1つの資源定義情報に基づき、属性値が相互に異なる複数の資源を生成することができる。但し、資源定義情報に定義されていない属性情報を資源に追加したり、資源定義情報に定義されている属性情報を資源において削除したりすることはできない。なお、資源定義情報は、静的な情報であり、資源定義情報に基づいて生成された資源にて変更された属性値等が資源定義情報に反映されることはない。資源定義情報と資源との間の関係は、例えばオブジェクト指向言語でいうクラスとインスタンスとの間の関係に該当する。また、資源定義管理部22は、上述したシナリオを生成するために用いる接続定義情報と、接続定義情報にて定義された接続処理を規定した接続処理情報とを記憶している。図7は、図2に示した資源定義管理部22が記憶している情報の一例を示す図であり、aは接続定義情報の一例を示す図、bは接続処理情報の一例を示す図である。接続定義情報は、接続対象資源を定義した情報である。接続定義情報では、接続対象資源のそれぞれを接続元資源または接続先資源としている。接続元資源は、接続に必要な情報を要求する側の資源である。一方、接続先資源は、接続に必要な情報を提供する側の資源である。以降、接続定義情報において定義された資源のことを接続関係にある資源という。図7aでは、接続元資源が仮想マシン資源であり、接続先資源がレイヤ3スイッチ資源である場合の接続定義情報を示している。この場合、仮想マシン資源とレイヤ3スイッチ資源とは接続関係にある資源ということになる。また、接続定義情報では、接続対象資源を接続する際の条件を定義している。具体的には例えば図7aに示すように、接続元資源に対して所定の資源SPIを実行するときの接続先資源の状態や、その所定の資源SPIの実行の前後に実行する処理が定義される。この処理は例えば、後述する接続処理である。また、図7aに示した例では、仮想マシン資源に対して割当SPIを実行するときのレイヤ3スイッチ資源の状態として割当済が定義されている。但し、接続定義情報においては、接続元資源に対して所定の資源SPIを実行するときの接続先資源の状態として複数の状態を定義することもできる。接続処理情報では図7bに示すように、接続対象資源を接続する際にその接続対象資源に対して実行する処理である接続処理が規定されている。具体的には、接続処理情報は、接続先資源と接続先資源との間で授受する属性情報を規定している。また、接続処理情報は、接続先資源から属性値を取得し、取得した属性値を接続元資源に設定する処理を接続処理として規定している。なお、資源定義管理部22に記憶される資源定義情報、接続定義情報および接続処理情報の設定、更新および削除等は、仮想マシン提供システムの運用者等が例えば、コンピュータネットワーク50に接続された運用者端末不図示等を用いて行うことができる。また、資源定義管理部22は、図5および図7に示したような資源定義情報および接続定義情報に基づき、上述したシナリオを生成する。シナリオは、複数の種類の資源SPIのそれぞれを実行するアクションと、接続処理情報に規定された処理を実行するアクションとをノードとし、それらのアクションの実行順序を示した有向グラフによって表現することができる。図8は、図2に示した資源定義管理部22が生成するシナリオを表現した有向グラフの一例を示す図であり、aは1つの資源を対象とした有向グラフの一例を示す図、b接続対象資源を対象とした有向グラフの一例を示す図である。図8において、四角形は、資源SPIを実行するアクションのノードである。また、実線の楕円は、接続処理を実行するアクションのノードである。また、破線の楕円は資源の状態を示している。図8aに示す例では、割当SPIを実行するアクションのノード→割当済の状態→起動SPIを実行するアクションのノードとなっているが、これは、割当SPIの実行が完了しなければ起動SPIを実行できないことを示している。同様に、図8bに示す例では、レイヤ3スイッチ資源に対する起動SPIの実行が完了しなければ、接続処理1を実行できないことを示している。また、接続処理1の実行が完了しなければ、仮想マシン資源に対する割当SPIを実行できないことを示している。このように、複数の種類の資源SPI間や、資源SPIと接続処理情報に規定された処理との間には依存関係がある。例えば、割当SPIの実行が完了しなければ、起動SPIを実行できない場合、起動SPIは、割当SPIと依存関係にあるということになる。次に、資源定義管理部22がシナリオを生成する方法について詳細に説明する。まず、資源定義管理部22は、資源管理部21から出力されたシナリオ生成要求を受け付ける。なお、シナリオ生成要求には、資源IDと、資源名と、その資源の現在の状態を示す現在状態情報と、その資源が到達すべき状態を示す目標状態情報とが含まれる。次に、資源定義管理部22は、シナリオ生成要求に含まれる資源名の資源が接続関係にあるかどうかを確認する。以降、シナリオ生成要求に含まれる資源名の資源が接続関係にある場合とない場合とに分けて説明する。まず、資源定義管理部22が受け付けたシナリオ生成要求に含まれる資源名の資源が接続関係にない場合について説明する。図9は、図2に示した資源定義管理部22がシナリオを生成する動作の一例を説明するための図である。資源定義管理部22は、シナリオを生成するための情報を記憶した状態番号テーブルと、UPテーブルと、DOWNテーブルとを記憶している。図9aは状態番号テーブルの一構成例を示す図であり、図9bはUPテーブルの一構成例を示す図であり、図9cはDOWNテーブルの一構成例を示す図である。状態番号テーブルは図9aに示すように、2つのカラムから構成され、複数の状態のそれぞれと、その状態を識別する番号である状態番号とを対応付けて1つのレコードとして記憶している。UPテーブルは図9bに示すように、2つのカラムから構成され、複数の状態番号のそれぞれと、その状態番号よりも1つ大きな番号の状態番号に対応する状態へ資源を遷移させるために実行する資源SPIの資源SPI名とを対応付けて1つのレコードとして記憶している。なお、Nullは記憶された情報がないことを示している。DOWNテーブルは図9cに示すように、2つのカラムから構成され、複数の状態番号のそれぞれと、その状態番号よりも1つ小さな番号の状態番号に対応する状態へ資源を遷移させるために実行する資源SPIの資源SPI名とを対応付けて1つのレコードとして記憶している。資源定義管理部22は、図9aに示した状態番号テーブルから、受け付けたシナリオ生成要求に含まれる現在状態情報が示す状態に対応する状態番号を現在状態番号として取得する。また、資源定義管理部22は、図9aに示した状態番号テーブルから、受け付けたシナリオ生成要求に含まれる目標状態情報が示す状態に対応する状態番号を目標状態番号として取得する。資源定義管理部22は、取得した現在状態番号から、取得した目標状態番号までの遷移を表す遷移図を作成する。このとき、資源定義管理部22は、現在状態番号から目標状態番号まで、状態番号を1つずつ増加または減少させて遷移図を作成する。この遷移図の一例を図9dに示している。図9dでは、現在状態番号が0未割当であり、目標状態番号が2起動中である場合を示している。次に、資源定義管理部22は、現在状態番号<目標状態番号である場合、図9bに示したUPテーブルから現在状態番号に対応する資源SPI名を取得する。そして、資源定義管理部22は、図9dに示した遷移図において、取得した資源SPI名の資源SPIを実行するアクションのノードを次の状態番号との間に挿入する。資源定義管理部22は、次の状態番号が目標状態番号になるまでこの動作を繰り返す。これにより、シナリオが生成される。図9eに資源定義管理部22が生成したシナリオの一例を示す。一方、資源定義管理部22は、現在状態番号>目標状態番号である場合、図9cに示したDOWNテーブルから現在状態番号に対応する資源SPI名を取得する。そして、資源定義管理部22は、取得した資源SPI名の資源SPIを実行するアクションのノードを遷移図に挿入することを繰り返すことによってシナリオを生成する。なお、資源定義管理部22は、受け付けたシナリオ生成要求に含まれるすべての資源名の資源について上述した方法でシナリオを個々に生成する。次に、資源定義管理部22が受け付けたシナリオ生成要求に含まれる資源名の資源が接続関係にある場合について説明する。図10は、図2に示した資源定義管理部22がシナリオを生成する動作の他の例を説明するための図である。なお、ここでは、資源定義管理部22が受け付けたシナリオ生成要求に含まれる資源名の資源が仮想マシン資源およびレイヤ3スイッチ資源であるものとする。また、ここでは、仮想マシン資源の資源定義情報が図5aに示したものであり、レイヤ3スイッチ資源の資源定義情報が図5bに示したものであるものとする。また、ここでは、接続定義情報が図7aに示したものであるものとする。資源定義管理部22は、図9を参照しながら説明した方法に従い、仮想マシン資源およびレイヤ3スイッチ資源のそれぞれについてシナリオを生成する。仮想マシン資源およびレイヤ3スイッチ資源のそれぞれのシナリオの一例を図10aおよび図10bに示す。次に、資源定義管理部22は、接続定義情報において接続元資源に対して所定の資源SPIを実行するときの接続先資源の状態として定義された状態を示す状態番号を接続先資源のシナリオから検索する。接続定義情報において接続元資源に対して所定の資源SPIを実行するときの接続先資源の状態として定義された状態を示す状態番号が接続先資源のシナリオから検索されない場合、資源定義管理部22は、シナリオが生成できないと判定する。この場合、資源定義管理部22は、シナリオの生成ができないことを示すシナリオ生成不可通知を資源管理部21へ出力する。ここでは、接続定義情報において定義された所定の資源SPIは、割当SPIである。また、接続元資源に対して割当SPIを実行するときの接続先資源の状態として定義された状態は、割当済である。従って、割当済に対応する1がレイヤ3スイッチ資源のシナリオから検索されることになる。そして、資源定義管理部22は、図10bに示したレイヤ3スイッチ資源のシナリオの状態番号1割当済と、図10aに示した仮想マシン資源のシナリオの割当SPIを実行するアクションのノードとの間に接続処理1を実行するアクションのノードを挿入する。次に、資源定義管理部22は、レイヤ3スイッチ資源のシナリオの状態番号1割当済と、接続処理1の実行を示すアクションのノードとを接続する。また、資源定義管理部22は、接続処理1の実行を示すアクションのノードと、仮想マシン資源のシナリオの割当SPIの実行を示すアクションのノードとを接続する。これにより、仮想マシン資源に対して割当SPIを実行する前に、接続処理1を実行するという依存関係依存関係1が設定されることになる。また、資源定義管理部22は、仮想マシン資源のシナリオの状態番号1割当済と、レイヤ3スイッチ資源のシナリオの起動SPIの実行を示すアクションのノードとを接続する。これにより、仮想マシン資源の状態が割当済になった後に、レイヤ3スイッチ資源に対して起動SPIを実行するという依存関係依存関係2が設定される。以上により、仮想マシン資源とレイヤ3スイッチ資源とを接続する際のシナリオが完成する。このシナリオを図10cに示す。ここで、接続元資源に対して所定の資源SPIを実行するとき接続先資源の状態として複数の状態が接続定義情報に定義されていると、複数の状態番号が検索される場合が考えられる。この場合、資源定義管理部22は、検索された2つの状態番号のうち、現在状態番号からの遷移数が最も少ない状態番号を選択する。そして、資源定義管理部22は、接続先資源のシナリオにおける選択された状態番号と、所定の資源SPIの実行を示すアクションのノードとの間に、例えば接続定義情報に定義された処理を実行するアクションのノードを挿入する。資源定義管理部22は、シナリオの生成が完了すると、生成したシナリオを示す各種情報と、そのシナリオを一意に識別するシナリオIDとを含むシナリオ情報を資源管理部21へ出力する。生成したシナリオを示す各種情報とは具体的には、資源IDや、複数のアクションのそれぞれを識別するとともに、その実行順序を示すアクションID、そのアクションに対応する資源SPIの資源SPI名、接続定義情報に定義された処理の処理名、依存関係を識別する依存ID等である。再度、図2を参照すると、資源配備管理部23は、資源管理部21から出力されたシナリオ情報を受け付ける。資源配備管理部23は、シナリオ管理テーブルと、アクション管理テーブルとを備えており、受け付けたシナリオ情報に含まれる各種情報をこれらのテーブルに記憶させ、シナリオの実行を管理する。図11は、図2に示した資源配備管理部23が備えるテーブルの一構成例を示す図であり、aはシナリオ管理テーブルの一構成例を示す図、bはアクション管理テーブルの一構成例を示す図である。シナリオ管理テーブルは図11aに示すように、2つのカラムから構成され、複数のシナリオのそれぞれを一意に識別するシナリオIDと、そのシナリオの実行状態とを対応付けて1つのレコードとして記憶している。なお、実行状態カラムに記憶される情報は、実行待ち、実行中、完了および異常のいずれかである。資源配備管理部23は、シナリオに含まれる全てのアクションが未実行であれば、実行状態カラムに記憶される情報を実行待ちとする。また、資源配備管理部23は、シナリオに含まれるアクションのうちの1つでも実行されていれば、実行状態カラムに記憶される情報を実行中とする。また、資源配備管理部23は、シナリオに含まれる全てのアクションの実行が完了していれば、実行状態カラムに記憶される情報を完了とする。また、資源配備管理部23は、シナリオに含まれるアクションが異常終了していれば、実行状態カラムに記憶される情報を異常とする。アクション管理テーブルは図11bに示すように、6つのカラムから構成される。アクション管理テーブルは、複数のシナリオのそれぞれを一意に識別するシナリオIDと、そのシナリオに含まれる複数のアクションのそれぞれを一意に識別するアクションIDと、そのアクションが依存関係を持つアクションのアクションIDを示す依存IDと、そのアクションに対応する処理の処理名と、そのアクションに対応する処理の実行対象の資源の資源IDと、そのアクションの実行状態とを対応付けて1つのレコードとして記憶している。なお、処理とは、割当SPIや接続処理である。実行状態カラムに記憶される情報は、実行待ち、実行中、完了および異常のいずれかである。異常は、実行された資源SPIや接続処理等が例外を送出した場合の状態である。また、実行状態カラムに記憶される情報として、例えばシステムの動作を阻害しない例外が送出されたときの状態である準正常を設けてもよい。これにより、実行状態カラムに記憶された情報が準正常である場合、そのレコードのアクションIDにて識別されるアクションをリトライするというようなことが可能となる。なお、シナリオが実行されるときの資源配備管理部23の動作の詳細については後述する。再度、図2を参照すると、資源操作部24は、上述した複数の資源ドライバを備えており、シナリオの実行において資源管理部21から指示された資源ドライバの資源SPIを実行する。これにより、仮想マシン資源に対応する仮想マシンが設定される物理サーバ30や、レイヤ3スイッチ資源に対応するレイヤ3スイッチ40の操作が行われる。なお、シナリオが実行されるときの資源操作部24の動作の詳細については後述する。以下に、上記のように構成された仮想マシン提供システムにおける制御サーバ20の動作について説明する。ここでは、制御サーバ20が、仮想マシンの提供の指示を受け付けたことを示す指示通知を操作端末10から受信した場合を一例として説明する。つまり、制御サーバ20が、接続関係にある仮想マシン資源とレイヤ3スイッチ資源とを接続する指示を受け付けたときの動作について説明する。図12は、図1~図11に示した制御サーバ20の動作を説明するためのシーケンス図である。制御サーバ20は、操作端末10から送信された指示通知を受け付けると、仮想マシン資源の資源ID、資源名、現在状態情報および目標状態情報と、レイヤ3スイッチ資源の資源ID、資源名、現在状態情報および目標状態情報とを含むシナリオ生成要求を資源定義管理部22へ出力するステップS1。資源管理部21から出力されたシナリオ生成要求を受け付けた資源定義管理部22は、シナリオ生成要求に含まれる資源名の資源が接続関係にあるかどうかを確認する。ここでは、シナリオ生成要求に含まれる資源名の資源が接続関係にあるため、資源管理部21は、図10を参照しながら説明した方法でシナリオを生成する。そして、資源定義管理部22は、生成したシナリオを示すシナリオ情報を資源管理部21へ出力するステップS2。資源定義管理部22から出力されたシナリオ情報を受け付けた資源管理部21は、受け付けたシナリオ情報を資源配備管理部23へ出力するステップS3。資源管理部21から出力されたシナリオ情報を受け付けた資源配備管理部23は、受け付けたシナリオ情報に含まれる各種情報をシナリオ管理テーブルおよびアクション管理テーブルに記憶させる。次に、資源配備管理部23は、図11aに示したシナリオ管理テーブルにおいて、記憶させたレコードの実行状態カラムの情報を実行待ちとする。また、資源配備管理部23は、図11bに示したアクション管理テーブルにおいて、記憶させたレコードの実行状態カラムの情報をすべて実行待ちにする。次に、資源配備管理部23は、アクション管理テーブルにおいて、実行状態カラムに記憶された情報が実行待ちレコードのうち、アクションIDが最小のレコードの資源IDと、処理名とを含む実行指示を資源管理部21へ出力するステップS4。それとともに、資源配備管理部23は、シナリオ管理テーブルにおいて、該当するレコードの実行状態カラムに記憶された情報を実行中に更新する。また、資源配備管理部23は、アクション管理テーブルにおいて、該当するレコードの実行状態カラムに記憶された情報を実行中に更新する。資源配備管理部23から出力された実行指示を受け付けた資源管理部21は、図3aに示した資源テーブルにおいて、受け付けた実行指示に含まれる資源IDに対応する資源ドライバ名を選択する。次に、資源管理部21は、選択した資源ドライバ名と、その資源ドライバの複数の種類の資源SPIのうち、受け付けた実行指示に含まれる処理名に対応する資源SPI名とを含む操作指示を資源操作部24へ出力するステップS5。資源管理部21から出力された操作指示を受け付けた資源操作部24は、受け付けた操作指示に含まれる資源ドライバ名の資源ドライバを用い、受け付けた操作指示に含まれる資源SPI名の資源SPIを実行する。次に、資源操作部24は、資源SPIの実行が正常終了したかどうかを示す操作結果通知を資源管理部21へ出力するステップS6。資源操作部24から出力された操作結果通知を受け付けた資源管理部21は、受け付けた実行結果通知が示す正常終了を示していれば、図3cに示した資源状態テーブルにおいて、受け付けた実行指示に含まれる資源IDに対応する状態カラムに記憶された情報を更新する。具体的には例えば、資源操作部24へ出力した操作指示に含まれる資源SPI名の資源SPIが割当SPIであれば、資源管理部21は、状態カラムに記憶された情報を未割当から割当済に更新する。そして、資源管理部21は、受け付けた操作結果通知を資源配備管理部23へ出力するステップS7。資源管理部21から出力された操作結果通知を受け付けた資源配備管理部23は、受け付けた操作結果通知が正常終了を示していれば、アクション管理テーブルにおいて、該当するレコードの実行状態カラムに記憶された情報を実行中から完了に更新する。以降、アクション管理テーブルにおいて、該当するシナリオIDに対応するすべてのアクションIDのレコードの実行状態カラムに記憶された情報が完了になるまで上述した動作が繰り返される。そして、資源配備管理部23は、アクション管理テーブルにおいて、該当するシナリオIDのすべてのアクションIDのレコードの実行状態カラムに記憶された情報が完了になると、シナリオ管理テーブルにおいて、該当するシナリオIDのレコードの実行状態カラムに記憶された情報を実行中から完了に更新する。なお、資源管理部21は、受け付けた実行指示に含まれる処理名が資源SPI名ではなく、例えば接続処理名である場合、資源管理部21は、資源定義管理部22が記憶している接続処理情報の内容に従った処理を実行する。具体的には例えば、資源管理部21は、図7bに示した接続処理情報に規定されているように、レイヤ3スイッチ資源に対応するレイヤ3スイッチからIPアドレスを取得し、さらに、そのレイヤ3スイッチ資源の属性情報からVLANIDおよびデフォルトゲートウェイアドレスの属性値を取得する。そして、資源管理部21は、取得したIPアドレス、VLANIDおよびデフォルトゲートウェイアドレスの属性値を、仮想マシン資源のIPアドレス、VLANIDおよびデフォルトゲートウェイアドレスの属性値として設定する。なお、設定されたIPアドレス、VLANIDおよびデフォルトゲートウェイアドレスの属性値は、その仮想マシン資源に対して割当SPIが実行されると、その仮想マシンに搭載されるOSの設定値として設定されることになる。その後、仮想マシン資源に対して起動SPIが実行されると、仮想マシンが起動されてIPアドレス等が仮想マシンに設定され、ユーザが仮想マシンを利用できるようになる。このように本実施形態において制御サーバ20は、複数の種類の資源のうち相互に接続可能な複数の資源の組み合わせとして予め定められた接続対象資源に対する処理である接続処理を実行する際の条件を定義した接続定義情報を記憶する。また、制御サーバ20は、複数の種類の資源のそれぞれに対応する機器に、接続処理に基づいた操作を含む相互に異なる複数の操作を行うために、当該資源に対して実行する相互に異なる複数の資源処理を定義した資源定義情報を記憶する。そして、制御サーバ20は、接続対象資源を接続する指示を受け付けると、接続定義情報と資源定義情報とに基づき、当該接続対象資源に対して実行する接続処理と複数の資源処理のそれぞれとの実行手順を生成する。そして、制御サーバ20は、生成した実行手順に従って当該接続対象資源に対して接続処理および複数の資源処理のそれぞれを実行することにより、当該接続対象資源に対応する機器の操作を行う。これにより、接続の対象となる複数の機器や、複数の機器の接続方法が変わっても、接続定義情報や接続処理の処理内容を更新すればよく、システム全体の改修をする必要がない。従って、システムに新たな機能を提供する機器を迅速かつ柔軟に取り込むことが可能となる。なお、本実施形態では、仮想マシン資源とレイヤ3スイッチ資源とを接続する場合を一例として説明したが、上述した効果は、例えばApacheとTomcatとの間で通信可能とする設定を行う場合や、TomcatとPostgresSQLとの間で通信を可能とする設定を行う場合等にも、同様に得ることができる。また、本発明においては、制御サーバ内の処理は上述の専用のハードウェアにより実現されるもの以外に、その機能を実現するためのプログラムを制御サーバにて読取可能な記録媒体に記録し、この記録媒体に記録されたプログラムを制御サーバに読み込ませ、実行するものであっても良い。制御サーバにて読取可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、DVD、CDなどの移設可能な記録媒体の他、制御サーバに内蔵されたHDDなどを指す。