(57)【要約】【課題】プライベートクラウドにおける負荷を分散させつつ利用コストの削減を図る。【解決手段】負荷分散システムは、第１のクラウドと、利用に応じて第１のクラウドを利用するより高い費用が発生する第２のクラウドと、仮想マシンを第１のクラウド及び第２のクラウドのいずれにて動作させるかを制御する負荷分散装置とを備える。負荷分散装置は、第１のクラウドにおけるリソース利用率と第１のクラウドにおいて動作している仮想マシンのリソース利用率とを取得する利用率取得手段と、仮想マシンのリソース利用率が予め定められた第１の閾値を超えている場合において、第１のクラウドのリソース利用率が予め定められた第２の閾値を超えているとき、第２のクラウドにおいて新たな仮想マシンを起動させ、第２のクラウドにおけるリソース利用率が第２の閾値以下であるとき、第１のクラウドにおいて新たな仮想マシンを起動させる仮想マシン管理手段とを有する。【選択図】図１
2015153370.tif 000002
【特許請求の範囲】
【請求項１】
第１のクラウドと、利用に応じて前記第１のクラウドを利用するより高い費用が発生する第２のクラウドと、仮想マシンを前記第１のクラウド及び前記第２のクラウドのいずれにて動作させるかを制御する負荷分散装置とを備える負荷分散システムであって、
前記負荷分散装置は、
前記第１のクラウドにおけるリソース利用率と前記第１のクラウドにおいて動作している仮想マシンのリソース利用率とを取得するリソース利用率取得手段と、
仮想マシンのリソース利用率が予め定められた第１の閾値を超えている場合において、前記第１のクラウドにおけるリソース利用率が予め定められた第２の閾値を超えているとき、前記第２のクラウドにおいて新たな仮想マシンを起動させ、前記第２のクラウドにおけるリソース利用率が前記第２の閾値以下であるとき、前記第１のクラウドにおいて新たな仮想マシンを起動させる仮想マシン管理手段と
を有する
ことを特徴とする負荷分散システム。
【請求項２】
請求項１に記載の負荷分散システムにおいて、
仮想マシンでユーザに提供するサービスには所定時間内の応答が要求される第１のサービスと、所定時間内の応答が要求されない第２のサービスとがあり、
前記負荷分散装置は、
前記第２のクラウドで動作する仮想マシンの応答遅延時間を取得する遅延時間取得手段を更に有し、
前記仮想マシン管理手段は、
前記遅延時間取得手段により得られた応答遅延時間が前記所定時間に応じて予め定められた遅延閾値を超えた場合に、前記第２のクラウドで動作している仮想マシンであって前記第１のサービスを提供している仮想マシンを前記第１のクラウドに移動させる
ことを特徴とする負荷分散システム。
【請求項３】
請求項２に記載の負荷分散システムにおいて、
前記仮想マシン管理手段は、
前記遅延時間取得手段により得られた応答遅延時間が前記遅延閾値を超えた場合に、前記第１のクラウドで動作している仮想マシンであって前記第２のサービスを提供している仮想マシンを前記第２のクラウドに移動させる
ことを特徴とする負荷分散システム。
【請求項４】
請求項１から請求項３のいずれか一項に記載の負荷分散システムにおいて、
前記仮想マシン管理手段は、
前記第１のクラウドの前記リソース利用率が前記第２の閾値以下であり、前記第２のクラウドで動作している仮想マシンを検出すると、当該仮想マシンを前記第１のクラウドに移動させる
ことを特徴とする負荷分散システム。
【請求項５】
第１のクラウドと、利用に応じて前記第１のクラウドを利用するより高い費用が発生する第２のクラウドと、仮想マシンを前記第１のクラウド及び前記第２のクラウドのいずれにて動作させるかを制御する負荷分散装置とを備える負荷分散システムにおける負荷分散装置であって、
前記第１のクラウドにおけるリソース利用率と前記第１のクラウドにおいて動作している仮想マシンのリソース利用率とを取得するリソース利用率取得手段と、
仮想マシンのリソース利用率が予め定められた第１の閾値を超えている場合において、前記第１のクラウドにおけるリソース利用率が予め定められた第２の閾値を超えているとき、前記第２のクラウドにおいて新たな仮想マシンを起動させ、前記第２のクラウドにおけるリソース利用率が前記第２の閾値以下であるとき、前記第１のクラウドにおいて新たな仮想マシンを起動させる仮想マシン管理手段と
を有することを特徴とする負荷分散装置。
【請求項６】
第１のクラウドと、利用に応じて前記第１のクラウドを利用するより高い費用が発生する第２のクラウドと、仮想マシンを前記第１のクラウド及び前記第２のクラウドのいずれにて動作させるかを制御する負荷分散装置とを備える負荷分散システムにおける負荷分散方法であって、
前記第１のクラウドにおけるリソース利用率と前記第１のクラウドにおいて動作している仮想マシンのリソース利用率とを取得するリソース利用率取得ステップと、
仮想マシンのリソース利用率が予め定められた第１の閾値を超えている場合において、前記第１のクラウドにおけるリソース利用率が予め定められた第２の閾値を超えているとき、前記第２のクラウドにおいて新たな仮想マシンを起動させ、前記第２のクラウドにおけるリソース利用率が前記第２の閾値以下であるとき、前記第１のクラウドにおいて新たな仮想マシンを起動させる仮想マシン管理ステップと
を有することを特徴とする負荷分散方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、負荷分散システム、負荷分散装置及び負荷分散方法に関する。
【背景技術】
【０００２】
インターネットなどのネットワークを介してコンピュータ・リソースを利用するクラウドコンピューティング（以下、単にクラウド又はクラウド環境という。）が広く利用されている。クラウド上で安定したサービス提供を目的として、自社が管理しているクラウド環境（プライベートクラウド）におけるコンピュータ・リソースの不足を、他社が管理しているクラウド環境（パブリッククラウド）におけるコンピュータ・リソースで補う運用が行われている。このような運用形態は、ハイブリッドクラウドと呼ばれている。
【０００３】
クラウド環境において提供しているサービスの品質などを維持するために、物理サーバにおける負荷、物理サーバ上で動作している仮想サーバ（又は仮想マシン）における負荷、処理遅延などを分散させることが一般的に行われている（例えば、特許文献１〜４）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第４１０１２５１号公報
【特許文献２】特開２０１３−１６１２８３号公報
【特許文献３】特開２０１１−２３７８４４号公報
【特許文献４】特開２０１１−２５３３７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ハイブリッドクラウドにおいて他社が管理しているクラウド環境（以下、他社クラウド環境という。）を利用する場合には費用が発生するため、自社が管理しているクラウド環境においてコンピュータ・リソースが足りない場合にのみ他社クラウド環境を利用して、他社クラウド環境の利用時間を短くすることが求められる。特許文献１〜４に記載の技術などでは、負荷を分散させる対象の物理サーバ又は仮想サーバに均等又は一定の重み付けをして負荷の分散を図ることが行われているが、ハイブリッドクラウドにおいて発生する費用（コスト）を考慮した負荷分散は行われていない。
【０００６】
上記事情に鑑み、本発明は、ハイブリッドクラウド環境において、プライベートクラウドと、利用に応じて利用コストが発生するパブリッククラウドとを利用する際に、プライベートクラウドにおける負荷を分散させつつ利用コストの削減を図ることができる負荷分散システム、負荷分散装置及び負荷分散方法を提供することを目的としている。
【課題を解決するための手段】
【０００７】
本発明の一態様は、第第１のクラウドと、利用に応じて前記第１のクラウドを利用するより高い費用が発生する第２のクラウドと、仮想マシンを前記第１のクラウド及び前記第２のクラウドのいずれにて動作させるかを制御する負荷分散装置とを備える負荷分散システムであって、前記負荷分散装置は、前記第１のクラウドにおけるリソース利用率と前記第１のクラウドにおいて動作している仮想マシンのリソース利用率とを取得するリソース利用率取得手段と、仮想マシンのリソース利用率が予め定められた第１の閾値を超えている場合において、前記第１のクラウドにおけるリソース利用率が予め定められた第２の閾値を超えているとき、前記第２のクラウドにおいて新たな仮想マシンを起動させ、前記第２のクラウドにおけるリソース利用率が前記第２の閾値以下であるとき、前記第１のクラウドにおいて新たな仮想マシンを起動させる仮想マシン管理手段とを有することを特徴とする負荷分散システムである。
【０００８】
また、本発明の一態様は、上記に記載の負荷分散システムにおいて、仮想マシンでユーザに提供するサービスには所定時間内の応答が要求される第１のサービスと、所定時間内の応答が要求されない第２のサービスとがあり、前記負荷分散装置は、前記第２のクラウドで動作する仮想マシンの応答遅延時間を取得する遅延時間取得手段を更に有し、前記仮想マシン管理手段は、前記遅延時間取得手段により得られた応答遅延時間が前記所定時間に応じて予め定められた遅延閾値を超えた場合に、前記第２のクラウドで動作している仮想マシンであって前記第１のサービスを提供している仮想マシンを前記第１のクラウドに移動させることを特徴とする。
また、本発明の一態様は、上記に記載の負荷分散システムにおいて、仮想マシン管理手段は、前記遅延時間取得手段により得られた応答遅延時間が前記遅延閾値を超えた場合に、前記第１のクラウドで動作している仮想マシンであって前記第２のサービスを提供している仮想マシンを前記第２のクラウドに移動させることを特徴とする。
また、本発明の一態様は、上記に記載の負荷分散システムにおいて、前記仮想マシン管理手段は、前記第１のクラウドの前記リソース利用率が前記第２の閾値以下であり、前記第２のクラウドで動作している仮想マシンを検出すると、当該仮想マシンを前記第１のクラウドに移動させることを特徴とする。
【０００９】
また、本発明の一態様は、第１のクラウドと、利用に応じて前記第１のクラウドを利用するより高い費用が発生する第２のクラウドと、仮想マシンを前記第１のクラウド及び前記第２のクラウドのいずれにて動作させるかを制御する負荷分散装置とを備える負荷分散システムにおける負荷分散装置であって、前記第１のクラウドにおけるリソース利用率と前記第１のクラウドにおいて動作している仮想マシンのリソース利用率とを取得するリソース利用率取得手段と、仮想マシンのリソース利用率が予め定められた第１の閾値を超えている場合において、前記第１のクラウドにおけるリソース利用率が予め定められた第２の閾値を超えているとき、前記第２のクラウドにおいて新たな仮想マシンを起動させ、前記第２のクラウドにおけるリソース利用率が前記第２の閾値以下であるとき、前記第１のクラウドにおいて新たな仮想マシンを起動させる仮想マシン管理手段とを有することを特徴とする負荷分散装置である。
【００１０】
また、本発明の一態様は、第１のクラウドと、利用に応じて前記第１のクラウドを利用するより高い費用が発生する第２のクラウドと、仮想マシンを前記第１のクラウド及び前記第２のクラウドのいずれにて動作させるかを制御する負荷分散装置とを備える負荷分散システムにおける負荷分散方法であって、前記第１のクラウドにおけるリソース利用率と前記第１のクラウドにおいて動作している仮想マシンのリソース利用率とを取得するリソース利用率取得ステップと、仮想マシンのリソース利用率が予め定められた第１の閾値を超えている場合において、前記第１のクラウドにおけるリソース利用率が予め定められた第２の閾値を超えているとき、前記第２のクラウドにおいて新たな仮想マシンを起動させ、前記第２のクラウドにおけるリソース利用率が前記第２の閾値以下であるとき、前記第１のクラウドにおいて新たな仮想マシンを起動させる仮想マシン管理ステップとを有することを特徴とする負荷分散方法である。
【発明の効果】
【００１１】
本発明によれば、第１のクラウドにおける仮想マシンの起動を第２のクラウドにおける仮想マシンの起動より優先させるので、第１のクラウド（プライベートクラウド）より高い費用が発生する第２のクラウド（パブリッククラウド）の利用を抑えて、プライベートクラウドにおける負荷を分散させつつ利用コストの削減を図ることが可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態における負荷分散システムの構成例を示すブロック図である。
【図２】同実施形態における記憶部１３が記憶する仮想マシン管理テーブルの一例を示す図である。
【図３】同実施形態における記憶部１３が記憶するクラウド管理テーブルの一例を示す図である。
【図４】同実施形態における負荷分散装置１が行う負荷分散処理を示すフローチャートである。
【図５】同実施形態における負荷分散装置１が行う負荷分散処理の第１の振分処理を示すフローチャートである。
【図６】同実施形態における負荷分散装置１が行う負荷分散処理の第２の振分処理を示すフローチャートである。
【図７】同実施形態における負荷分散装置１が行う負荷分散処理の第３の振分処理を示すフローチャートである。
【図８】同実施形態における分散処理システムの動作例を示すシーケンス図である。
【図９】同実施形態における分散処理システムの別の動作例を示すシーケンス図である。
【図１０】同実施形態における分散処理システムの異なる動作例を示すシーケンス図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して、本発明の実施形態における負荷分散システム、負荷分散装置及び負荷分散方法を説明する。図１は、本発明の実施形態における負荷分散システムの構成例を示すブロック図である。同図に示すように、負荷分散システムでは、自社クラウド環境（プライベートクラウド）と他社クラウド環境（パブリッククラウド）とがネットワーク６を介して通信可能に接続されている。また、複数のユーザ端末７がネットワーク５を介して自社クラウド環境と通信可能に接続されている。ユーザ端末７は、ネットワーク５を介して自社クラウド環境にて提供されるサービスと、自社クラウド環境を介して他社クラウド環境にて提供されるサービスとを受ける。本実施形態におけるサービスは、自社クラウド環境における仮想マシンや他社クラウド環境における仮想マシンによって行われるデータ処理などである。
【００１４】
自社クラウド環境は、サービスを利用するユーザや企業、又はクラウドインフラ提供事業者が自ら管理、運用するコンピュータ・リソースで構成されるクラウド環境である。自社クラウド環境は、負荷分散装置１、管理サーバ２、複数の処理サーバ３、及び、ルータ４を備えている。負荷分散装置１、管理サーバ２、複数の処理サーバ３、及び、ルータ４は、自社クラウド環境内におけるプライベートネットワークを介して互いに通信可能に接続されている。負荷分散装置１、管理サーバ２、及び、複数の処理サーバ３は、ルータ４を介してネットワーク６に接続されており、他社クラウド環境との通信を行うことができる。また、負荷分散装置１は、ネットワーク５を介して複数のユーザ端末７と通信可能に接続されている。ユーザ端末７は、負荷分散装置１を介して、自社クラウド環境及び他社クラウド環境にて提供されるサービスを受ける。
【００１５】
処理サーバ３は、複数の仮想マシン（Virtual Machine:ＶＭ）を動作させることができる。処理サーバ３は、自装置で動作する仮想マシン上においてプログラム等を実行させることにより、ユーザ端末７を操作するユーザに対してサービスの提供を行う。負荷分散装置１は、自社クラウド環境における処理サーバ３における各仮想マシンの負荷や他社クラウド環境における仮想マシンの応答遅延に応じて、ユーザ端末７から受信するユーザ要求をいずれかの仮想マシンに割り当てる振分けを行う。管理サーバ２は自社クラウド環境と他社クラウド環境における仮想マシンの管理と制御とを行う。
【００１６】
他社クラウド環境は、他の企業や他のクラウドインフラ提供事業者が管理、運営するコンピュータ・リソースで構成されるクラウド環境である。本実施形態では、他社クラウド環境における仮想マシンを利用すると、利用時間や利用したコンピュータ・リソースの量に応じて利用コストが発生することを前提としている。また、他社クラウド環境の利用コストは、自社クラウド環境の利用コストよりも高い利用コストとしている。また、他社クラウド環境の仮想マシンを利用したサービスの応答時間は、自社クラウド環境の仮想マシンを利用したサービスの応答時間よりも長い時間を要するものとしている。
【００１７】
他社クラウド環境は、ルータ８１、及び、複数の処理サーバ８２を備えている。ルータ８１と複数の処理サーバ８２とは他社クラウド環境内におけるプライベートネットワークを介して互いに通信可能に接続されている。処理サーバ８２は、複数の仮想マシンを動作させることができる。処理サーバ８２は、自装置で動作する仮想マシン上においてプログラム等を実行させることにより、ユーザに対してサービスの提供を行う。
【００１８】
以下、自社クラウド環境における負荷分散装置１について説明する。負荷分散装置１は、仮想マシン登録部１１、仮想マシン管理部１２、記憶部１３、遅延時間取得部１４、及び、負荷分散部１５を有している。仮想マシン登録部１１は、自社クラウド環境と他社クラウド環境とを区別して、負荷分散の対象にする仮想マシンを登録する。仮想マシン管理部１２は、自社クラウド環境における処理サーバ３のコンピュータ・リソースの使用状況（リソース利用率）を取得する。本実施形態では、コンピュータ・リソースとしてＣＰＵとメモリとを対象にした説明を行うが、ＣＰＵ及びメモリ以外をコンピュータ・リソースの対象にしてもよい。
【００１９】
記憶部１３には、仮想マシン管理テーブルとクラウド管理テーブルとが記憶されている。仮想マシン管理テーブルは、自社クラウド環境及び他社クラウド環境において稼働している仮想マシンであって負荷分散装置１が負荷分散の対象にする仮想マシンに関する情報を記憶するテーブルである。クラウド管理テーブルは、負荷分散装置１が負荷分散の対象にする仮想マシンが稼働しているクラウド環境に関する情報を記憶するテーブルである。
【００２０】
図２は、本実施形態における記憶部１３が記憶する仮想マシン管理テーブルの一例を示す図である。同図に示すように、仮想マシン管理テーブルは、物理マシン名、仮想マシン名、自社／他社フラグ、サービスクラス、システム名、ＣＰＵ利用率、ＣＰＵ利用率閾値、メモリ利用率、及び、メモリ利用率閾値の項目の列を有している。仮想マシン管理テーブルにおいて、各行は仮想マシンごとに存在する。仮想マシン管理テーブルの各行は、仮想マシンに対応する物理マシン名、仮想マシン名、自社／他社フラグ、サービスクラス、システム名、ＣＰＵ利用率、ＣＰＵ利用率閾値、メモリ利用率、及び、メモリ利用率閾値を示している。本実施形態では、ＣＰＵ利用率とメモリ利用率とが仮想マシンにおける負荷を示す指標としてのリソース利用率として用いられる。
【００２１】
物理マシン名は、仮想マシンが配置されている処理サーバ３を識別する名称である。自社／他社フラグは、仮想マシンが自社クラウド環境と他社クラウド環境とのいずれに位置しているかを示す。本実施形態では、自社クラウド環境で仮想マシンが動作している場合には自社／他社フラグに「０」が割り当てられる。他社クラウド環境で仮想マシンが動作している場合には自社／他社フラグに「１」が割り当てられる。サービスクラスは、仮想マシンがユーザ（ユーザ端末７）に提供しているサービスに要求される条件を示す。本実施形態では、応答時間に応じて分類され、応答時間が所定値より小さいことがサービスの条件であることをサービスクラスに「Ａ」が割り当てられる。応答時間に対する条件がないサービスのサービスクラスに「Ｂ」が割り当てられる。
【００２２】
システム名は、仮想マシンが属するシステムを識別する識別子（名称）である。ＣＰＵ利用率は、仮想マシンのＣＰＵ利用率である。メモリ利用率は、仮想マシンのメモリ利用率である。また、ＣＰＵ利用率及びメモリ利用率は、各仮想マシンの所定時間における平均値である。ＣＰＵ利用率閾値及びメモリ利用率閾値は、ユーザの要求を仮想マシンに振分ける際と仮想マシンの増設及び減設をする際とに用いられる基準値である。また、ＣＰＵ利用率閾値及びメモリ利用率閾値には、予め定められた値が用いられる。
【００２３】
図２に示す例では、物理マシン名には自社クラウド環境における処理サーバ３を識別するｈｏｓｔＡ〜ｈｏｓｔＢが登録されている。仮想マシン名にはＧｕｅｓｔＡ〜ＧｕｅｓｔＥが登録されている。ＧｕｅｓｔＡ〜ＧｕｅｓｔＣが自社クラウド環境において動作している仮想マシンであり、ＧｕｅｓｔＤ〜ＧｕｅｓｔＥが他社クラウド環境において動作している仮想マシンである。ＧｕｅｓｔＡ〜ＧｕｅｓｔＢに対するサービスクラスは応答時間に対して所定の条件が定められているクラスＡである。ＧｕｅｓｔＣ〜ＧｕｅｓｔＥに対するサービスクラスは、応答時間に対して条件が定められていない、又は他社クラウド環境においても満たすことができる緩い条件が定められている。
【００２４】
また、ＧｕｅｓｔＡ、ＧｕｅｓｔＢはｓｙｓｔｅｍＡとして管理されている。ＧｕｅｓｔＣ、ＧｕｅｓｔＤはｓｙｓｔｅｍＢとして、ＧｕｅｓｔＥはｓｙｓｔｅｍＣとして管理されている。ＧｕｅｓｔＡ〜ＧｕｅｓｔＣそれぞれに対するＣＰＵ利用率は２０％、２０％、５０％であり、メモリ利用率は３０％、３０％、６０％となっている。なお、本実施形態では、他社クラウド環境において動作している仮想マシンが割り振られている処理サーバ８２の物理マシン名、ＣＰＵ利用率及びメモリ利用率を取得できないものとしている。
【００２５】
図３は、本実施形態における記憶部１３が記憶するクラウド管理テーブルの一例を示す図である。同図に示すように、クラウド管理テーブルは、クラウド名、自社／他社フラグ、ＣＰＵ利用率測定値、ＣＰＵ利用率閾値、メモリ利用率測定値、メモリ利用率閾値、遅延測定値、及び、遅延閾値の各項目の列を有している。クラウド管理テーブルにおいて、各行は、自社クラウド及び他社クラウドごとに存在する。クラウド管理テーブルの各行は、クラウド（クラウド環境）に対応するクラウド名、自社／他社フラグ、ＣＰＵ利用率測定値、ＣＰＵ利用率閾値、メモリ利用率測定値、メモリ利用率閾値、遅延測定値、及び、遅延閾値を示している。本実施形態では、ＣＰＵ利用率測定値及びメモリ利用率測定値がクラウド環境における負荷を示す指標としてのリソース利用率として用いられる。
【００２６】
クラウド名は、クラウド環境を識別する名称である。自社／他社フラグは、クラウド環境が自社クラウド環境と他社クラウド環境とのいずれであるかを示す。「０」が自社クラウド環境であることを示し、「１」が他社クラウド環境であることを示す。ＣＰＵ利用率測定値は、クラウド環境における処理サーバ３（物理マシン）のＣＰＵ利用率である。メモリ利用率測定値は、クラウド環境における処理サーバ３（物理マシン）のメモリ利用率である。本実施形態においてＣＰＵ利用率測定値とメモリ利用率測定値とには、複数の処理サーバ３それぞれのＣＰＵ利用率の平均値とメモリ利用率の平均値とを用いる場合を説明するが、平均値以外の値、例えば総和や中央値などの他の統計値を用いるようにしてもよい。遅延測定値は、他社クラウド環境における仮想マシンの応答遅延時間である。
【００２７】
ＣＰＵ利用率閾値、メモリ利用率閾値、及び、遅延閾値は、仮想マシンの増設、減設及び移動をする際に用いられる基準値である。また、クラウド管理テーブルにおけるＣＰＵ利用率閾値及びメモリ利用率閾値には所定の値が予め設定される。また、遅延閾値には、ＣＰＵ利用率閾値及びメモリ利用率閾値と同様に、所定の値が予め設定される。遅延閾値は、サービスクラスが「Ａ」のサービスを提供している仮想マシン（以下、クラスＡの仮想マシンという。）に要求される応答時間に基づいて定められる閾値である。また、遅延閾値は、他社クラウド環境の仮想マシンの応答遅延時間が遅延閾値より大きい場合にサービス品質に低下が生じるか否かを判定できる閾値である。図３に示す例では、遅延閾値に１５０［ｍｓｅｃ］が設定されている。
【００２８】
図１に戻り負荷分散装置１の説明を続ける。遅延時間取得部１４は、他社クラウド環境における仮想マシンとの間における応答遅延時間を取得する。負荷分散部１５は、ユーザ端末７からユーザの要求を受信した際に、自社クラウド環境と他社クラウド環境とにおいて動作している仮想マシンのいずれを用いてサービスを提供させるかを判定してユーザの要求を振分ける。負荷分散部１５は、仮想マシン管理テーブル及びクラウド管理テーブルを参照し、自社クラウド環境におけるコンピュータ・リソースの使用状況と、他社クラウド環境の応答遅延時間とに基づいて、ユーザの要求の振分けを行う。管理サーバ２は、仮想マシンの増設及び減設や、自社クラウド環境と他社クラウド環境との間における仮想マシンの移動を行う。
【００２９】
図４から図７は、本実施形態における負荷分散装置１が行う負荷分散処理を示すフローチャートである。負荷分散装置１において、負荷分散処理が開始されると、仮想マシン登録部１１は、負荷分散の対象にする仮想マシンに関する情報を記憶部１３の仮想マシン管理テーブルに記憶させて登録するとともに、自社クラウド環境と負荷を分散させる際に用いる他社クラウド環境とに関する情報をクラウド管理テーブルに記憶させて登録する（ステップＳ１１）。なお、仮想マシン登録部１１が仮想マシン管理テーブル及びクラウド管理テーブルに情報を登録した直後においては、ＣＰＵ利用率及びメモリ利用率には値がない状態である。また、仮想マシン登録部１１が各テーブルに登録する情報は、ユーザや自社クラウド環境の管理者などにより予め定められた情報である。
【００３０】
仮想マシン管理テーブルに負荷分散の対象となる仮想マシンが登録されると、仮想マシン管理部１２は、仮想マシン管理テーブルに登録されている仮想マシンの起動を要求する制御情報を管理サーバ２に送信する。管理サーバ２は、仮想マシン管理部１２から受信した制御情報に応じて、自社クラウド環境における処理サーバ３上で仮想マシンを起動させる（ステップＳ１２）。ここでは、他社クラウド環境を利用すると利用コストが発生するため、自社クラウド環境における処理サーバ３を優先的に用いることを前提としている。しかし、仮想マシン登録部１１が仮想マシン管理テーブルに登録する仮想マシンに関する情報において、他社クラウド環境で動作させることが「自社／他社フラグ」で定められている場合には、管理サーバ２が他社クラウド環境における処理サーバ８２で仮想マシンを起動させてもよい。
【００３１】
管理サーバ２による仮想マシンの起動が完了すると、仮想マシン管理部１２は、自社クラウド環境における各仮想マシンのＣＰＵ利用率及びメモリ利用率を取得し、取得したＣＰＵ利用率及びメモリ利用率を仮想マシン管理テーブルに記憶させて登録する。また、仮想マシン管理部１２は、自社クラウド環境における各処理サーバ３のＣＰＵ利用率及びメモリ利用率を取得する。仮想マシン管理部１２は、取得した各処理サーバ３のＣＰＵ利用率からＣＰＵ利用率測定値を算出し、取得した各処理サーバ３のメモリ利用率からメモリ利用率測定値を算出する。仮想マシン管理部１２は、算出したＣＰＵ利用率測定値及びメモリ利用率測定値をクラウド管理テーブルに記憶させて登録する。また、遅延時間取得部１４は、他社クラウド環境において動作している仮想マシンの応答遅延時間を測定し、測定した応答遅延時間を遅延測定値としてクラウド管理テーブルに記憶させて登録する（ステップＳ１３）。なお、遅延時間取得部１４による応答遅延の測定対象は、他社クラウド環境における一つの仮想マシンでもよいし、複数の仮想マシンでもよい。複数の仮想マシンを測定対象にした場合、遅延時間取得部１４は測定結果の平均値などの統計値をクラウド管理テーブルに登録する。
【００３２】
仮想マシン管理部１２は、自社クラウド環境の管理者などからシステム停止の要求が入力されたか否かを判定し（ステップＳ１４）、システム停止の要求が入力されている場合（ステップＳ１４：ＹＥＳ）、負荷分散処理を終了させる。
システム停止の要求が入力されていない場合（ステップＳ１４：ＮＯ）、仮想マシン管理部１２は自社クラウド環境の各仮想マシンにおけるＣＰＵ利用率及びメモリ利用率を取得し、仮想マシン管理テーブルを更新する。また、仮想マシン管理部１２は、自社クラウド環境の各処理サーバ３におけるＣＰＵ利用率及びメモリ利用率を取得し、クラウド管理テーブルを更新する。また、遅延時間取得部１４は、他社クラウド環境における仮想マシンの応答遅延を測定し、クラウド管理テーブルを更新する（ステップＳ１５）。ステップＳ１５における仮想マシン管理部１２及び遅延時間取得部１４による処理は、ステップＳ１３における処理と同様の処理である。
【００３３】
仮想マシン管理テーブル及びクラウド管理テーブルの更新が完了すると、仮想マシン管理部１２は、仮想マシン管理テーブルを参照し、システムごとに自社クラウド環境の仮想マシンすべてのＣＰＵ利用率又はメモリ利用率のリソース値が対応する閾値を超えているか否かを判定する（ステップＳ１６）。例えば、図２に示した仮想マシン管理テーブルにおいては、システム名「ｓｙｓｔｅｍＡ」に属する自社クラウド環境の仮想マシン（ＧｕｅｓｔＡ及びＧｕｅｓｔＢ）のＣＰＵ利用率がともにＣＰＵ利用率閾値を超えているか否か、自社クラウド環境の仮想マシン（ＧｕｅｓｔＡ及びＧｕｅｓｔＢ）のメモリ利用率がともにメモリ利用率閾値を超えているか否かを判定する。なお、システムｓｙｓｔｅｍＢに属する仮想マシンのうち自社クラウド環境において動作している仮想マシンは仮想マシンＧｕｅｓｔＣのみであるので、仮想マシンＧｕｅｓｔＣが判定の対象になる。
【００３４】
ステップＳ１６の判定においてリソース値が閾値を超えていない場合（ステップＳ１６：ＮＯ）、仮想マシン管理部１２は、処理をステップＳ１４に戻す。一方、リソース値が閾値を超えている場合（ステップＳ１６：ＹＥＳ）、仮想マシン管理部１２は、クラウド管理テーブルを参照し、自社クラウド環境のＣＰＵ利用率測定値及びメモリ利用率測定値のリソース値のうち、対応する閾値を超えているリソース値があるか否かを判定する（ステップＳ１７）。
【００３５】
ステップＳ１７の判定において自社クラウド環境のリソース値に閾値を超えているリソース値がない場合（ステップＳ１７：ＮＯ）、仮想マシン管理部１２は、第１の振分処理を行う（ステップＳ１８）。第１の振分処理は、自社クラウド環境のリソース利用率が低い状況において、自社クラウド環境に負荷の高いシステム（仮想マシン）が存在する場合に行われる処理である。
【００３６】
第１の振分処理（図５）を開始すると、仮想マシン管理部１２は、自社クラウド環境に仮想マシンの増設を要求する情報を管理サーバ２に送信して、管理サーバ２によって処理サーバ３上に仮想マシンが起動される（ステップＳ１８１）。ステップＳ１８１において起動させる仮想マシンは、閾値を超えていたリソース値に対応する仮想マシンと同じシステムに属する仮想マシンである。
【００３７】
負荷分散部１５は、ユーザの要求があるか否かを判定し（ステップＳ１８２）、ユーザの要求がない場合（ステップＳ１８２：ＮＯ）、第１の振分処理を終了させて、処理をステップＳ１４（図４）に戻す。ユーザの要求がある場合（ステップＳ１８２：ＹＥＳ）、負荷分散部１５は、仮想マシン管理テーブルを参照し、ユーザの要求を自社クラウド環境の仮想マシンに振分けて、自社クラウドの仮想マシンにサービスを提供させる（ステップＳ１８３）。このとき、負荷分散部１５は、リソース利用率が最も低い仮想マシンや、リソース利用率が閾値を超えていない仮想マシンにユーザの要求を振分ける。負荷分散部１５は、ユーザの要求を振分けると、第１の振分処理を終了させて処理をステップＳ１４に戻す。
【００３８】
ステップＳ１７の判定において自社クラウド環境のリソース値に閾値を超えているリソース値がある場合（ステップＳ１７：ＹＥＳ）、仮想マシン管理部１２は、クラウド管理テーブルを参照し、他社クラウド環境の遅延測定値が遅延閾値を超えているか否かを判定する（ステップＳ１９）。
【００３９】
ステップＳ１９の判定において遅延測定値が遅延閾値を超えていない場合（ステップＳ１９：ＮＯ）、仮想マシン管理部１２は、第２の振分処理を行う（ステップＳ２０）。第２の振分処理は、自社クラウド環境のリソース利用率が高、他社クラウド環境の応答遅延が小さい状態において、自社クラウド環境に負荷の高いシステム（仮想マシン）が存在する場合に行われる処理である。
【００４０】
第２の振分処理（図６）を開始すると、仮想マシン管理部１２は、他社クラウド環境にクラスＡの仮想の増設を要求する情報を管理サーバ２に送信して、管理サーバ２によって他社クラウド環境の処理サーバ８２上に仮想マシンが起動される（ステップＳ２０１）。ステップＳ２０１において起動させる仮想マシンは、ステップＳ１８１と同様に、閾値を超えていたリソース値に対応する仮想マシンと同じシステムに属する仮想マシンである。
【００４１】
負荷分散部１５は、ユーザの要求があるか否かを判定し（ステップＳ２０２）、ユーザの要求がない場合（ステップＳ２０２：ＮＯ）、第２の振分処理を終了させて、処理をステップＳ１４（図４）に戻す。ユーザの要求がある場合（ステップＳ２０２：ＹＥＳ）、負荷分散部１５は、仮想マシン管理テーブルを参照し、ユーザの要求するサービスクラスに対応する仮想マシンにユーザの要求を振分けて（ステップＳ２０３）、当該仮想マシンにサービスを提供させる。このとき、負荷分散部１５は、仮想マシン管理テーブルを参照し、ユーザの要求するサービスクラス及びシステムに対応する仮想マシンのうち、リソース利用率が最も低い仮想マシンや、リソース利用率が閾値を超えていない仮想マシンにユーザの要求を振分ける。負荷分散部１５は、ユーザの要求を振分けると、第２の振分処理を終了させて処理をステップＳ１４に戻す。
【００４２】
ステップＳ１９の判定において遅延測定値が遅延閾値を超えている場合（ステップＳ１９：ＹＥＳ）、仮想マシン管理部１２は、第３の振分処理を行う（ステップＳ２１）。第３の振分処理は、自社クラウド環境のリソース利用率が高く、他社クラウド環境の応答遅延が大きい状態において、自社クラウド環境に負荷の高いシステム（仮想マシン）が存在する場合に行われる処理である。
【００４３】
第３の振分処理（図７）を開始すると、仮想マシン管理部１２は、仮想マシンの再構成を行う（ステップＳ２１１）。ステップＳ２１１における仮想マシンの再構成は、他社クラウド環境において動作しているクラスＡの仮想マシンを自社クラウド環境に移動させる処理である。クラスＡの仮想マシンを自社クラウド環境に移動させるために、自社クラウド環境において動作しているクラスＢの仮想マシンを他社クラウド環境に移してリソースを確保した後に、自社クラウド環境においてクラスＡの仮想マシンを起動させる。
【００４４】
具体的には、仮想マシン管理部１２は、仮想マシン管理テーブルを参照して、他社クラウド環境において動作しているクラスＡの仮想マシン数を検出する。仮想マシン管理部１２は、検出した台数分の仮想マシンを自社クラウド環境において起動させるために必要となるリソース量を算出し、算出したリソース量を確保するために自社クラウド環境から他社クラウド環境に移すクラスＢの仮想マシンの台数を算出する。仮想マシン管理部１２は、算出したクラスＢの仮想マシンの台数分の仮想マシンを他社クラウド環境において起動させることを要求する制御情報を管理サーバ２に送信する。
【００４５】
算出した台数分の仮想マシンが他社クラウド環境において起動すると、仮想マシン管理部１２は、自社クラウド環境において動作しているクラスＢの仮想マシンが提供するサービスを、他社クラウド環境において新たに起動させたクラスＢの仮想マシンに移動させることを要求する制御情報を管理サーバ２に送信する。自社クラウド環境から他社クラウド環境へのクラスＢのサービスの移動が完了すると、仮想マシン管理部１２は、自社クラウド環境において動作している、算出した台数分のクラスＢの仮想マシンの停止を要求する制御情報を管理サーバ２に送信する。
【００４６】
自社クラウド環境においてクラスＢの仮想マシンを停止させてクラスＡの仮想マシンを起動させるために必要なリソースを確保できると、仮想マシン管理部１２は、他社クラウド環境で動作しているクラスＡの仮想マシンの台数と同じ台数の仮想マシンを自社クラウド環境において起動させることを要求する制御情報を管理サーバ２に送信する。
【００４７】
自社クラウド環境において新たなクラスＡの仮想マシンが起動すると、仮想マシン管理部１２は、他社クラウド環境において動作しているクラスＡの仮想マシンが提供するサービスを、自社クラウド環境において新たに起動したクラスＡの仮想マシンに移動させることを要求する制御情報を管理サーバ２に送信する。他社クラウド環境から自社クラウド環境へのクラスＡのサービスの移動が完了すると、仮想マシン管理部１２は、他社クラウド環境において動作しているクラスＡの仮想マシンの停止を要求する制御情報を管理サーバ２に送信する。他社クラウド環境におけるクラスＡの仮想マシンが停止すると仮想マシンの再構成は完了する。
【００４８】
以上の処理を仮想マシンの再構成として行うことにより、負荷分散装置１は、クラスＡの仮想マシンを自社クラウド環境に集めて、応答遅延時間が増加した場合においても、サービスクラスがクラスＡのユーザの要求に対するサービス品質を維持することができ、ユーザの利便性の低下を抑制することができる。
【００４９】
負荷分散部１５は、仮想マシンの再構成が完了するとユーザの要求があるか否かを判定し（ステップＳ２１２）、ユーザの要求がない場合（ステップＳ２１２：ＮＯ）、第３の振分処理を終了させて、処理をステップＳ１４（図４）に戻す。ユーザの要求がある場合（ステップＳ２１２：ＹＥＳ）、負荷分散部１５は、ユーザの要求のサービスクラスがクラスＡであれば自社クラウド環境の仮想マシンに振分け、ユーザの要求のサービスクラスがクラスＢであれば他社クラウド環境の仮想マシンに振分けて、ユーザの要求するサービスを提供させる（ステップＳ２１３）。このとき、負荷分散部１５は、仮想マシン管理テーブルを参照し、リソース利用率が低い仮想マシンや、リソース利用率が閾値を超えていない仮想マシンにユーザの要求を振分ける。負荷分散部１５は、ユーザの要求を振分けると、第３の振分処理を終了させて処理をステップＳ１４に戻す。
【００５０】
以上のように、負荷分散装置１は、自社クラウド環境におけるコンピュータ・リソースに対する負荷に応じて仮想マシンの増設や仮想マシンの再構成を行い、自社クラウド環境を優先的に利用することにより他社クラウド環境の利用を抑えて発生する利用コストを削減する。
【００５１】
図８は、本実施形態における分散処理システムの動作例を示すシーケンス図である。図８には、自社クラウド環境におけるコンピュータ・リソースに対する負荷が高く閾値を超え、かつ他社クラウド環境における遅延測定値が遅延閾値を超えている場合（ピークトラフィック時）における動作例が示されている。負荷分散装置１が負荷分散処理を開始すると、仮想マシン登録部１１が仮想マシン管理テーブルに仮想マシンを登録し（ステップＳ３１）、仮想マシン管理部１２が仮想マシンの起動を要求する制御情報を管理サーバ２に送信する（ステップＳ３２）。管理サーバ２が自社クラウド環境の処理サーバ３において仮想マシンを起動させると（ステップＳ３３）、仮想マシン管理部１２が各仮想マシンのリソース利用率を取得し（ステップＳ３４）、遅延時間取得部１４が遅延測定値を取得し（ステップＳ３５）、仮想マシン管理テーブル及びクラウド管理テーブルが更新される。
【００５２】
仮想マシン管理部１２は、自社クラウド環境におけるリソース値及び他社クラウド環境における遅延測定値に基づく判定により仮想マシンの再構成の要否の判定を行う（ステップＳ３６）。図８に示している例では、ピークトラフィック時であるため、仮想マシン管理部１２から管理サーバ２に対して仮想マシンの再構成を要求する制御情報が送信される（ステップＳ３７）。制御情報を受信した管理サーバ２は、他社クラウド環境においてクラスＢの仮想マシンを起動させた後に自社クラウド環境におけるクラスＢの仮想マシンを停止させるとともに、自社クラウド環境においてクラスＡの仮想マシンを起動させた後に他社クラウド環境におけるクラスＡの仮想マシンを停止させて、仮想マシンの再構成を行う（ステップＳ３８）。
【００５３】
ユーザ端末７から負荷分散装置１にユーザ要求が入力されると（ステップＳ４０）、負荷分散部１５がユーザ要求のサービスクラスに応じて振分け先を判定し（ステップＳ４１）、ユーザ要求のサービスクラスがクラスＡの場合には自社クラウド環境の仮想マシンに振分け（ステップＳ４２）、ユーザ要求のサービスクラスがクラスＢの場合には他社クラウド環境の仮想マシンに振分ける（ステップＳ４３）。
【００５４】
図９は、本実施形態における分散処理システムの別の動作例を示すシーケンス図である。図９には、自社クラウド環境におけるコンピュータ・リソースに対する負荷が低く閾値を超えていない場合（低トラフィック時）における動作例が示されている。なお、図９におけるステップＳ３１からステップＳ３６までの各処理は、図８に示した各処理と同じであるので説明を省略する。
【００５５】
図９に示している例では、低トラフィック時であるため、ステップＳ３６における仮想マシンの再構成の要否の判定において、再構成が不要と判定されるため、仮想マシンに対する操作は行われない。この後に、ユーザ端末７から負荷分散装置１にユーザ要求が入力されると（ステップＳ５０）、負荷分散部１５が仮想マシン管理テーブルを参照してユーザ要求の振分け先を判定し、自社クラウド環境の仮想マシンにユーザ要求を振分ける（ステップＳ５２）。
【００５６】
以上のように、本実施形態における負荷分散装置１による負荷分散処理を行うことにより、自社クラウド環境における仮想マシンを優先的に利用することができ、他社クラウド環境の仮想マシンを利用することにより発生する利用コストを抑えることができる。また、負荷分散装置１は、自社クラウド環境におけるリソース利用率と他社クラウド環境の応答遅延とに基づいて、自社クラウド環境と他社クラウド環境とのいずれのクラウド環境を利用するかを選択しているので、仮想マシンで提供するサービス品質の低下を抑えつつ、利用コストの削減を図ることができる。具体的には、自社クラウド環境においてリソースが逼迫している場合には、応答時間に対する要求がない又は緩いクラスＢの仮想マシンを他社クラウド環境に移動させ、クラスＡの仮想マシンを自社クラウド環境にて起動させる。これにより、クラスＡの仮想マシンで提供するサービス品質を低下させずに、他社クラウド環境の利用を削減することができる。
【００５７】
また、本実施形態における負荷分散装置１を用いることにより、サービス利用ユーザや企業ユーザは、自社クラウド環境の処理サーバ３を優先的に使用するので、他社クラウド環境の利用コストを削減することができる。また、他社クラウド環境の応答遅延が増加した場合でも、サービス品質を維持することができ、ユーザの利便性を向上させることができる。また、負荷分散装置１を用いることにより、クラウドインフラ提供事業者は、ユーザにプライベートクラウドを提供する場合に、他社クラウド環境のコンピュータ・リソースを必要に応じて活用することができるので、設備コストの低減を図ることができる。また、ネットワーク６における通信速度が低下して、他社クラウド環境の応答遅延が増加した場合でも、安定したサービス品質を保証することができ、ＳＬＡ等の品質保証型のサービスも可能となる。
【００５８】
なお、負荷分散装置１は、他社クラウド環境において動作させている仮想マシンが存在している場合に、自社クラウド環境のコンピュータ・リソースに余裕があれば、他社クラウド環境の仮想マシンを自社クラウド環境に移動させてもよい。ここで、自社クラウド環境のコンピュータ・リソースに余裕がある状態とは、自社クラウド環境における各リソース値（ＣＰＵ利用率測定値及びメモリ利用率測定値）すべてが対応する閾値以下になっている状態である。図１０は、本実施形態における分散処理システムの異なる動作例を示すシーケンス図である。
【００５９】
図１０において、負荷分散装置１の仮想マシン管理部１２が自社クラウド環境の各仮想マシンのリソース利用率を取得し（ステップＳ６１）、仮想マシン管理テーブルが更新される。仮想マシン管理部１２は、クラウド管理テーブルを参照して、仮想マシンの再構成の要否判定を行う（ステップＳ６２）。具体的には、自社クラウド環境のＣＰＵ利用率測定値がＣＰＵ利用率閾値以下であり、かつメモリ利用率測定値がメモリ利用率閾値以下であるか否かを判定し、測定値がともに閾値以下である場合に他社クラウド環境において仮想マシンが動作しているときに、自社クラウド環境に仮想マシンを移動させる仮想マシンの再構成を行う。
【００６０】
仮想マシン管理部１２は、自社クラウド環境のリソース値すべてが閾値以下であることを検出すると、仮想マシン管理テーブルを参照して他社クラウド環境において動作している仮想マシンを検出する。仮想マシン管理部１２は、仮想マシンの再構成を要求する制御情報を管理サーバ２に送信する（ステップＳ６３）。このとき、仮想マシン管理部１２から管理サーバ２に送信される制御情報には、自社クラウド環境において新たな仮想マシンを起動させ、他社クラウド環境において動作している仮想マシンが提供しているサービスを起動した仮想マシンに移動させ、他社クラウド環境において動作している仮想マシンを停止させる要求が含まれている。
【００６１】
管理サーバ２は、仮想マシン管理部１２から受信した制御情報に基づいて、自社クラウド環境において新たに仮想マシンを起動させる（ステップＳ６４）。管理サーバ２は、他社クラウド環境において動作している仮想マシンが提供しているサービスが、自社クラウド環境において新たに起動した仮想マシンに移動させると、他社クラウド環境の仮想マシンを停止させる（ステップＳ６５）。
【００６２】
なお、他社クラウド環境から自社クラウド環境に移動させる仮想マシンの台数は、自社クラウド環境におけるリソース利用率に応じて定めてもよいし、一台としてもよい。また、複数の仮想マシンが他社クラウド環境において動作している場合には、クラスＡの仮想マシンを優先的に自社クラウド環境に移動させるようにしてもよい。
【００６３】
図１０において示したように、負荷分散装置１が自社クラウド環境のコンピュータ・リソースに余裕がある場合に、他社クラウド環境において動作している仮想マシンを自社クラウド環境に移動させることにより、他社クラウド環境の利用で発生する利用コストを更に削減することができる。なお、他社クラウド環境において動作している仮想マシンを自社クラウド環境に移動させるか否かの判定において、ＣＰＵ利用率閾値とメモリ利用率閾値とそれぞれよりも低い値の閾値を用いるようにしてもよい。これにより、自社クラウド環境と他社クラウド環境との間で仮想マシンの頻繁な移動を防ぐことができ、安定したサービスの提供を行うことができる。
【００６４】
なお、上述した実施形態では、他社クラウド環境が一つの場合について説明したが、ネットワーク６を介して接続された複数の他社クラウド環境があってもよい。この場合には、クラウド管理テーブルにおける行が他社クラウド環境ごとに存在することになる。複数の他社クラウド環境から仮想マシンを起動させる他社クラウド環境の選択には、例えば遅延測定値が短いものから優先的に選択するようにする。
また、上述した実施形態では、負荷分散装置１と管理サーバ２とが独立した個別の装置である場合について説明したが、一つの装置として構成されていてもよい。
【００６５】
また、図４において示した負荷分散処理において、ステップＳ１６から処理をステップＳ１４に戻す際に、負荷分散部１５はユーザの要求の有無を判定し、ユーザの要求がある場合に当該ユーザの要求を自社クラウド環境の仮想マシンに振分けるようにしてもよい。
【００６６】
上述した実施形態における負荷分散装置１をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。更に「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、更に前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、ＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されるものであってもよい。
【００６７】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００６８】
１…負荷分散装置，１１…仮想マシン登録部，１２…仮想マシン管理部，１３…記憶部，１４…遅延時間取得部，１５…負荷分散部，２…管理サーバ，３…処理サーバ，４…ルータ，５、６…ネットワーク，７…ユーザ端末，８１…ルータ，８２…処理サーバ
【図１】
2015153370.tif 000003
【図２】
2015153370.tif 000004
【図３】
2015153370.tif 000005
【図４】
2015153370.tif 000006
【図５】
2015153370.tif 000007
【図６】
2015153370.tif 000008
【図７】
2015153370.tif 000009
【図８】
2015153370.tif 000010
【図９】
2015153370.tif 000011
【図１０】
2015153370.tif 000012