(57)【要約】【課題】サーバーの仮想マシンの構成数を増やす方法を提供することを目的とする。【解決手段】クライアント管理プラットフォームからログアウトするという情報を受信すると、サーバーのリソース利用率及び仮想マシンに配分したリソースの利用率を検出し、サーバーのリソース利用率が第一臨界値より大きいかどうかを判断し、サーバーのリソース利用率が第一臨界値より大きい場合、仮想マシンのリソース利用率が第二臨界値より小さいかどうかを判断し、仮想マシンのリソース利用率が第二臨界値より小さい場合、仮想マシンのリソース利用率と他の予定した臨界値と大小関係に基づいて、仮想マシンのアイドルリソースを解放して新しい仮想マシンを生成し、クライアント管理プラットフォームに再ログインしたという情報を受信すると、仮想マシンが解放したリソースを仮想マシンに返還する。【選択図】図３
2013171582.tif 000002
【特許請求の範囲】
【請求項１】
サーバーがネットワークによってクライアントコンピュータに接続されるサーバーの仮想マシンの構成数を増やす方法であって、
前記クライアントコンピュータが前記サーバーが提供したユーザー管理プラットフォームからログアウトしたという情報を受信すると、前記サーバーのリソース利用率及び前記サーバーが前記クライアントコンピュータの仮想マシンに配分したリソースの利用率を検出するステップと、
前記サーバーのリソース利用率が第一臨界値より大きいかどうかを判断するステップと、
前記サーバーのリソース利用率が前記第一臨界値より大きい場合、前記仮想マシンのリソース利用率が第二臨界値より小さいかどうかを判断するステップと、
前記仮想マシンのリソース利用率が前記第二臨界値より小さい場合、前記仮想マシンのリソース利用率と他の予定した臨界値との大小関係に基づいて、前記仮想マシンの、対応する予定比率のアイドルリソースを解放して、サーバーによって新しい仮想マシンを生成するステップと、
前記クライアントコンピュータが前記ユーザー管理プラットフォームに再ログインしたという情報を受信すると、前記仮想マシンが解放した全てのリソースを前記仮想マシンに返還するステップと、
を備えることを特徴とするサーバーの仮想マシンの構成数を増やす方法。
【請求項２】
前記サーバーのリソース利用率が前記第一臨界値以下である場合、前記サーバーの残りのリソースを利用して、新しい仮想マシンを生成するステップをさらに備えることを特徴とする請求項１に記載のサーバーの仮想マシンの構成数を増やす方法。
【請求項３】
前記仮想マシンのリソース利用率が前記第二臨界値以上である場合、前記仮想マシンのアイドルリソースを解放しないステップをさらに備えることを特徴とする請求項１又は請求項２に記載のサーバーの仮想マシンの構成数を増やす方法。
【請求項４】
前記仮想マシンのリソース利用率と他の予定した臨界値との大小関係に基づいて、前記仮想マシンの、対応する予定比率のアイドルリソースを解放して、サーバーによって新しい仮想マシンを生成するステップにおいて、
前記仮想マシンのリソース利用率が前記第二臨界値より小さいが、第三臨界値より大きい場合、前記仮想マシンの第一予定比率のアイドルリソースを解放して、前記サーバーによって新しい仮想マシンを生成し、
前記仮想マシンのリソース利用率が前記第三臨界値以下である場合、前記仮想マシンの第二予定比率のアイドルリソースを解放して、前記サーバーによって新しい仮想マシンを生成することを特徴とする請求項１に記載のサーバーの仮想マシンの構成数を増やす方法。
【請求項５】
前記第一予定比率は前記第二予定比率より小さいことを特徴とする請求項４に記載のサーバーの仮想マシンの構成数を増やす方法。
【請求項６】
前記仮想マシンのリソース利用率は、前記サーバーが前記仮想マシンに配分したＣＰＵ利用率、内部メモリー利用率、磁気ディスク利用率及びネットワーク利用率を含むことを特徴とする請求項１に記載のサーバーの仮想マシンの構成数を増やす方法。
【請求項７】
前記仮想マシンのリソース利用率が前記第二臨界値より小さいかどうかを判断することは、前記仮想マシンに配分されたＣＰＵ、内部メモリー、磁気ディスク及びネットワークのいずれかの１つのリソース利用率が、前記第二臨界値より小さいかどうかを判断することであることを特徴とする請求項６に記載のサーバーの仮想マシンの構成数を増やす方法。
【請求項８】
前記仮想マシンのリソース利用率が前記第二臨界値より小さいかどうかを判断することは、仮想マシンに配分されたＣＰＵ、内部メモリー、磁気ディスク及びネットワークのそれぞれのリソース利用率が、前記第二臨界値より小さいかどうかを判断することであることを特徴とする請求項６に記載のサーバーの仮想マシンの構成数を増やす方法。
【請求項９】
サーバーがネットワークによってクライアントコンピュータに接続されるサーバーの仮想マシンの構成数を増やす方法であって、
前記クライアントコンピュータがユーザー管理プラットフォームからログアウトしたという情報を受信すると、前記サーバーのリソース利用率及び前記サーバーが前記クライアントコンピュータの仮想マシンに配分したリソースの利用率を検出するステップと、
前記サーバーのリソース利用率が第一臨界値より大きいかどうかと判断するステップと、
前記サーバーのリソース利用率が前記第一臨界値より大きい場合、前記仮想マシンのリソース利用率が第二臨界値より小さいかどうかと判断するステップと、
前記仮想マシンのリソース利用率が前記第二臨界値より小さい場合、前記仮想マシンの予定比率のアイドルリソースを解放して、前記サーバーによって新しい仮想マシンを生成するステップと、
を備えることを特徴とするサーバーの仮想マシンの構成数を増やす方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバーの仮想マシンの制御方法に関するものであり、特にサーバーの仮想マシンの構成数を増やす方法に関するものである。
【背景技術】
【０００２】
仮想マシン（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ、ＶＭ）とは、ソフトウェアを介して、エミュレートするもので、完全なハードウェアのシステム機能を持つ。サーバーに仮想マシンを設置することにより、1つのコンピュータ上で一台又は複数台のサーバーをエミュレートする（即ち、前記仮想マシンに複数のオペレーティングシステム（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）をインストールする）ことができる。また、各仮想マシンは、１つのＩＰアドレスを有し、このＩＰアドレスによって、クライアントコンピュータ上でサーバーに接続され、仮想マシンに対して起動、シャットダウン又は削除などの動作を行う。
【０００３】
しかし、ユーザにとって、１つのサーバーにいかに大量の仮想マシンを設置して、サーバーの機能を維持しながらコストを削減するかが課題であり、この課題を解決するためには、サーバーのリソースを効率的に利用しなければならない。そこで、現在、新しい仮想マシンを作成する際には、どのようにサーバーの残りのリソース（例えば、ＣＰＵ、磁気ディスク、内部メモリー）を利用するかを考慮するが、既に作成された仮想マシンに占有されたリソースは、ある時点又はある時間範囲でアイドル状態にある可能性があるため、リソースが十分に利用されない場合がある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
以上の問題点に鑑みて、本発明は、サーバーによって提供された有限のリソースを利用して、仮想マシンの構成数を増やすことができるサーバーの仮想マシンの構成数を増やす方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明に係るサーバーの仮想マシンの構成数を増やす方法は、サーバーがネットワークによってクライアントコンピュータに接続される。前記クライアントコンピュータが前記サーバーが提供したユーザー管理プラットフォームからログアウトしたという情報を受信すると、前記サーバーのリソース利用率及び前記サーバーが前記クライアントコンピュータの仮想マシンに配分したリソースの利用率を検出するステップと、前記サーバーのリソース利用率が第一臨界値より大きいかどうかを判断するステップと、前記サーバーのリソース利用率が前記第一臨界値より大きい場合、前記仮想マシンのリソース利用率が第二臨界値より小さいかどうかを判断するステップと、前記仮想マシンのリソース利用率が前記第二臨界値より小さい場合、前記仮想マシンのリソース利用率と他の予定した臨界値との大小関係に基づいて、前記仮想マシンの、対応する予定比率のアイドルリソースを解放して、サーバーによって新しい仮想マシンを生成するステップと、前記クライアントコンピュータが前記ユーザー管理プラットフォームに再ログインしたという情報を受信すると、前記仮想マシンが解放した全てのリソースを前記仮想マシンに返還するステップと、を備える。
【０００６】
また、本発明に係るサーバーの仮想マシンの構成数を増やす方法は、サーバーがネットワークによってクライアントコンピュータに接続される。前記クライアントコンピュータがユーザー管理プラットフォームからログアウトしたという情報を受信すると、前記サーバーのリソース利用率及び前記サーバーが前記クライアントコンピュータの仮想マシンに配分したリソースの利用率を検出するステップと、前記サーバーのリソース利用率が第一臨界値より大きいかどうかと判断するステップと、前記サーバーのリソース利用率が前記第一臨界値より大きい場合、前記仮想マシンのリソース利用率が第二臨界値より小さいかどうかと判断するステップと、前記仮想マシンのリソース利用率が前記第二臨界値より小さい場合、前記仮想マシンの予定比率のアイドルリソースを解放して、前記サーバーによって新しい仮想マシンを生成するステップと、を備える。
【発明の効果】
【０００７】
従来の技術に比べて、本発明のサーバーの仮想マシンの構成数を増やす方法は、サーバーが新しい仮想マシンを生成する必要がある場合、ログインせずに利用率が低い仮想マシンのアイドルリソースを十分に利用して仮想マシンの構成数を増やすことができると共に、既に生成された仮想マシンの正常な動作に影響を与えない。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態に係るサーバーの仮想マシンの構成数を増やす方法の適用環境を示す図である。
【図２】本発明の実施形態に係るサーバーの仮想マシンの構成数を増やす方法のネットワーク環境を示す図である。
【図３】本発明の実施形態に係るサーバーの仮想マシンの構成数を増やす方法のフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照して、本発明の実施形態について説明する。
【００１０】
図１は、本発明の実施形態に係るサーバーの仮想マシンの構成数を増やす方法の適用環境を示す図である。サーバーの仮想マシンの構成数を増やす方法は、サーバー１に適用される。サーバー１は、ハードウェア１３と、ハイパーバイザ（Ｈｙｐｅｒｖｉｓｏｒ）１２と、ユーザー管理プラットフォーム１１と、ハイパーバイザ１２によって生成された１つ又は複数の仮想マシン１０と、を備える。本実施形態において、サーバー１は、３つの仮想マシン１０を備える。
【００１１】
ハイパーバイザ１２は、サーバー１とサーバー１のオペレーティングシステムとの間で実行されるソフトウェア層であり、複数のオペレーティングシステム及びアプリケーションは、このハイパーバイザ１２によって、サーバー１上でハードウェア１３を共有することができる。ハイパーバイザ１２は、サーバー１内の、例えば、ＣＰＵ、磁気ディスク、内部メモリーなどの全てのハードウェア１３にアクセスすることができる。サーバー１を起動してハイパーバイザ１２を実行すると、ハイパーバイザ１２は、各仮想マシン１０に適量のリソース（例えば、ＣＰＵ、磁気ディスク、内部メモリーなどを含む）をそれぞれ配分して、仮想マシン１０の実行を確保する。
【００１２】
ユーザー管理プラットフォーム１１は、ユーザーによりサーバー１を遠隔アクセスして、仮想マシン１０に対して申請、起動、シャットダウン又は削除などの動作を行うために用いられる。
【００１３】
図２は、本発明の実施形態に係るサーバーの仮想マシンの構成数を増やす方法のネットワーク環境を示す図である。ＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）サーバー４は、ネットワーク２を介してサーバー１と互いに通信する。クライアントコンピュータ３もネットワーク２を介してサーバー１と互いに通信する。ネットワーク２は、インターネット、ローカルエリアネットワーク又は通信ネットワークであっても良い。
【００１４】
前記ＤＨＣＰサーバー４は、各サーバー１の仮想マシン１０にＩＰアドレスを割り当てる。ハイパーバイザ１２は、サーバー１のリソース利用率（例えば、ＣＰＵのリソース利用率、磁気ディスクのリソース利用率、内部メモリーのリソース利用率などを含む）、各仮想マシン１０の動作状態及びリソース利用率、及びクライアントコンピュータ３の、ユーザー管理プラットフォーム１１へのログイン状態又は管理プラットフォーム１１からのログアウト状態を検出する。ハイパーバイザ１２は、クライアントコンピュータ３がクライアント管理プラットフォーム１１からログアウトし、サーバー１のリソースが不足し、且つクライアントコンピュータ３の仮想マシン１０のに配分されたリソースの未利用率が高いことを検出した場合、仮想マシン１０の一部分又は全ての未利用状態のリソースを解放する。また、ハイパーバイザ１２は、クライアントコンピュータ３がユーザー管理プラットフォーム１１に再ログインしたことを検出すると、仮想マシン１０が解放した全てのリソースを仮想マシン１０に返還する。
【００１５】
図３は、本発明の実施形態に係るサーバーの仮想マシンの構成数を増やす方法のフローチャートであり、以下のステップを備える。また、本実施形態において、サーバーの仮想マシンの構成数を増やす方法は、全てのクライアントコンピュータ３がユーザー管理プラットフォーム１１にログインすることによって、仮想マシン１０に対して動作することを前提とする。
【００１６】
ステップＳ３１では：ハイパーバイザ１２が、クライアントコンピュータ３がユーザー管理プラットフォーム１１からログアウトしたという情報を受信すると、サーバー１のリソース利用率（例えば、ＣＰＵ、磁気ディスク、内部メモリー及びネットワーク等のリソースの利用率を含む）及びクライアントコンピュータ３の仮想マシン１０に配分されたリソースの利用率を検出する。ここで、サーバー１のリソース利用率とは、サーバー１による仮想マシン１０の生成に使用されたリソースとサーバー１の、仮想マシン１０が生成される以前のリソースとの比率である。また、仮想マシン１０のリソース利用率とは、仮想マシン１０が動作する過程に使用されたリソースとサーバー１によって仮想マシン１０に配分されたリソースとの比率である。
【００１７】
ステップＳ３２では：ハイパーバイザ１２は、サーバー１のリソース利用率が第一臨界値（例えば：８０％）より大きいかどうかを判断する。サーバー１のリソース利用率が第一臨界値以下（小さいか又は等しい）である場合、ハイパーバイザ１２は、サーバー１のリソースが十分であると判断しステップＳ３３を実行し、サーバー１のリソース利用率が第一臨界値より大きい場合、ハイパーバイザ１２は、サーバー１のリソースが不足であると判断し、ステップＳ３４を実行する。
【００１８】
ステップＳ３３では：サーバー１のアイドルリソースを使用して、新しい仮想マシン１０を生成し、プロセスを終了する。
【００１９】
他の実施形態において、第一臨界値は複数あっても良い。具体的には、サーバー１のリソース利用率と予定した第一臨界値との大小関係を判断することは、サーバー１のＣＰＵ、内部メモリー、磁気ディスク及びネットワークのいずれかの１つのリソース利用率とそれぞれ予定した第一臨界値との大小関係を判断することである。例えば、サーバー１のＣＰＵのリソース利用率が５０％より大きいかどうか、或いは内部メモリーのリソース利用率が６０％より大きいかどうか、或いは磁気ディスクのリソース利用率が５５％より大きいかどうか、或いはネットワークのリソース利用率が４５％より大きいかどうかを判断する。この時、予定した第一臨界値は、それぞれ５０％、６０％、５５％、４５％である。
【００２０】
また、他の実施形態において、サーバー１のリソース利用率と予定した第一臨界値との大小関係を判断することは、サーバー１のＣＰＵのリソース利用率、内部メモリーのリソース利用率、磁気ディスクのリソース利用率及びネットワークのリソース利用率と、それぞれ予定した第一臨界値と、の大小関係を判断することを含むことができ、例えば、サーバー１のＣＰＵのリソース利用率が５０％より大きいかどうかを判断することと、内部メモリーのリソース利用率が６０％より大きいかどうかを判断することと、磁気ディスクのリソース利用率が５５％より大きいかどうかを判断することと、ネットワークのリソース利用率が４５％より大きいかどうかを判断することと、を含む。
【００２１】
ステップＳ３４では：ハイパーバイザ１２は、クライアントコンピュータ３の仮想マシン１０に配分されたリソースの利用率が第二臨界値（例えば、６０％）より小さいかどうかを判断する。本実施形態において、仮想マシン１０のリソース利用率と第二臨界値との大小関係を判断することは、仮想マシン１０に配分されたＣＰＵ、内部メモリー、磁気ディスク及びネットワークのいずれかの１つのリソース利用率と第二臨界値との大小関係を判断することである。例えば、仮想マシン１０に配分されたＣＰＵのリソース利用率が６０％より小さいかどうか、或いは内部メモリーのリソース利用率が６０％より小さいかどうか、或いは磁気ディスクのリソース利用率が６０％より小さいかどうか、或いはネットワークのリソース利用率が６０％より小さいかどうかを判断する。
【００２２】
他の実施形態において、仮想マシン１０に配分されたリソース利用率と第二臨界値との大小関係を判断することは、仮想マシン１０に配分されたＣＰＵのリソース利用率、内部メモリーのリソース利用率、磁気ディスクのリソース利用率及びネットワークのリソース利用率と第二臨界値との大小関係を判断することを含むことができる。例えば、仮想マシン１０に配分されたＣＰＵのリソース利用率、内部メモリーのリソース利用率、磁気ディスクのリソース利用率及びネットワークのリソース利用率が、全て６０％より小さいかどうかを判断する。
【００２３】
他の実施形態において、第二臨界値は複数あっても良い。具体的な説明は、第一臨界値と同様であるため、ここでは省略する。
【００２４】
上述したステップＳ３４において、クライアントコンピュータ３の仮想マシン１０に配分されたリソースの利用率が第二臨界値以上である（例えば、ＣＰＵのリソース利用率が６０％以上である）場合、仮想マシン１０はずっと動作し続けていると判断しステップＳ３５を実行し、クライアントコンピュータ３の仮想マシン１０に配分されたリソースの利用率が第二臨界値より小さい（例えば、ＣＰＵのリソース利用率が６０％より小さい）場合、ステップＳ３６を実行する。
【００２５】
ステップＳ３５では：ハイパーバイザ１２は、仮想マシン１０のアイドルリソースを解放せずに仮想マシン１０を正常に動作させて、プロセスはここで終了する。
【００２６】
ステップＳ３６では：ハイパーバイザ１２が、仮想マシン１０のリソース利用率と他の予定した臨界値と大小関係に基づいて、仮想マシン１０の一部分又は全てのアイドルリソースを解放することで、サーバーによって新しい仮想マシン１０を生成する。例えば、仮想マシン１０のリソース利用率が第二臨界値より小さい（例えば、ＣＰＵの利用率が６０％より小さい）が、第三臨界値より大きい（例えば、ＣＰＵの利用率が２０％より大きい）場合、仮想マシン１０の動作の際に、比較的少ないリソースが必要であることを意味し、仮想マシン１０の第一予定比率（例えば、５０％）のアイドルリソースを解放して、サーバー１によって新しい仮想マシン１０を生成する。これにより、仮想マシン１０が正常に動作できるだけでなく、リソースの浪費を避けることができる。また、仮想マシン１０のリソース利用率が第三臨界値以下である（例えば、ＣＰＵの利用率が２０％以下である）場合、仮想マシン１０のアイドルリソースは比較的に多いと判断されて、仮想マシン１０のアイドルリソースの第二予定比率（例えば、８０％又は１００％）を解放することで、サーバー１によって新しい仮想マシン１０を生成する。本実施形態において、第一予定比率は第二予定比率より小さい。ここで、第二臨界値及び第三臨界値を例として、仮想マシン１０のアイドルリソースを解放することを説明したが、サーバー１の管理者は、必要に応じて更に多くの臨界値を設定して、仮想マシン１０のアイドルリソースを解放することができる。
【００２７】
他の実施形態として、上述したステップＳ３６において、ハイパーバイザ１２は、仮想マシン１０のリソース利用率と予定した臨界値との大小関係を判断せず、仮想マシン１０の予定比率（例えば、５０％）のアイドルリソースを直接解放して、新しい仮想マシン１０を生成しても良い。
【００２８】
また、他の実施形態として、サーバー１が新しい仮想マシン１０を生成する際、既に生成された仮想マシン１０から解放されたアイドルリソースだけでなく、サーバー１自身が全ての仮想マシン１０を生成した後の残りのリソースを使用しても良い。
【００２９】
ステップ３７では：ハイパーバイザ１２は、クライアントコンピュータ３がユーザー管理プラットフォーム１１に再ログインしたという情報を受信するかどうかを監視する。ハイパーバイザ１２が、クライアントコンピュータ３がユーザー管理プラットフォーム１１に再ログインしたという情報を受信しなかった場合、ハイパーバイザ１２は、クライアントコンピュータ３がユーザー管理プラットフォーム１１に再ログインしたという情報を受信するかどうかを監視し続ける。ハイパーバイザ１２が、クライアントコンピュータ３がユーザー管理プラットフォーム１１に再ログインしたという情報を受信した場合、ステップＳ３８を実行する。
【００３０】
ステップＳ３８では：ハイパーバイザ１２は、クライアントコンピュータ３の仮想マシン１０に解放された全てのアイドルリソースを返還する。他の実施形態において、ステップＳ３７及びステップＳ３８は省略することもできる。
【００３１】
以上の実施形態は、１つの仮想マシン１０のアイドルリソースを解放することを例として説明したが、複数の仮想マシン１０を解放できるアイドルリソースを有する場合、ハイパーバイザ１２は、それぞれ各仮想マシン１０のアイドルリソースを解放したという情報を記録し、全ての解放したリソースの総量と、サーバー１の現在の仮想マシン１０を生成した後に残ったアイドルリソースとを共に組み合わせた後、新しい仮想マシン１０を生成する。これにより、サーバー１の生成された仮想マシン１０のアイドルリソースが十分に利用されることを通して、サーバー１によって提供された有限のリソースを利用して仮想マシンの構成数を増やすことができると共に、既に生成した仮想マシン１０の正常な動作に影響を与えない。
【００３２】
以上、本発明を実施形態に基づいて具体的に説明したが、本発明は、上述の実施形態に限定されるものではなく、その要旨を逸脱しない範囲において、種々の変更が可能であることは勿論であって、本発明の保護範囲は、添付の特許請求の範囲によって決まる。
【符号の説明】
【００３３】
１  サーバー
２  ネットワーク
３  クライアントコンピュータ
４  動的ホスト構成プロトコルサーバー
１０  仮想マシン
１１  ユーザー管理プラットフォーム
１２  ハイパーバイザ
１３  ハードウェア
【図１】
2013171582.tif 000003
【図２】
2013171582.tif 000004
【図３】
2013171582.tif 000005