(57)【要約】  本願は仮想マシンを管理する方法、装置、およびシステムを開示するものであり、通信分野に属している。システムは、クラウドプラットフォームおよびクラウドホストを含む。方法は、クラウドプラットフォームが、クライアントにより送信される仮想マシン停止要求メッセージ（３０１）を受信し、クラウドホストに仮想マシン停止要求メッセージ（３０２）を送信する段階であって、仮想マシン停止要求メッセージは、停止すべき仮想マシンの識別子情報を含む、段階と、クラウドホストが、停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシ（３０３）を取得する段階と、クラウドホストが、停止すべき仮想マシンを停止し、停止すべき仮想マシンを停止した後、停止すべき仮想マシンにより占有されるコンピューティングリソース（３０４）をリソース管理ポリシに従って管理する段階とを含む。装置は、受信ユニットおよび処理ユニットを含む。本願は、仮想マシンを管理する現在の方式が過度に単純で多様化されていないという問題を解決することができる。
2021526274.tif 000002
【特許請求の範囲】
【請求項１】
クラウドホストに適用される仮想マシン管理方法であって、クラウドプラットフォームが、前記クラウドホストを管理するように構成され、
前記クラウドホストが、前記クラウドプラットフォームにより送信される仮想マシン停止要求メッセージを受信する段階であって、前記仮想マシン停止要求メッセージは、停止すべき仮想マシンの識別子情報を含む、段階と、
前記クラウドホストが、前記停止すべき仮想マシンの前記識別子情報に基づいて、前記停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシを取得する段階と、
前記クラウドホストが、前記停止すべき仮想マシンを停止し、前記停止すべき仮想マシンを停止した後、前記停止すべき仮想マシンにより占有される前記コンピューティングリソースを前記リソース管理ポリシに従って管理する段階と
を備える方法。
【請求項２】
前記停止すべき仮想マシンの前記識別子情報に基づいて、前記停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシを取得する前記段階は、
前記停止すべき仮想マシンの前記識別子情報に基づいて、前記停止すべき仮想マシンのタイプを取得する段階と、
前記停止すべき仮想マシンの前記タイプに基づいて、仮想マシンのタイプとリソース管理ポリシとの間の対応関係から、対応するリソース管理ポリシを取得する段階と
を有する、請求項１に記載の方法。
【請求項３】
前記リソース管理ポリシは、前記クラウドホストが、前記停止すべき仮想マシンにより占有される前記コンピューティングリソースを解放しないこと、または、前記クラウドホストが、前記停止すべき仮想マシンを停止した後に待機し、待機時点が予め設定された時間閾値に達すると、前記停止すべき仮想マシンにより占有される前記コンピューティングリソースを解放すること、を指示する、請求項１または２に記載の方法。
【請求項４】
前記停止すべき仮想マシンが、前記クラウドホストのハードディスクを占有する第１タイプの仮想マシンである場合、または、前記停止すべき仮想マシンが、重要人物（ｖｅｒｙ  ｉｍｐｏｒｔａｎｔ  ｐｅｏｐｌｅ、ＶＩＰ）に属する第２タイプの仮想マシンである場合に、前記リソース管理ポリシは、前記停止すべき仮想マシンにより占有される前記コンピューティングリソースを解放しないように前記クラウドホストに指示する、請求項１から３の何れか一項に記載の方法。
【請求項５】
前記停止すべき仮想マシンが、前記クラウドホストのハードディスクを占有する第１タイプの仮想マシンおよび重要人物（ｖｅｒｙ  ｉｍｐｏｒｔａｎｔ  ｐｅｏｐｌｅ、ＶＩＰ）に属する第２タイプの仮想マシン以外のタイプの仮想マシンである場合は、前記リソース管理ポリシは、前記クラウドホストが、前記停止すべき仮想マシンを停止した後に待機し、待機時点が予め設定された時間閾値に達すると、前記停止すべき仮想マシンにより占有される前記コンピューティングリソースを解放すること、を指示する、請求項１から４の何れか一項に記載の方法。
【請求項６】
前記停止すべき仮想マシンの前記タイプに基づいて、仮想マシンのタイプとリソース管理ポリシとの間の対応関係から、対応するリソース管理ポリシを取得する前記段階の前に、
前記クラウドプラットフォームにより送信される、前記仮想マシンの前記タイプと前記リソース管理ポリシとの間の前記対応関係を受信する段階
を更に備える請求項２に記載の方法。
【請求項７】
クラウドプラットフォームに適用される仮想マシン管理方法であって、前記クラウドプラットフォームは、複数のクラウドホストを管理するように構成され、
前記クラウドプラットフォームが、クライアントにより送信される仮想マシン作成要求メッセージを受信する段階であって、前記仮想マシン作成要求メッセージは、作成すべき仮想マシンの構成情報を含み、前記構成情報は、前記作成すべき仮想マシンに必要なコンピューティングリソース数を少なくとも含む、段階と、
前記クラウドプラットフォームが、前記構成情報に基づいて前記複数のクラウドホストの中からターゲットクラウドホストを決定する段階であって、前記ターゲットクラウドホストの現在残っている遊休リソース数から前記コンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しい、段階と、
前記クラウドプラットフォームが、前記ターゲットクラウドホストに前記仮想マシン作成要求メッセージを送信する段階であって、前記仮想マシン作成要求メッセージは、前記作成すべき仮想マシンを作成するように前記ターゲットクラウドホストに要求するために使用される、段階と
を備える方法。
【請求項８】
前記作成すべき仮想マシンが前記ターゲットクラウドホスト上に作成された後の残りの遊休リソース数は、前記ターゲットクラウドホスト上で停止している仮想マシンを起動するために使用される、請求項７に記載の方法。
【請求項９】
前記構成情報に基づいて前記複数のクラウドホストの中からターゲットクラウドホストを決定する前記段階は、
デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数を取得する段階であって、前記デバイス識別子に対応する前記リソース数は、前記デバイス識別子に対応するクラウドホストの現在残っている遊休リソース数を含む、段階と、
各デバイス識別子に対応する前記遊休リソース数から前記コンピューティングリソース数を別個に減算して、各デバイス識別子に対応する差を取得する段階と、
それぞれの差が前記予め設定された閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子を選択し、前記選択されたデバイス識別子に対応するクラウドホストを前記ターゲットクラウドホストとして決定する段階と
を有する、請求項７に記載の方法。
【請求項１０】
前記構成情報に基づいて前記複数のクラウドホストの中からターゲットクラウドホストを決定する前記段階は、
デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数を取得する段階であって、前記デバイス識別子に対応する前記リソース数は、前記デバイス識別子に対応するクラウドホストのリソース合計数および現在残っている遊休リソース数を含む、段階と、
各デバイス識別子に対応する前記遊休リソース数から前記コンピューティングリソース数を別個に減算して、各デバイス識別子に対応する差を取得する段階と、
各デバイス識別子に対応する前記差および前記リソース合計数に基づいて、各デバイス識別子に対応する遊休リソース割合を別個に算出する段階と、
それぞれの遊休リソース割合が予め設定された割合閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子を選択し、前記選択されたデバイス識別子に対応するクラウドホストを前記ターゲットクラウドホストとして決定する段階と
を有する、請求項７に記載の方法。
【請求項１１】
前記構成情報に基づいて前記複数のクラウドホストの中からターゲットクラウドホストを決定する前記段階の後に、
仮想マシンの識別子情報とデバイス識別子との間の対応関係において、前記作成すべき仮想マシンの識別子情報および前記ターゲットクラウドホストの前記デバイス識別子を対応して格納すること、および／または、前記デバイス識別子と前記リソース数との間の前記対応関係において格納される前記ターゲットクラウドホストの前記デバイス識別子に対応する前記遊休リソース数を、前記ターゲットクラウドホストの前記デバイス識別子に対応する前記差に更新することを行う段階
を更に備える請求項９または１０に記載の方法。
【請求項１２】
前記クライアントにより送信される仮想マシン移行要求メッセージを受信する段階であって、前記仮想マシン移行要求メッセージは、移行すべき仮想マシンの識別子情報を含む、段階と、
前記仮想マシンの前記識別子情報と前記デバイス識別子との間の前記対応関係において、前記移行すべき仮想マシンの前記識別子情報に対応する第１クラウドホストのデバイス識別子を第２クラウドホストのデバイス識別子に更新する段階であって、前記第１クラウドホストは、前記移行すべき仮想マシンが移行の前に配置されるクラウドホストであり、前記第２クラウドホストは、前記移行すべき仮想マシンが前記移行の後に配置されるクラウドホストである、段階と
を更に備える請求項９から１１の何れか一項に記載の方法。
【請求項１３】
前記移行すべき仮想マシンの前記識別子情報に対応する第１クラウドホストのデバイス識別子を第２クラウドホストのデバイス識別子に更新する前記段階の後に、
前記第１クラウドホストが、前記移行すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合に、前記第２クラウドホストにリソース申請要求メッセージを送信する段階であって、前記リソース申請要求メッセージは、前記移行すべき仮想マシンに必要なコンピューティングリソース数を含み、前記リソース申請要求メッセージは、前記移行すべき仮想マシンに必要な前記コンピューティングリソース数に基づいて、前記移行すべき仮想マシンの前記コンピューティングリソースを申請するために前記第２クラウドホストにより使用される、段階
を更に備える請求項１２に記載の方法。
【請求項１４】
前記クライアントにより送信される仮想マシン起動要求メッセージを受信する段階であって、前記仮想マシン起動要求メッセージは、起動すべき仮想マシンの識別子情報を含む、段階、および、
前記起動すべき仮想マシンが配置される前記第１クラウドホストが、前記起動すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合、または、前記第１クラウドホストが、前記起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、前記第１クラウドホストの遊休リソース数が、前記起動すべき仮想マシンに必要なコンピューティングリソース数よりも多いか等しい場合に、前記起動すべき仮想マシンを前記第１クラウドホスト上で起動する段階、または、
前記第１クラウドホストが、前記起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、前記第１クラウドホストの遊休リソース数が、前記起動すべき仮想マシンに必要なコンピューティングリソース数よりも少ない場合に、前記起動すべき仮想マシンを第３クラウドホスト上で起動する段階であって、前記第３クラウドホストの遊休リソース数から前記起動すべき仮想マシンに必要な前記コンピューティングリソース数を減算することにより取得される差は、前記予め設定された閾値よりも大きいか等しく、前記第１クラウドホストおよび前記第３クラウドホストは、２つの異なるクラウドホストである、段階
を更に備える請求項１２または１３に記載の方法。
【請求項１５】
前記クライアントにより送信される仮想マシン削除要求メッセージを受信する段階であって、前記仮想マシン削除要求メッセージは、削除すべき仮想マシンの識別子情報を含む、段階と、
前記仮想マシンの前記識別子情報と前記デバイス識別子との間の前記対応関係から、前記削除すべき仮想マシンの前記識別子情報を含む対応関係を削除する段階と
を更に備える請求項９から１４の何れか一項に記載の方法。
【請求項１６】
仮想マシン管理装置であって、クラウドプラットフォームが、前記仮想マシン管理装置を管理するように構成され、
前記クラウドプラットフォームにより送信される仮想マシン停止要求メッセージを受信するように構成される受信ユニットであって、前記仮想マシン停止要求メッセージは、停止すべき仮想マシンの識別子情報を含む、受信ユニットと、
前記停止すべき仮想マシンの前記識別子情報に基づいて、前記停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシを取得することと、前記停止すべき仮想マシンを停止し、前記停止すべき仮想マシンを停止した後、前記停止すべき仮想マシンにより占有される前記コンピューティングリソースを前記リソース管理ポリシに従って管理することとを行うように構成される処理ユニットと
を備える仮想マシン管理装置。
【請求項１７】
複数のクラウドホストを管理するように構成される仮想マシン管理装置であって、
クライアントにより送信される仮想マシン作成要求メッセージを受信するように構成される受信ユニットであって、前記仮想マシン作成要求メッセージは、作成すべき仮想マシンの構成情報を含み、前記構成情報は、前記作成すべき仮想マシンに必要なコンピューティングリソース数を少なくとも含む、受信ユニットと、
前記構成情報に基づいて前記複数のクラウドホストの中からターゲットクラウドホストを決定するように構成される処理ユニットであって、前記ターゲットクラウドホストの現在残っている遊休リソース数から前記コンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しい、処理ユニットと、
前記ターゲットクラウドホストに前記仮想マシン作成要求メッセージを送信するように構成される送信ユニットであって、前記仮想マシン作成要求メッセージは、前記作成すべき仮想マシンを作成するように前記ターゲットクラウドホストに要求するために使用される、送信ユニットと
を備える仮想マシン管理装置。
【請求項１８】
請求項１６に記載の仮想マシン管理装置と、請求項１７に記載の仮想マシン管理装置とを備える仮想マシン管理システム。
【請求項１９】
プロセッサとメモリとを備える仮想マシン管理装置であって、前記メモリは、プログラムを記憶するように構成され、前記プロセッサは、前記メモリ内の前記プログラムを実行して、請求項１から１５の何れか一項に記載の方法を完了するように構成される、仮想マシン管理装置。
【請求項２０】
コンピュータプログラムを記憶するように構成される不揮発性コンピュータ可読記憶媒体であって、前記コンピュータプログラムは、プロセッサによりロードされて、請求項１から１５の何れか一項に記載の方法の命令を実行する、不揮発性コンピュータ可読記憶媒体。
【請求項２１】
コンピュータ可読記憶媒体に記憶されるコンピュータプログラムを含むコンピュータプログラムであって、前記コンピュータプログラムは、プロセッサによりロードされて、請求項１から１５の何れか一項に記載の方法を実装する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、通信分野、特に、仮想マシンを管理する方法、装置、およびシステムに関する。
【背景技術】
【０００２】
クラウドシステムは、クラウドプラットフォームおよびクラウドホストを含む。クラウドプラットフォームは、クラウドホスト上に仮想マシンを作成することができる。仮想マシンがクラウドホスト上で実行されると、仮想マシンは、クラウドホストのコンピューティングリソースを占有する必要がある。コンピューティングリソースは、クラウドホストの中央処理装置（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、ＣＰＵ）および／またはメモリなどのリソースであってよい。
【０００３】
クラウドプラットフォームは、クラウドホスト上の仮想マシンを停止するように制御することができる。クラウドホスト上の仮想マシンが停止するように制御された後、クラウドホストは、仮想マシンにより占有されるコンピューティングリソースを解放する。現在のところ、クラウドホストは、作成される仮想マシンのタイプに関係なく、仮想マシンがクラウドホスト上で停止した後、仮想マシンにより占有されるリソースを解放する。この仮想マシン管理方式は、過度に単純で多様化されていない。
【発明の概要】
【０００４】
現在の仮想マシン管理方式が過度に単純で多様化されていないという問題を解決するために、本願の実施形態は、仮想マシンを管理する方法、装置、およびシステムを提供する。技術的解決策は以下の通りである。
【０００５】
第１態様によれば、本願のある実施形態は、クラウドホストに適用される仮想マシン管理方法を提供する。クラウドホストは、クラウドプラットフォームにより送信される仮想マシン停止要求メッセージを受信することであって、仮想マシン停止要求メッセージは、停止すべき仮想マシンの識別子情報を含む、受信することと、停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシを取得することと、停止すべき仮想マシンを停止し、停止すべき仮想マシンを停止した後、停止すべき仮想マシンにより占有されるコンピューティングリソースをリソース管理ポリシに従って管理することとを行う。このように、クラウドホストは、停止すべき仮想マシンに対応するリソース管理ポリシを使用することにより、停止すべき仮想マシンにより占有されるコンピューティングリソースを管理して、仮想マシンにより占有される様々な仮想マシンのコンピューティングリソースを様々な方式で管理することができる。これによって、仮想マシン管理方式が強化される。
【０００６】
第１態様の考えられる実装では、停止すべき仮想マシンのタイプが、停止すべき仮想マシンの識別子情報に基づいて取得され、対応するリソース管理ポリシが、停止すべき仮想マシンのタイプに基づいて、仮想マシンのタイプとリソース管理ポリシとの間の対応関係から取得される。このように、様々な仮想マシンに対応するリソース管理ポリシを、仮想マシンのタイプとリソース管理ポリシとの間の対応関係から取得して、仮想マシンにより占有される様々な仮想マシンのコンピューティングリソースを様々な方式で管理することができる。
【０００７】
第１態様の考えられる実装では、停止すべき仮想マシンがクラウドホストのハードディスクを占有する第１タイプの仮想マシンである場合、または、停止すべき仮想マシンが重要人物ＶＩＰユーザに属する第２タイプの仮想マシンである場合に、リソース管理ポリシは、停止すべき仮想マシンにより占有されるコンピューティングリソースを解放しないようにクラウドホストに指示するために使用される。このように、第１タイプの仮想マシンまたは第２タイプの仮想マシンが起動すると、第１タイプの仮想マシンまたは第２タイプの仮想マシンを起動するのに十分なコンピューティングリソースがクラウドホストにあることを保証することができる、および、クラウドホストのコンピューティングリソースが不足しているために、第１タイプの仮想マシンが別のクラウドホストに移行した後に第１タイプの仮想マシンが起動できないことを回避することできる、または、第２タイプのクラウドホストが別のクラウドホストに移行した後に第２タイプのクラウドホストがゆっくりと起動することを回避することができる。
【０００８】
第１態様の考えられる実装では、停止すべき仮想マシンが第１タイプの仮想マシンおよび第２タイプの仮想マシン以外の別のタイプの仮想マシンである場合に、リソース管理ポリシは、クラウドホストが、停止すべき仮想マシンを停止した後に待機し、待機時点が予め設定された時間閾値に達すると、停止すべき仮想マシンにより占有されるコンピューティングリソースを解放すること、を指示するために使用される。停止すべき仮想マシンにより占有されるコンピューティングリソースは、予め設定された時間閾値に達したときにのみ解放される。そのため、待機プロセスで停止すべき仮想マシンを起動する必要がある場合は、コンピューティングリソースを申請する操作を省略し、停止すべき仮想マシンを直接起動して、起動速度を向上させることができる。
【０００９】
第１態様の１つの考えられる実装では、クラウドプラットフォームにより送信される、仮想マシンのタイプとリソース管理ポリシとの間の対応関係が受信される。このように、様々な仮想マシンに対応するリソース管理ポリシを、仮想マシンのタイプとリソース管理ポリシとの間の対応関係を通じて取得して、仮想マシンにより占有される様々な仮想マシンのコンピューティングリソースを様々な方式で管理することができる。
【００１０】
第２態様によれば、本願のある実施形態は、クラウドプラットフォームに適用される仮想マシン管理方法を提供する。クラウドプラットフォームは、複数のクラウドホストを管理するように構成される。クラウドプラットフォームは、クライアントにより送信される仮想マシン作成要求メッセージを受信することであって、仮想マシン作成要求メッセージは、作成すべき仮想マシンの構成情報を含み、構成情報は、作成すべき仮想マシンに必要なコンピューティングリソース数を少なくとも含む、受信することと、構成情報に基づいて複数のクラウドホストの中からターゲットクラウドホストを決定することであって、ターゲットクラウドホストの現在残っている遊休リソース数からコンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しい、決定することと、ターゲットクラウドホストに仮想マシン作成要求メッセージを送信することであって、仮想マシン作成要求メッセージは、作成すべき仮想マシンを作成するようにターゲットクラウドホストに要求するために使用される、送信することとを行う。この差は、ターゲットクラウドホストが作成すべき仮想マシンを作成した後の、ターゲットクラウドホストの残りの遊休リソース数に等しい。このように、ターゲットクラウドホストが作成すべき仮想マシンを作成した後も、予め設定された閾値以上の数の一部の遊休リソースが確保されることを保証することができ、その結果、ターゲットクラウドホスト上で停止している一部の仮想マシンが起動すると、確保された遊休リソースは、これらの仮想マシンを起動するために使用され得る。これは、仮想マシンを起動する速度に影響を及ぼすものではない。
【００１１】
第２態様の考えられる実装では、デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数が取得され、デバイス識別子に対応するリソース数は、デバイス識別子に対応するクラウドホストの現在残っている遊休リソース数を含む。コンピューティングリソース数を、各デバイス識別子に対応する遊休リソース数から別個に減算して、各デバイス識別子に対応する差を取得する。差が予め設定された閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子が選択され、選択されたデバイス識別子に対応するクラウドホストがターゲットクラウドホストとして決定される。これによって、ターゲットクラウドホストが作成すべき仮想マシンを作成した後の、確保された遊休リソース数が、予め設定された閾値よりも大きいか等しくなることが保証される。
【００１２】
第２態様の考えられる実装では、デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数が取得され、デバイス識別子に対応するリソース数は、デバイス識別子に対応するクラウドホストのリソース合計数および現在残っている遊休リソース数を含む。コンピューティングリソース数を、各デバイス識別子に対応する遊休リソース数から別個に減算して、各デバイス識別子に対応する差を取得する。各デバイス識別子に対応する遊休リソース割合は、各デバイス識別子に対応する差およびリソース合計数に基づいて別個に算出される。それぞれの遊休リソース割合が予め設定された割合閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子が選択され、選択されたデバイス識別子に対応するクラウドホストがターゲットクラウドホストとして決定される。このように、ターゲットクラウドホストが作成すべき仮想マシンを作成した後の、確保された遊休リソース割合が、予め設定された割合閾値よりも大きいか等しくなる。
【００１３】
第２態様の考えられる実装では、作成すべき仮想マシンの識別子情報およびターゲットクラウドホストのデバイス識別子が、仮想マシンの識別子情報とデバイス識別子との間の対応関係において対応して格納される、および／または、デバイス識別子とリソース数との間の対応関係において格納されるターゲットクラウドホストのデバイス識別子に対応する遊休リソース数が、ターゲットクラウドホストのデバイス識別子に対応する差に更新される。
【００１４】
第２態様の考えられる実装では、クライアントにより送信される仮想マシン移行要求メッセージが受信され、仮想マシン移行要求メッセージは、移行すべき仮想マシンの識別子情報を含む。仮想マシンの識別子情報とデバイス識別子との間の対応関係において、移行すべき仮想マシンの識別子情報に対応する第１クラウドホストのデバイス識別子が、第２クラウドホストのデバイス識別子に更新され、第１クラウドホストは、移行すべき仮想マシンが移行の前に配置されるクラウドホストであり、第２クラウドホストは、移行すべき仮想マシンが移行の後に配置されるクラウドホストである。仮想マシンの移行は、仮想マシンの識別子情報とデバイス識別子との間の対応関係において、移行すべき仮想マシンの識別子情報に対応する第１クラウドホストのデバイス識別子を、第２クラウドホストのデバイス識別子に更新することによってのみ実装され得る。これによって、移行効率が向上する。
【００１５】
第２態様の考えられる実装では、第１クラウドホストが、移行すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合に、リソース申請要求メッセージが第２クラウドホストに送信され、リソース申請要求メッセージは、移行すべき仮想マシンに必要なコンピューティングリソース数を含み、リソース申請要求メッセージは、移行すべき仮想マシンに必要なコンピューティングリソース数に基づいて、移行すべき仮想マシンのコンピューティングリソースを申請するために第２クラウドホストにより使用される。これによって、移行すべき仮想マシンが第２クラウドホスト上で起動するときに、移行すべき仮想マシンを起動するのに十分なコンピューティングリソースがあり、起動速度が向上することが保証される。
【００１６】
第２態様の考えられる実装では、クライアントにより送信される仮想マシン起動要求メッセージが受信され、仮想マシン起動要求メッセージは、起動すべき仮想マシンの識別子情報を含む。起動すべき仮想マシンが配置される第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合、または、第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、第１クラウドホストの遊休リソース数が、起動すべき仮想マシンに必要なコンピューティングリソース数よりも多いか等しい場合に、起動すべき仮想マシンは、第１クラウドホスト上で起動する。代替的に、第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、第１クラウドホストの遊休リソース数が、起動すべき仮想マシンに必要なコンピューティングリソース数よりも少ない場合は、起動すべき仮想マシンは、第３クラウドホスト上で起動し、第３クラウドホストの遊休リソース数から起動すべき仮想マシンに必要なコンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しく、第１クラウドホストおよび第３クラウドホストは、２つの異なるクラウドホストである。このように、起動すべき仮想マシンが第３クラウドホスト上で起動した後も、第３クラウドホストの残りの遊休リソース数は、予め設定された閾値よりも大きいか等しく、その結果、起動すべき仮想マシンが第３クラウドホスト上で起動した後も、予め設定された閾値以上の数の一部の遊休リソースが確保されることを保証することができ、その結果、第３クラウドホスト上で停止している一部の仮想マシンが起動すると、確保された遊休リソースは、これらの仮想マシンを起動するために使用され得る。これは、仮想マシンを起動する速度に影響を及ぼすものではない。
【００１７】
第２態様の考えられる実装では、クライアントにより送信される仮想マシン削除要求メッセージが受信され、仮想マシン削除要求メッセージは、削除すべき仮想マシンの識別子情報を含み、削除すべき仮想マシンの識別子情報を含む対応関係が、仮想マシンの識別子情報とデバイス識別子との間の対応関係から削除される。
【００１８】
第３態様によれば、本願のある実施形態は、第１態様または第１態様の任意の考えられる実装における方法を実行するための仮想マシン管理装置を提供する。具体的には、装置は、第１態様または第１態様の任意の考えられる実装における方法を実行するように構成されるユニットを含む。
【００１９】
第４態様によれば、本願の実施形態は、第２態様または第２態様の任意の考えられる実装における方法を実行するための仮想マシン管理装置を提供する。具体的には、装置は、第２態様または第２態様の任意の考えられる実装における方法を実行するように構成されるユニットを含む。
【００２０】
第５態様によれば、本願のある実施形態は仮想マシン管理装置を提供する。装置は、トランシーバ、プロセッサ、およびメモリを含む。トランシーバ、プロセッサ、およびメモリは、バスシステムを使用することにより互いに接続され得る。メモリは、プログラム、命令、またはコードを記憶するように構成され、プロセッサは、メモリ内のプログラム、命令、またはコードを実行して、第１態様または第１態様の任意の考えられる実装における方法、または、第２態様または第２態様の任意の考えられる実装における方法を完了するように構成される。
【００２１】
第６態様によれば、本願のある実施形態はコンピュータプログラム製品を提供する。コンピュータプログラム製品は、コンピュータ可読記憶媒体に記憶されるコンピュータプログラムを含む。更に、コンピュータプログラムは、プロセッサによりロードされて、第１態様または第１態様の任意の考えられる実装における方法、または、第２態様または第２態様の任意の考えられる実装における方法を実装する。
【００２２】
第７態様によれば、本願のある実施形態は、コンピュータプログラムを記憶するように構成される不揮発性コンピュータ可読記憶媒体を提供する。コンピュータプログラムは、プロセッサによりロードされて、第１態様または第１態様の任意の考えられる実装における方法の命令、または、第２態様または第２態様の任意の考えられる実装における方法の命令を実行する。
【００２３】
第８態様によれば、本願のある実施形態はチップを提供する。チップは、プログラマブル論理回路および／またはプログラム命令を含む。チップは、実行中、第１態様または第１態様の任意の考えられる実装における方法、または、第２態様または第２態様の任意の考えられる実装における方法を実装するように構成される。
【００２４】
第９態様によれば、本願のある実施形態は、第３態様の装置と第４態様の装置とを含む仮想マシン管理システムを提供する。
【図面の簡単な説明】
【００２５】
【図１】本願のある実施形態に係るシステムの概略構造図である。
【００２６】
【図２】本願のある実施形態に係る仮想マシン作成方法のフローチャートである。
【００２７】
【図３】本願のある実施形態に係る仮想マシン停止方法のフローチャートである。
【００２８】
【図４】本願のある実施形態に係る仮想マシン移行方法のフローチャートである。
【００２９】
【図５】本願のある実施形態に係る仮想マシン起動方法のフローチャートである。
【００３０】
【図６】本願のある実施形態に係る仮想マシン削除方法のフローチャートである。
【００３１】
【図７】本願のある実施形態に係る仮想マシン管理装置の概略構造図である。
【００３２】
【図８】本願のある実施形態に係る別の仮想マシン管理装置の概略構造図である。
【００３３】
【図９】本願のある実施形態に係る別の仮想マシン管理装置の概略構造図である。
【００３４】
【図１０】本願のある実施形態に係る別の仮想マシン管理装置の概略構造図である。
【００３５】
【図１１】本願のある実施形態に係る仮想マシン管理システムの概略構造図である。
【発明を実施するための形態】
【００３６】
以下では更に、添付図面を参照しながら本願の実施形態について詳細に説明する。
【００３７】
図１を参照すると、本願のある実施形態はシステムを提供する。システムは、クラウドプラットフォーム１および複数のクラウドホスト２を含む。
【００３８】
オプションとして、クラウドプラットフォーム１と複数のクラウドホスト２の各々との間にはネットワーク接続が確立される。オプションとして、ネットワーク接続は有線接続または無線接続であってよい。
【００３９】
クラウドプラットフォーム１は、クラウドホスト２上の仮想マシンを管理するように構成され得る。
【００４０】
オプションとして、クラウドホスト２上の仮想マシン上でクラウドプラットフォーム１により実行される管理操作は、クラウドホスト２上の仮想マシンの作成、クラウドホスト２上の仮想マシンの停止、クラウドホスト２上の仮想マシンの起動、クラウドホスト２上の仮想マシンの移行、クラウドホスト２上の仮想マシンの削除などの管理操作のうちの少なくとも１つを含み得る。
【００４１】
オプションとして、クラウドホスト２は、クラウドホスト２に含まれる仮想マシンの実行に必要なコンピューティングリソースを提供することができる。コンピューティングリソースは、ＣＰＵおよびメモリ空間などを含み得る。
【００４２】
クラウドホスト２上の仮想マシンを作成する操作は、以下の通りであってよい。
【００４３】
クラウドプラットフォーム１は、クライアントにより送信される仮想マシン作成要求メッセージを受信することであって、仮想マシン作成要求メッセージは、作成すべき仮想マシンの構成情報を含み、構成情報は、作成すべき仮想マシンに必要なコンピューティングリソース数を少なくとも含む、受信することと、構成情報に基づいて複数のクラウドホスト２の中からターゲットクラウドホストを決定することであって、ターゲットクラウドホストの現在残っている遊休リソース数からコンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しい、決定することと、作成すべき仮想マシンを識別するために使用される識別子情報を割り当て、作成すべき仮想マシンの識別子情報と構成情報とを含む仮想マシン作成要求メッセージをターゲットクラウドホストに送信することとを行うように構成され得る。
【００４４】
ターゲットクラウドホストは、仮想マシン作成要求メッセージを受信し、作成すべき仮想マシンを作成し、仮想マシン作成要求メッセージに保持されるコンピューティングリソース数に基づいて、作成すべき仮想マシンにコンピューティングリソースを割り当て、クラウドプラットフォーム１に仮想マシン作成完了メッセージを送信する。
【００４５】
クラウドプラットフォーム１は、仮想マシン作成完了メッセージを受信し、ターゲットクラウドホストが作成すべき仮想マシンを作成したことを判断する。
【００４６】
オプションとして、クラウドプラットフォーム１は更に、仮想マシンの識別子情報とクラウドホストのデバイス識別子との間の対応関係、クラウドホストのデバイス識別子とリソース数との間の対応関係、および／または、仮想マシンの識別子情報とリソース数との間の対応関係を記憶するように構成される。
【００４７】
オプションとして、ターゲットクラウドホストが作成すべき仮想マシンを作成した後、クラウドプラットフォーム１は、仮想マシンの識別子情報とデバイス識別子との間の対応関係において、作成すべき仮想マシンの識別子情報およびターゲットクラウドホストのデバイス識別子を対応して格納することができる。
【００４８】
作成すべき仮想マシンの識別子情報は、作成すべき仮想マシンの汎用一意識別子（Ｕｎｉｖｅｒｓａｌｌｙ  Ｕｎｉｑｕｅ  Ｉｄｅｎｔｉｆｉｅｒ、ＵＵＩＤ）などの情報を含み得る。ターゲットクラウドホストのデバイス識別子は、ターゲットクラウドホストのインターネットプロトコル（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ、ＩＰ）アドレスおよび／または媒体アクセス制御（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ、ＭＡＣ）アドレスなどの情報を含み得る。
【００４９】
例えば、作成すべき仮想マシンの識別子情報がＵＵＩＤ１であり、かつ、ターゲットクラウドホストのデバイス識別子がＩＰ１である場合は、ターゲットクラウドホスト１が作成すべき仮想マシンを作成した後、クラウドプラットフォーム１は、表１に示す仮想マシンの識別子情報とデバイス識別子との間の対応関係において、作成すべき仮想マシンの識別子情報ＵＵＩＤ１およびターゲットクラウドホストのデバイス識別子ＩＰ１を対応して格納することができる。
【表１】
2021526274.tif 000003
【００５０】
オプションとして、ターゲットクラウドホストが作成すべき仮想マシンを作成した後、クラウドプラットフォーム１は更に、デバイス識別子とリソース数との間の対応関係において、ターゲットクラウドホストに対応するリソース数を更新することができる。ターゲットクラウドホストに対応するリソース数は、ターゲットクラウドホストの現在残っている遊休リソース数と、ターゲットクラウドホストのリソース合計数とを含み得る。実装時、デバイス識別子とリソース数との間の対応関係において格納されるターゲットクラウドホストのデバイス識別子に対応する遊休リソース数は、その差に更新される。
【００５１】
例えば、表２に示すデバイス識別子とリソース数との間の対応関係を参照すると、ターゲットクラウドホストのデバイス識別子がＩＰ１である場合は、ターゲットクラウドホストの現在残っている遊休リソース数が３０であり、作成すべき仮想マシンに必要なコンピューティングリソース数が５であり、算出される差が２５である。従って、表２に示すデバイス識別子とリソース数との間の対応関係において、ターゲットクラウドホストのデバイス識別子ＩＰ１に対応する遊休リソース数３０を差２５に更新して、表３に示すデバイス識別子とリソース数との間の対応関係を取得する。
【表２】
2021526274.tif 000004
【表３】
2021526274.tif 000005
【００５２】
クラウドホスト２上の仮想マシンを停止する操作は、以下の通りであってよい。
【００５３】
クラウドプラットフォーム１は、クライアントにより送信される仮想マシン停止要求メッセージを受信することであって、仮想マシン停止要求メッセージは、停止すべき仮想マシンの識別子情報を含む、受信することと、停止すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とデバイス識別子との間の対応関係から、停止すべき仮想マシンが配置されるクラウドホスト２のデバイス識別子を取得することと、デバイス識別子に対応するクラウドホスト２に仮想マシン停止要求メッセージを転送することとを行う。
【００５４】
クラウドホスト２は、仮想マシン停止要求メッセージを受信し、仮想マシン停止要求メッセージに含まれる停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシを取得することができ、停止すべき仮想マシンを停止し、停止すべき仮想マシンを停止した後、停止すべき仮想マシンにより占有されるコンピューティングリソースをリソース管理ポリシに従って管理することができる。
【００５５】
オプションとして、クラウドホスト２は、仮想マシンのタイプとリソース管理ポリシとの間の対応関係を記憶する。従って、クラウドホスト２は、停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンのタイプを取得し、停止すべき仮想マシンのタイプに基づいて、仮想マシンのタイプとリソース管理ポリシとの間の対応関係から、対応するリソース管理ポリシを取得することができる。
【００５６】
表４を参照すると、表４には、仮想マシンのタイプとリソース管理ポリシとの間の対応関係が示されている。表４に示すように、仮想マシンのタイプは、第１タイプの仮想マシン、第２タイプの仮想マシン、および第３タイプの仮想マシンを含む。第１タイプの仮想マシンは、クラウドホストのハードディスクを占有する仮想マシンである。第１タイプの仮想マシンに対応するリソース管理ポリシは、第１リソース管理ポリシである。第１リソース管理ポリシは、第１タイプの仮想マシンにより占有されるコンピューティングリソースを、第１タイプの仮想マシンを停止した後に解放しないようにクラウドホストに指示する。第１タイプの仮想マシンは、クラウドホストのハードディスクを占有する。そのため、通常は、第１タイプの仮想マシンがクラウドホスト上で実行されると、クラウドホストのハードディスクにユーザデータが記憶され、ユーザデータは、第１タイプの仮想マシンが停止後に再起動すると使用される。第１タイプの仮想マシンが起動すると、第１タイプの仮想マシンが使用するのに十分なコンピューティングリソースがクラウドホストにない場合は、第１タイプの仮想マシンは、別のクラウドホストに移行して起動する。第１タイプの仮想マシンが第１タイプの仮想マシンを起動するのに必要とされる必要なユーザデータは、別のクラウドホストのハードディスクに格納されていない。そのため、別のクラウドホストは、第１タイプの仮想マシンを起動することができない。
【００５７】
この問題を解決するために、本願のこの実施形態では、クラウドホストは、第１タイプの仮想マシンを停止した後、第１タイプの仮想マシンにより占有されるコンピューティングリソースを第１リソース管理ポリシに従って解放せず、第１タイプの仮想マシンを起動するためのコンピューティングリソースがクラウドホストにあることを保証する。更に、第１タイプの仮想マシンが起動すると、クラウドホストのハードディスクに記憶されるユーザデータは、第１タイプの仮想マシンを再起動できることを保証するために使用され得る。
【００５８】
第２タイプの仮想マシンは、重要人物（ｖｅｒｙ  ｉｍｐｏｒｔａｎｔ  ｐｅｏｐｌｅ、ＶＩＰ）の仮想マシンである。第２タイプの仮想マシンに対応するリソース管理ポリシは、第２リソース管理ポリシである。第２リソース管理ポリシは、仮想マシンにより占有されるコンピューティングリソースを、仮想マシンを停止した後に解放しないようにクラウドホストに指示する。ＶＩＰユーザは通常、有料ユーザである。有料ユーザを維持し、かつ、有料ユーザの使用体験を向上させるためには、停止後の第２タイプの仮想マシンを起動するのに必要な時間を短縮する必要がある。従って、本願のこの実施形態では、クラウドホストは、第２タイプの仮想マシンを停止した後、第２タイプの仮想マシンにより占有されるコンピューティングリソースを第２リソース管理ポリシに従って解放せず、第２タイプの仮想マシンを迅速に起動するためのコンピューティングリソースがクラウドホストにあることを保証する。
【００５９】
第３タイプの仮想マシンは、第１タイプの仮想マシンおよび第２タイプの仮想マシン以外の別のタイプの仮想マシンである。第３タイプの仮想マシンに対応するリソース管理ポリシは、第３リソース管理ポリシである。第３リソース管理ポリシは、クラウドホストが、第３タイプの仮想マシンが停止した後に待機し、待機時点が予め設定された時間閾値に達すると、第３タイプの仮想マシンにより占有されるコンピューティングリソースを解放すること、を指示するために使用される、予め設定された時間閾値を含む。
【００６０】
クラウドホストは、第３タイプの仮想マシンを停止した後、第３タイプの仮想マシンを迅速に起動することができる。従って、第３リソース管理ポリシは、クラウドホストが、第３タイプの仮想マシンが停止した後に待機はするものの、第３タイプの仮想マシンにより占有されるコンピューティングリソースをすぐには解放しないこと、を指示するために使用される、予め設定された時間閾値を含む。このように、クラウドホストが待機時間内に第３タイプの仮想マシンを起動する必要がある場合は、クラウドホストは、コンピューティングリソースを申請する必要がなく、解放されていないコンピューティングリソースを直接使用して第３タイプの仮想マシンを起動することで、起動速度を向上させることができる。
【００６１】
第２タイプの仮想マシンおよび第３タイプの仮想マシンにより使用されるハードディスクは通常、クラウドホストのローカルハードディスクではなく、ネットワーク内の共有ハードディスクである。このように、第２タイプの仮想マシンが起動すると、第２タイプの仮想マシンは、共有ハードディスクに記憶されるデータを共有ハードディスクから読み取ることができる。第３タイプの仮想マシンが別のクラウドホストへ移行した後に起動すると、第３タイプの仮想マシンは、共有ハードディスクに記憶されるデータを共有ハードディスクから読み取ることもできる。
【表４】
2021526274.tif 000006
【００６２】
クラウドホスト２上の仮想マシンを移行する操作は、以下の通りであってよい。
【００６３】
クラウドプラットフォーム１は、クライアントにより送信される仮想マシン移行要求メッセージを受信することであって、仮想マシン移行要求メッセージは、移行すべき仮想マシンの識別子情報を含む、受信することと、仮想マシンの識別子情報とデバイス識別子との間の対応関係において、移行すべき仮想マシンの識別子情報に対応する第１クラウドホストのデバイス識別子を第２クラウドホストのデバイス識別子に更新することであって、第１クラウドホストは、移行すべき仮想マシンが移行の前に配置されるクラウドホストであり、第２クラウドホストは、移行すべき仮想マシンが移行の後に配置されるクラウドホストである、更新することとを行う。
【００６４】
オプションとして、第１クラウドホストが、移行すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合は、クラウドプラットフォーム１は更に、第２クラウドホストにリソース申請要求メッセージを送信することができ、リソース申請要求メッセージは、移行すべき仮想マシンに必要なコンピューティングリソース数を含み、リソース申請要求メッセージは、移行すべき仮想マシンに必要なコンピューティングリソース数に基づいて、移行すべき仮想マシンのコンピューティングリソースを申請するために第２クラウドホストにより使用される。
【００６５】
クラウドホスト２上の仮想マシンを起動する操作は、以下の通りであってよい。
【００６６】
クラウドプラットフォーム１は、クライアントにより送信される仮想マシン起動要求メッセージを受信することであって、仮想マシン起動要求メッセージは、起動すべき仮想マシンの識別子情報を含む、受信することと、起動すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とデバイス識別子との間の対応関係から、起動すべき仮想マシンが配置される第１クラウドホストのデバイス識別子を取得することと、デバイス識別子に対応する第１クラウドホストに仮想マシン起動要求メッセージを送信することとを行う。
【００６７】
第１クラウドホストは、仮想マシン起動要求メッセージを受信し、仮想マシン起動要求メッセージに含まれる起動すべき仮想マシンの識別子情報に基づいて、起動すべき仮想マシンを決定することと、第１クラウドホストの遊休リソース数が、起動すべき仮想マシンに必要なコンピューティングリソース数よりも多いか等しく、かつ、第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放したか、または、第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合に、起動すべき仮想マシンを起動し、クラウドプラットフォーム１に仮想マシン起動完了メッセージを送信することとを行う。第１クラウドホストの遊休リソース数が、起動すべき仮想マシンに必要なコンピューティングリソース数よりも少なく、かつ、第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放した場合は、第１クラウドホストは、クラウドプラットフォーム１に仮想マシン起動失敗メッセージを送信する。
【００６８】
クラウドプラットフォーム１は、仮想マシン起動完了メッセージを受信すると、起動すべき仮想マシンが問題なく起動していると判断することと、仮想マシン起動失敗メッセージを受信すると、起動すべき仮想マシンに必要なコンピューティングリソース数に基づいて、複数のクラウドホスト２の中から第３クラウドホストを決定することであって、第３クラウドホストの現在残っている遊休リソース数からコンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しい、決定することと、起動すべき仮想マシンの識別子情報と構成情報とを含む仮想マシン起動要求メッセージを第３クラウドホストに送信することであって、構成情報は、起動すべき仮想マシンに必要なコンピューティングリソース数を少なくとも含む、送信することとを行う。
【００６９】
第３クラウドホストは、仮想マシン起動要求メッセージを受信し、起動すべき仮想マシンを作成し、仮想マシン起動要求メッセージに保持されるコンピューティングリソース数に基づいて、起動すべき仮想マシンにコンピューティングリソースを割り当て、クラウドプラットフォーム１に仮想マシン起動成功メッセージを送信する。クラウドプラットフォーム１は、仮想マシン起動成功メッセージを受信し、起動すべき仮想マシンが問題なく起動していると判断する。
【００７０】
クラウドホスト２上の仮想マシンを削除する操作は、以下の通りであってよい。
【００７１】
クラウドプラットフォーム１は、クライアントにより送信される仮想マシン削除要求メッセージを受信することであって、仮想マシン削除要求メッセージは、削除すべき仮想マシンの識別子情報を含む、受信することと、削除すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とデバイス識別子との間の対応関係から、削除すべき仮想マシンの識別子情報を含む対応関係を削除することとを行う。
【００７２】
オプションとして、クラウドホストが、削除すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合は、クラウドプラットフォーム１は、クラウドホストのデバイス識別子に基づいて、クラウドホストにリソース解放要求メッセージを送信し、リソース解放要求メッセージは、削除すべき仮想マシンの識別子情報を含み、リソース解放要求メッセージは、削除すべき仮想マシンの識別子情報に基づいて、削除すべき仮想マシンにより占有されるコンピューティングリソースを解放するためにクラウドホストにより使用される。
【００７３】
オプションとして、各クラウドホスト２について、クラウドホスト２は、クラウドホスト２の残りの遊休リソース数を取得し、クラウドホスト２の残りの遊休リソース数をクラウドプラットフォーム１に報告することができる。クラウドホスト２は、コンピューティングリソースが現在解放されていない仮想マシンを決定し、決定された仮想マシンにより占有されるコンピューティングリソース数に基づいて、占有されるコンピューティングリソース合計数を算出し、仮想マシンに含まれるコンピューティングリソース合計数と、占有されるコンピューティングリソース合計数とに基づいて、クラウドホスト２の残りの遊休リソース数を取得することができる。
【００７４】
オプションとして、クラウドプラットフォーム１は、クラウドホスト２により送信される遊休リソース数を受信し、デバイス識別子とリソース数との間の対応関係において、クラウドホスト２のデバイス識別子に対応する遊休リソース数を、受信された遊休リソース数に更新することができる。
【００７５】
クラウドホスト２は、クラウドホスト２に含まれる仮想マシンが変わるときに、クラウドホスト２の遊休リソース数を取得することができる。例えば、クラウドホスト２は、仮想マシンを停止するとき、仮想マシンを作成するとき、または仮想マシンを起動するときに、クラウドホスト２の遊休リソース数を取得する。代替的に、クラウドホスト２は、クラウドホスト２の遊休リソース数を定期的に取得することができる。
【００７６】
図２を参照すると、本願のある実施形態は仮想マシン管理方法を提供する。管理方法は、クラウドホスト上の仮想マシンを作成する前述の操作を実行するために使用されてよく、図１に示すシステムに適用されてよい。方法は以下の段階を含む。
【００７７】
段階２０１：クラウドプラットフォームが、クライアントにより送信される仮想マシン作成要求メッセージを受信する。仮想マシン作成要求メッセージは、作成すべき仮想マシンの構成情報を含み、構成情報は、作成すべき仮想マシンに必要なコンピューティングリソース数を少なくとも含む。
【００７８】
ユーザが仮想マシンを作成する必要がある場合は、説明し易くするために、仮想マシンは、作成すべき仮想マシンと称され、ユーザは、作成すべき仮想マシンの構成情報をクライアントに入力することができる。次に、クライアントは、作成すべき仮想マシンの構成情報を取得し、作成すべき仮想マシンの構成情報を含む仮想マシン作成要求メッセージをクラウドプラットフォームに送信する。
【００７９】
段階２０２：クラウドプラットフォームは、構成情報に基づいて複数のクラウドホストの中からターゲットクラウドホストを決定する。ターゲットクラウドホストの現在残っている遊休リソース数からコンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しい。
【００８０】
算出される差は、ターゲットクラウドホストが作成すべき仮想マシンを作成した後の、ターゲットクラウドホストの残りの遊休リソース数に等しい。このように、ターゲットクラウドホストが作成すべき仮想マシンを作成した後も、予め設定された閾値以上の数の一部の遊休リソースが確保されることを保証することができ、その結果、ターゲットクラウドホスト上で停止している仮想マシンについて、停止している一部の仮想マシンが起動すると、確保された遊休リソースは、これら一部の仮想マシンを起動するために使用され得る。ターゲットクラウドホスト上の仮想マシンは、比較的速い速度でターゲットクラウドホスト上で起動して、仮想マシンを起動する速度を向上させる。
【００８１】
オプションとして、この段階ではターゲットクラウドホストを決定する以下の２つの方式が列挙されており、他の方式は１つずつ列挙されていない。２つの方式はそれぞれ以下の通りである。
【００８２】
第１方式では、ターゲットクラウドホストにより確保される遊休リソース数が、予め設定された閾値よりも大きいか等しくてよい。この方式の実装時、デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数が取得されてよく、デバイス識別子に対応するリソース数は、デバイス識別子に対応するクラウドホストの現在残っている遊休リソース数を含む。コンピューティングリソース数を、各デバイス識別子に対応する遊休リソース数から別個に減算して、各デバイス識別子に対応する差を取得する。差が予め設定された閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子が選択され、選択されたデバイス識別子に対応するクラウドホストがターゲットクラウドホストとして決定される。
【００８３】
オプションとして、差が予め設定された閾値よりも大きいか等しい各デバイス識別子については、各デバイス識別子に対応するクラウドホストの負荷に基づいて、デバイス識別子が選択されてよく、例えば、負荷が最も軽いクラウドホストのデバイス識別子が選択されてよい。
【００８４】
第２方式では、ターゲットクラウドホストにより確保される遊休リソース割合が、予め設定された割合閾値よりも大きいか等しくてよい。この方式の実装時、デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数が取得されてよく、デバイス識別子に対応するリソース数は、デバイス識別子に対応するクラウドホストのリソース合計数および現在残っている遊休リソース数を含む。コンピューティングリソース数を、各デバイス識別子に対応する遊休リソース数から別個に減算して、各デバイス識別子に対応する差を取得する。各デバイス識別子に対応する遊休リソース割合は、各デバイス識別子に対応する差およびリソース合計数に基づいて別個に算出される。それぞれの遊休リソース割合が予め設定された割合閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子が選択され、選択されたデバイス識別子に対応するクラウドホストがターゲットクラウドホストとして決定される。
【００８５】
オプションとして、遊休リソース割合が予め設定されたスケール閾値よりも大きいか等しい各デバイス識別子については、各デバイス識別子に対応するクラウドホストの負荷に基づいて、デバイス識別子が選択されてよく、例えば、負荷が最も軽いクラウドホストのデバイス識別子が選択されてよい。
【００８６】
段階２０３：作成すべき仮想マシンを識別するために使用される識別子情報を割り当て、作成すべき仮想マシンの識別子情報と構成情報とを含む仮想マシン作成要求メッセージをターゲットクラウドホストに送信する。
【００８７】
作成すべき仮想マシンの識別子情報は、作成すべき仮想マシンを一意に識別するために使用され、作成すべき仮想マシンの識別子情報は、作成すべき仮想マシンのＵＵＩＤなどの情報を含み得る。
【００８８】
段階２０４：ターゲットクラウドホストは、仮想マシン作成要求メッセージを受信し、作成すべき仮想マシンを作成し、クラウドプラットフォームに仮想マシン作成完了メッセージを送信する。
【００８９】
オプションとして、ターゲットクラウドホストは、仮想マシン作成要求メッセージを受信することであって、仮想マシン作成要求メッセージは、作成すべき仮想マシンの識別子情報およびコンピューティングリソース数を含む、受信することと、作成すべき仮想マシンを作成することと、作成すべき仮想マシンを、作成すべき仮想マシンの識別子情報に対応するように設定することと、作成すべき仮想マシンのコンピューティングリソース数に基づいて、作成すべき仮想マシンにコンピューティングリソースを割り当てて、作成すべき仮想マシンを作成することとを行う。
【００９０】
段階２０５：クラウドプラットフォームは、仮想マシン作成完了メッセージを受信し、作成すべき仮想マシンの識別子情報を含む第１通知メッセージをクライアントに送信して、作成すべき仮想マシンが作成されたことをクライアントに通知する。
【００９１】
オプションとして、クライアントは、第１通知メッセージを受信し、仮想マシンの停止、仮想マシンの起動、仮想マシンの移行、および／または仮想マシンの削除の後続の要求のために、第１通知メッセージに含まれる作成すべき仮想マシンの識別子情報を保存することができる。
【００９２】
オプションとして、クラウドプラットフォームは更に、仮想マシン作成完了メッセージを受信した後、仮想マシンの識別子情報とデバイス識別子との間の対応関係において、作成すべき仮想マシンの識別子情報およびターゲットクラウドホストのデバイス識別子を対応して格納すること、および／または、デバイス識別子とリソース数との間の対応関係において格納されるターゲットクラウドホストのデバイス識別子に対応する遊休リソース数をその差に更新すること、および／または、仮想マシンの識別子情報とコンピューティングリソース数との間の対応関係において、作成すべき仮想マシンの識別子情報およびコンピューティングリソース数を対応して格納することができる。
【００９３】
本願のこの実施形態では、ターゲットクラウドホストが決定した後、ターゲットクラウドホストの残りの遊休リソース数が、ターゲットクラウドホストが作成すべき仮想マシンを作成した後、予め設定された閾値よりも大きいか等しくなるため、ターゲットクラウドホストが作成すべき仮想マシンを作成した後も、予め設定された閾値以上の数の一部の遊休リソースが確保されることを保証することができ、その結果、ターゲットクラウドホスト上で停止している一部の仮想マシンが起動すると、確保された遊休リソースは、これら一部の仮想マシンを起動するために使用され得る。これは、仮想マシンを起動する速度に影響を及ぼすものではない。
【００９４】
図３を参照すると、本願のある実施形態は仮想マシン管理方法を提供する。管理方法は、クラウドホスト上の仮想マシンを停止する前述の操作を実行するために使用されてよく、図１に示すシステムに適用されてよい。方法は以下の段階を含む。
【００９５】
段階３０１：クラウドプラットフォームが、クライアントにより送信される仮想マシン停止要求メッセージを受信する。仮想マシン停止要求メッセージは、停止すべき仮想マシンの識別子情報を含む。
【００９６】
ユーザが仮想マシンを停止する必要がある場合は、説明し易くするために、仮想マシンは、停止すべき仮想マシンと称され、ユーザは、停止すべき仮想マシンの識別子情報をクライアントに入力することができる。次に、クライアントは、停止すべき仮想マシンの識別子情報を取得し、停止すべき仮想マシンの識別子情報を含む仮想マシン停止要求メッセージをクラウドプラットフォームに送信する。
【００９７】
段階３０２：クラウドプラットフォームは、停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンが配置されるクラウドホストに仮想マシン停止要求メッセージを転送する。
【００９８】
この段階は以下の通りであってよい。クラウドプラットフォームは、停止すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とデバイス識別子との間の対応関係から、停止すべき仮想マシンが配置されるクラウドホストのデバイス識別子を取得し、デバイス識別子に対応するクラウドホストに仮想マシン停止要求メッセージを転送する。
【００９９】
段階３０３：クラウドホストは、仮想マシン停止要求メッセージを受信し、仮想マシン停止要求メッセージに含まれる停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシを取得する。
【０１００】
クラウドホストは、仮想マシンのタイプとリソース管理ポリシとの間の対応関係を記憶する。従って、クラウドホストは、停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンのタイプを取得し、停止すべき仮想マシンのタイプに基づいて、仮想マシンのタイプとリソース管理ポリシとの間の対応関係から、対応するリソース管理ポリシを取得することができる。
【０１０１】
オプションとして、この段階が実行される前、クラウドプラットフォームは、仮想マシンのタイプとリソース管理ポリシとの間の対応関係を各クラウドホストに送信することができる。各クラウドホストについて、クラウドホストは、仮想マシンのタイプとリソース管理ポリシとの間の対応関係を受信および記憶する。
【０１０２】
オプションとして、仮想マシンのタイプとリソース管理ポリシとの間の対応関係は、クラウドプラットフォームにより作成され得る。
【０１０３】
この段階では、仮想マシンのタイプとリソース管理ポリシとの間の対応関係が表４に示されていると仮定する。停止すべき仮想マシンのタイプが第１タイプの仮想マシンである場合は、取得されたリソース管理ポリシは第１リソース管理ポリシである。停止すべき仮想マシンのタイプが第２タイプの仮想マシンである場合は、取得されたリソース管理ポリシは第２リソース管理ポリシである。停止すべき仮想マシンのタイプが第３タイプの仮想マシンである場合は、取得されたリソース管理ポリシは第３リソース管理ポリシである。
【０１０４】
段階３０４：クラウドホストは、停止すべき仮想マシンを停止し、停止すべき仮想マシンを停止した後、停止すべき仮想マシンにより占有されるコンピューティングリソースをリソース管理ポリシに従って管理する。
【０１０５】
リソース管理ポリシが第１リソース管理ポリシまたは第２リソース管理ポリシである場合は、クラウドホストは、停止すべき仮想マシンを停止した後、停止すべき仮想マシンにより占有されるコンピューティングリソースを解放しない。
【０１０６】
リソース管理ポリシが第３リソース管理ポリシである場合は、クラウドホストは、停止すべき仮想マシンを停止した後に待機し、待機時点が予め設定された時間閾値に達すると、停止すべき仮想マシンにより占有されるコンピューティングリソースを解放する。
【０１０７】
オプションとして、クラウドプラットフォームにより送信され、かつ、停止すべき仮想マシンの起動を要求するために使用される、仮想マシン起動要求メッセージを、クラウドホストが待機プロセスで受信する場合は、クラウドホストは、停止すべき仮想マシンにより占有されるコンピューティングリソースを解放しないものの、コンピューティングリソースを直接使用して停止すべき仮想マシンを起動することで、起動速度を向上させる。
【０１０８】
オプションとして、クラウドホストは更に、クラウドプラットフォームに仮想マシン停止完了メッセージを送信することができ、仮想マシン停止完了メッセージは更に、ステータス識別子情報を含むことができ、ステータス識別子情報は、クラウドホストが、停止すべき仮想マシンにより占有されるコンピューティングリソースを解放するかどうかを識別するために使用される。クラウドプラットフォームは、仮想マシン停止完了メッセージを受信し、仮想マシンの識別子情報とステータス識別子情報との間の対応関係において、停止すべき仮想マシンの識別子情報と、仮想マシン停止完了メッセージに含まれるステータス識別子情報とを対応して格納し、クライアントに第２通知メッセージを送信して、停止すべき仮想マシンが停止したことをクライアントに通知する。
【０１０９】
オプションとして、各クラウドホストについて、クラウドホストは、クラウドホストの残りの遊休リソース数を取得し、クラウドホストの残りの遊休リソース数をクラウドプラットフォームに報告することができる。クラウドホストは、コンピューティングリソースが現在解放されていない仮想マシンを決定し、決定された仮想マシンにより占有されるコンピューティングリソース数に基づいて、占有されるコンピューティングリソース合計数を算出し、仮想マシンに含まれるコンピューティングリソース合計数と、占有されるコンピューティングリソース合計数とに基づいて、クラウドホストの残りの遊休リソース数を取得することができる。
【０１１０】
オプションとして、クラウドプラットフォームは、クラウドホストにより送信される遊休リソース数を受信し、デバイス識別子とリソース数との間の対応関係において、クラウドホストのデバイス識別子に対応する遊休リソース数を、受信された遊休リソース数に更新することができる。
【０１１１】
クラウドホストは、クラウドホストに含まれる仮想マシンが変わるときに、クラウドホストの遊休リソース数を取得することができる。例えば、クラウドホストは、仮想マシンを停止するとき、仮想マシンを作成するとき、または仮想マシンを起動するときに、クラウドホストの遊休リソース数を取得する。代替的に、クラウドホストは、クラウドホストの遊休リソース数を定期的に取得することができる。
【０１１２】
本願のこの実施形態では、クラウドホストは、停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンに対応するリソース管理ポリシを取得する。このように、クラウドホストは、停止すべき仮想マシンを停止した後、リソース管理ポリシに基づいて、停止すべき仮想マシンにより占有されるコンピューティングリソースを管理し、その結果、各仮想マシンについて、仮想マシンに対応するリソース管理ポリシが、仮想マシンにより占有されるコンピューティングリソースを管理するために使用される。これによって、仮想マシンを管理する方式が強化される。
【０１１３】
図４を参照すると、本願のある実施形態は仮想マシン管理方法を提供する。管理方法は、クラウドホスト上の仮想マシンを移行する前述の操作を実行するために使用されてよく、図１に示すシステムに適用されてよい。方法は以下の段階を含む。
【０１１４】
段階４０１：クラウドプラットフォームが、クライアントにより送信される仮想マシン移行要求メッセージを受信する。仮想マシン移行要求メッセージは、移行すべき仮想マシンの識別子情報を含む。
【０１１５】
ユーザが仮想マシンを移行する必要がある場合は、説明し易くするために、仮想マシンは、移行すべき仮想マシンと称され、ユーザは、移行すべき仮想マシンの識別子情報をクライアントに入力することができる。次に、クライアントは、移行すべき仮想マシンの識別子情報を取得し、移行すべき仮想マシンの識別子情報を含む仮想マシン移行要求メッセージをクラウドプラットフォームに送信する。
【０１１６】
段階４０２：クラウドプラットフォームは、仮想マシンの識別子情報とデバイス識別子との間の対応関係において、移行すべき仮想マシンの識別子情報に対応する第１クラウドホストのデバイス識別子を第２クラウドホストのデバイス識別子に更新する。第１クラウドホストは、移行すべき仮想マシンが移行の前に配置されるクラウドホストであり、第２クラウドホストは、移行すべき仮想マシンが移行の後に配置されるクラウドホストである。
【０１１７】
オプションとして、ユーザは更に、第２クラウドホストのデバイス識別子をクライアントに入力することができる。このように、仮想マシン移行要求メッセージは、第２クラウドホストのデバイス識別子を含むことができ、クラウドプラットフォームは、仮想マシン移行要求メッセージから第２クラウドホストのデバイス識別子を取得することができる。
【０１１８】
代替的に、ユーザが第２クラウドホストのデバイス識別子をクライアントに入力しない場合、すなわち、仮想マシン移行要求メッセージが第２クラウドホストのデバイス識別子を含まない場合は、クラウドプラットフォームは、複数のクラウドホストの中から第１クラウドホストとは異なる別のクラウドホストを第２クラウドホストとして選択することができる。
【０１１９】
オプションとして、クラウドプラットフォームが第２クラウドホストを選択すると、第１クラウドホストが、移行すべき仮想マシンにより占有されるコンピューティングリソースを解放した場合に、クラウドプラットフォームは、複数のクラウドホストの中から第１クラウドホストとは異なる別のクラウドホストを第２クラウドホストとしてランダムに選択することができる。第１クラウドホストが、移行すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合は、クラウドプラットフォームは、複数のクラウドホストの中から、移行すべき仮想マシンに必要なコンピューティングリソース数よりも遊休リソース数が多いか等しい、第１クラウドホストとは異なる別のクラウドホストを第２クラウドホストとして選択することができる。
【０１２０】
オプションとして、クラウドプラットフォームは、移行すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とステータス識別子情報との間の対応関係から、対応するステータス識別子情報を取得することができ、ステータス識別子情報は、移行すべき仮想マシンにより占有されるコンピューティングリソースが解放されるかどうかを識別するために使用され、その結果、クラウドプラットフォームは、ステータス識別子情報に基づいて、第１クラウドホストが、移行すべき仮想マシンにより占有されるコンピューティングリソースを解放するかどうかを判断することができる。
【０１２１】
オプションとして、クラウドプラットフォームは代替的に、移行すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とコンピューティングリソース数との間の対応関係から、移行すべき仮想マシンに必要なコンピューティングリソース数を取得することができる。
【０１２２】
段階４０３：第１クラウドホストが、移行すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合は、クラウドプラットフォームは、第２クラウドホストにリソース申請要求メッセージを送信する。リソース申請要求メッセージは、移行すべき仮想マシンの識別子情報と、必要なコンピューティングリソース数とを含む。
【０１２３】
オプションとして、クラウドプラットフォームは更に、第１クラウドホストにリソース解放要求メッセージを送信することができ、リソース解放要求メッセージは、移行すべき仮想マシンの識別子情報を含む。このように、第１クラウドホストは、リソース解放要求メッセージを受信し、リソース解放要求メッセージに含まれる移行すべき仮想マシンの識別子情報に基づいて、移行すべき仮想マシンにより占有されるコンピューティングリソースを解放する。
【０１２４】
段階４０４：第２クラウドホストは、リソース申請要求メッセージを受信し、リソース申請要求メッセージに基づいて、移行すべき仮想マシンのコンピューティングリソースを申請する。
【０１２５】
リソース申請要求メッセージは、移行すべき仮想マシンの識別子情報と、必要なコンピューティングリソース数とを含む。第２クラウドホストは、コンピューティングリソース数に基づいてコンピューティングリソースを割り当て、コンピューティングリソースを識別子情報に対応するように設定する。このように、移行すべき仮想マシンが第２クラウドホスト上で起動すると、第２クラウドホストは、移行すべき仮想マシンの識別子情報に対応するコンピューティングリソースを取得し、コンピューティングリソースを使用することにより、移行すべき仮想マシンを起動することができる。
【０１２６】
オプションとして、クラウドプラットフォームは更に、移行を完了した後、クライアントに第３通知メッセージを送信して、移行すべき仮想マシンが移行することをクライアントに通知することができる。
【０１２７】
本願のこの実施形態では、クラウドプラットフォームは、移行すべき仮想マシンを移行すると、仮想マシンの識別子情報とデバイス識別子との間の対応関係において、移行すべき仮想マシンの識別子情報に対応する第１クラウドホストのデバイス識別子を、第２クラウドホストのデバイス識別子に更新して、仮想マシンを移行し、移行効率を向上させることができる。
【０１２８】
図５を参照すると、本願のある実施形態は仮想マシン管理方法を提供する。管理方法は、クラウドホスト上の仮想マシンを起動する前述の操作を実行するために使用されてよく、図１に示すシステムに適用されてよい。方法は以下の段階を含む。
【０１２９】
段階５０１：クラウドプラットフォームが、クライアントにより送信される仮想マシン起動要求メッセージを受信する。仮想マシン起動要求メッセージは、起動すべき仮想マシンの識別子情報を含む。
【０１３０】
停止している仮想マシンをユーザが起動する必要がある場合は、説明し易くするために、仮想マシンは、起動すべき仮想マシンと称され、ユーザは、起動すべき仮想マシンの識別子情報をクライアントに入力することができる。次に、クライアントは、起動すべき仮想マシンの識別子情報を取得し、起動すべき仮想マシンの識別子情報を含む仮想マシン起動要求メッセージをクラウドプラットフォームに送信する。
【０１３１】
段階５０２：クラウドプラットフォームは、起動すべき仮想マシンの識別子情報に基づいて、起動すべき仮想マシンが配置される第１クラウドホストに仮想マシン起動要求メッセージを転送する。
【０１３２】
この段階は以下の通りであってよい。クラウドプラットフォームは、起動すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とデバイス識別子との間の対応関係から、起動すべき仮想マシンが配置される第１クラウドホストのデバイス識別子を取得し、デバイス識別子に対応する第１クラウドホストに仮想マシン起動要求メッセージを送信する。
【０１３３】
段階５０３：第１クラウドホストは、仮想マシン起動要求メッセージを受信し、仮想マシン起動要求メッセージに基づいて、起動すべき仮想マシンが起動できるかどうかを判断し、起動すべき仮想マシンが起動できる場合は段階５０４を実行する、または、起動すべき仮想マシンが起動できない場合は段階５０５を実行する。
【０１３４】
第１クラウドホストは、仮想マシン起動要求メッセージに含まれる起動すべき仮想マシンの識別子情報に基づいて、起動すべき仮想マシンを決定し、起動すべき仮想マシンにより占有されるコンピューティングリソース数を取得し、第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合は、起動すべき仮想マシンが起動できると判断し、第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、起動すべき仮想マシンに必要なコンピューティングリソース数が、第１クラウドホストの現在残っている遊休リソース数よりも少ないか等しい場合は、起動すべき仮想マシンが起動できると判断し、第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、起動すべき仮想マシンに必要なコンピューティングリソース数が、第１クラウドホストの現在残っている遊休リソース数よりも多い場合は、起動すべき仮想マシンが起動できないと判断する。
【０１３５】
段階５０４：第１クラウドホストは、起動すべき仮想マシンを起動し、クラウドプラットフォームに仮想マシン起動完了メッセージを送信し、段階５０９を実行する。
【０１３６】
段階５０５：第１クラウドホストは、クラウドプラットフォームに仮想マシン起動失敗メッセージを送信し、段階５０６を実行する。
【０１３７】
段階５０６：クラウドプラットフォームは、仮想マシン起動失敗メッセージを受信し、起動すべき仮想マシンの識別子情報に基づいて、複数のクラウドホストの中から第３クラウドホストを決定する。第３クラウドホストの現在残っている遊休リソース数から起動すべき仮想マシンに必要なコンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しい。
【０１３８】
オプションとして、クラウドプラットフォームは、起動すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とコンピューティングリソース数との間の対応関係から、起動すべき仮想マシンに必要なコンピューティングリソース数を取得し、コンピューティングリソース数に基づいて、複数のクラウドホストの中から第３クラウドホストを決定する。
【０１３９】
オプションとして、この段階では第３クラウドホストを決定する以下の２つの方式が列挙されており、他の方式は１つずつ列挙されていない。２つの方式はそれぞれ以下の通りである。
【０１４０】
第１方式では、第３クラウドホストにより確保される遊休リソース数が、予め設定された閾値よりも大きいか等しくてよい。この方式の実装時、デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数が取得されてよく、デバイス識別子に対応するリソース数は、デバイス識別子に対応するクラウドホストの現在残っている遊休リソース数を含む。コンピューティングリソース数を、各デバイス識別子に対応する遊休リソース数から別個に減算して、各デバイス識別子に対応する差を取得する。差が予め設定された閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子が選択され、選択されたデバイス識別子に対応するクラウドホストが第３クラウドホストとして決定される。
【０１４１】
オプションとして、差が予め設定された閾値よりも大きいか等しい各デバイス識別子については、各デバイス識別子に対応するクラウドホストの負荷に基づいて、デバイス識別子が選択されてよく、例えば、負荷が最も軽いクラウドホストのデバイス識別子が選択されてよい。
【０１４２】
第２方式では、第３クラウドホストにより確保される遊休リソース割合が、予め設定された割合閾値よりも大きいか等しくてよい。この方式の実装時、デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数が取得されてよく、デバイス識別子に対応するリソース数は、デバイス識別子に対応するクラウドホストのリソース合計数および現在残っている遊休リソース数を含む。コンピューティングリソース数を、各デバイス識別子に対応する遊休リソース数から別個に減算して、各デバイス識別子に対応する差を取得し、各デバイス識別子に対応する遊休リソース割合を、各デバイス識別子に対応する差およびリソース合計数に基づいて別個に算出する。それぞれの遊休リソース割合が予め設定された割合閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子が選択され、選択されたデバイス識別子に対応するクラウドホストが第３クラウドホストとして決定される。
【０１４３】
オプションとして、遊休リソース割合が予め設定されたスケール閾値よりも大きいか等しい各デバイス識別子については、各デバイス識別子に対応するクラウドホストの負荷に基づいて、デバイス識別子が選択されてよく、例えば、負荷が最も軽いクラウドホストのデバイス識別子が選択されてよい。
【０１４４】
段階５０７：クラウドプラットフォームは、起動すべき仮想マシンの識別子情報と構成情報とを含む仮想マシン起動要求メッセージを第３クラウドホストに送信する。構成情報は、起動すべき仮想マシンに必要なコンピューティングリソース数を少なくとも含む。
【０１４５】
段階５０８：第３クラウドホストは、仮想マシン起動要求メッセージを受信し、起動すべき仮想マシンを作成し、クラウドプラットフォームに仮想マシン起動完了メッセージを送信する。
【０１４６】
この段階では、第３クラウドホストは、仮想マシン起動要求メッセージを受信し、起動すべき仮想マシンを作成し、起動すべき仮想マシンを、仮想マシン起動要求メッセージ内の起動すべき仮想マシンの識別子情報に対応するように設定し、仮想マシン起動要求メッセージに含まれるコンピューティングリソース数に基づいて、起動すべき仮想マシンにコンピューティングリソースを割り当て、クラウドプラットフォームに仮想マシン起動完了メッセージを送信して、起動すべき仮想マシンを起動する。
【０１４７】
段階５０９：クラウドプラットフォームは、仮想マシン起動完了メッセージを受信し、クライアントに第４通知メッセージを送信して、起動すべき仮想マシンが起動することをクライアントに通知する。
【０１４８】
第１クラウドホストおよび／または第３クラウドホストは、第１クラウドホストおよび／または第３クラウドホストの残りの遊休リソース数を取得し、クラウドプラットフォームに残りの遊休リソース数を報告することができる。詳細な実装プロセスについては、図３に示す実施形態における関連内容を参照されたい。詳細についてはここで説明しない。
【０１４９】
本願のこの実施形態では、第３クラウドホストが起動すべき仮想マシンを起動した後、第３クラウドホストの残りの遊休リソース数は、予め設定された閾値よりも大きいか等しい。これによって、第３クラウドホストが起動すべき仮想マシンを起動した後も、予め設定された閾値以上の数の一部の遊休リソースが確保されることを保証することができ、その結果、第３クラウドホスト上で停止している一部の仮想マシンが起動すると、確保された遊休リソースは、これら一部の仮想マシンを起動するために使用され得る。これは、これら一部の仮想マシンを起動する速度に影響を及ぼすものではない。
【０１５０】
図６を参照すると、本願のある実施形態は仮想マシン管理方法を提供する。管理方法は、クラウドホスト上の仮想マシンを削除する前述の操作を実行するために使用されてよく、図１に示すシステムに適用されてよい。方法は以下の段階を含む。
【０１５１】
段階６０１：クラウドプラットフォームが、クライアントにより送信される仮想マシン削除要求メッセージを受信する。仮想マシン削除要求メッセージは、削除すべき仮想マシンの識別子情報を含む。
【０１５２】
ユーザが仮想マシンを削除する必要がある場合は、説明し易くするために、仮想マシンは、削除すべき仮想マシンと称され、ユーザは、削除すべき仮想マシンの識別子情報をクライアントに入力することができる。次に、クライアントは、削除すべき仮想マシンの識別子情報を取得し、削除すべき仮想マシンの識別子情報を含む仮想マシン削除要求メッセージをクラウドプラットフォームに送信する。
【０１５３】
段階６０２：クラウドプラットフォームは、削除すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とデバイス識別子との間の対応関係から、削除すべき仮想マシンの識別子情報を含む対応関係を削除する。
【０１５４】
この段階では、クラウドプラットフォームは、削除すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とデバイス識別子との間の対応関係から、削除すべき仮想マシンが配置されるクラウドホストのデバイス識別子を取得し、仮想マシンの識別子情報とデバイス識別子との間の対応関係から、削除すべき仮想マシンの識別子情報とクラウドホストのデバイス識別子とを含む対応関係を削除する。
【０１５５】
段階６０３：クラウドホストが、移行すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合は、クラウドプラットフォームは、削除すべき仮想マシンが配置されるクラウドホストにリソース解放要求メッセージを送信する。リソース解放要求メッセージは、削除すべき仮想マシンの識別子情報を含む。
【０１５６】
この段階では、クラウドプラットフォームは、クラウドホストのデバイス識別子に基づいて、クラウドホストにリソース解放要求メッセージを送信する。リソース解放要求メッセージは、削除すべき仮想マシンの識別子情報を含む。
【０１５７】
オプションとして、クラウドプラットフォームは、削除すべき仮想マシンの識別子情報に基づいて、仮想マシンの識別子情報とステータス識別子情報との間の対応関係から、対応するステータス識別子情報を取得することができ、ステータス識別子情報は、削除すべき仮想マシンにより占有されるコンピューティングリソースが解放されるかどうかを識別するために使用され、その結果、クラウドプラットフォームは、ステータス識別子情報に基づいて、クラウドホストが、削除すべき仮想マシンにより占有されるコンピューティングリソースを解放するかどうかを判断することができる。
【０１５８】
段階６０４：クラウドホストは、リソース解放要求メッセージを受信し、削除すべき仮想マシンの識別子情報に基づいて、削除すべき仮想マシンにより占有されるコンピューティングリソースを解放する。
【０１５９】
オプションとして、クラウドプラットフォームは更に、削除を完了した後、クライアントに第５通知メッセージを送信して、削除すべき仮想マシンが削除されることをクライアントに通知することができる。
【０１６０】
図７を参照すると、本願のある実施形態は仮想マシン管理装置７００を提供する。クラウドプラットフォームが、装置７００を管理するように構成される。装置７００は、図１から図６に示す任意の実施形態におけるクラウドホストまたはクラウドホストの一部であってよく、クラウドプラットフォームにより送信される仮想マシン停止要求メッセージを受信するように構成される受信ユニット７０１であって、仮想マシン停止要求メッセージは、停止すべき仮想マシンの識別子情報を含む、受信ユニット７０１と、停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシを取得することと、停止すべき仮想マシンを停止し、停止すべき仮想マシンを停止した後、停止すべき仮想マシンにより占有されるコンピューティングリソースをリソース管理ポリシに従って管理することとを行うように構成される処理ユニット７０２とを含む。
【０１６１】
オプションとして、処理ユニット７０２は、停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンのタイプを取得し、停止すべき仮想マシンのタイプに基づいて、仮想マシンのタイプとリソース管理ポリシとの間の対応関係から、対応するリソース管理ポリシを取得するように構成される。
【０１６２】
オプションとして、停止すべき仮想マシンが装置のハードディスクを占有する第１タイプの仮想マシンである場合、または、停止すべき仮想マシンがＶＩＰユーザに属する第２タイプの仮想マシンである場合に、リソース管理ポリシは、停止すべき仮想マシンにより占有されるコンピューティングリソースを解放しないように装置７００に指示するために使用される。
【０１６３】
停止すべき仮想マシンが第１タイプの仮想マシンおよび第２タイプの仮想マシン以外の別のタイプの仮想マシンである場合は、リソース管理ポリシは、装置７００が、停止すべき仮想マシンが停止した後に待機し、待機時点が予め設定された時間閾値に達すると、停止すべき仮想マシンにより占有されるコンピューティングリソースを解放すること、を指示するために使用される。
【０１６４】
オプションとして、受信ユニット７０１は更に、クラウドプラットフォームにより送信される、仮想マシンのタイプとリソース管理ポリシとの間の対応関係を受信するように構成される。
【０１６５】
本願のこの実施形態では、装置は、停止すべき仮想マシンの識別子情報に基づいて、停止すべき仮想マシンに対応するリソース管理ポリシを取得する。このように、装置は、停止すべき仮想マシンを停止した後、リソース管理ポリシに基づいて、停止すべき仮想マシンにより占有されるコンピューティングリソースを管理し、その結果、各仮想マシンについて、仮想マシンに対応するリソース管理ポリシが、仮想マシンにより占有されるコンピューティングリソースを管理するために使用される。これによって、仮想マシンを管理する方式が強化される。
【０１６６】
図８を参照すると、本願のある実施形態は仮想マシン管理装置８００を提供する。装置８００は、複数のクラウドホストを管理するように構成される。装置８００は、図１から図６に示す任意の実施形態におけるクラウドプラットフォームまたはクラウドプラットフォームの一部であってよく、クライアントにより送信される仮想マシン作成要求メッセージを受信するように構成される受信ユニット８０１であって、仮想マシン作成要求メッセージは、作成すべき仮想マシンの構成情報を含み、構成情報は、作成すべき仮想マシンに必要なコンピューティングリソース数を少なくとも含む、受信ユニット８０１と、構成情報に基づいて複数のクラウドホストの中からターゲットクラウドホストを決定するように構成される処理ユニット８０２であって、ターゲットクラウドホストの現在残っている遊休リソース数からコンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しい、処理ユニット８０２と、ターゲットクラウドホストに仮想マシン作成要求メッセージを送信するように構成される送信ユニット８０３であって、仮想マシン作成要求メッセージは、作成すべき仮想マシンを作成するようにターゲットクラウドホストに要求するために使用される、送信ユニット８０３とを含む。
【０１６７】
オプションとして、処理ユニット８０２は、デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数を取得することであって、デバイス識別子に対応するリソース数は、デバイス識別子に対応するクラウドホストの現在残っている遊休リソース数を含む、取得することと、各デバイス識別子に対応する遊休リソース数からコンピューティングリソース数を別個に減算して、各デバイス識別子に対応する差を取得することと、それぞれの差が予め設定された閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子を選択し、選択されたデバイス識別子に対応するクラウドホストをターゲットクラウドホストとして決定することとを行うように構成される。
【０１６８】
オプションとして、処理ユニット８０２は、デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数を取得することであって、デバイス識別子に対応するリソース数は、デバイス識別子に対応するクラウドホストのリソース合計数および現在残っている遊休リソース数を含む、取得することと、各デバイス識別子に対応する遊休リソース数からコンピューティングリソース数を別個に減算して、各デバイス識別子に対応する差を取得することと、各デバイス識別子に対応する差およびリソース合計数に基づいて、各デバイス識別子に対応する遊休リソース割合を別個に算出することと、それぞれの遊休リソース割合が予め設定された割合閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子を選択し、選択されたデバイス識別子に対応するクラウドホストをターゲットクラウドホストとして決定することとを行うように構成される。
【０１６９】
オプションとして、処理ユニット８０２は更に、仮想マシンの識別子情報とデバイス識別子との間の対応関係において、作成すべき仮想マシンの識別子情報およびターゲットクラウドホストのデバイス識別子を対応して格納すること、および／または、デバイス識別子とリソース数との間の対応関係において格納されるターゲットクラウドホストのデバイス識別子に対応する遊休リソース数を、ターゲットクラウドホストのデバイス識別子に対応する差に更新することを行うように構成される。
【０１７０】
オプションとして、受信ユニット８０１は更に、クライアントにより送信される仮想マシン移行要求メッセージを受信するように構成される。仮想マシン移行要求メッセージは、移行すべき仮想マシンの識別子情報を含む。
【０１７１】
処理ユニット８０２は更に、仮想マシンの識別子情報とデバイス識別子との間の対応関係において、移行すべき仮想マシンの識別子情報に対応する第１クラウドホストのデバイス識別子を第２クラウドホストのデバイス識別子に更新するように構成される。第１クラウドホストは、移行すべき仮想マシンが移行の前に配置されるクラウドホストであり、第２クラウドホストは、移行すべき仮想マシンが移行の後に配置されるクラウドホストである。
【０１７２】
オプションとして、送信ユニット８０３は更に、第１クラウドホストが、移行すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合に、第２クラウドホストにリソース申請要求メッセージを送信するように構成される。リソース申請要求メッセージは、移行すべき仮想マシンに必要なコンピューティングリソース数を含み、リソース申請要求メッセージは、移行すべき仮想マシンに必要なコンピューティングリソース数に基づいて、移行すべき仮想マシンのコンピューティングリソースを申請するために第２クラウドホストにより使用される。
【０１７３】
オプションとして、受信ユニット８０１は更に、クライアントにより送信される仮想マシン起動要求メッセージを受信するように構成される。仮想マシン起動要求メッセージは、起動すべき仮想マシンの識別子情報を含む。
【０１７４】
処理ユニット８０２は更に、起動すべき仮想マシンが配置される第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合、または、第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、第１クラウドホストの遊休リソース数が、起動すべき仮想マシンに必要なコンピューティングリソース数よりも多いか等しい場合に、起動すべき仮想マシンを第１クラウドホスト上で起動すること、第１クラウドホストが、起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、第１クラウドホストの遊休リソース数が、起動すべき仮想マシンに必要なコンピューティングリソース数よりも少ない場合に、起動すべき仮想マシンを第３クラウドホスト上で起動することであって、第３クラウドホストの遊休リソース数から起動すべき仮想マシンに必要なコンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しく、第１クラウドホストおよび第３クラウドホストは、２つの異なるクラウドホストである、起動することを行うように構成される。
【０１７５】
オプションとして、受信ユニット８０１は更に、クライアントにより送信される仮想マシン削除要求メッセージを受信するように構成される。仮想マシン削除要求メッセージは、削除すべき仮想マシンの識別子情報を含む。
【０１７６】
処理ユニット８０２は更に、仮想マシンの識別子情報とデバイス識別子との間の対応関係から、削除すべき仮想マシンの識別子情報を含む対応関係を削除するように構成される。
【０１７７】
本願のこの実施形態では、処理ユニットがターゲットクラウドホストを決定すると、ターゲットクラウドホストに対応する差が、予め設定された閾値よりも大きいか等しくなるため、ターゲットクラウドホストが作成すべき仮想マシンを作成した後も、予め設定された閾値以上の数の一部の遊休リソースが確保されることを保証することができ、その結果、ターゲットクラウドホスト上で停止している一部の仮想マシンが起動すると、確保された遊休リソースは、これら一部の仮想マシンを起動するために使用され得る。これは、これら一部の仮想マシンを起動する速度に影響を及ぼすものではない。
【０１７８】
図９は、本願のある実施形態に係る仮想マシン管理装置９００の概略図である。装置９００は、少なくとも１つのプロセッサ９０１、バスシステム９０２、メモリ９０３、および少なくとも１つのトランシーバ９０４を含む。
【０１７９】
装置９００は、ハードウェア構造の装置であり、図７の装置に機能ユニットを実装するように構成され得る。例えば、当業者であれば、図７に示す装置７００内の処理ユニット７０２が、メモリ９０３内のコードを呼び出すことによって少なくとも１つのプロセッサ９０１により実装され得ること、および、図７に示す装置７００内の受信ユニット７０１が、少なくとも１つのトランシーバ９０４により実装され得ることを理解することができる。
【０１８０】
オプションとして、装置９００は更に、図１から図６に示す実施形態の何れか１つにおいてクラウドホストの機能を実装するように構成され得る。
【０１８１】
オプションとして、プロセッサ９０１は、汎用中央処理装置（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ、ＣＰＵ）、マイクロプロセッサ、特定用途向け集積回路（ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ、ＡＳＩＣ）、または、本願の解決策でプログラムの実行を制御するように構成される１または複数の集積回路であってよい。
【０１８２】
バスシステム９０２は、前述の構成要素間で情報を伝送するための経路を含み得る。
【０１８３】
トランシーバ９０４は、別のデバイスまたは通信ネットワーク、例えば、イーサネット（登録商標）、無線アクセスネットワーク（ｒａｄｉｏ  ａｃｃｅｓｓ  ｎｅｔｗｏｒｋ、ＲＡＮ）、または無線ローカルエリアネットワーク（ｗｉｒｅｌｅｓｓ  ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ、ＷＬＡＮ）と通信するように構成される。
【０１８４】
メモリ９０３は、リードオンリメモリ（ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ、ＲＯＭ）、または静的な情報および命令を記憶できる別のタイプの静的記憶デバイス、ランダムアクセスメモリ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ、ＲＡＭ）、または情報および命令を記憶できる別のタイプの動的記憶デバイスであってもよいし、電気的消去可能プログラマブルリードオンリメモリ（ｅｌｅｃｔｒｉｃａｌｌｙ  ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ、ＥＥＰＲＯＭ）、コンパクトディスクリードオンリメモリ（ｃｏｍｐａｃｔ  ｄｉｓｃ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ、ＣＤ−ＲＯＭ）もしくは別のコンパクトディスク記憶装置、光ディスク記憶装置（コンパクトディスク、レーザディスク、光ディスク、デジタル多用途ディスク、またはブルーレイディスクなど）、および、ディスク記憶媒体もしくは別のディスク記憶デバイス、または、予想されるプログラムコードを命令またはデータ構造の形態で保持または記憶するために使用でき、かつ、コンピュータがアクセスできる、任意の他の媒体であってもよい。ただし、本明細書ではメモリ９０３は限定されない。メモリは独立して存在することができ、バスを使用することによりプロセッサに接続される。代替的に、メモリはプロセッサと統合され得る。
【０１８５】
メモリ９０３は、本願の解決策を実行するためのアプリケーションプログラムコードを記憶するように構成され、アプリケーションプログラムコードは、プロセッサ９０１の制御下で実行される。プロセッサ９０１は、メモリ９０３に記憶されるアプリケーションプログラムコードを実行して、本特許の方法で機能を実装するように構成される。
【０１８６】
特定の実装において、ある実施形態では、プロセッサ９０１は、１または複数のＣＰＵ、例えば、図９のＣＰＵ０およびＣＰＵ１を含み得る。
【０１８７】
特定の実装において、ある実施形態では、装置９００は、複数のプロセッサ、例えば、図９のプロセッサ９０１およびプロセッサ９０７を含み得る。プロセッサの各々は、シングルコア（シングルＣＰＵ）プロセッサまたはマルチコア（マルチＣＰＵ）プロセッサであってよい。本明細書のプロセッサは、データ（例えば、コンピュータプログラム命令）を処理するための１または複数のデバイス、回路、および／または処理コアであってよい。
【０１８８】
特定の実装において、ある実施形態では、装置９００は更に、出力デバイス９０５および入力デバイス９０６を含み得る。出力デバイス９０５は、プロセッサ９０１と通信し、複数の方式で情報を表示することができる。例えば、出力デバイス９０５は、液晶ディスプレイ（ｌｉｑｕｉｄ  ｃｒｙｓｔａｌ  ｄｉｓｐｌａｙ、ＬＣＤ）、発光ダイオード（ｌｉｇｈｔ  ｅｍｉｔｔｉｎｇ  ｄｉｏｄｅ、ＬＥＤ）表示デバイス、陰極線管（ｃａｔｈｏｄｅ  ｒａｙ  ｔｕｂｅ、ＣＲＴ）表示デバイス、またはプロジェクタ（ｐｒｏｊｅｃｔｏｒ）であってよい。入力デバイス９０６は、プロセッサ９０１と通信し、複数の方式でユーザの入力を受け取ることができる。例えば、入力デバイス９０６は、マウス、キーボード、タッチスクリーンデバイス、または感知デバイスであってよい。
【０１８９】
図１０は、本願のある実施形態に係る仮想マシン管理装置１０００の概略図である。装置１０００は、少なくとも１つのプロセッサ１００１、バスシステム１００２、メモリ１００３、および少なくとも１つのトランシーバ１００４を含む。
【０１９０】
装置１０００は、ハードウェア構造の装置であり、図８の装置に機能ユニットを実装するように構成され得る。例えば、当業者であれば、図８に示す装置８００内の処理ユニット８０２が、メモリ１００３内のコードを呼び出すことによって少なくとも１つのプロセッサ１００１により実装され得ること、および、図８に示す装置８００内の受信ユニット８０１および／または送信ユニット８０３が、少なくとも１つのトランシーバ１００４により実装され得ることを理解することができる。
【０１９１】
オプションとして、装置１０００は更に、図１から図６に示す実施形態の何れか１つにおいてクラウドプラットフォームの機能を実装するように構成され得る。
【０１９２】
オプションとして、プロセッサ１００１は、汎用中央処理装置（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ、ＣＰＵ）、マイクロプロセッサ、特定用途向け集積回路（ａｐｐｌｉｃａｔｉｏｎ−ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ、ＡＳＩＣ）、または、本願の解決策でプログラムの実行を制御するように構成される１または複数の集積回路であってよい。
【０１９３】
バスシステム１００２は、前述の構成要素間で情報を伝送するための経路を含み得る。
【０１９４】
トランシーバ１００４は、別のデバイスまたは通信ネットワーク、例えば、イーサネット、無線アクセスネットワーク（ｒａｄｉｏ  ａｃｃｅｓｓ  ｎｅｔｗｏｒｋ、ＲＡＮ）、または無線ローカルエリアネットワーク（ｗｉｒｅｌｅｓｓ  ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ、ＷＬＡＮ）と通信するように構成される。
【０１９５】
メモリ１００３は、リードオンリメモリ（ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ、ＲＯＭ）、または静的な情報および命令を記憶できる別のタイプの静的記憶デバイス、ランダムアクセスメモリ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ、ＲＡＭ）、または情報および命令を記憶できる別のタイプの動的記憶デバイスであってもよいし、電気的消去可能プログラマブルリードオンリメモリ（ｅｌｅｃｔｒｉｃａｌｌｙ  ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ、ＥＥＰＲＯＭ）、コンパクトディスクリードオンリメモリ（ｃｏｍｐａｃｔ  ｄｉｓｃ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ、ＣＤ−ＲＯＭ）もしくは別のコンパクトディスク記憶装置、光ディスク記憶装置（コンパクトディスク、レーザディスク、光ディスク、デジタル多用途ディスク、またはブルーレイディスクなど）、および、ディスク記憶媒体もしくは別のディスク記憶デバイス、または、予想されるプログラムコードを命令またはデータ構造の形態で保持または記憶するために使用でき、かつ、コンピュータがアクセスできる、任意の他の媒体であってもよい。ただし、本明細書ではメモリ１００３は限定されない。メモリは独立して存在することができ、バスを使用することによりプロセッサに接続される。代替的に、メモリはプロセッサと統合され得る。
【０１９６】
メモリ１００３は、本願の解決策を実行するためのアプリケーションプログラムコードを記憶するように構成され、アプリケーションプログラムコードは、プロセッサ９０１の制御下で実行される。プロセッサ１００１は、メモリ１００３に記憶されるアプリケーションプログラムコードを実行して、本特許の方法で機能を実装するように構成される。
【０１９７】
特定の実装において、ある実施形態では、プロセッサ１００１は、１または複数のＣＰＵ、例えば、図９のＣＰＵ０およびＣＰＵ１を含み得る。
【０１９８】
特定の実装において、ある実施形態では、装置１０００は、複数のプロセッサ、例えば、図１０のプロセッサ１００１およびプロセッサ１００７を含み得る。プロセッサの各々は、シングルコア（シングルＣＰＵ）プロセッサまたはマルチコア（マルチＣＰＵ）プロセッサであってよい。本明細書のプロセッサは、データ（例えば、コンピュータプログラム命令）を処理するための１または複数のデバイス、回路、および／または処理コアであってよい。
【０１９９】
特定の実装において、ある実施形態では、装置１０００は更に、出力デバイス１００５および入力デバイス１００６を含み得る。出力デバイス１００５は、プロセッサ１００１と通信し、複数の方式で情報を表示することができる。例えば、出力デバイス１００５は、液晶ディスプレイ（ｌｉｑｕｉｄ  ｃｒｙｓｔａｌ  ｄｉｓｐｌａｙ、ＬＣＤ）、発光ダイオード（ｌｉｇｈｔ  ｅｍｉｔｔｉｎｇ  ｄｉｏｄｅ、ＬＥＤ）表示デバイス、陰極線管（ｃａｔｈｏｄｅ  ｒａｙ  ｔｕｂｅ、ＣＲＴ）表示デバイス、またはプロジェクタ（ｐｒｏｊｅｃｔｏｒ）であってよい。入力デバイス１００６は、プロセッサ１００１と通信し、複数の方式でユーザの入力を受け取ることができる。例えば、入力デバイス１００６は、マウス、キーボード、タッチスクリーンデバイス、感知デバイスであってよい。
【０２００】
図１１を参照すると、本願のある実施形態は仮想マシン管理システム１１００を提供する。システムは、図７または図９に示す装置と、図８または図１０に示す装置とを含む。図７または図９の装置は、クラウドホスト１１０１であってよく、図８または図１０の装置は、クラウドプラットフォーム１１０２であってよい。
【０２０１】
当業者であれば、実施形態の段階の全部または一部が、ハードウェアまたは関連するハードウェアに命令をするプログラムにより実装され得ることを理解することができる。プログラムは、コンピュータ可読記憶媒体に記憶され得る。記憶媒体は、リードオンリメモリ、磁気ディスク、または光ディスクを含み得る。
【０２０２】
前述の説明は、本願の任意選択の実施形態に過ぎず、本願を限定することを意図するものではない。本願の趣旨および原理から逸脱することなく行われる修正、同等の置換、または改良は何れも、本願の保護範囲に含まれるべきである。
【０２０３】
［他の考えられる項目］
（項目１）
クラウドホストに適用される仮想マシン管理方法であって、クラウドプラットフォームが、上記クラウドホストを管理するように構成され、
上記クラウドホストが、上記クラウドプラットフォームにより送信される仮想マシン停止要求メッセージを受信する段階であって、上記仮想マシン停止要求メッセージは、停止すべき仮想マシンの識別子情報を含む、段階と、
上記クラウドホストが、上記停止すべき仮想マシンの上記識別子情報に基づいて、上記停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシを取得する段階と、
上記クラウドホストが、上記停止すべき仮想マシンを停止し、上記停止すべき仮想マシンを停止した後、上記停止すべき仮想マシンにより占有される上記コンピューティングリソースを上記リソース管理ポリシに従って管理する段階と
を備える方法。
（項目２）
上記停止すべき仮想マシンの上記識別子情報に基づいて、上記停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシを取得する上記段階は、
上記停止すべき仮想マシンの上記識別子情報に基づいて、上記停止すべき仮想マシンのタイプを取得する段階と、
上記停止すべき仮想マシンの上記タイプに基づいて、仮想マシンのタイプとリソース管理ポリシとの間の対応関係から、対応するリソース管理ポリシを取得する段階と
を有する、項目１に記載の方法。
（項目３）
上記停止すべき仮想マシンが上記クラウドホストのハードディスクを占有する第１タイプの仮想マシンである場合、または、上記停止すべき仮想マシンが重要人物ＶＩＰユーザに属する第２タイプの仮想マシンである場合に、上記リソース管理ポリシは、上記停止すべき仮想マシンにより占有される上記コンピューティングリソースを解放しないように上記クラウドホストに指示するために使用され、
上記停止すべき仮想マシンが上記第１タイプの仮想マシンおよび上記第２タイプの仮想マシン以外の別のタイプの仮想マシンである場合に、上記リソース管理ポリシは、上記クラウドホストが、上記停止すべき仮想マシンを停止した後に待機し、待機時点が予め設定された時間閾値に達すると、上記停止すべき仮想マシンにより占有される上記コンピューティングリソースを解放すること、を指示するために使用される、
項目１または２に記載の方法。
（項目４）
上記停止すべき仮想マシンの上記タイプに基づいて、仮想マシンのタイプとリソース管理ポリシとの間の対応関係から、対応するリソース管理ポリシを取得する上記段階の前に、
上記クラウドプラットフォームにより送信される、上記仮想マシンの上記タイプと上記リソース管理ポリシとの間の上記対応関係を受信する段階
を更に備える項目２に記載の方法。
（項目５）
クラウドプラットフォームに適用される仮想マシン管理方法であって、上記クラウドプラットフォームは、複数のクラウドホストを管理するように構成され、
上記クラウドプラットフォームが、クライアントにより送信される仮想マシン作成要求メッセージを受信する段階であって、上記仮想マシン作成要求メッセージは、作成すべき仮想マシンの構成情報を含み、上記構成情報は、上記作成すべき仮想マシンに必要なコンピューティングリソース数を少なくとも含む、段階と、
上記クラウドプラットフォームが、上記構成情報に基づいて上記複数のクラウドホストの中からターゲットクラウドホストを決定する段階であって、上記ターゲットクラウドホストの現在残っている遊休リソース数から上記コンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しい、段階と、
上記クラウドプラットフォームが、上記ターゲットクラウドホストに上記仮想マシン作成要求メッセージを送信する段階であって、上記仮想マシン作成要求メッセージは、上記作成すべき仮想マシンを作成するように上記ターゲットクラウドホストに要求するために使用される、段階と
を備える方法。
（項目６）
上記構成情報に基づいて上記複数のクラウドホストの中からターゲットクラウドホストを決定する上記段階は、
デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数を取得する段階であって、上記デバイス識別子に対応する上記リソース数は、上記デバイス識別子に対応するクラウドホストの現在残っている遊休リソース数を含む、段階と、
各デバイス識別子に対応する上記遊休リソース数から上記コンピューティングリソース数を別個に減算して、各デバイス識別子に対応する差を取得する段階と、
それぞれの差が上記予め設定された閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子を選択し、上記選択されたデバイス識別子に対応するクラウドホストを上記ターゲットクラウドホストとして決定する段階と
を有する、項目５に記載の方法。
（項目７）
上記構成情報に基づいて上記複数のクラウドホストの中からターゲットクラウドホストを決定する上記段階は、
デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数を取得する段階であって、上記デバイス識別子に対応する上記リソース数は、上記デバイス識別子に対応するクラウドホストのリソース合計数および現在残っている遊休リソース数を含む、段階と、
各デバイス識別子に対応する上記遊休リソース数から上記コンピューティングリソース数を別個に減算して、各デバイス識別子に対応する差を取得する段階と、
各デバイス識別子に対応する上記差および上記リソース合計数に基づいて、各デバイス識別子に対応する遊休リソース割合を別個に算出する段階と、
それぞれの遊休リソース割合が予め設定された割合閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子を選択し、上記選択されたデバイス識別子に対応するクラウドホストを上記ターゲットクラウドホストとして決定する段階と
を有する、項目５に記載の方法。
（項目８）
上記構成情報に基づいて上記複数のクラウドホストの中からターゲットクラウドホストを決定する上記段階の後に、
仮想マシンの識別子情報とデバイス識別子との間の対応関係において、上記作成すべき仮想マシンの識別子情報および上記ターゲットクラウドホストの上記デバイス識別子を対応して格納すること、および／または、上記デバイス識別子と上記リソース数との間の上記対応関係において格納される上記ターゲットクラウドホストの上記デバイス識別子に対応する上記遊休リソース数を、上記ターゲットクラウドホストの上記デバイス識別子に対応する上記差に更新することを行う段階
を更に備える項目５から７の何れか一項に記載の方法。
（項目９）
上記クライアントにより送信される仮想マシン移行要求メッセージを受信する段階であって、上記仮想マシン移行要求メッセージは、移行すべき仮想マシンの識別子情報を含む、段階と、
上記仮想マシンの上記識別子情報と上記デバイス識別子との間の上記対応関係において、上記移行すべき仮想マシンの上記識別子情報に対応する第１クラウドホストのデバイス識別子を第２クラウドホストのデバイス識別子に更新する段階であって、上記第１クラウドホストは、上記移行すべき仮想マシンが移行の前に配置されるクラウドホストであり、上記第２クラウドホストは、上記移行すべき仮想マシンが上記移行の後に配置されるクラウドホストである、段階と
を更に備える項目５から８の何れか一項に記載の方法。
（項目１０）
上記移行すべき仮想マシンの上記識別子情報に対応する第１クラウドホストのデバイス識別子を第２クラウドホストのデバイス識別子に更新する上記段階の後に、
上記第１クラウドホストが、上記移行すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合に、上記第２クラウドホストにリソース申請要求メッセージを送信する段階であって、上記リソース申請要求メッセージは、上記移行すべき仮想マシンに必要なコンピューティングリソース数を含み、上記リソース申請要求メッセージは、上記移行すべき仮想マシンに必要な上記コンピューティングリソース数に基づいて、上記移行すべき仮想マシンの上記コンピューティングリソースを申請するために上記第２クラウドホストにより使用される、段階
を更に備える項目９に記載の方法。
（項目１１）
上記クライアントにより送信される仮想マシン起動要求メッセージを受信する段階であって、上記仮想マシン起動要求メッセージは、起動すべき仮想マシンの識別子情報を含む、段階、および、
上記起動すべき仮想マシンが配置される上記第１クラウドホストが、上記起動すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合、または、上記第１クラウドホストが、上記起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、上記第１クラウドホストの遊休リソース数が、上記起動すべき仮想マシンに必要なコンピューティングリソース数よりも多いか等しい場合に、上記起動すべき仮想マシンを上記第１クラウドホスト上で起動する段階、または、
上記第１クラウドホストが、上記起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、上記第１クラウドホストの遊休リソース数が、上記起動すべき仮想マシンに必要なコンピューティングリソース数よりも少ない場合に、上記起動すべき仮想マシンを第３クラウドホスト上で起動する段階であって、上記第３クラウドホストの遊休リソース数から上記起動すべき仮想マシンに必要な上記コンピューティングリソース数を減算することにより取得される差は、上記予め設定された閾値よりも大きいか等しく、上記第１クラウドホストおよび上記第３クラウドホストは、２つの異なるクラウドホストである、段階
を更に備える項目５から１０の何れか一項に記載の方法。
（項目１２）
上記クライアントにより送信される仮想マシン削除要求メッセージを受信する段階であって、上記仮想マシン削除要求メッセージは、削除すべき仮想マシンの識別子情報を含む、段階と、
上記仮想マシンの上記識別子情報と上記デバイス識別子との間の上記対応関係から、上記削除すべき仮想マシンの上記識別子情報を含む対応関係を削除する段階と
を更に備える項目５から１１の何れか一項に記載の方法。
（項目１３）
仮想マシン管理装置であって、クラウドプラットフォームが、上記装置を管理するように構成され、
上記クラウドプラットフォームにより送信される仮想マシン停止要求メッセージを受信するように構成される受信ユニットであって、上記仮想マシン停止要求メッセージは、停止すべき仮想マシンの識別子情報を含む、受信ユニットと、
上記停止すべき仮想マシンの上記識別子情報に基づいて、上記停止すべき仮想マシンにより占有されるコンピューティングリソースを管理するために使用されるリソース管理ポリシを取得することと、上記停止すべき仮想マシンを停止し、上記停止すべき仮想マシンを停止した後、上記停止すべき仮想マシンにより占有される上記コンピューティングリソースを上記リソース管理ポリシに従って管理することとを行うように構成される処理ユニットと
を備える装置。
（項目１４）
上記処理ユニットは、
上記停止すべき仮想マシンの上記識別子情報に基づいて、上記停止すべき仮想マシンのタイプを取得し、
上記停止すべき仮想マシンの上記タイプに基づいて、仮想マシンのタイプとリソース管理ポリシとの間の対応関係から、対応するリソース管理ポリシを取得する
ように構成される、項目１３に記載の装置。
（項目１５）
上記停止すべき仮想マシンが上記装置のハードディスクを占有する第１タイプの仮想マシンである場合、または、上記仮想マシンが重要人物ＶＩＰユーザに属する第２タイプの仮想マシンである場合に、上記リソース管理ポリシは、上記停止すべき仮想マシンにより占有される上記コンピューティングリソースを解放しないように上記装置に指示するために使用され、
上記停止すべき仮想マシンが上記第１タイプの仮想マシンおよび上記第２タイプの仮想マシン以外の別のタイプの仮想マシンである場合に、上記リソース管理ポリシは、上記装置が、上記停止すべき仮想マシンを停止した後に待機し、待機時点が予め設定された時間閾値に達すると、上記停止すべき仮想マシンにより占有される上記コンピューティングリソースを解放すること、を指示するために使用される、
項目１３または１４に記載の装置。
（項目１６）
上記受信ユニットは更に、
上記クラウドプラットフォームにより送信される、上記仮想マシンの上記タイプと上記リソース管理ポリシとの間の上記対応関係を受信する
ように構成される、項目１４に記載の装置。
（項目１７）
複数のクラウドホストを管理するように構成される仮想マシン管理装置であって、
クライアントにより送信される仮想マシン作成要求メッセージを受信するように構成される受信ユニットであって、上記仮想マシン作成要求メッセージは、作成すべき仮想マシンの構成情報を含み、上記構成情報は、上記作成すべき仮想マシンに必要なコンピューティングリソース数を少なくとも含む、受信ユニットと、
上記構成情報に基づいて上記複数のクラウドホストの中からターゲットクラウドホストを決定するように構成される処理ユニットであって、上記ターゲットクラウドホストの現在残っている遊休リソース数から上記コンピューティングリソース数を減算することにより取得される差は、予め設定された閾値よりも大きいか等しい、処理ユニットと、
上記ターゲットクラウドホストに上記仮想マシン作成要求メッセージを送信するように構成される送信ユニットであって、上記仮想マシン作成要求メッセージは、上記作成すべき仮想マシンを作成するように上記ターゲットクラウドホストに要求するために使用される、送信ユニットと
を備える装置。
（項目１８）
上記処理ユニットは、
デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数を取得することであって、上記デバイス識別子に対応する上記リソース数は、上記デバイス識別子に対応するクラウドホストの現在残っている遊休リソース数を含む、取得することと、
各デバイス識別子に対応する上記遊休リソース数から上記コンピューティングリソース数を別個に減算して、各デバイス識別子に対応する差を取得することと、
それぞれの差が上記予め設定された閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子を選択し、上記選択されたデバイス識別子に対応するクラウドホストを上記ターゲットクラウドホストとして決定することと
を行うように構成される、項目１７に記載の装置。
（項目１９）
上記処理ユニットは、
デバイス識別子とリソース数との間の対応関係において格納される各デバイス識別子に対応するリソース数を取得することであって、上記デバイス識別子に対応する上記リソース数は、上記デバイス識別子に対応するクラウドホストのリソース合計数および現在残っている遊休リソース数を含む、取得することと、
各デバイス識別子に対応する上記遊休リソース数から上記コンピューティングリソース数を別個に減算して、各デバイス識別子に対応する差を取得することと、
各デバイス識別子に対応する上記差および上記リソース合計数に基づいて、各デバイス識別子に対応する遊休リソース割合を別個に算出することと、
それぞれの遊休リソース割合が予め設定された割合閾値よりも大きいか等しいデバイス識別子の中からあるデバイス識別子を選択し、上記選択されたデバイス識別子に対応するクラウドホストを上記ターゲットクラウドホストとして決定することと
を行うように構成される、項目１７に記載の装置。
（項目２０）
上記処理ユニットは更に、仮想マシンの識別子情報とデバイス識別子との間の対応関係において、上記作成すべき仮想マシンの識別子情報および上記ターゲットクラウドホストの上記デバイス識別子を対応して格納すること、および／または、上記デバイス識別子と上記リソース数との間の上記対応関係において格納される上記ターゲットクラウドホストの上記デバイス識別子に対応する上記遊休リソース数を、上記ターゲットクラウドホストの上記デバイス識別子に対応する上記差に更新することを行うように構成される、
項目１７から１９の何れか一項に記載の装置。
（項目２１）
上記受信ユニットは更に、上記クライアントにより送信される仮想マシン移行要求メッセージを受信することであって、上記仮想マシン移行要求メッセージは、移行すべき仮想マシンの識別子情報を含む、受信することを行うように構成され、
上記処理ユニットは更に、上記仮想マシンの上記識別子情報と上記デバイス識別子との間の上記対応関係において、上記移行すべき仮想マシンの上記識別子情報に対応する第１クラウドホストのデバイス識別子を第２クラウドホストのデバイス識別子に更新することであって、上記第１クラウドホストは、上記移行すべき仮想マシンが移行の前に配置されるクラウドホストであり、上記第２クラウドホストは、上記移行すべき仮想マシンが上記移行の後に配置されるクラウドホストである、更新することを行うように構成される、
項目１７から２０の何れか一項に記載の装置。
（項目２２）
上記送信ユニットは更に、上記第１クラウドホストが、上記移行すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合に、上記第２クラウドホストにリソース申請要求メッセージを送信するように構成され、上記リソース申請要求メッセージは、上記移行すべき仮想マシンに必要なコンピューティングリソース数を含み、上記リソース申請要求メッセージは、上記移行すべき仮想マシンに必要な上記コンピューティングリソース数に基づいて、上記移行すべき仮想マシンの上記コンピューティングリソースを申請するために上記第２クラウドホストにより使用される、
項目２１に記載の装置。
（項目２３）
上記受信ユニットは更に、上記クライアントにより送信される仮想マシン起動要求メッセージを受信することであって、上記仮想マシン起動要求メッセージは、起動すべき仮想マシンの識別子情報を含む、受信することを行うように構成され、
上記処理ユニットは更に、上記起動すべき仮想マシンが配置される上記第１クラウドホストが、上記起動すべき仮想マシンにより占有されるコンピューティングリソースを解放しない場合、または、上記第１クラウドホストが、上記起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、上記第１クラウドホストの遊休リソース数が、上記起動すべき仮想マシンに必要なコンピューティングリソース数よりも多いか等しい場合に、上記起動すべき仮想マシンを上記第１クラウドホスト上で起動すること、または、上記第１クラウドホストが、上記起動すべき仮想マシンにより占有されるコンピューティングリソースを解放し、かつ、上記第１クラウドホストの遊休リソース数が、上記起動すべき仮想マシンに必要なコンピューティングリソース数よりも少ない場合に、上記起動すべき仮想マシンを第３クラウドホスト上で起動することであって、上記第３クラウドホストの遊休リソース数から上記起動すべき仮想マシンに必要な上記コンピューティングリソース数を減算することにより取得される差は、上記予め設定された閾値よりも大きいか等しく、上記第１クラウドホストおよび上記第３クラウドホストは、２つの異なるクラウドホストである、起動することを行うように構成される、
項目１７から２２の何れか一項に記載の装置。
（項目２４）
上記受信ユニットは更に、上記クライアントにより送信される仮想マシン削除要求メッセージを受信することであって、上記仮想マシン削除要求メッセージは、削除すべき仮想マシンの識別子情報を含む、受信することを行うように構成され、
上記処理ユニットは更に、上記仮想マシンの上記識別子情報と上記デバイス識別子との間の上記対応関係から、上記削除すべき仮想マシンの上記識別子情報を含む対応関係を削除するように構成される
項目１７から２３の何れか一項に記載の装置。
（項目２５）
項目１３から１６の何れか一項に記載の装置と、項目１７から２４の何れか一項に記載の装置とを備える仮想マシン管理システム。
【図１】
2021526274.tif 000007
【図２】
2021526274.tif 000008
【図３】
2021526274.tif 000009
【図４】
2021526274.tif 000010
【図５】
2021526274.tif 000011
【図６】
2021526274.tif 000012
【図７】
2021526274.tif 000013
【図８】
2021526274.tif 000014
【図９】
2021526274.tif 000015
【図１０】
2021526274.tif 000016
【図１１】
2021526274.tif 000017
【国際調査報告】
2021526274.tif 000018
2021526274.tif 000019
2021526274.tif 000020
2021526274.tif 000021