(57)【要約】【課題】  プロセッサ・リソース以外のリソースに関しても管理や制限を行う仮想マシン管理プログラムを提供する。【解決手段】  仮想リソース管理者はパソコン５００を経由して仮想リソースの登録、変更、削除をリソース分割サーバ１００に要求し、仮想リソース分割機能１０１はこの要求を受信し、仮想リソース管理者の要求に基づいて仮想リソース管理ＤＢ１０６と、仮想マシン管理ＤＢ１０５とを更新し、仮想マシン制御機能２０１に仮想リソース管理者の要求に応じたリソースの変更を要求する。また、仮想マシンの管理者は仮想マシンの登録、変更、あるいは削除をパソコン４００を経由してリソース分割サーバ１００に要求し、仮想マシン分割機能１０２はこの要求を受信し、仮想マシン管理者の要求に基づいて仮想リソース管理ＤＢ１０６と、仮想マシン管理ＤＢ１０５とを更新し、仮想マシン制御機能２０１に仮想マシン管理者の要求に応じた処理を要求する。【選択図】  図１
2005208999.tif 000002
【特許請求の範囲】
【請求項１】
１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、
コンピュータに、
端末装置からユーザ識別情報を受信する処理と、
記憶領域からユーザの仮想リソースの管理権限の情報を格納しているロール管理データベースを読み出し、前記ユーザ識別情報をもとに前記仮想リソースの管理権限をチェックし、前記仮想リソースの管理権限が与えられていない場合にはエラーを前記端末装置に送信する処理と、
前記端末装置から仮想リソースの変更要求を受信する処理と、
記憶領域中の仮想リソースの管理情報を含む仮想リソース管理データベースを、前記受信した仮想リソースの情報の変更要求を基に更新する処理と、
記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベースに格納されている個々の仮想マシンが使用するリソースの情報を、前記受信した仮想リソースの情報の変更要求を基に更新する処理と、
仮想マシンを管理する仮想マシンソフトウェアに、前記受信した仮想リソースの情報変更の要求を基に仮想マシンの使用するリソースの情報の変更を要求する処理と、
を実行させるためのプログラム。
【請求項２】
１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、
コンピュータに、
端末装置からユーザ識別情報を受信する処理と、
記憶領域からユーザの仮想リソースの管理権限の情報を格納しているロール管理データベースを読み出し、前記ユーザ識別情報をもとに前記仮想リソースの管理権限をチェックし、前記仮想リソースの管理権限が与えられていない場合にはエラーを前記端末装置に送信する処理と、
前記端末装置から仮想リソースの登録要求を受信する処理と、
記憶領域中の仮想リソースの管理情報を含む仮想リソース管理データベースに前記受信した仮想リソースの登録要求を基にデータを書き込む処理と、
を実行させるためのプログラム。
【請求項３】
１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、
コンピュータに、
端末装置からユーザ識別情報を受信する処理と、
記憶領域からユーザの仮想リソースの管理権限の情報を格納しているロール管理データベースを読み出し、前記ユーザ識別情報をもとに前記仮想リソースの管理権限をチェックし、前記仮想リソースの管理権限が与えられていない場合にはエラーを前記端末装置に送信する処理と、
端末装置から仮想リソースの削除要求を受信する処理と、
記憶領域中の仮想リソースの管理情報を含む仮想リソース管理データベースから前記受信した仮想リソースの削除要求を基にデータを削除する処理と、
記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベース中の、前記受信した仮想リソースの削除要求の対象となっている仮想リソースを使用する仮想マシンに関するデータを削除する処理と、
仮想マシンを管理する仮想マシンソフトウェアに、前記受信した仮想リソースの削除要求の対象となっている仮想リソースを使用する仮想マシンの削除を要求する処理と、
を実行させるためのプログラム。
【請求項４】
１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、
コンピュータに、
端末装置からユーザ識別情報を受信する処理と、
記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベースから、前記ユーザ識別情報をもとに管理権限が与えられている仮想マシンに関するデータを読み出して送信する処理と、
前記端末装置から仮想マシンの起動要求を受信する処理と、
仮想マシンを管理する仮想マシンソフトウェアに、前記仮想マシンの起動要求を基に仮想マシンの起動を要求する処理と、
を実行させるためのプログラム。
【請求項５】
１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、
コンピュータに、
端末装置からユーザ識別情報を受信する処理と、
記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベースから、前記ユーザ識別情報をもとに管理権限が与えられている仮想マシンに関するデータを読み出して送信する処理と、
前記端末装置から仮想マシンの使用するリソースの変更要求を受信する処理と、
前記仮想マシン管理データベースを前記リソースの変更要求に基づいて更新する処理と、
仮想マシンを管理する仮想マシンソフトウェアに前記リソースの変更要求に基づいて前記仮想マシンの使用するリソースの変更を要求する処理と、
を実行させるためのプログラム。
【請求項６】
１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、
コンピュータに、
端末装置からユーザ識別情報を受信する処理と、
記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベースから、前記ユーザ識別情報をもとに管理権限が与えられている仮想マシンに関するデータを読み出して送信する処理と、
前記端末装置から仮想マシンの登録要求を受信する処理と、
前記仮想マシン管理データベースに前記仮想マシンの登録要求に基づいてデータを書き込む処理と、
記憶領域中の仮想リソースの管理情報を含む仮想リソース管理データベースを、前記仮想マシンの登録要求に基づいて更新する処理と、
仮想マシンを管理する仮想マシンソフトウェアに仮想マシンの登録を要求する処理と、
を実行させるためのプログラム。
【請求項７】
１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、
コンピュータに、
端末装置からユーザ識別情報を受信する処理と、
記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベースから、前記ユーザ識別情報をもとに管理権限が与えられている仮想マシンに関するデータを読み出して送信する処理と、
前記端末装置から仮想マシンの削除要求を受信する処理と、
前記仮想マシン管理データベースから前記仮想マシンの削除要求に基づいてデータを削除する処理と、
仮想マシンを管理する仮想マシンソフトウェアに前記仮想マシンの削除要求に基づいて仮想マシンの削除を要求する処理と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハードウェアリソースと、仮想マシンとを管理する仮想マシン管理プログラムに関するものである。
【背景技術】
【０００２】
近年、ユーザ企業に対して、必要なときに必要な分だけ、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）演算能力や、メモリ容量などのハードウェアリソースに代表されるコンピュータの処理能力を提供するサービスの形態である、ユーティリティ・コンピューティングのコンセプトがＩＴ（Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）ベンダ各社より提唱されている。ここで、ユーティリティ・コンピューティングによってユーザ企業に提供されるハードウェアリソースをユーザ企業内で活用するための技術的な課題がいくつか生じている。課題の一つは、多種多様な目的の情報システムで使用されるハードウェアリソースを、その情報システムが対象とする業務プロセスや組織・グループに応じた重要性や、性能要求や、信頼性などに基づいて適切に分割する必要がある点である。この点におけるハードウェアリソースの適切な分割とは、例えば、レスポンスタイムが要求される情報システムに対してはＣＰＵ演算能力を増強する、同時接続ユーザが多い情報システムに対してはメモリ容量を増強する、あるいは、夜間バッチ処理のみを行う情報システムに対してはネットワーク帯域を削減する、といったものである。
【０００３】
また、この他の技術的な課題として、分割されたハードウェアリソースを、情報システムを構成するサーバマシンやクライアントマシンに適切に配分する必要がある点や、ハードウェアリソースの分割、あるいは、情報システムを構成するマシンの運用に関してユーザ認証による権限管理を行う必要がある点が挙げられる。
こうした技術的課題に対して、従来の技術ではプロセッサ・リソースのみの制限を行っている。しかし、情報システムが対象とする業務プロセスや組織・グループの要求に適切に応じるためには、プロセッサ・リソース以外のリソースも総合的に考慮する必要がある。しかし、従来の技術ではプロセッサ・リソース以外のリソースに関しては管理や制限が行われていない問題点があった。
なお、従来技術文献としてとして特許文献１と、特許文献２とが知られている。
【特許文献１】特開平９−８１４０１号公報
【特許文献２】特開２００２−１８２９３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は上記の事情を考慮してなされたもので、その目的は、プロセッサ・リソース以外のリソースに関しても管理や制限を行う仮想マシン管理プログラムを提供することにある。
【課題を解決するための手段】
【０００５】
この発明は前述の課題を解決するためになされたもので、請求項１の発明は、１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、コンピュータに、端末装置からユーザ識別情報を受信する処理と、記憶領域からユーザの仮想リソースの管理権限の情報を格納しているロール管理データベースを読み出し、前記ユーザ識別情報をもとに前記仮想リソースの管理権限をチェックし、前記仮想リソースの管理権限が与えられていない場合にはエラーを前記端末装置に送信する処理と、前記端末装置から仮想リソースの変更要求を受信する処理と、記憶領域中の仮想リソースの管理情報を含む仮想リソース管理データベースを、前記受信した仮想リソースの情報の変更要求を基に更新する処理と、記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベースに格納されている個々の仮想マシンが使用するリソースの情報を、前記受信した仮想リソースの情報の変更要求を基に更新する処理と、仮想マシンを管理する仮想マシンソフトウェアに、前記受信した仮想リソースの情報変更の要求を基に仮想マシンの使用するリソースの情報の変更を要求する処理と、を実行させるためのプログラムである。
【０００６】
請求項２に記載の発明は、１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、コンピュータに、端末装置からユーザ識別情報を受信する処理と、記憶領域からユーザの仮想リソースの管理権限の情報を格納しているロール管理データベースを読み出し、前記ユーザ識別情報をもとに前記仮想リソースの管理権限をチェックし、前記仮想リソースの管理権限が与えられていない場合にはエラーを前記端末装置に送信する処理と、前記端末装置から仮想リソースの登録要求を受信する処理と、記憶領域中の仮想リソースの管理情報を含む仮想リソース管理データベースに前記受信した仮想リソースの登録要求を基にデータを書き込む処理と、を実行させるためのプログラムである。
【０００７】
請求項３に記載の発明は、１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、コンピュータに、端末装置からユーザ識別情報を受信する処理と、記憶領域からユーザの仮想リソースの管理権限の情報を格納しているロール管理データベースを読み出し、前記ユーザ識別情報をもとに前記仮想リソースの管理権限をチェックし、前記仮想リソースの管理権限が与えられていない場合にはエラーを前記端末装置に送信する処理と、端末装置から仮想リソースの削除要求を受信する処理と、記憶領域中の仮想リソースの管理情報を含む仮想リソース管理データベースから前記受信した仮想リソースの削除要求を基にデータを削除する処理と、記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベース中の、前記受信した仮想リソースの削除要求の対象となっている仮想リソースを使用する仮想マシンに関するデータを削除する処理と、仮想マシンを管理する仮想マシンソフトウェアに、前記受信した仮想リソースの削除要求の対象となっている仮想リソースを使用する仮想マシンの削除を要求する処理と、を実行させるためのプログラムである。
【０００８】
請求項４に記載の発明は、１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、コンピュータに、端末装置からユーザ識別情報を受信する処理と、記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベースから、前記ユーザ識別情報をもとに管理権限が与えられている仮想マシンに関するデータを読み出して送信する処理と、前記端末装置から仮想マシンの起動要求を受信する処理と、仮想マシンを管理する仮想マシンソフトウェアに、前記仮想マシンの起動要求を基に仮想マシンの起動を要求する処理と、を実行させるためのプログラムである。
【０００９】
請求項５に記載の発明は、１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、コンピュータに、端末装置からユーザ識別情報を受信する処理と、記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベースから、前記ユーザ識別情報をもとに管理権限が与えられている仮想マシンに関するデータを読み出して送信する処理と、前記端末装置から仮想マシンの使用するリソースの変更要求を受信する処理と、前記仮想マシン管理データベースを前記リソースの変更要求に基づいて更新する処理と、仮想マシンを管理する仮想マシンソフトウェアに前記リソースの変更要求に基づいて前記仮想マシンの使用するリソースの変更を要求する処理と、を実行させるためのプログラムである。
【００１０】
請求項６に記載の発明は、１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、コンピュータに、端末装置からユーザ識別情報を受信する処理と、記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベースから、前記ユーザ識別情報をもとに管理権限が与えられている仮想マシンに関するデータを読み出して送信する処理と、前記端末装置から仮想マシンの登録要求を受信する処理と、前記仮想マシン管理データベースに前記仮想マシンの登録要求に基づいてデータを書き込む処理と、記憶領域中の仮想リソースの管理情報を含む仮想リソース管理データベースを、前記仮想マシンの登録要求に基づいて更新する処理と、仮想マシンを管理する仮想マシンソフトウェアに仮想マシンの登録を要求する処理と、を実行させるためのプログラムである。
【００１１】
請求項７に記載の発明は、１個以上の仮想マシンが使用するリソースの上限使用量と、リソース全体に占める上限使用割合との情報を含む仮想リソースの管理を行うリソース分割サーバに用いられるプログラムであって、コンピュータに、端末装置からユーザ識別情報を受信する処理と、記憶領域中の仮想マシンに関する情報を含む仮想マシン管理データベースから、前記ユーザ識別情報をもとに管理権限が与えられている仮想マシンに関するデータを読み出して送信する処理と、前記端末装置から仮想マシンの削除要求を受信する処理と、前記仮想マシン管理データベースから前記仮想マシンの削除要求に基づいてデータを削除する処理と、仮想マシンを管理する仮想マシンソフトウェアに前記仮想マシンの削除要求に基づいて仮想マシンの削除を要求する処理と、を実行させるためのプログラムである。
【発明の効果】
【００１２】
請求項１〜３の発明によれば、権限の無いユーザを排除しながら、仮想マシンの使用するリソースをプロセッサ・リソースに限らず仮想リソースとして管理を行うことができる効果がある。また、企業や官公庁などが仮想マシンを利用する顧客、あるいは仮想マシンのユーザである場合には、１ユーザ、あるいは顧客が複数の仮想マシンを使用するケースは多くあり、仮想マシンの使用するリソースの上限については、ユーザ、あるいは顧客単位に設けことができると便利である。この発明においては、仮想マシンの管理者と、仮想リソースの管理者とは１個の仮想リソースに対して１個以上の仮想マシンを割り当てることができるため、リソースの上限管理が容易となる効果がある。
また、請求項４〜７の発明によれば、ユーザの権限の範囲内で仮想マシンと、関連する仮想リソースとの管理を行うことができる効果がある。
【発明を実施するための最良の形態】
【００１３】
まず、図を参照して従来のシステムと比較しながら本実施の形態の概要を説明する。図２は従来の情報システムにおける仮想マシンの利用の形態を表している。図２では、仮想マシンのユーザ、あるいは、仮想マシンの管理者はネットワークを経由して仮想マシンとデータの送受信を行っている。個々の仮想マシンの使用するリソースに関しては、既存の仮想マシン制御機能が制限を設けている。また、従来のシステムでは仮想マシンの利用者と、仮想マシンの管理者とは特に区別もされていない。
これに対して、図３は本実施の形態の概要を表している。図３においてはメモリサイズやＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）サイズ、あるいはＣＰＵ利用率といった種々のハードウェアリソースを仮想リソースとして定め、１個、あるいは複数個の仮想マシンを１個の仮想リソースに割り当てることにより仮想マシンで使用できるハードウェアリソースを制限、あるいは管理している。また、本実施の形態においては仮想マシンの利用者と、仮想マシンの管理者、及び、仮想リソースの管理者とは明確に区別されている。
【００１４】
以下、図面を参照し、この発明の実施の形態を説明する。図１は本実施の形態における仮想マシン管理システムの構成を表している。また、図４は本実施の形態におけるデータの内容を表している。
図１において、リソース分割サーバ１００は仮想マシンと、仮想マシンが使用するリソースの管理を行うためのコンピュータである。
仮想リソース分割機能１０１は仮想リソースの管理者からの要求に基づいて仮想マシンサーバ２００の上のハードウェアリソースを仮想リソースとして管理するリソース分割サーバ１００上のプログラムであり、詳細は以降に記述する。
仮想マシンアクセス制御機能１０２は、仮想マシンの管理者やその他の仮想マシン利用者からの要求に基づいて仮想マシンの管理を行うリソース分割サーバ１００上のプログラムであり、詳細は以降に記述する。
【００１５】
ユーザ管理ＤＢ（Ｄａｔａ  Ｂａｓｅ）１０３はリソース分割サーバ１００の記憶領域に格納されているデータベースである。本実施の形態における仮想マシンのユーザや仮想マシンの管理者等は予めグループ分けされている。このグループ分けに関する情報を格納するために、ユーザ管理ＤＢ１０３はユーザＩＤ（ユーザ識別情報）と、ユーザ名と、グループＩＤと、グループ名と、パスワードとからなる図４のユーザ管理マスタ４０１に示す形式のデータを格納している。
【００１６】
ロール管理ＤＢ１０４はリソース分割サーバ１００の記憶領域に格納されているデータベースである。本実施の形態においては、各々のグループ毎に使用が許可されている仮想リソースや仮想マシンの管理権限の有無や、仮想リソースの管理権限の有無が予め決められている。ロール管理ＤＢ１０４はこうした管理権限に関する情報を格納するためにロール名と、ロールＩＤと、仮想リソース管理権限と、仮想リソースＩＤと、仮想マシン管理権限（仮想リソースの管理権限の情報）と、グループＩＤとからなる図４のロール管理マスタ４０２に示す形式のデータを格納している。
【００１７】
仮想マシン管理ＤＢ１０５はリソース分割サーバ１００の記憶領域に格納されたデータベースであり、個々の仮想マシンの使用するハードウェアリソースに関する情報を格納している。仮想マシン管理ＤＢ１０５は、仮想マシンＩＤと、仮想マシン名と、ＣＰＵシェアと、メモリサイズと、ＨＤＤサイズと、ＨＤ−ＩＯ（Ｈａｒｄ  Ｄｉｓｋ−Ｉｎｐｕｔ  Ｏｕｔｐｕｔ）帯域幅シェアと、ＮＷ−ＩＯ（ＮｅｔＷｏｒｋ−Ｉｎｐｕｔ  Ｏｕｔｐｕｔ）帯域幅シェアと、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスと、許諾ユーザＩＤと、拒否ユーザＩＤと、仮想リソースＩＤとからなる図４の仮想マシン管理マスタ４０３に示す形式のデータを格納している。
【００１８】
仮想リソース管理ＤＢ１０６はリソース分割サーバ１００の記憶領域に格納されたデータベースであり、仮想リソースに関する情報を格納している。仮想リソース管理ＤＢ１０６は、仮想リソースＩＤと、仮想リソース名と、トータルＣＰＵタイム割当シェア（上限使用割合）と、トータルメモリ割当サイズと（リソースの上限使用量）、トータルＨＤ割当サイズと（リソースの上限使用量）、トータルＨＤ−ＩＯ帯域幅シェア（上限使用割合）と、トータルＮＷ−ＩＯ帯域幅シェア（上限使用割合）とからなる図４の仮想リソース管理マスタ４０４に示す形式のデータを格納している。
【００１９】
仮想マシンサーバ２００は仮想マシンを稼動させるためのコンピュータである。仮想マシン制御機能２０１は仮想マシンサーバ２００上で仮想マシン２０２ａと、仮想マシン２０２ｂとを含む仮想マシンを制御するソフトウェアであり、外部からの要求に応じて仮想マシンの起動や停止、追加や削除、仮想マシンの使用するハードウェアリソースの割り当てなどを行う。仮想マシン２０２ａと、仮想マシン２０２ｂとは仮想マシンサーバ２００上で稼動する仮想マシンである。
ハードウェアリソース２０３はＣＰＵやメモリを含む仮想マシンサーバ２００のハードウェアリソースである。
【００２０】
パソコン３００は仮想マシン利用者が使用するパソコンである。仮想マシン利用者はパソコン３００を経由してリソース分割サーバ１００に仮想マシンの起動を要求する。
パソコン４００は仮想マシンの管理者の使用するパソコンである。仮想マシンの管理者はリソース分割サーバ１００にパソコン４００を経由して仮想マシンの追加などを要求する。
パソコン５００は仮想リソースの管理者の使用するパソコンであり、仮想リソースの管理者はパソコン５００を経由してリソース分割サーバ１００に仮想リソースの登録などを要求する。
【００２１】
以下、図を参照して本実施の形態における処理の流れを説明する。本実施の形態においては大別すると、仮想リソースに関する処理と、仮想マシンに関する処理との２つの処理があり、仮想リソースに関する処理としては仮想リソース管理画面表示の認証処理と、仮想リソースの変更処理と、仮想リソースの登録処理と、仮想リソースの削除処理とがある。また、仮想マシンに関する処理としては、仮想マシン利用の認証処理と、仮想マシンの管理画面表示の認証処理と、仮想マシンの変更処理と、仮想マシンの登録処理と、仮想マシンの削除処理との処理がある。以下、これらの処理に関して説明する。
【００２２】
＜＜仮想リソースに関する処理＞＞
＜仮想リソース管理画面表示の認証処理＞
この処理は、ユーザが仮想リソース管理権限を持っているか否かのチェックを行い、権限を持っている場合には仮想リソース管理画面をユーザに見せるものである。
図５は仮想リソース管理画面表示の認証処理の流れを表している。図１の仮想リソースの管理者は、パソコン５００に仮想リソース管理画面の表示を指示する。パソコン５００は仮想リソースの管理者の指示を受け、ネットワークを経由してリソース分割サーバ１００へ仮想リソース管理情報の取得要求を送信し（図５のステップＳ１０１）、続いて、仮想リソースの管理者のユーザＩＤと、パスワードとを記憶領域から読み出して送信する（図５のステップＳ１０２）。
【００２３】
リソース分割サーバ１００の仮想マシンアクセス制御機能１０２はパソコン５００から仮想リソース管理情報の取得要求と、仮想リソースの管理者のユーザＩＤと、パスワードとを受信し、記憶領域中のユーザ管理ＤＢ１０３から、受信したユーザＩＤと、パスワードとに対応するグループＩＤを読み出す（図５のステップＳ１０３）。そして、仮想マシンアクセス制御機能１０２は読み出したグループＩＤに対応する仮想リソース管理権限を、記憶領域中のロール管理ＤＢ１０４から読み出す（図５のステップＳ１０４）。
【００２４】
次に、仮想マシンアクセス制御機能１０２は、読み出した仮想リソース管理権限が“１”、即ち「権限あり」であるか、あるいは“０”、即ち「権限なし」であるかのチェックを行う（図５のステップＳ１０５）。仮想リソース管理権限が“１”である場合には（図５のステップＳ１０５が「ＯＫ」）、仮想マシンアクセス制御機能１０２はユーザが仮想リソース管理権限を持っているものと判断し、先ほど読み出したグループＩＤを仮想リソース分割機能１０１へ出力して仮想リソース情報の読み出しと、パソコン５００への仮想リソース情報の送信とを要求する。
仮想リソース分割機能１０１は仮想マシンアクセス制御機能１０２からデータを入力し、入力したグループＩＤに対応する全ての仮想リソースＩＤを記憶領域中のロール管理ＤＢ１０４から読み出す。さらに、仮想リソース分割機能１０１は、この仮想リソースＩＤに対応するＣＰＵシェアと、メモリサイズと、ＨＤＤサイズと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとを記憶領域中の仮想マシン管理ＤＢ１０５から読み出し（図５のステップＳ１０７）、パソコン５００へ送信する（図５のステップＳ１０８）。パソコン５００はリソース分割サーバ１００からデータを受信し、表示する。
【００２５】
しかし、仮想リソース管理権限が“０”である場合には（図５のステップＳ１０５が「ＮＧ」）、仮想マシンアクセス制御機能１０２は、エラーメッセージをパソコン５００へ送信し、パソコン５００はこのエラーメッセージを受信して表示する（図５のステップＳ１０９）。
【００２６】
＜仮想リソースの変更処理＞
この処理は、リソース分割サーバ１００が仮想リソースの管理者の要求に基づいて仮想リソースに割り当てられたメモリの使用可能な容量の上限の変更や、ハードディスクの使用可能な容量の上限の変更を行うものである。この処理は仮想リソース管理画面表示の認証処理に続いて実行される。仮想リソース管理画面表示の認証処理によって、要求発行元であるユーザは仮想リソース管理権限を持っていることが証明されるためである。
図６は仮想リソースの変更処理の流れを表している。仮想リソースの管理者は、仮想リソース管理画面表示の認証処理に引き続いて、図１のパソコン５００に仮想リソースの変更処理の開始を指示する。パソコン５００は仮想リソースの管理者からの指示を受け、リソース分割サーバ１００へ仮想リソースの変更処理の開始を要求する（図６のステップＳ２０１）。リソース分割サーバ１００の仮想リソース分割機能１０１はパソコン５００からの要求を受信し、すべての仮想リソースのシェア・サイズの指定の要求をパソコン５００へ送信する（図６のステップＳ２０２）。
パソコン５００はリソース分割サーバ１００の仮想リソース分割機能１０１からデータを受信し、全ての仮想リソースのトータルＣＰＵタイム割当シェアと、トータルメモリ割当サイズと、トータルＨＤ割当サイズと、トータルＨＤ−ＩＯ帯域幅シェアと、トータルＮＷ−ＩＯ帯域幅シェアとの入力画面を表示して仮想リソースの管理者にこれらの値の入力を要求する。
【００２７】
次に、仮想リソースの管理者は全ての仮想リソースのシェア・サイズをパソコン５００に入力する。パソコン５００はユーザからのデータの入力を受け、変更後の全ての仮想リソースのシェア・サイズをリソース分割サーバ１００へ送信する（図６のステップＳ２０３）。
リソース分割サーバ１００の仮想リソース分割機能１０１はパソコン５００からデータを受信し、受信した全ての仮想リソースに含まれるトータルＣＰＵタイム割当シェアと、トータルメモリ割当サイズと、トータルＨＤ割当サイズと、トータルＨＤ−ＩＯ帯域幅シェアと、トータルＮＷ−ＩＯ帯域幅シェアとを各々加算して項目毎の合計を計算し、この合計が仮想マシンサーバ２００自身の容量を超えているか否かをチェックする（図６のステップＳ２０４）。
【００２８】
次に、仮想リソース分割機能１０１が計算した仮想リソースの合計が仮想マシンサーバ２００自身の容量を超えていない場合には（図６のステップＳ２０４が“ＯＫ”）、仮想リソース分割機能１０１は仮想リソース管理ＤＢ１０６を記憶領域から一旦読み出し、受信した全ての仮想リソースのトータルＣＰＵタイム割当シェアと、トータルメモリ割当サイズと、トータルＨＤ割当サイズと、トータルＨＤ−ＩＯ帯域幅シェアと、トータルＮＷ−ＩＯ帯域幅シェアとを仮想リソース管理ＤＢ１０６へ書き込む（図６のステップＳ２０５）。続いて、仮想リソース分割機能１０１は先ほど一旦読み出した仮想リソース管理ＤＢ１０６のデータと、受信した全ての仮想リソースのトータルＣＰＵタイム割当シェアと、トータルＨＤ−ＩＯ帯域幅シェアと、トータルＮＷ−ＩＯ帯域幅シェアとに基づいて、各仮想マシンのＣＰＵシェアと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアを再計算する（図６のステップＳ２０６）。例えば、仮想マシン管理ＤＢ１０５のＣＰＵシェアに関しては、仮想リソース分割機能１０１は仮想マシン毎に仮想マシン管理ＤＢ１０５からＣＰＵシェアを読み出し、これと対応する先ほど受信した全ての仮想リソースのシェアの中のトータルＣＰＵタイム割当シェアを掛けて、さらに、先ほど一旦読み出した仮想リソース管理ＤＢ１０６のトータルＣＰＵタイム割当シェアで除算する。即ち、仮想マシン毎にトータルＣＰＵタイム割当シェアの変更前後の変化の割合をＣＰＵシェアに乗じることにより、仮想リソースのトータルＣＰＵタイム割当シェアの増減に連動させて仮想マシンごとのＣＰＵシェアも増減させている。仮想リソース分割機能１０１は、仮想マシン管理ＤＢ１０５中のＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとに関しても同様の計算を行う。
【００２９】
しかし、仮想リソース分割機能１０１が計算した仮想リソースの合計が仮想マシンサーバ２００自身の容量を超えた場合には（図６のステップＳ２０４が“ＮＧ”）、仮想リソース分割機能１０１は仮想リソースの管理者の要求は受け入れられないものであると判断し、パソコン５００へエラーメッセージを送信する。パソコン５００はリソース分割サーバ１００からエラーメッセージを受信して表示する（図６のステップＳ２０７）。
【００３０】
次に、仮想リソース分割機能１０１は、先ほど計算した各仮想マシンのＣＰＵシェアと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとを仮想マシン管理ＤＢ１０５に書き込む（図６のステップＳ２０８）。さらに、仮想リソース分割機能１０１は、先ほど計算した各仮想マシンのＣＰＵシェアと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとを仮想マシンサーバ２００の仮想マシン制御機能２０１へ送信して実際に仮想マシンが使用するハードウェアリソース２０４のシェア・サイズの変更を要求する。仮想マシンサーバ２００の仮想マシン制御機能２０１は仮想リソース分割機能１０１からデータを受信し、実際に各仮想マシン２００が使用するハードウェアリソース２０４のＣＰＵシェアと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとを変更する（図６のステップＳ２０９）。そして、仮想リソース分割機能１０１は、パソコン５００へ更新後の全ての仮想リソースのトータルＣＰＵタイム割当シェアと、トータルメモリ割当サイズと、トータルＨＤ割当サイズと、トータルＨＤ−ＩＯ帯域幅シェアと、トータルＮＷ−ＩＯ帯域幅シェアとを送信して仮想リソースのシェア・サイズの更新完了を通知し、パソコン５００はデータを受信してこれを表示し、仮想リソースの管理者に仮想リソースのシェア・サイズの更新完了を仮想リソースの管理者に通知する（図６のステップＳ２１０）。
【００３１】
＜仮想リソースの登録処理＞
この処理は、リソース分割サーバ１００が仮想リソースの管理者の要求に基づいて新たな仮想リソースの登録を行うものである。この処理は仮想リソース管理画面表示の認証処理に続いて実行される。仮想リソース管理画面表示の認証処理によって、要求発行元であるユーザは仮想リソースの管理権限を持っていることが証明されるためである。図７は仮想リソースの登録処理の流れを示している。
【００３２】
仮想リソースの管理者はパソコン５００に新たに登録する仮想リソースの仮想リソース名と、トータルメモリ割当サイズと、トータルＨＤＤ割当サイズとを入力して仮想リソースの新規登録を指示する。パソコン５００は仮想リソースの管理者からの指示を受け、仮想リソース名と、トータルメモリ割当サイズと、トータルＨＤＤ割当サイズとをリソース分割サーバ１００へ送信する（図７のステップＳ３０１）。
【００３３】
リソース分割サーバ１００の仮想リソース分割機能１０１はパソコン５００から仮想リソース名と、トータルメモリ割当サイズと、トータルＨＤＤ割当サイズとを受信する。続いて、仮想リソース分割機能１０１は、記憶領域中の仮想リソース管理ＤＢ１０６に格納されている全てのデータのトータルメモリ割当サイズと、トータルＨＤＤ割当サイズとに関して項目毎に和を取り、現在既に他の仮想マシンによって確保されているトータルメモリ割当サイズと、トータルＨＤＤ割当サイズとの各々の合計値を求める。次に、仮想リソース分割機能１０１は、仮想マシンサーバ２００のメモリ容量と、ハードディスク容量とから現在既に他の仮想マシンによって確保されているトータルメモリ割当サイズと、トータルＨＤＤ割当サイズとを各々減算することによって現在使用可能なトータルメモリ割当サイズと、トータルＨＤＤ割当サイズとを得る。そして、仮想リソース分割機能１０１は、現在使用可能なトータルメモリ割当サイズと、トータルＨＤＤ割当サイズとを、パソコン５００から受信したトータルメモリ割当サイズおよび、トータルＨＤＤ割当サイズと各々比較する（図７のステップＳ３０２）。この比較により、仮想マシンサーバ２００が仮想リソースの管理者の要求する大きさのメモリと、ハードディスクとの空き容量を持っているか否かが分かる。
【００３４】
次に、仮想マシンサーバ２００が仮想リソースの管理者の要求する大きさのメモリと、ハードディスクとの空き容量を持っている場合には（図７のステップＳ３０２が“ＯＫ”）、仮想リソース分割機能１０１は仮想リソースＩＤを１個生成し、仮想リソース管理ＤＢ１０６にデータを１件追加してパソコン５００から受信した仮想リソース名と、トータルメモリ割当サイズと、トータルＨＤＤ割当サイズと、生成した仮想リソースＩＤとを書き込む（図７のステップＳ３０３）。この後、仮想リソースの管理者は必要に応じて仮想リソースの変更処理を、パソコン５００を経由してリソース分割サーバ１００に指示する。
【００３５】
しかし、仮想マシンサーバ２００が仮想リソースの管理者の要求する大きさのメモリと、ハードディスクとのうち一方、あるいは両方の空き容量を持っていない場合には（図７のステップＳ３０２が“ＮＧ”）、仮想リソース分割機能１０１は仮想リソースの追加はできないと判断し、パソコン５００へエラーメッセージを送信する。パソコン５００はリソース分割サーバ１００からエラーメッセージを受信して表示する（図７のステップＳ３０４）。
【００３６】
＜仮想リソースの削除処理＞
この処理は、リソース分割サーバ１００が仮想リソースの管理者の要求に基づいて既存の仮想リソースの削除を行うものである。この処理は仮想リソース管理画面表示の認証処理に続いて実行される。仮想リソース管理画面表示の認証処理によって、要求発行元であるユーザは仮想リソース管理権限を持っていることが証明されるためである。
【００３７】
図８は仮想リソースの削除処理の流れを示している。仮想リソースの管理者はパソコン５００に削除対象である既存の仮想リソースの仮想リソース名を入力して仮想リソースの削除を指示する。パソコン５００は仮想リソースの管理者からの指示を受け、仮想リソース名をリソース分割サーバ１００へ送信する（図８のステップＳ４０１）。リソース分割サーバ１００の仮想リソース分割機能１０１はパソコン５００から仮想リソース名を受信し、受信した仮想リソース名に対応する仮想リソース管理ＤＢ１０６に格納されている仮想リソースＩＤを読み出し、また、受信した仮想リソース名に該当する仮想リソース管理ＤＢ１０６中のデータを記憶領域から削除する（図８のステップＳ４０２）。
【００３８】
次に、仮想リソース分割機能１０１は、先ほど仮想リソース管理ＤＢ１０６から読み出した仮想リソースＩＤに対応する仮想マシンＩＤを仮想マシン管理ＤＢ１０５から全て読み出す。そして、仮想リソース分割機能１０１は、先ほど仮想リソース管理ＤＢ１０６から読み出した仮想リソースＩＤに対応するデータを仮想マシン管理ＤＢ１０５から削除する（図８のステップＳ４０３）。
【００３９】
次に、仮想リソース分割機能１０１は、先ほど仮想マシン管理ＤＢ１０５から読み出した仮想マシンＩＤを仮想マシンサーバ２００の仮想マシン制御機能２０１へ送信し、この仮想マシンＩＤに対応する仮想マシンの削除を要求する。仮想マシンサーバ２００の仮想マシン制御機能２０１は仮想リソース分割機能１０１から仮想マシンＩＤを受信し、この仮想マシンＩＤに対応する仮想マシンを全て削除する（図８のステップＳ４０４）。
その後、必要に応じて仮想リソースの管理者はパソコン５００を経由して仮想リソース分割機能１０１に仮想リソースの変更処理を要求する。
【００４０】
＜＜仮想マシンに関する処理＞＞
＜仮想マシン利用の認証処理＞
この処理は、リソース分割サーバ１００がユーザの仮想マシンの一覧表示の要求に応じて、当該ユーザが情報の参照を拒否されていない仮想マシンの一覧情報をユーザに示し、また、ユーザが仮想マシンの起動を要求する場合には、当該仮想マシンを起動するものである。
図９は仮想マシン利用の認証処理の流れを表している。図１において、ユーザは、パソコン３００に仮想マシンの一覧表示を指示する。パソコン３００はユーザの指示を受け、ネットワークを経由してリソース分割サーバ１００へ仮想マシン情報の取得要求を送信し（図９のステップＳ５０１）、続いて、当該ユーザのユーザＩＤと、パスワードとを記憶領域から読み出して送信する（図９のステップＳ５０２）。
【００４１】
リソース分割サーバ１００の仮想マシンアクセス制御機能１０２はパソコン３００からの要求と、ユーザＩＤと、パスワードとを受信し、記憶領域中のユーザ管理ＤＢ１０３から、受信したユーザＩＤと、パスワードとに対応するグループＩＤを読み出す（図９のステップＳ５０３）。そして、仮想マシンアクセス制御機能１０２は読み出したグループＩＤに対応する仮想リソースＩＤを、記憶領域中のロール管理ＤＢ１０４から読み出す（図９のステップＳ５０４）。
【００４２】
次に、仮想マシンアクセス制御機能１０２は先ほど読み出した仮想リソースＩＤに該当する仮想マシンの仮想マシン名と、仮想マシンＩＤと、拒否ユーザＩＤとを仮想マシン管理ＤＢ１０５から読み出し（図９のステップＳ５０５）、これらの中から先ほど受信したユーザＩＤが拒否ユーザＩＤに含まれないものの仮想マシン名と、仮想マシンＩＤを全てパソコン３００へ送信する。どのユーザでも自由に仮想マシンを起動できるわけではないため、このような拒否ユーザＩＤを使用したチェックを行っている。パソコン３００は仮想マシンアクセス制御機能１０２からデータを受信して表示する（図９のステップＳ５０６）。
【００４３】
次に、ユーザはパソコン３００の表示を確認し、ここで例えば、ユーザが、仮想マシン２０２ａの起動をパソコン３００に指示したとする。パソコン３００はユーザの指示を受け、仮想マシン２０２ａの仮想マシンＩＤをリソース分割サーバ１００へ送信して仮想マシン２０２ａの起動を要求する。リソース分割サーバ１００の仮想マシンアクセス制御機能１０２はパソコン３００から仮想マシン２０２ａの仮想マシンＩＤと、起動要求とを受信し（図９のステップＳ５０７）、仮想マシンサーバ２００に仮想マシン２０２ａの仮想マシンＩＤを送信しての起動を要求する。仮想マシンサーバ２００の仮想マシン制御機能２０１は仮想マシンアクセス制御機能１０２から仮想マシン２０２ａの仮想マシンＩＤと、起動要求を受信し、仮想マシン２０２ａを起動して仮想マシン２０２ａのデスクトップ環境のデータを記憶領域から読み出してパソコン３００へ送信する（図９のステップＳ５０８）。パソコン３００は仮想マシンアクセス制御機能１０２から仮想マシン２０２ａのデスクトップ環境のデータを受信し、仮想マシン２０２ａのデスクトップ画面を表示する（図９のステップＳ５０９）。
【００４４】
＜仮想マシンの管理画面表示の認証処理＞
この処理は、仮想マシンの管理者に仮想マシンの管理者自身が管理権限を持つ仮想マシンの一覧情報を示すものである。
図１０は仮想マシンの管理画面表示の認証処理の流れを表している。図１において、仮想マシンの管理者は、パソコン４００に仮想マシンの一覧表示を指示する。パソコン４００は仮想マシンの管理者の指示を受け、ネットワークを経由してリソース分割サーバ１００へ仮想マシン情報の取得要求を送信し（図１０のステップＳ６０１）、続いて、仮想マシンの管理者のユーザＩＤと、パスワードとを記憶領域から読み出して送信する（図１０のステップＳ６０２）。
【００４５】
リソース分割サーバ１００の仮想マシンアクセス制御機能１０２はパソコン４００からの要求と、仮想マシンの管理者のユーザＩＤと、パスワードとを受信し、記憶領域中のユーザ管理ＤＢ１０３から、受信したユーザＩＤと、パスワードとに対応するグループＩＤを読み出す（図１０のステップＳ６０３）。そして、仮想マシンアクセス制御機能１０２は読み出したグループＩＤに対応する仮想マシン管理権限が“１”のもの、即ち、仮想マシンの管理権限があるものの仮想リソースＩＤを、記憶領域中のロール管理ＤＢ１０４から読み出す（図１０のステップＳ６０４）。仮想マシンの管理者は複数存在し、仮想マシンの管理者がそれぞれ異なる仮想マシンの管理を行っていることがありえるため、このような権限管理が必要となる。さらに、仮想マシンアクセス制御機能１０２はロール管理ＤＢ１０４から読み出した仮想リソースＩＤに対応する全ての仮想マシンの仮想リソースＩＤと、仮想マシンＩＤと、ＣＰＵシェアと、メモリサイズと、ＨＤＤサイズと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとを仮想マシン管理ＤＢ１０５から読み出し（図１０のステップＳ６０５）、パソコン４００へ送信する。パソコン４００は仮想マシンアクセス制御機能１０２からデータを受信し、これを表示する（図１０のステップＳ６０６）。
【００４６】
＜仮想マシンの変更処理＞
この処理は、仮想マシンの管理者が管理を許諾されている仮想マシンに対するリソースの割当を変更するものである。仮想マシンの管理画面表示の認証処理の後で、仮想マシンの管理者はパソコン４００に仮想マシンの情報の変更処理の開始を指示する。仮想マシンの管理画面表示の認証処理によって、要求発行元である仮想マシンの管理者は仮想マシン管理権限を持っていることが確認されるためである。
図１１はこの処理の流れを示している。パソコン４００は仮想マシンの管理者からの指示を受け、仮想マシンの情報の変更処理の開始要求をリソース分割サーバ１００へ送信する。
【００４７】
リソース分割サーバ１００の仮想リソース分割機能１０１はパソコン４００から仮想マシンの情報の変更処理の開始要求を受信する（図１１のステップＳ７０１）。これに対して、仮想リソース分割機能１０１はパソコン４００に当該仮想マシンの管理者が管理権限を有するすべての仮想マシンに関してリソースのシェア・サイズの指定を要求する（図１１のステップＳ７０２）。
パソコン４００はリソース分割サーバ１００の仮想リソース分割機能１０１から要求を受信し、仮想マシンの管理画面表示の認証処理の結果を基に当該仮想マシンの管理者が管理権限を有する全ての仮想マシンの仮想マシンＩＤと、ＣＰＵシェアと、メモリサイズと、ＨＤＤサイズと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとを表示し、これらの変更を仮想マシンの管理者に要求する。仮想リソースの管理者はパソコン４００の表示を参照し、必要に応じてデータをパソコン４００に入力する。パソコン４００は仮想リソースの管理者からのデータの入力を受け、全ての仮想マシンの仮想マシンＩＤと、ＣＰＵシェアと、メモリサイズと、ＨＤＤサイズと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとをリソース分割サーバ１００へ送信する（図１１のステップＳ７０３）。
【００４８】
リソース分割サーバ１００の仮想リソース分割機能１０１はパソコン４００から仮想マシンの管理者が管理権限を有する全ての仮想マシンの仮想マシンＩＤと、ＣＰＵシェアと、メモリサイズと、ＨＤＤサイズと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとを受信する。
そして、仮想リソース分割機能１０１は、受信したデータについて、先ほど読み出した仮想リソースＩＤ毎にＣＰＵシェアと、メモリサイズと、ＨＤＤサイズと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとを項目毎に加算し、各リソース毎の必要量の合計を計算する。
次に、仮想リソース分割機能１０１は受信した全ての仮想マシンＩＤに対応する仮想マシン管理ＤＢ１０５中の仮想リソースＩＤを記憶領域から読み出す。
さらに、仮想リソース分割機能１０１はリソース毎の必要量の合計が仮想リソース管理ＤＢ１０６のシェア・サイズを超えているか否かを仮想マシン管理ＤＢ１０５から読み出した仮想リソースＩＤ毎にチェックする（図１１のステップＳ７０４）。この処理は例えば、仮想リソース分割機能１０１は、受信したデータ中の１つの仮想リソースＩＤに対応するＣＰＵシェアの合計が、仮想リソース管理ＤＢ１０６中の当該仮想リソースＩＤに対応するトータルＣＰＵタイム割当シェアを超えているか否かをチェックするものである。
【００４９】
次に、リソース毎の必要量の合計が仮想リソース管理ＤＢ１０６のシェア・サイズを超えていない場合には（図１１のステップＳ７０４が“ＯＫ”）、仮想リソース分割機能１０１は受信したＣＰＵシェアと、メモリサイズと、ＨＤＤサイズと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとを受信した仮想マシンＩＤをキーにして仮想マシン管理ＤＢ１０５へ書き込む（図１１のステップＳ７０５）。
続いて、仮想リソース分割機能１０１は、受信した仮想マシンＩＤと、ＣＰＵシェアと、メモリサイズと、ＨＤＤサイズと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとを仮想マシンサーバ２００の仮想マシン制御機能２０１へ送信する。仮想マシン機能２０１は仮想リソース分割機能１０１からデータを受信し（図１１のステップＳ７０６）、以降、各々の仮想マシンは受信したＣＰＵシェアと、メモリサイズと、ＨＤＤサイズと、ＨＤ−ＩＯ帯域幅シェアと、ＮＷ−ＩＯ帯域幅シェアとの範囲内で処理を行わせる。
そして、仮想リソース分割機能１０１は、パソコン４００へ処理の完了を通知する（図１１のステップＳ７０７）。
【００５０】
しかし、リソース毎の必要量の合計が仮想リソース管理ＤＢ１０６のシェア・サイズを超えた場合には（図１１のステップＳ７０４が“ＮＧ”）、仮想リソース分割機能１０１は仮想リソースの管理者の要求は受け入れられないものであると判断し、パソコン４００へエラーメッセージを送信する。パソコン４００はリソース分割サーバ１００からエラーメッセージを受信して表示する（図１１のステップＳ７０８）。
【００５１】
＜仮想マシンの登録処理＞
この処理は、リソース分割サーバ１００が仮想マシンの管理者の要求に基づいて新たな仮想マシンの登録を行うものである。この処理は仮想マシンの管理画面表示の認証処理に続いて実行される。仮想マシンの管理画面表示の認証処理によって、要求発行元である仮想マシンの管理者は仮想マシン管理権限を持っていることが確認されるためである。図１２は仮想マシンの登録処理の流れを示している。
【００５２】
仮想マシン管理者はパソコン４００に新たに登録する仮想マシンが使用する仮想リソースの仮想リソースＩＤと、マシン名と、メモリサイズと、ＨＤＤサイズとを入力して仮想リソースの新規登録を指示する。仮想マシンの管理者は、仮想リソースＩＤを仮想マシンの管理画面表示の認証処理の結果から知ることができるものである。パソコン４００は仮想マシン管理者からの指示を受け、仮想リソースＩＤと、マシン名と、メモリサイズと、ＨＤＤサイズとをリソース分割サーバ１００へ送信する（図１２のステップＳ８０１）。
【００５３】
リソース分割サーバ１００の仮想リソース分割機能１０１はパソコン４００から仮想リソースＩＤと、マシン名と、メモリサイズと、ＨＤＤサイズとを受信する。仮想リソース分割機能１０１は、受信した仮想リソースＩＤに対応する仮想マシン管理ＤＢ１０５中の全てのデータのメモリサイズの合計と、ＨＤＤサイズの合計とをそれぞれ計算する。
次に、仮想リソース分割機能１０１は、受信した仮想リソースＩＤに対応する仮想リソース管理ＤＢ１０６中のトータルメモリ割当サイズと、トータルＨＤＤ割当サイズとを記憶領域から読み出す。
そして、仮想リソース分割機能１０１は、読み出したトータルメモリ割当サイズから先ほど計算したメモリサイズの合計を除算した結果が、受信したメモリサイズよりも大きいか否かをチェックする。読み出したトータルメモリ割当サイズから先ほど計算したメモリサイズの合計を除算した結果が受信したメモリサイズよりも大きい場合には、仮想リソース中のメモリは仮想マシンを追加しても問題ないということである。この場合にはメモリサイズと同様に、仮想リソース分割機能１０１は、読み出したトータルＨＤＤ割当サイズから先ほど計算したＨＤＤサイズの合計を除算した結果が受信したＨＤＤサイズよりも大きいか否かをチェックする（図１２のステップＳ８０２）。
【００５４】
次に、トータルＨＤＤ割当サイズから先ほど計算したＨＤＤサイズの合計を除算した結果が受信したＨＤＤサイズよりも大きい場合には、仮想リソースのＨＤＤサイズは仮想マシンを追加しても問題ないということであるので、仮想リソース分割機能１０１は、新しい仮想マシンの追加は可能であると判断し（図１２のステップＳ８０２が“ＯＫ”）、先ほど読み出したトータルメモリ割当サイズに受信したメモリサイズを加えて仮想リソース管理ＤＢ１０６に書き込み、同様に先ほど読み出したトータルＨＤＤ割当サイズに受信したＨＤＤサイズを加えて仮想リソース管理ＤＢ１０６に書き込む（図１２のステップＳ８０３）。また、仮想リソース分割機能１０１は、新たに仮想マシンＩＤを生成する。そして、仮想リソース分割機能１０１は、記憶領域中の仮想マシン管理ＤＢ１０５に、受信した仮想マシン名と、メモリサイズと、ＨＤＤサイズと、新たに生成した仮想マシンＩＤとを含むデータを追加して書き込む。さらに、仮想リソース分割機能１０１は、仮想マシンサーバ２００の仮想マシン制御機能２０１に受信した仮想マシン名と、メモリサイズと、ＨＤＤサイズと、新たに生成した仮想マシンＩＤとを送信して新たな仮想マシンの作成を要求する。仮想マシン制御機能２０１は仮想リソース分割機能１０１からデータを受信し、新しい仮想マシンを作成する（図１２のステップＳ８０４）。
【００５５】
しかし、仮想リソース管理ＤＢ１０６から読み出したトータルメモリ割当サイズから先ほど計算したメモリサイズの合計を除算した結果が受信したメモリサイズよりも小さいか、あるいは、仮想リソース管理ＤＢ１０６から読み出したトータルＨＤＤ割当サイズから先ほど計算したＨＤＤサイズの合計を除算した結果が受信したＨＤＤサイズよりも小さいかのいずれか一方、もしくは両方に該当する場合には、仮想リソース分割機能１０１は、新しい仮想マシンの追加はできないと判断し（図１２のステップＳ８０２が“ＮＧ”）、パソコン４００へエラーメッセージを送信する。パソコン４００は仮想リソース分割機能１０１からエラーメッセージを受信して表示する（図１２のステップＳ８０５）。
【００５６】
＜仮想マシンの削除処理＞
この処理は、リソース分割サーバ１００が仮想マシン管理者の要求に基づいて既存の仮想マシンの削除を行うものである。この処理は仮想マシンの管理画面表示の認証処理に続いて実行される。仮想マシンの管理画面表示の認証処理によって、要求発行元である仮想マシン管理者は仮想マシン管理権限を持っていることが確認されるためである。
【００５７】
図１３は仮想マシンの削除処理の流れを示している。仮想マシン管理者はパソコン４００に削除対象である既存の仮想マシンの仮想マシンＩＤを入力して仮想マシンの削除を指示する。パソコン４００は仮想マシン管理者からの指示を受け、仮想マシンＩＤをリソース分割サーバ１００へ送信する（図１３のステップＳ９０１）。リソース分割サーバ１００の仮想リソース分割機能１０１はパソコン４００から仮想マシンＩＤを受信し、この仮想マシンＩＤに該当する仮想マシン管理ＤＢ１０５中のデータを記憶領域から消去する（図１３のステップＳ９０２）。
【００５８】
次に、仮想リソース分割機能１０１は、受信した仮想マシンＩＤを仮想マシンサーバ２００の仮想マシン制御機能２０１へ送信し、この仮想マシンＩＤに対応する仮想マシンの削除を要求する。仮想マシンサーバ２００の仮想マシン制御機能２０１は仮想リソース分割機能１０１から仮想マシンＩＤを受信し、この仮想マシンＩＤに対応する仮想マシンを削除する（図１３のステップＳ９０３）。
その後、必要に応じて仮想マシンの管理者はパソコン４００を経由して仮想リソース分割機能１０１に仮想マシンの変更処理などをリソース分割サーバ１００に要求する。
【００５９】
以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成はこれらの実施の形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。例えば、ユーザ管理ＤＢ１０３や、ロール管理ＤＢ１０４や、仮想マシン管理ＤＢ１０５や、あるいは、仮想リソース管理ＤＢ１０６はすべてリソース分割サーバ１００の記憶領域に格納されているが、これらは仮想マシンサーバ２００にあっても良い。
【図面の簡単な説明】
【００６０】
【図１】この発明の実施形態による仮想マシン管理システムの構成を示すブロック図であるである。
【図２】従来の仮想マシンを含むシステム構成を示す図である。
【図３】この発明の基本的な考え方を表す図である。
【図４】この発明の実施形態による仮想マシン管理システムのデータ構成を示す図であるである。
【図５】同実施形態の仮想リソースの管理画面表示の認証処理の流れを表すシーケンス図である。
【図６】同実施形態の仮想リソースの変更処理の流れを表すシーケンス図である。
【図７】同実施形態の仮想リソースの登録処理の流れを表すシーケンス図である。
【図８】同実施形態の仮想リソースの削除処理の流れを表すシーケンス図である。
【図９】同実施形態の仮想マシン利用の認証処理の流れを表すシーケンス図である。
【図１０】同実施形態の仮想マシンの管理画面表示の認証処理の流れを表すシーケンス図である。
【図１１】同実施形態の仮想マシンの変更処理の流れを表すシーケンス図である。
【図１２】同実施形態の仮想マシンの登録処理の流れを表すシーケンス図である。
【図１３】同実施形態の仮想マシンの削除処理の流れを表すシーケンス図である。
【符号の説明】
【００６１】
１００…リソース分割サーバ
１０１…仮想リソース分割機能
１０２…仮想マシンアクセス制御機能
１０３…ユーザ管理ＤＢ
１０４…ロール管理ＤＢ
１０５…仮想マシン管理ＤＢ
１０６…仮想リソース管理ＤＢ
２００…仮想マシンサーバ
２０１…仮想マシン制御機能
２０２ａ、２０２ｂ…仮想マシン
２０３…ハードウェアリソース
３００、４００、５００…パソコン
４０１…ユーザ管理マスタ
４０２…ロール管理マスタ
４０３…仮想マシン管理マスタ
４０４…仮想リソース管理マスタ
【図１】
2005208999.tif 000003
【図２】
2005208999.tif 000004
【図３】
2005208999.tif 000005
【図４】
2005208999.tif 000006
【図５】
2005208999.tif 000007
【図６】
2005208999.tif 000008
【図７】
2005208999.tif 000009
【図８】
2005208999.tif 000010
【図９】
2005208999.tif 000011
【図１０】
2005208999.tif 000012
【図１１】
2005208999.tif 000013
【図１２】
2005208999.tif 000014
【図１３】
2005208999.tif 000015