(57)【要約】【課題】サーバーの中のリソース利用率のレベルに基づいて、バーチャルマシンを自動的に増加又は減少させることができるバーチャルマシンを自動的に拡充する方法を提供する。【解決手段】本発明に係るバーチャルマシンの配置方法は、テンプレート情報を設定し、第一バーチャルマシンのバーチャルネットワークカードのＭＡＣアドレス、ＩＰアドレス及びメモリ、ＣＰＵ、ハードディスク、ネットワークなどのリソースを設定することを備えるステップと、設定されたテンプレート情報に基づいて、第一バーチャルマシンを生成するステップと、ネットワーククラスタのリソース利用率が第一設定値より高い場合、設定されたテンプレート情報に基づいて、１つ又は複数の新しいバーチャルマシンを生成するステップと、ネットワーククラスタのリソース利用率が第二設定値より低い場合、１つ又は複数のバーチャルマシンを停止させるステップと、を備える。【選択図】図３
2013168140.tif 000002
【特許請求の範囲】
【請求項１】
第一バーチャルマシンを生成するためのテンプレート情報を設定し、該第一バーチャルマシンのバーチャルネットワークカードのメディアアクセスコントロール（ＭＡＣ）アドレス、ＩＰアドレス及び該第一バーチャルマシンに割り当てられたメモリ、ＣＰＵ、ハードディスク、ネットワークなどのリソースを設定することを備えるステップと、
設定されたテンプレート情報に基づいて、前記第一バーチャルマシンを生成し且つ該第一バーチャルマシンをネットワーククラスタに加入するステップと、
ネットワーククラスタのリソース利用率が第一設定値より高い場合、第一バーチャルマシンに設定されたテンプレート情報に基づいて、１つ又は複数の新しいバーチャルマシンを生成し且つ該新しいバーチャルマシンを、ネットワーククラスタに加入した後、新しいバーチャルマシンを起動させて、ネットワーククラスタの利用可能なリソース量を増加させることによって、ネットワーククラスタのリソース利用率を減少させるステップと、
ネットワーククラスタのリソース利用率が第二設定値より低い場合、前記ネットワーククラスタの中の１つ又は複数のバーチャルマシンの起動を停止して、ネットワーククラスタの利用可能なリソース量を減らすことによって、ネットワーククラスタのリソース利用率を向上させるステップと、
を備えることを特徴とするバーチャルマシンの配置方法。
【請求項２】
前記ネットワーククラスタは、１つ又は複数のサーバー及び複数のバーチャルマシンを備え、複数のバーチャルマシンは、同じサーバー又は異なるサーバーにそれぞれに動作されることが可能であることを特徴とする請求項１に記載のバーチャルマシンの配置方法。
【請求項３】
前記ネットワーククラスタのリソース量は、ネットワーククラスタの中の全てのバーチャルマシンのＣＰＵのリソース量、メモリのリソース量、ハードディスクのリソース量及びネットワークのリソース量を含み、ネットワーククラスタのリソース利用率は、ネットワーククラスタの中の各バーチャルマシンのＣＰＵのリソース利用率、メモリのリソース利用率、ハードディスクのリソース利用率及びネットワークのリソース利用率を含むことを特徴とする請求項２に記載のバーチャルマシンの配置方法。
【請求項４】
前記ネットワーククラスタの中の１つ又は複数のバーチャルマシンの起動の停止、例えば該ネットワーククラスタからバーチャルマシンを減少する或いは、該バーチャルマシンにシャットダウン操作を実行することを特徴とする請求項１に記載のバーチャルマシンの配置方法。
【請求項５】
前記第一バーチャルマシンに設定されたテンプレート情報に基づいて、１つ又は複数の新しいバーチャルマシンを生成し、該新しいバーチャルマシンに第一バーチャルマシンと同様に割り当てられたＣＰＵリソース、メモリリソース、ハードディスクリソース及びネットワークリソースを割り当てることを特徴とする請求項１に記載のバーチャルマシンの配置方法。
【請求項６】
バーチャルマシンのＩＰアドレスは、動的ホスト構成プロトコル（ＤＨＣＰ）サーバーによって割り当てられ、バーチャルマシンのメディアアクセスコントロールアドレスは、ネットワーククラスタの中のサーバーに実装されるハイパーバイザによって生成されることを特徴とする請求項１に記載のバーチャルマシンの配置方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バーチャルマシンの配置方法に関するものである。
【背景技術】
【０００２】
バーチャルマシン（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）は、ソフトウェアを介してシミュレーションされた完全なハードウェアシステムの機能を有しており、完全に隔離された環境で動作するコンピュータシステムである。サーバー内にバーチャルマシンを実装することにより、該サーバーによって、１つ又は複数のバーチャルサーバーをシミュレートする（即ち、バーチャルマシンに複数のオペレーティングシステムを実装する）ことができる。これにより、サーバー設備を購入するコストを削減することができる。
【０００３】
しかし、一般的に、サーバーのリソースの使用量が大幅に増加した場合、バーチャルマシンの動作に影響を与える可能性があり、リソースが不足した場合、バーチャルマシンが損傷する可能性があるため、使用に不便である。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
前記課題を解決するために、本発明は、サーバーの中のリソース利用率のレベルに基づいて、バーチャルマシンを自動的に増加又は減少させることができるバーチャルマシンの配置(ｄｅｐｌｏｙ)方法を提供する。
【課題を解決するための手段】
【０００５】
本発明に係るバーチャルマシンの配置方法は、第一バーチャルマシンを生成するためのテンプレート情報を設定し、該第一バーチャルマシンのバーチャルネットワークカードのメディアアクセスコントロール（ＭＡＣ）アドレス、ＩＰアドレス及び該第一バーチャルマシンに割り当てられたメモリ、ＣＰＵ、ハードディスク、ネットワークなどのリソースを設定することを備えるステップと、設定されたテンプレート情報に基づいて、前記第一バーチャルマシンを生成し且つ該第一バーチャルマシンをネットワーククラスタに加入するステップと、ネットワーククラスタのリソース利用率が第一設定値より高い場合、該第一バーチャルマシンに設定されたテンプレート情報に基づいて、１つ又は複数の新しいバーチャルマシンを生成し且つ該新しいバーチャルマシンをネットワーククラスタに加入した後、該新しいバーチャルマシンを起動して、ネットワーククラスタの利用可能なリソース量を増加させることによって、ネットワーククラスタのリソース利用率を減少させるステップと、ネットワーククラスタのリソース利用率が第二設定値より低い場合、前記ネットワーククラスタの中の１つ又は複数のバーチャルマシンの起動を停止して、ネットワーククラスタの利用可能なリソース量を減らすことによって、ネットワーククラスタのリソース利用率を向上させるステップと、を備える。
【発明の効果】
【０００６】
従来の技術と比べ、本発明に係るバーチャルマシンの配置方法は、ネットワーククラスタのリソース利用率が高い場合、バーチャルマシンを自動的に増加して、ネットワーククラスタの利用可能なリソース量を増加させることによって、ネットワーククラスタのリソース利用率を減少させることができる。また、ネットワーククラスタのリソース利用率が低い場合、バーチャルマシンを自動的に減少させて、ネットワーククラスタの利用可能なリソース量を減らすことによって、ネットワーククラスタのリソース利用率を向上させることができる。
【図面の簡単な説明】
【０００７】
【図１】本発明の実施形態に係るバーチャルマシンの配置方法のサーバーのブロック図である。
【図２】本発明の実施形態に係るバーチャルマシンの配置方法のネットワーク環境を示す図である。
【図３】本発明の実施形態に係るバーチャルマシンの配置方法のフローチャートである。
【発明を実施するための形態】
【０００８】
以下、図面を参照して、本発明の実施形態について説明する。
【０００９】
図１を参照すると、本実施形態に係るバーチャルマシンの配置方法は、サーバー１００に応用される。該サーバー１００は、ハードウェア１２と、ハイパーバイザ（Ｈｙｐｅｒｖｉｓｏｒ）１１と、該ハイパーバイザ１１によって生成された１つ又は複数のバーチャルマシン１０と、を備える。本実施形態において、サーバー１００は、３つのバーチャルマシン１０を備える。ハイパーバイザ１１は、サーバー１００とサーバー１００のオペレーティングシステムとの間で実行されるソフトウェア層であり、複数のオペレーティングシステム及びアプリケーションは、このハイパーバイザ１１によって、サーバー１００上でハードウェア１２を共有することができる。ハイパーバイザ１１は、サーバー１００内の、例えば、ＣＰＵ、ハードディスク、メモリなど全てのハードウェア１２にアクセスすることができる。サーバー１００を起動し且つハイパーバイザ１１を実行すると、ハイパーバイザ１１は、各バーチャルマシン１０に適量のリソース（例えば、ＣＰＵリソース、ハードディスクリソース、メモリリソース及びネットワークリソースなどを含む）をそれぞれ配分して、バーチャルマシン１０の実行を確保する。
【００１０】
図２を参照すると、動的ホスト構成プロトコル（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ、ＤＨＣＰ）サーバー１は、ネットワーク２０を介して、ネットワーククラスタ２とネットワークサーバー３とに通信し、ネットワーククラスタ２及びネットワークサーバー３もネットワーク２０を介して互いに通信する。また、ネットワークサーバー３は、スタンドアロンサーバ又はネットワーククラスタであっても良い。また、ネットワーク２０は、ワイドエリアネットワーク（例えば、インターネット）又はローカルエリアネットワークであっても良い。
【００１１】
本実施形態において、ネットワーククラスタ２は、１つ又は複数のサーバー１００及び複数のバーチャルマシン１０を備える。複数のバーチャルマシン１０は、同じサーバー１００又は異なるサーバー１００にそれぞれに動作されても良い。例えば、図２に示すように、２つのバーチャルマシン１０は、１つのサーバー１００によって生成され、他の１つのバーチャルマシン１０は、他の１つのサーバー１００によって生成される。ネットワーククラスタ２は、一台のマシンに相当し、その内部の各サーバー１００間、各バーチャルマシン１０間又はサーバー１００とバーチャルマシン１０との間において、ネットワーク２０を介して通信することができる。ネットワーククラスタ２の中の各サーバー１００は、図１に示すようなハードウェア１２及びハイパーバイザ１１をそれぞれ備える。
【００１２】
動的ホスト構成プロトコルサーバー１は、ネットワーククラスタ２の中の各サーバー１００及びバーチャルマシン１０にＩＰアドレスを割り当てる。ネットワーククラスタ２の中の１つ又は複数のハイパーバイザ１１は、ネットワーククラスタ２のリソース利用率（例えば、ＣＰＵのリソース利用率、ハードディスクのリソース利用率、メモリのリソース利用率及びネットワークのリソース利用率などを含む）を監視する。ネットワーククラスタ２のリソース利用率が設定値より高い場合、ネットワーククラスタ２の中のハイパーバイザ１１は、１つのバーチャルマシン１０を自動的に生成する。これにより、ネットワーククラスタ２の利用可能なリソース量を増加させ、ネットワーククラスタ２のリソース利用率を減らす。また、ネットワーククラスタ２のリソース利用率が設定値より低い場合、ネットワーククラスタ２の中のハイパーバイザ１１は、１つのバーチャルマシン１０を自動的に減少させる（例えば、１つのバーチャルマシン１０を削除又は停止する）。これにより、ネットワーククラスタ２の利用可能なリソース量を減らし、ネットワーククラスタ２のリソース利用率を向上させることができる。
【００１３】
ネットワーククラスタ２のリソース量は、ネットワーククラスタ２の中の全てのバーチャルマシン１０のＣＰＵのリソース量、メモリのリソース量、ハードディスクのリソース量及びネットワークのリソース量を含む。ネットワーククラスタ２のリソース利用率は、ネットワーククラスタ２の中の各バーチャルマシン１０のＣＰＵのリソース利用率、メモリのリソース利用率、ハードディスクのリソース利用率及びネットワークのリソース利用率を含む。例えば、本実施形態において、ネットワーククラスタ２は、３つのバーチャルマシン１０を備え、３つのバーチャルマシン１０のＣＰＵの総和は、ネットワーククラスタ２の利用可能なＣＰＵのリソース総量であり、３つのバーチャルマシン１０のメモリ容量の総和は、ネットワーククラスタ２の利用可能なメモリのリソース総量であり、３つのバーチャルマシン１０のハードディスク容量の総和は、ネットワーククラスタ２の利用可能なハードディスクのリソース総量であり、３つのバーチャルマシン１０のネットワークの帯域幅の総和は、ネットワーククラスタ２の利用可能なネットワークのリソースの総量である。ネットワーククラスタ２のＣＰＵのリソース利用率、メモリのリソース利用率、ハードディスクのリソース利用率及びネットワークのリソース利用率は、ネットワーククラスタ２のＣＰＵの使用量、メモリの使用量、ハードディスクの使用量及びネットワークの使用量をネットワーククラスタ２のＣＰＵのリソース総量、メモリのリソース総量、ハードディスクのリソース総量及びネットワークのリソース総量でそれぞれ割った値にそれぞれに等しい。バーチャルマシン１０を増加すると、ネットワーククラスタ２のリソース総量は増加するため、ネットワーククラスタ２のリソース利用率を減少させることができる。また、バーチャルマシン１０を減らすと、ネットワーククラスタ２のリソース総量は減少するため、ネットワーククラスタ２のリソース利用率を向上させることができる。
【００１４】
図３を参照すると、本発明の実施形態に係るバーチャルマシンの配置方法は、下記のステップＳ３１〜ステップＳ３７を備える。
【００１５】
ステップＳ３１において、ハイパーバイザ１１に、１つのバーチャルマシン１０を生成するためのテンプレート情報を設定する（ここで、バーチャルマシン１０を第一バーチャルマシン１０とする）。前記テンプレート情報は、第一バーチャルマシン１０のバーチャルネットワークカードのメディアアクセスコントロール（ＭＡＣ）アドレスと、動的ホスト構成プロトコルサーバー１が該第一バーチャルマシン１０に割り当てたＩＰアドレス及びメモリ、ＣＰＵ、ハードディスク、ネットワークなどのリソースと、を備える。
【００１６】
ステップＳ３２において、ハイパーバイザ１１は、設定されたテンプレート情報に基づいて、前記第一バーチャルマシン１０を生成し且つ該第一バーチャルマシン１０をネットワーククラスタ２に加入する。本実施形態において、ネットワーククラスタ２は、１つ又は複数のサーバー１００及び該サーバー１００によって生成された１つ又は複数のバーチャルマシン１０を備える。
【００１７】
ステップＳ３３において、ハイパーバイザ１１は、ネットワーククラスタ２のリソース利用率（ＣＰＵのリソース利用率、ハードディスクのリソース利用率、メモリのリソース利用率及びネットワークのリソース利用率を含む）を監視する。
【００１８】
ステップＳ３４において、ハイパーバイザ１１は、ネットワーククラスタ２のリソース利用率が第一設定値より高いかどうか又は第二設定値より低いかどうかを判断する。本実施形態において、ネットワーククラスタ２のリソース利用率が第二設定値と第一設定値との間にある場合、ハイパーバイザ１１は、ネットワーククラスタ２が提供したネットワークサービスは安定した状態にあると判断する。ネットワーククラスタ２のリソース利用率が第一設定値より高い場合、例えば、ＣＰＵのリソース利用率、メモリのリソース利用率、ハードディスクのリソース利用率及びネットワークのリソース利用率がそれぞれ予定した第一設定値を超える或いは、ＣＰＵ、メモリ、ハードディスク及びネットワークのいずれか１つのリソース利用率が第一設定値を超える場合、次のステップＳ３５を実行する。ネットワーククラスタ２のリソース利用率が第二設定値より低い場合、例えば、ＣＰＵのリソース利用率、メモリのリソース利用率、ハードディスクのリソース利用率及びネットワークのリソース利用率がそれぞれ予定した第二設定値より低い或いは、ＣＰＵ、メモリ、ハードディスク及びネットワークのいずれか１つのリソース利用率が第一設定値より低い場合、次のステップＳ３６を実行する。
【００１９】
ステップＳ３５において、ハイパーバイザ１１は、前記第一バーチャルマシン１０に設定されたテンプレート情報に基づいて、新しいバーチャルマシン１０を生成し且つ該新しいバーチャルマシン１０を前記ネットワーククラスタ２に加入した後、該新しいバーチャルマシン１０を起動させる。これにより、ネットワーククラスタ２の利用可能なリソース量を増加させて、ネットワーククラスタ２のリソース利用率を減少させることができる。例えば、ハイパーバイザ１１は、新しいバーチャルマシン１０に対して、第一バーチャルマシン１０と同様に割り当てられたＣＰＵリソース、メモリリソース、ハードディスクリソース及びネットワークリソースを割り当てる。新しいバーチャルマシン１０のバーチャルネットワークカードのメディアアクセスコントロールアドレスは、ハイパーバイザ１１によって生成され、新しいバーチャルマシン１０のＩＰアドレスは、動的ホスト構成プロトコルサーバー１によって割り当てられる。次に、ステップＳ３７を実行する。
【００２０】
ステップＳ３６において、ハイパーバイザ１１は、ネットワーククラスタ２の中のいずれか１つのバーチャルマシン１０の起動を停止し、ネットワーククラスタ２の利用可能なリソース量を減らすことによって、ネットワーククラスタ２のリソース利用率を向上させる。例えば、ハイパーバイザ１１は、前記ネットワーククラスタ２の中のいずれか１つのバーチャルマシン１０を直接的に減少する或いは、該バーチャルマシン１０に対してシャットダウン操作を実行する。次に、ステップＳ３７を実行する。
【００２１】
ステップＳ３７において、ハイパーバイザ１１は、ネットワーククラスタ２のリソース利用率が第一設定値と第二設定値との間にあるかどうかを判断する。ネットワーククラスタ２のリソース利用率が第一設定値と第二設定値との間にある場合、ハイパーバイザ１１は、ネットワーククラスタ２が提供したネットワークサービスは安定した状態にあると判断し、プロセスはここで終了する。しかし、ネットワーククラスタ２のリソース利用率が第一設定値と第二設定値との間に位置しない場合は、ステップＳ３４に戻り、ハイパーバイザ１１は、ネットワーククラスタ２においてバーチャルマシン１０を増加し続ける或いは、バーチャルマシン１０の起動を、ネットワーククラスタ２が提供するネットワークサービスが安定するまで停止させて、プロセスはここで終了する。
【符号の説明】
【００２２】
１００  サーバー
１１  ハイパーバイザ
１０  バーチャルマシン
１２  ハードウェア
１  動的ホスト構成プロトコルサーバー
２  ネットワーククラスタ
２０  ネットワーク
３  ネットワークサーバー
【図１】
2013168140.tif 000003
【図２】
2013168140.tif 000004
【図３】
2013168140.tif 000005