Nothing Special   »   [go: up one dir, main page]

JP5510556B2 - 仮想マシンのストレージスペースおよび物理ホストを管理するための方法およびシステム - Google Patents

仮想マシンのストレージスペースおよび物理ホストを管理するための方法およびシステム Download PDF

Info

Publication number
JP5510556B2
JP5510556B2 JP2012542354A JP2012542354A JP5510556B2 JP 5510556 B2 JP5510556 B2 JP 5510556B2 JP 2012542354 A JP2012542354 A JP 2012542354A JP 2012542354 A JP2012542354 A JP 2012542354A JP 5510556 B2 JP5510556 B2 JP 5510556B2
Authority
JP
Japan
Prior art keywords
virtual storage
free
file
block
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012542354A
Other languages
English (en)
Other versions
JP2013513174A (ja
Inventor
▲曉▼▲偉▼ ▲楊▼
志坤 王
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2013513174A publication Critical patent/JP2013513174A/ja
Application granted granted Critical
Publication of JP5510556B2 publication Critical patent/JP5510556B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、コンピュータ仮想化技術の分野に関し、詳細には、仮想マシン(VM)のストレージスペースおよび物理ホストを管理するための方法およびシステムに関する。
コンピュータ仮想化技術は、下位レイヤのハードウェアデバイスをコンピュータの上位レイヤのオペレーティングシステムおよびアプリケーションから切り離すための減結合(decoupling)方法である。コンピュータ仮想化技術は、下位レイヤのハードウェア資源を直接管理し、仮想マシンモニタ(Virtual Machine Monitor、VMM)レイヤを導入して、上位レイヤのオペレーティングシステムおよびアプリケーションが使用する下位レイヤのハードウェアとは無関係のVMを作成する。対応するVMアーキテクチャを図1に示している。現在普及しているクラウドコンピューティングプラットフォームの重要な下位レイヤサポート技術の1つとして、仮想化技術は物理デバイスの資源利用率を大幅に増大させることができる。従来の物理マシンと比較すると、VMはより優れた独立性(isolation)およびカプセル化特性を有する。VM全体の情報は、スナップショット撮影、バックアップ、クローン作成、およびVM上の配信などの動作を便利に行うために、仮想ディスクイメージ(Virtual Disk Image、VDI)に保存することができる。
仮想ディスク(VDisk)は、VMが使用するVMMによって提供される仮想ストレージデバイスである。VDiskに対応する物理ストレージスペースは、ホストのローカルストレージシステム、またはネットワーク接続ストレージ(NAS)ファイルサーバ、ストレージエリアネットワーク(SAN)、ストレージクラスタ、もしくはストレージクラウドなど、データセンタのネットワークストレージシステムとすることができる。VDiskは、ファイルまたはブロックデバイス(ディスクパーティションもしくは論理ボリュームなど)の形態でホストにあることが可能である。
VMストレージスペースは、一般に次の2つの方法、すなわち事前割当てと動的割当てで割り当てられる。事前割当てでは、1度に各VMに指定されたサイズを有するストレージスペースが割り当てられる。VMデータが少ないとき、事前割当てはスペースの無駄が大きくなる。仮想ストレージスペースの動的割当ては、ストレージ資源の無駄をある程度まで削減することができる。初めに仮想ストレージスペースは、小さい実際のストレージスペースを占める。ユーザが使用するにつれてますます多くのファイルがVMストレージスペースに作成され、ますます大きいストレージスペースが占有される。
動的割当てによってストレージスペースを管理するための既存の方法は、要求に応じて割当てを行うことができるが、VMでファイルの削除が行われるとき、ホストがこの操作を認識することができない場合、VMによってすでに解放されている空き領域をホストは解放することができない。例えば、20GBの仮想ストレージデバイスを有するVMは、最もビジー状態のタスクの間、基本的に全ストレージスペースを一時ファイルとして使用する。タスクが待機状態であるとき、一時ファイルは削除されて、システムには15GBの空き領域があるが、この15GBの空き領域に占有されるホストのストレージ資源は解放されていない。
従来の技術では、仮想コンピュータソフトウェアのVM ware Workstationが、VM ware Shrinking Virtual Disk機能を提供し、これにより空きデータブロック(以下、ブロック)をVM Ware仮想マシンディスクフォーマット(Virtual Machine Disk Format、VMDK)の動的VDiskで解放することができる。主なステップは、次のようである。
VMにおいてディスクデフラグを行う(オプション)。
VMのVMツールによってVDiskの空きブロックをゼロに設定する。
ホストのサポートツールは、VDiskに対応するファイルまたはブロックデバイスをスキャンして「ゼロ」ブロックを識別し、動的イメージフォーマット特性を利用することによってイメージの縮小を行って、空きデータブロックの解放を完了する。
本発明を実施中に、前述の方法では、VMツールがVDiskの空きブロックをゼロに設定する処理において、すべての空きブロックに書込み操作が行われる必要があること、およびホストが「ゼロ」ブロックを識別するとき、すべてのデータブロックに読取り動作が行われる必要があることがわかる。すなわち、既存の方法では、高い動作オーバヘッドが存在し、ディスクの読み書き動作が非常に多いために大量のディスク帯域幅を浪費し、長時間を費やす。さらに、既存の方法では、ホストは「ゼロ」ブロックを識別することによってVDiskの各データブロックのスペース占有を間接的に判断するので、VMのディスクの全体的な空きデータブロック情報をリアルタイムで取得することができない。さらに既存の方法の応用は限られており、この方法は動的割当てイメージフォーマットに適用できるにすぎない。事前割当ミラーフォーマットについては、空きブロックを解放することができない。
本発明の諸実施形態は、ストレージスペースを効率的に管理して、ストレージシステムの利用率を上げるように、VMストレージスペースおよび物理ホストを管理するための方法を提供する。
VMストレージスペースを管理するための方法を提供し、この方法は、物理ホストに適用でき、この方法では物理ホストは、ハードウェアレイヤと、ハードウェアレイヤ上で動作するVMMレイヤと、VMMレイヤ上で動作するVMとを含み、VMにストレージバルーンエージェント(Storage Balloon Agent、SBA)モジュールが配備され、VMMレイヤにストレージバルーンデーモン(Storage Balloon Daemon、SBD)モジュールが配備され、この方法は:
事前に定義されたファイルにより占有される仮想ストレージスペースのサイズに従って、占有された仮想ストレージブロックの部分をSBAモジュールによって取得して、仮想ストレージブロックに対応する仮想ストレージ空きブロック情報をSBDモジュールに伝えるステップと、
仮想ストレージ空きブロック情報に対応する物理ストレージスペースの一部または全部をSBDモジュールによって解放して、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けするステップとを含む。
VMストレージスペースを管理するためのシステムを提供し、このシステムは、VMに配備されたSBAモジュールと、VMMレイヤに配備されたSBDモジュールとを含み、
SBAモジュールは、事前に定義されたファイルにより占有された仮想ストレージスペースのサイズに従って、占有された仮想ストレージブロックの部分を取得し、仮想ストレージブロックに対応する仮想ストレージ空きブロック情報をSBDモジュールに伝えるように構成され、
SBDモジュールは、仮想ストレージ空きブロック情報に対応する物理ストレージスペースの一部または全部を解放し、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けするように構成される。
物理ホストを提供し、この物理ホストは、ハードウェアレイヤと、ハードウェアレイヤ上で動作するVMMレイヤと、VMMレイヤ上で動作する少なくとも1つのVMとを含み、この物理ホストではVMにSBAモジュールが配備され、VMMレイヤにSBDモジュールが配備され、
SBAモジュールは、事前に定義されたファイルにより占有された仮想ストレージスペースのサイズに従って、占有された仮想ストレージブロックの部分を取得し、仮想ストレージブロックのこの部分に対応する仮想ストレージ空きブロック情報をSBDモジュールに伝えるように構成され、
SBDモジュールは、仮想ストレージ空きブロック情報に対応する物理ストレージスペースの一部または全部を解放し、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けするように構成される。
本発明の諸実施形態は、次の技術的解決法を採用する:SBAモジュールはVMに配備され、SBDモジュールはVMMレイヤに配備される。SBAモジュールは、事前に定義されたファイルにより占有された仮想ストレージスペースの占有に応じた仮想ストレージ空きブロック情報を取得し、仮想ストレージ空きブロック情報をSBDモジュールに伝える。SBDモジュールは、仮想ストレージ空きブロック情報に対応する物理ストレージスペースを解放する。この技術的解決法により、1つの態様では仮想ストレージ空きブロック情報は、リアルタイムで取得することができるため、リアルタイム特性に優れており、別の態様ではストレージシステムの数多くの読み書き動作を回避するため、システムオーバヘッドが低くなる。さらにこの方法では、ファイルシステムのインタフェースを使用して仮想ストレージ空きブロック情報を取得するため、ファイルシステムの実施の詳細を知る必要がなく、普遍性に優れている。この方法は、動的割当てイメージフォーマットおよび動的割当てミラーフォーマットの両方に適用できる。
VMアーキテクチャの概略図である。 本発明の一実施形態によるVMストレージスペースを管理するための方法の概略的流れ図である。 図2に示す方法のステップ100の特定のステップの概略流れ図である。 図2に示す方法のステップ200の特定のステップの概略流れ図である。 本発明の一実施形態によるVMストレージスペースを管理するためのシステムの論理構造を示す図である。 本発明の一実施形態による物理ホストの論理構造を示す概略図である。 本発明の一実施形態による応用シナリオにおいてVMストレージスペースを管理するための方法の概略流れ図である。 本発明の一実施形態による応用シナリオにおいてVMストレージスペースを管理するための方法の概略流れ図である。
本発明の一実施形態は、物理ホストに適用されるVMストレージスペースを管理するための方法を提供する。物理ホストは、ハードウェアレイヤと、ハードウェアレイヤ上で動作するVMMレイヤと、VMMレイヤ上で動作するVMとを含み、VMにはSBAモジュールが配備され、VMMレイヤにはSBDモジュールが配備される。この方法では、VMに配備されたSBAは仮想ストレージ空きブロック情報を直接入手し、取得した仮想ストレージ空きブロック情報を、VMMレイヤにありSBAと協力するSBDへ伝え、SBDはVMストレージフォーマットの仮想ストレージ空きブロック情報に対応する物理ストレージスペースを解放する。本発明の一実施形態はさらに、VMストレージスペースおよび物理ホストを管理するための対応するシステムを提供する。次に詳細について説明する。
図2は、本発明の一実施形態によるVMストレージスペースを管理するための方法を示す。この方法は、物理ホストに適用できる。物理ホストは、ハードウェアレイヤと、ハードウェアレイヤ上で動作するVMMレイヤと、VMMレイヤ上で動作するVMとを含み、VMにSBAモジュールが配備され、VMMレイヤにSBDモジュールが配備される。この方法は、次のステップを含むことができる。
100: SBAモジュールは、事前に定義されたファイルによって占有された仮想ストレージスペースのサイズに従って、占有された仮想ストレージブロックの部分を取得し、この仮想ストレージブロックに対応する仮想ストレージ空きブロック情報をSBDモジュールに伝える。
このステップでは、VMに配備されたSBAは、事前に定義されたファイルに占有される仮想ストレージスペースの占有により仮想ストレージ空きブロック情報を直接取得することができるので、ゼロ設定の書込み操作を各空きブロックに行う必要がない。
さらに、ある実施の方法では、SBAモジュールは、メモリを共有することによって仮想ストレージブロックに対応する仮想ストレージ空きブロック情報を、VMMレイヤに配備されたSBDモジュールに伝えることができるので、読み取り操作を各空きブロックに行う必要がない。事前に定義されたファイルは、一定の仮想ストレージの空き領域を占有するように機能するいかなるタイプの事前に定義されたファイルであることも可能である。例えば、VMのWindows(登録商標)オペレーティングシステムのドライブCについては、事前に定義されたファイルはC: \baloon.sysであることが可能である。本発明のこの実施形態は、事前に定義されたファイルとして既存ファイルを使用する、または事前に定義されたファイルとして新しいファイルを作成することができる。
200: SBDモジュールは、仮想ストレージ空きブロック情報に対応する物理ストレージスペースの一部または全部を解放し、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けする。
このステップでは、SBDは空きブロックの解放動作を行う。ある実施の方法では、事前に設定されたポリシーに従って、SBDは空いているとマーク付けされた仮想ストレージブロックの一部または全部に対応する物理ストレージスペースを解放し、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けする。
物理ホストのストレージシステムがディスクであるとき、事前に定義されたファイルはVDiskスペースを占有し、また解放されてマーク付けされる物理ストレージスペースは具体的には物理ディスクスペースであることを理解されたい。
図2aを参照すると、好ましい解決法では、ステップ100は具体的には次のステップを含むことができる。
110: VMに配備されたSBAは、事前に定義されたファイルによって占有された仮想ストレージスペースのサイズを入手された限界値範囲と比較する。
事前に定義されたファイルに占有される仮想ストレージスペースのサイズを限界値範囲と比較することによって得られる様々な結果に対して、様々な動作が行われることに注意されたい。
限界値範囲は、事前に設定された固定値とすることができる、または他の取得パラメータに応じて特定アルゴリズムにより入手することができる。ある実施の方法では、ステップ110は具体的には次のステップを含むことができる。
111: SBAは、仮想ストレージの空き領域のサイズおよび事前に定義されたファイルによって占有された仮想ストレージスペースのサイズを取得するために、ファイルシステムを呼び出し、SBDモジュールから下限比率および上限比率を入手し、事前に定義されたファイルはこの下限比率と上限比率の間で仮想ストレージの空き領域を占有することができる。
VMは、ファイルシステムのインタフェースを介して仮想ストレージの空き領域情報を取得する。このステップは、一定の期間に従って繰り返して行われる。例えばこのステップは、1秒から5秒の間隔で行うことができる。
下限比率および上限比率は、SBDモジュールにおいて事前に設定され、事前に定義されたファイルは、下限比率と上限比率との間で仮想ストレージの空き領域を占有することができる。上限比率は好ましくは80%から90%であり、下限比率は好ましくは60%から70%である。
112: SBAは、下限比率および仮想ストレージの空き領域のサイズの製品、ならびに上限比率および仮想ストレージの空き領域のサイズの製品を、それぞれ事前に設定された限界値範囲の下限値および上限値とみなす。
仮想ストレージの空き領域のサイズがXであり、下限比率はL1%であり、上限比率はL2%であると仮定する場合、限界値範囲の下限値はX*L1%であり、限界値範囲の上限値はX*L2%である。
113: VMは、事前に定義されたファイルにより占有された仮想ストレージのサイズを、それぞれ限界値範囲の下限値および上限値と比較する。
事前に定義されたファイルによって占有された仮想ストレージスペースのサイズがSである場合、SとX*Ll%、ならびにSとX*L2%がそれぞれ比較される。
120: 事前に定義されたファイルによって占有された仮想ストレージスペースのサイズが、限界値範囲の下限値よりも小さい場合、SBAは事前に定義されたファイルを拡張するためにファイルシステムを呼び出し、拡張された、事前に定義されたファイルに仮想ストレージブロックを割り当てる。
事前に定義されたファイルが下限値よりも小さい場合、仮想ストレージの空き領域が大きすぎることを示すことに注意されたい。この場合、空き領域の一部を開放することが必要である。空き領域の一部を開放するために、事前に定義されたファイルはまず拡張されて、事前に定義されたファイルによって占有された空き領域を増大させ、事前に定義されたファイルの拡張部分に占有される空き領域を解放する必要がある。ある実施の方法では、ステップ120は具体的には次のステップを含むことができる。
121: SBAはファイルシステムの事前に割り当てられた(fallocate)インタフェースを呼び出し、拡張された事前に定義されたファイルのサイズとして限界値範囲の中間値をインポートする。中間値は、下限値と上限値の和の半分に等しい。下限値がX*L1%、上限値がX*L2%であるとき、中間値はX*(L1% +L2%)/2である。
122: SBAのVMファイルシステムは、拡張された、事前に定義されたファイルに仮想ストレージブロックを割り当てる。
例えば、X*(L 1% +L2%)/2のサイズを有する事前に定義されたファイルに、仮想ストレージブロック[b1, b2, ..., bn]を割り当てることができる。
123: SBAはファイルシステムのロックインタフェースを呼び出し、拡張された事前に定義されたファイルに割り当てられた仮想ストレージブロックをロックし、ストレージデバイスのデフラグツールによって変更されないようにする。
130: SBAはファイルシステムを呼び出して、事前に定義されたファイルの拡張部分で占有された仮想ストレージブロックを入手する。
事前に定義されたファイルの拡張部分、すなわち区間[S, X*(L1% +L2%)/2]ついて、VMはファイルシステムの「file offset -> data block」マッピング(bmap)を呼び出して、占有された仮想ストレージブロック[bs, ..., bn]を入手する。
140: SBAは、メモリを共有することによって、仮想ストレージブロックを示す第1の仮想ストレージ空きブロック情報をSBDモジュールに伝える。
第1の仮想ストレージ空きブロック情報は、SBDモジュールに伝えられ、第1の仮想ストレージ空きブロック情報に対応する物理ストレージスペースが再使用(reclamation)および解放の候補である。第1の仮想ストレージ空きブロック情報は、メモリを共有することによって伝えられ、これは簡単で信頼できるものである。
図2bを参照すると、ある実施の方法ではステップ200は、具体的には次のステップを含むことができる。
210: VMMレイヤに配備されたSBDは、第1の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用できるかどうかを判断し、第1の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用できる場合、この仮想ストレージブロックは空いているとマーク付けされる。
SBDは、メモリを共有することによって第1の仮想ストレージ空きブロック情報を取得し、第1の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用できるかどうかを判断し、第1の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用できる場合、仮想ストレージブロックは空いているとマーク付けされ、第1の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用できない場合、処理は行われない。処理が完了した後に、SBDはSBAに応答する。
220: SBDは、空いているとマーク付けされた仮想ストレージブロックの一部または全部に対応する物理ストレージスペースを解放し、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けする。
このステップでは、SBDは空きブロックの解放動作を行う。事前に設定されたポリシーにより、SBDは、空いているとマーク付けされた仮想ストレージブロックの一部または全部に対応する物理ストレージスペースを解放することができ、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けする。
実際の実行では、簡単にするために単純なポリシーを実行することができ、すなわち、空いているとマーク付けされた仮想ストレージブロックについては、仮想ストレージブロックに対応する物理ストレージスペースが完全に解放され、解放された物理ストレージスペースに対応する仮想ストレージブロックは、利用できないとマーク付けされる。
仮想ストレージの管理レベルを上げるために、好ましいポリシーを実行することもでき、すなわち、VMにおいてストレージスペースを割り当てるおよび/または解放する動作の頻度が閾値(ここでは閾値は、事前に設定することができる、または動的計算によって入手することができる)以上であるとき、SBDは解放される空きブロックの比率を下げ、VMにおいてストレージスペースを割り当てるおよび/または解放する動作の頻度が低いとき、SBDは解放されて空きブロックの比率を上げる。具体的には、SBDはVMにおいてストレージスペースを割り当てるまたは解放する動作の頻度が、事前に設定した閾値以上であるかどうかを判断し、VMにおいてストレージスペースを割り当てるまたは解放する動作の頻度が事前に設定した閾値以上ではない場合、SBDは事前に設定した比率で、空いているとマーク付けされた仮想ストレージブロックに対応する物理ストレージスペースを解放し、例えば、事前に設定した80%の比率で物理ストレージスペースを解放し、VMにおいてストレージスペースを割り当てるまたは解放する動作の頻度が事前に設定した閾値以上である場合、SBDは事前に設定したレートで事前に設定した比率を下げ、下げた比率で、空いているとマーク付けされた仮想ストレージブロックに対応する物理ストレージスペースを解放する。例えば、事前に設定された80%という比率は、毎秒1%のレートで下げられ、物理ストレージスペースは、例えば75%または70%の下げた比率で解放される。解放される空きブロックの比率は、空きブロックが短時間後に再び使用される可能性が高いために下げられ、頻繁に解放および再割当てを行うことによるオーバヘッドを削減するようにする。厳密には、VMにおいてストレージスペースを割り当てるおよび解放する動作の頻度が低いとき、解放される空きブロックの比率は、適切に上げられるべきである。空きブロックに対応するストレージスペースがファイルである場合、データブロックを解放する関数は、ホストファイルシステムの内部インタフェース(free_blocks (start_block, count))をエクスポートすることによる。仮想ストレージブロックに対応するストレージスペースがブロックデバイスである場合、空きブロックが解放されるとき、下位レイヤのデータブロックストレージシ
ステムが、空きブロックを解放するよう命令される。
図2aを参照すると、本発明の実施形態による方法では、ステップ110後に、すなわちSBAが事前に定義されたファイルによって占有された仮想ストレージスペースのサイズを、入手した限界値範囲と比較した後に、この方法は、さらに次のステップを含むことができる。
150: 事前に定義されたファイルによって占有された仮想ストレージスペースが、限界値範囲の上限値よりも大きい場合、ファイルシステムを呼び出して事前に定義されたファイルの部分によって占有された仮想ストレージブロックを入手して縮小する。
事前に定義されたファイルが、上限値よりも大きい場合、このファイルは仮想ストレージの空き領域が小さすぎることを示す。この場合、事前に定義されたファイルによって占有された空き領域の部分をVMファイルシステムに返す必要がある。空き領域の部分を返すために、事前に定義されたファイルは縮小されて、事前に定義されたファイルに占有される空き領域を減らす必要があり、縮小された部分に占有された空き領域を解放するようにする。
SBAは、縮小される事前に定義されたファイルのサイズとして目標値を取得する。目標値よりも大きい部分が、縮小されるべき部分であり、切り捨てられて削除される。ある実施の方法では、限界値範囲の中間値が、事前に定義されたファイルを縮小するための目標サイズとみなされる。事前に定義されたファイルの元のサイズがSであって、中間値がX*(L1% +L2%)/2であるとき、縮小されるべき事前に定義されたファイルの部分は、区間[X*(L1% +L2%)12, S]である。この区間に対して、VMはシステムの「file offset -> data block」マッピング(bmap)インタフェースを呼び出して、対応する仮想ストレージブロックを入手する。
160: SBAは、縮小されるべき部分によって占有された仮想ストレージブロックを示す第2の仮想ストレージ空きブロック情報をSBDへ伝えて、縮小されるべき部分で占有されている仮想ストレージブロックを空いている状態とマーク付けしないようSBDに命令する。
縮小されるべき部分によって占有された仮想ストレージブロックが空いている状態とマーク付けされる場合、縮小されるべき部分によって占有される仮想ストレージブロックはSBDによって解放され、VMファイルシステムに返すことができないため、縮小されるべき部分で占有された仮想ストレージブロックが空いているとマーク付けされないことを確実にするために、SBDに遅れることなく通知する必要がある。ある実施の方法では、第2の仮想ストレージ空きブロック情報は、メモリを共有することによって伝えられるが、これは簡単で確実である。
SBDが、SBAによって伝えられた第2の仮想ストレージ空きブロック情報を受信した後、ステップ230が行われる。230: SBDは、第2の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが空いているかどうかを判断し、第2の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが空いている場合、仮想ストレージブロックは利用できるとマーク付けされる。
SBDは、メモリを共有することによって第2の仮想ストレージ空きブロック情報を取得し、第2の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが空いているかどうかを判断し、第2の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが空いている場合、仮想ストレージブロックは利用できるとマーク付けされ、第2の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用できない場合、処理は行われない。VMにおけるデータブロックの割当ては、仮想レイヤで行われるのみであり、物理ストレージスペースにおける実際のデータブロックの割当ては、書込み操作中に行われることに注意されたい。処理が完了した後に、SBDはSBAに応答する。
170: SBAは、ファイルシステムを呼び出して、事前に定義されたファイルを縮小する。
SBAはファイルシステムの切り捨てインタフェース(truncate interface)を呼び出して、縮小される事前に定義されたファイルのサイズとして事前に設定された限界値範囲の中間値をインポートする。中間値は、下限値と上限値の和の半分に等しい。
縮小されるべき事前に定義されたファイルの部分(すなわち、切り捨てられる部分)によって占有され、利用できるとマーク付けされた仮想ストレージブロック(すなわち、第2の仮想ストレージ空きブロック情報に対応する仮想ストレージブロック)は、VMファイルシステムに返される。
この方法の好ましい解決法では、事前に定義されたファイルによって占有された仮想ストレージスペースが限界値範囲の下限値よりも小さい状況、および事前に定義されたファイルによって占有された仮想ストレージスペースが限界値範囲の上限値よりも大きい状況が、それぞれ処理される。
事前に定義されたファイルのサイズが、限界値範囲の下限値と上限値の間であるとき、これは仮想ストレージの空き領域のサイズが適切であることを示し、処理は行われないことに注意されたい。
本発明の実施形態によるVMストレージスペースを管理するための方法は、一定の期間に従って周期的に行われる。ステップ110後に、すなわちVMに配備されたSBAが、事前に定義されたファイルによって占有された仮想ストレージスペースのサイズを、入手した限界値範囲と比較した後に、比較の結果に従ってそれぞれ様々な動作が行われる。動作が行われた後に、たとえ事前に定義されたファイルのサイズおよび入手された限界値範囲が変更されても、手順は次の周期に戻る。
要約すれば、本発明の実施形態によるVMストレージスペースを管理するための方法では、仮想ストレージの空きデータブロック情報は、VMのSBAによってリアルタイムで取得され、VMストレージスペースの使用状況がホストに活発に通知され、解放されるべき空きブロックの情報は、VMMレイヤ(すなわちホスト)に配備されたSBDに伝えられ、ホストはSBDによって仮想ストレージの空きブロックを解放し、再割当てする。ホストは、リアルタイムでVMストレージスペースの使用状況を取得することができるので、リアルタイム特性に優れていると理解することができる。
さらに、本発明の実施形態によるVMストレージスペースを管理するための方法では、ストレージシステムの多数の読み書き操作を回避するため、システムオーバヘッドは小さくなり、またファイルシステムのインタフェースを使用して仮想ストレージの空きブロックを取得するため、ファイルシステムの実行の詳細を知る必要がなく、普遍性に優れている。
さらに、本発明の実施形態によるVMストレージスペースを管理するための方法は、動的割当てイメージフォーマットおよび事前割当てミラーフォーマットの両方に適用できる。
本発明の実施形態によるVMストレージスペースを管理するための方法では、VMストレージスペースの使用状況がリアルタイムで識別される(すなわち、VMストレージシステムの有効データブロックおよび空きデータブロックが識別される)ため、仮想ストレージの空きブロックに対応する物理ストレージスペースを解放して、ストレージスペースを効率的に管理するようにし、それによって下位レイヤのストレージシステムの利用率を上げることができる。さらに、有効データブロックが識別されて、オンラインストレージの移行、VMのクローン作成、およびイメージのバックアップなど、入力/出力(I/O)の集中動作の効率を効果的に上げることができる。本発明の実施形態によるVMストレージスペースを管理するための解決法は、ストレージシステムの自動的にシンプロビジョニングされたスペースを管理するために使用することができると理解することができる。
図3に示すように、本発明の一実施形態は、TMストレージスペースを管理するためのシステムを提供し、このシステムはVMに配備されたSBAモジュールと、VMMレイヤに配備されたSBDモジュールとを含む。このシステムは、物理ホストで動作する。
次では、VMストレージスペースを管理するためのシステムが動作する物理ホストの論理アーキテクチャについてまず説明する。図4に示すように、物理ホストは、ハードウェアレイヤと、ホストと、VMとを含む。
ハードウェアレイヤは、仮想環境が動作するすべてのハードウェアプラットフォームであり、プロセッサ(例えば中央処理装置(CPU))、メモリ、ストレージシステム(例えばディスクまたはハードディスク)、ネットワークインタフェースカード(NIC)、I/Oデバイスなどを含むことができる。
ホストすなわちVMMレイヤは、管理レイヤとしてハードウェアリソースの管理および割当てを完了し、VMに仮想ハードウェアプラットフォームを提示し、VMをスケジュールして独立させる。一部のVMMの実行中には、特権的(privileged)VMの協力を必要とし、特権的VMおよびVMMは結合されてホストを形成する。仮想ハードウェアプラットフォームは、その上のVMに、仮想CPU(VCPU)、仮想メモリ、VDisk、および仮想NICなど、様々なハードウェアリソースを提供する。VDiskは、ホストにおけるファイルまたは論理ブロックデバイスに対応する。VDiskの連続ブロックは、ホストに別々に格納することができ、したがって構成および管理の便宜上、VMディスクイメージは、一般にイメージフォーマットで記述され、メタデータ領域が使用されてVDiskデータブロックとホストのデータブロックとのマッピング関係を格納する。
VMは、ホストによって用意された仮想プラットフォームで動作する。大部分の時間では、VMの実行はホストによって影響を及ぼされない。
次では、SBAモジュールおよびSBDモジュールについて説明する。SBAはVMに配備され、SBDはVMMレイヤに配備される。
SBAモジュール401は、事前に定義されたファイルによって占有された仮想ストレージスペースのサイズに従って、占有された仮想ストレージブロックの部分を取得し、この仮想ストレージブロックに対応する仮想ストレージ空きブロック情報をSBDモジュールに伝えるように構成される。
SBDモジュール402は、仮想ストレージ空きブロック情報に対応する物理ストレージスペースの一部または全部を解放し、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けするように構成される。
ある実施の方法では、SBAモジュール401は具体的には以下を含むことができる:
事前に定義されたファイルによって占有された仮想ストレージスペースのサイズを入手した限界地範囲と比較するように構成された、比較ユニット。
事前に定義されたファイルによって占有された仮想ストレージスペースが、限界値範囲の下限値よりも小さい場合、ファイルシステムを呼び出して事前に定義されたファイルを拡張し、拡張した事前に定義されたファイルにデータブロックを割り当てるように構成された、拡張ユニット。
ファイルシステムを呼び出して事前に定義されたファイルの拡張部分によって占有される仮想ストレージブロックを取得するように構成された、取得ユニット。
第1の仮想ストレージ空きブロック情報をSBDモジュールに伝えるように構成された、引渡ユニット。
ある実施の方法では、SBDモジュール402は具体的には以下を含むことができる:
第1の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用可能であるかどうかを判定するように構成され、第1のストレージグリーブロック情報に対応する仮想ストレージブロックが利用でき、仮想ストレージブロックを空いているとマーク付けする、判定ユニット。
ポリシーに従って、空いているとマーク付けされた仮想ストレージブロックの一部または全部に対応する物理ストレージスペースを解放し、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けするように構成された、解放およびマーク付けユニット。
要約すれば、本発明の実施形態によるVMストレージスペースを管理するためのシステムでは、仮想ストレージの空きデータブロック情報は、VMのSBAによってリアルタイムで取得され、VMストレージスペースの使用状況がホストに活発に通知され、解放されるべき空きブロックの情報は、VMMレイヤ(すなわちホスト)に配備されたSBDに伝えられ、ホストはSBDによって仮想ストレージの空きブロックを解放し、再割当てする。ホストは、VMストレージスペースの使用状況をリアルタイムで取得することができ、したがってリアルタイム特性に優れていると理解することができる。
さらに、本発明の実施形態によるVMストレージスペースを管理するためのシステムでは、ストレージシステムの多数の読み書き操作が回避されるため、システムオーバヘッドは小さくなり、またファイルシステムのインタフェースを使用して仮想ストレージの空きブロックを取得するため、ファイルシステムの実行の詳細を知る必要がなく、普遍性に優れている。
さらに、本発明の実施形態によるVMストレージスペースを管理するためのシステムは、動的割当てイメージフォーマットおよび事前割当てミラーフォーマットの両方に適用できる。
本発明の実施形態によるVMストレージスペースを管理するためのシステムでは、VMストレージスペースの使用状況は、リアルタイムで識別される(すなわち、VMストレージシステムの有効データブロックおよび空きデータブロックが識別される)ため、仮想ストレージの空きブロックに対応する物理ストレージスペースを解放して、ストレージスペースを効率的に管理するようにし、それによって下位レイヤのストレージシステムの利用率を上げることができる。さらに、有効データブロックが識別されるため、オンラインストレージの移行、VMのクローン作成、およびイメージのバックアップなど、I/O集中動作の効率を効果的に上げることができる。本発明の実施形態によるVMストレージスペースを管理するための解決法は、ストレージシステムの自動的にシンプロビジョニングされたスペースを管理するために使用することができると理解することができる。
図4に示すように、本発明の一実施形態はさらに、ハードウェアレイヤと、ハードウェアレイヤ上で動作するVMMレイヤと、VMMレイヤ上で動作する少なくとも1つのVMとを含み、VMにSBAが配備され、VMMレイヤにSBDが配備された、物理ホストを提供する。
SBAモジュールは、事前に定義されたファイルによって占有された仮想ストレージスペースのサイズに従って、占有された仮想ストレージブロックの部分を取得し、この仮想ストレージブロックに対応する仮想ストレージ空きブロック情報をSBDモジュールに伝えるように構成される。SBDモジュールは、仮想ストレージ空きブロック情報に対応する物理ストレージスペースの一部または全部を解放し、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けするように構成される。
ある実施の方法では、SBAモジュールは具体的には、事前に定義されたファイルによって占有された仮想ストレージスペースのサイズを入手した限界値範囲と比較する、事前に定義されたファイルによって占有された仮想ストレージスペースが限界値範囲の下限値よりも小さい場合、ファイルシステムを呼び出して事前に定義されたファイルを拡張し、拡張された事前に定義されたファイルに仮想ストレージブロックを割り当てる、ファイルシステムを呼び出して、事前に定義されたファイルの拡張部分によって占有された仮想ストレージブロックを取得する、仮想ストレージブロックを示す第1の仮想ストレージ空きブロック情報をSBDモジュールに伝えるように構成される。
SBDモジュールは具体的には、第1の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用できるかどうかを判断する、第1の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用可能である場合、仮想ストレージブロックを空いているとマーク付けする、ポリシーに従って、空いているとマーク付けされた仮想ストレージブロックの一部または全部に対応する物理ストレージスペースを解放する、解放した物理ストレージスペースに対応する仮想ストレージブロックに利用できないとマーク付けするように構成される。
ある実施の方法では、SBAモジュールはさらに、事前に定義されたファイルによって占有された仮想ストレージスペースが限界値範囲の上限値よりも大きい場合、ファイルシステムを呼び出して縮小されるべき事前に定義されたファイルの部分によって占有された仮想ストレージブロックを入手する、仮想ストレージブロックを示す第2の仮想ストレージ空きブロック情報をSBDモジュールに伝える、ファイルシステムを呼び出して事前に定義されたファイルを縮小するように構成される。
SBDモジュールはさらに、第2の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが空いているかどうかを判断し、第2の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが空いている場合、仮想ストレージブロックは利用できるとマーク付けするように構成される。
要約すれば、本発明の実施形態による物理ホストでは、仮想ストレージの空きデータブロック情報は、VMのSBAによってリアルタイムで取得され、VMストレージスペースの使用状況がホストに活発に通知され、解放されるべき空きブロックの情報は、VMMレイヤ(すなわちホスト)に配備されたSBDに伝えられ、ホストはSBDによって仮想ストレージの空きブロックを解放し、再割当てする。ホストは、VMストレージスペースの使用状況をリアルタイムで取得することができるため、リアルタイム特性に優れていると理解することができる。
さらに、本発明の実施形態による物理ホストでは、ストレージシステムの多数の読み書き操作が回避されるため、システムオーバヘッドは小さくなり、またファイルシステムのインタフェースを使用して仮想ストレージの空きブロックを取得するため、ファイルシステムの実行の詳細を知る必要がなく、普遍性に優れている。
さらに、本発明の実施形態による物理ホストは、動的割当てイメージフォーマットおよび事前割当てミラーフォーマットの両方に適用できる。
本発明の実施形態による物理ホストでは、VMストレージスペースの使用状況がリアルタイムで識別される(すなわち、VMストレージシステムの有効データブロックおよび空きデータブロックが識別される)ため、仮想ストレージの空きブロックに対応する物理ストレージスペースを解放して、ストレージスペースを効率的に管理するようにし、それによって下位レイヤのストレージシステムの利用率を上げることができる。さらに、有効データブロックが識別されるため、オンラインストレージの移行、VMのクローン作成、およびイメージのバックアップなど、I/O集中動作の効率を効果的に上げることができる。本発明の実施形態によるVMストレージスペースを管理するための解決法は、ストレージシステムの自動的にシンプロビジョニングされたスペースを管理するために使用することができると理解することができる。
理解を容易にするための便宜上、前述の実施形態で説明したVMストレージスペースを管理するための方法は、特定の応用のシナリオにおいて詳細に説明している。明瞭にするために、SBAによって行われるステップは、SBDによって行われるステップとは別に説明している。この実施形態において、下位レイヤのストレージシステムがディスクであることは、説明のための一例とみなされる。したがって物理ストレージスペースは物理ディスクスペースであり、仮想ストレージスペースはVDiskスペースである。
図5aに示すように、まずSBAによって行われるステップについて次に説明する。
201: 事前に定義されたファイル(F、Windows(登録商標)のドライブCについては、事前に定義されたファイルは、C:\balloon.sysとすることができる)が存在しない場合、事前に定義されたファイルを作成する。
202: 事前に定義されたファイルFのファイルサイズSを取得する。
203: ファイルシステムのインタフェースを介して、空き領域のサイズXなど、VDiskの空き領域情報を入手する。
204: 図4に示すように、SBDから、FがVDiskの空き領域を占有することができる下限比率(L1%)および上限比率(L2%)の設定を取得する。
205: 事前に定義されたファイルのサイズSを事前に設定された限界値範囲と比較し、S<X*L1%の場合、事前に設定されたファイルFによって占有される空き領域が小さすぎることを示し、事前に定義されたファイルを拡張する。
2011: ファイルシステムの事前に割当てられた(fallocate)インタフェースを呼び出し、事前に設定されたファイルFのサイズとしてX*(Ll%+L2%)/2をインポートし、ファイルシステムは、データブロック[b1,b2,…,bn]をファイルに割り当てる。
2022: ファイルシステムのロックインタフェースを呼び出し、事前に定義されたファイルFに対応するVDiskのデータブロックが、ディスクデフラグツールによって変更されていないことを確認する。
2023: 事前に定義されたファイルの拡張部分、すなわち区間[S, X*(L1% +L2%)/2]については、ファイルシステムの「file offset -> data block」マッピング(bmap)インタフェースを呼び出して、対応するVDiskのブロック群を入手する。
2024: メモリを共有することによってVDiskブロック群に対応する第1のVDisk空きブロック情報をSBDへ伝え、VDiskブロック群は、再使用および解放の候補として使用され、図4に示すように、第1のVDisk空きブロック情報は、例えば、[2, 3, 14, 15, 16, 17, 18, 19, 20, ..., 24]であり、同時に、SBDへ拡張メッセージを伝えて、SBDに対応する動作を行うように命令する。
206: S>X*L2%の場合、事前に定義されたファイルFによって占有された空き領域が大きすぎることを示し、事前に定義されたファイルを縮小する。
2061: システムはX*(L1%+L2%)/2を縮小されたFのサイズとみなし、区間[X*(L1%+L2%)/2, S]について、ファイルシステムの「file offset -> data block」マッピング(bmap)インタフェースを呼び出して、対応するVDiskブロック群を入手する。
2062: メモリを共有することによって、VDiskブロック群に対応する第2のVDisk空きブロック情報をSBDに伝え、同時に、縮小メッセージをSBDに伝えて、SBDに対応する動作を行うように命令し、VDiskブロック群がSBDによって空いている状態とマーク付けされないようにする。
2063: ファイルシステムの切り捨てインタフェースを呼び出して、縮小されたFのサイズとしてX*(L1%+L2%)/2をインポートし、VDiskブロック群をVMファイルシステムに返す。
207: X*L1%<=S<=X*L2%の場合、事前に定義されたファイルFによって占有された空き領域が適切であることを示し、事前に定義されたファイルを拡大または縮小する必要がない。
208: 適切な期間の間待機した後、ステップ202に戻る。
事前に定義されるファイルFのサイズがファイルシステムによって制限されるとき、複数の事前に定義されるファイルFを作成する必要がある可能性があることに注意されたい。
図5bに示すように、SBDによって行われるステップについて次に説明する。
301: SBAにより事前に定義されたファイルがVDiskの空き領域を占有できる下限比率および上限比率を設定するためのユーザインタフェースを提供する。上限比率および下限比率は、柔軟に設定することができる。例えば、オンラインストレージの移行中、この率は適切に上げて、VDiskの空き領域のコピーをさらに削減する目的を達成する。一般に、下限比率は、約60%に設定することができ、上限比率は80%と90%の間に設定することができる。
302: SBAによって送信された受信済み拡張メッセージを処理する。このステップでは、SBDは、メモリを共有することによって、解放されるべきVDiskブロックに対応する第1のVDiskの空きブロック情報を取得し、対応するVDiskブロックをマーク付けする。このステップは、具体的には次のステップを含む。
3031: 第1のVDiskの空きブロック情報に対応するVDiskブロックが利用できるかどうかを判断し、第1のVDiskの空きブロック情報に対応するVDiskブロックが利用できる場合は、VDiskブロックを空いているとマーク付けし、第1のVDiskの空きブロック情報に対応するVDiskブロックが利用できない場合は、処理を行わない。
3032: 判断およびマーク付けを完了した後、SBAに応答する。
3033: 空きブロックの一部または全部に対応するディスクスペースを解放し、対応するブロックをポリシーに従って利用できないとマーク付けする。
単純なポリシーは、空いているとマーク付けされたすべてのブロックを解放し、このブロックに利用できないとマーク付けすることである。
好ましいポリシーは、次のようである。VMにおいてディスクスペースを割り当てるおよび解放する動作の頻度が、一定の閾値以上であるとき、空きデータブロックはおそらく短時間のうちに再び使用されるため、SBDは、頻繁な解放および再割当てによって引き起こされるオーバヘッドを減らすために、解放される空きデータブロックの比率を下げ、VMにおいてディスクスペースを割り当てるおよび解放する動作の頻度が低いとき、SBDは解放される空きデータブロックの比率を上げる。
データブロックがファイルの形式であるとき、空きブロックを解放する関数は、ホストファイルシステムの内部インタフェース(free_blocks (start_block, count))をエクスポートすることに依存し、データブロックがブロックインタフェースの形式では、下位レイヤのブロックストレージシステムが空きブロックを解放するよう命令されることに注意されたい。
303: SBAによって送信された受信済み縮小メッセージを処理する。このステップでは、SBDは、メモリを共有することによって、取り戻すべきVDiskブロックに対応する第2のVDisk空きブロック情報を取得し、対応するVDiskブロックをマーク付けする。このステップは、具体的には次のステップを含む。
3031: VDiskフォーマットの対応するVDiskブロックが空いているかどうかを判断し、VDiskフォーマットの対応するVDiskブロックが空いている場合、対応するVDiskブロックに利用できるとマーク付けする。
3032: VDiskフォーマットの対応するVDiskブロックが利用できないかどうかを判断し、VDiskフォーマットの対応するVDiskブロックが利用できない場合、処理を行わない。実際のデータブロックの割当ては、書込み操作中に行われることに注意されたい。
3033: SBAに応答する。
要約すれば、本発明の実施形態によりVMストレージスペースを管理するための解決法では、仮想ストレージの空きデータブロック情報は、VMのSBAによってリアルタイムで取得され、VMストレージスペースの使用状況がホストに活発に通知され、解放されるべき空きブロックの情報は、VMMレイヤ(すなわちホスト)に配備されたSBDに伝えられ、ホストはSBDによって仮想ストレージの空きブロックを解放し、再割当てする。ホストは、VMストレージスペースの使用状況をリアルタイムで取得することができるため、リアルタイム特性に優れていると理解することができる。
さらに、本発明の実施形態によるVMストレージスペースを管理するための解決法では、ストレージシステムの多数の読み書き操作が回避されるため、システムオーバヘッドは小さくなり、またファイルシステムのインタフェースを使用して仮想ストレージの空きブロックを取得するため、ファイルシステムの実行の詳細を知る必要がなく、普遍性に優れている。
さらに、本発明の実施形態によるVMストレージスペースを管理するための解決法は、動的割当てイメージフォーマットおよび事前割当てミラーフォーマットの両方に適用できる。
本発明の実施形態によりVMストレージスペースを管理するための解決法では、VMストレージスペースの使用状況がリアルタイムで識別される(すなわち、VMストレージシステムの有効データブロックおよび空きデータブロックが識別される)ため、仮想ストレージの空きブロックに対応する物理ストレージスペースを解放して、ストレージスペースを効率的に管理するようにし、それによって下位レイヤのストレージシステムの利用率を上げることができる。さらに、有効データブロックが識別されるため、オンラインストレージの移行、VMのクローン作成、およびイメージのバックアップなど、I/O集中動作の効率を効果的に上げることができる。本発明の実施形態によるVMストレージスペースを管理するための解決法は、ストレージシステムの自動的にシンプロビジョニングされたスペースを管理するために使用することができると理解することができる。
本発明の実施形態による方法のステップの全部または一部は、関連ハードウェアを命令するプログラムによって実行されることが可能であると、当業者には理解されたい。プログラムは、コンピュータ可読記憶媒体に格納することができる。記憶媒体には、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク、または光ディスクが含まれる。
上記では、本発明の実施形態によるVMストレージスペースおよびコンピュータ端末を管理するための方法およびシステムについて、詳細に説明している。本明細書では特定の例を通して、本発明の原理および実施について説明している。本発明の実施形態についての説明は、本発明の方法および核となる考えの理解を容易にするために提供しているにすぎない。当業者は、本発明の理念により特定の実施および応用範囲に関して本発明に対する変更形態および修正形態を作成することができる。したがって本明細書は、本発明の制限と解釈されてはならない。
401 SBAモジュール
402 SBDモジュール

Claims (15)

  1. 物理ホストに適用できる、仮想マシン(VM)のストレージスペースを管理するための方法であって、前記物理ホストがハードウェアレイヤと、前記ハードウェアレイヤ上で動作する仮想マシンモニタ(VMM)レイヤと、前記VMMレイヤ上で動作するVMとを備え、前記VMにストレージバルーンエージェント(SBA)モジュールが配備され、前記VMMレイヤにストレージバルーンデーモン(SBD)モジュールが配備され、
    前記SBAモジュールによって、事前に定義されたファイルによって占有された仮想ストレージスペースのサイズと、事前に定義されたファイルによって占有され得る仮想ストレージの空き領域を示す限界値範囲との比較によって入手された結果に従って、事前に定義されたファイルの拡張部分によって占有された仮想ストレージブロック、又は、事前に定義されたファイルの縮小部分によって占有された仮想ストレージブロックを取得し(100)、前記仮想ストレージブロックを示す仮想ストレージ空きブロック情報を前記SBDモジュールに伝えるステップと、
    前記SBDモジュールによって、解放した物理ストレージスペースが再割当てされるように、前記仮想ストレージ空きブロック情報に対応する物理ストレージスペースの一部または全部を解放し、前記解放した物理ストレージスペースに対応する仮想ストレージブロックにVMストレージフォーマットには利用できないとマーク付けするステップと
    を含み、前記事前に定義されたファイルは一定の仮想ストレージの空き領域を占有するために使用される、方法。
  2. 前記SBAモジュールによって、事前に定義されたファイルによって占有された仮想ストレージスペースのサイズと、事前に定義されたファイルによって占有され得る仮想ストレージの空き領域を示す限界値範囲との比較によって入手された結果に従って、事前に定義されたファイルの拡張部分によって占有された仮想ストレージブロック、又は、事前に定義されたファイルの縮小部分によって占有された仮想ストレージブロックを取得し、前記仮想ストレージブロックを示す仮想ストレージ空きブロック情報を前記SBDモジュールに伝える前記ステップが、
    前記SBAモジュールによって、前記事前に定義されたファイルによって占有された前記仮想ストレージスペースの前記サイズを上限値および下限値を含む限界値範囲と比較するステップ(110)と、
    前記事前に定義されたファイルによって占有された前記仮想ストレージスペースが、前記限界値範囲の前記下限値よりも小さい場合、ファイルシステムを呼び出して前記事前に定義されたファイルを拡張し、拡張された前記事前に定義されたファイルに、仮想ストレージの空き領域から仮想ストレージブロックを割り当てるステップ(120)と、
    前記ファイルシステムを呼び出して、前記事前に定義されたファイルの前記拡張部分で占有された仮想ストレージブロックを入手するステップ(130)と、
    前記仮想ストレージブロックを示す第1の仮想ストレージ空きブロック情報を前記SBDモジュールに伝えるステップ(140)とを含む、請求項1に記載の方法。
  3. 前記SBDモジュールによって、解放した物理ストレージスペースが再割当てされるように、前記仮想ストレージ空きブロック情報に対応する前記物理ストレージスペースの一部または全部を解放し、前記解放した物理ストレージスペースに対応する前記仮想ストレージブロックにVMストレージフォーマットに利用できないとマーク付けする前記ステップが、
    前記SBDモジュールによって、第1の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用できるかどうかを判断し、前記第1の仮想ストレージ空きブロック情報に対応する前記仮想ストレージブロックが利用できる場合、前記仮想ストレージブロックを空いているとマーク付けするステップ(210)と、
    ポリシーにより、空いているとマーク付けされた前記仮想ストレージブロックの一部または全部に対応する物理ストレージスペースを解放し、前記解放した物理ストレージスペースに対応する前記仮想ストレージブロックにVMストレージフォーマットに利用できないとマーク付けするステップ(220)とを含む、請求項2に記載の方法。
  4. 前記SBAモジュールによって、前記事前に定義されたファイルによって占有された前記仮想ストレージスペースの前記サイズを前記限界値範囲と比較する前記ステップの後に、
    前記事前に定義されたファイルによって占有された前記仮想ストレージスペースが、前記限界値範囲の前記上限値よりも大きい場合、前記ファイルシステムを呼び出して、前記事前に定義されたファイルの前記縮小部分によって占有された仮想ストレージブロックを入手するステップ(150)と、
    前記仮想ストレージブロックを示す第2の仮想ストレージ空きブロック情報を前記SBDモジュールに伝えるステップ(160)とをさらに含む、請求項2に記載の方法。
  5. 前記仮想ストレージブロックを示す前記第2の仮想ストレージ空きブロック情報を前記SBDモジュールに伝える前記ステップの後に、
    前記SBDモジュールによって、前記第2の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが空いているかどうかを判断し、前記第2の仮想ストレージ空きブロック情報に対応する前記仮想ストレージブロックが空いている場合、前記仮想ストレージブロックに利用できるとマーク付けするステップと、前記SBAモジュールによって、前記ファイルシステムを呼び出して前記事前に定義されたファイルを縮小するステップとをさらに含む、請求項4に記載の方法。
  6. 前記SBAモジュールによって、前記事前に定義されたファイルによって占有された前記仮想ストレージスペースの前記サイズを前記限界値範囲と比較する前記ステップが、
    前記SBAモジュールによって、前記ファイルシステムを呼び出して仮想ストレージ空き領域のサイズおよび前記事前に定義されたファイルによって占有された前記仮想ストレージスペースの前記サイズを取得し、前記SBDモジュールから、前記SBDモジュールにおいて事前に設定された下限比率および上限比率を入手するステップであって、前記事前に定義されたファイルが前記下限比率と前記上限比率との間で前記仮想ストレージ空き領域を占有することを許可されるステップと、
    前記下限比率および前記仮想ストレージ空き領域の前記サイズの積を前記限界値範囲の下限値とみなし、前記上限比率および前記仮想ストレージ空き領域の前記サイズの積を前記限界値範囲の前記上限値とみなすステップと、
    前記事前に定義されたファイルによって占有された仮想ストレージスペースのサイズが前記下限値より小さいか否か、又は、前記上限値より大きいか否かを決定するために、前記事前に定義されたファイルによって占有された前記仮想ストレージスペースの前記サイズを、それぞれ前記限界値範囲の前記下限値および前記上限値と比較するステップとを含む、請求項2から5のいずれか一項に記載の方法。
  7. 前記事前に定義されたファイルを拡張するために前記ファイルシステムを呼び出す前記ステップが、
    前記SBAモジュールによって、前記ファイルシステムの事前に割り当てられた(fallocate)インタフェースを呼び出すステップと、
    前記限界値範囲の中間値を前記拡張された事前に定義されたファイルのサイズとしてインポートするステップであって、前記中間値が前記限界値範囲の前記下限値と前記上限値の和の半分に等しいステップとを含む、請求項2または3に記載の方法。
  8. 前記事前に定義されたファイルを縮小するために前記ファイルシステムを呼び出す前記ステップが、
    前記SBAモジュールによって、前記ファイルシステムの切り捨てインタフェースを呼び出して、前記限界値範囲の中間値を縮小された前記事前に定義されたファイルのサイズとしてインポートするステップであって、前記中間値が前記限界値範囲の前記下限値と前記上限値との和の半分に等しいステップと、
    利用できるとマーク付けされ、前記事前に定義されたファイルの切り捨て部分に対応する仮想ストレージブロックを、前記ファイルシステムに返すステップとを含む、請求項5に記載の方法。
  9. 前記仮想ストレージブロックを前記拡張された事前に定義されたファイルに割り当てる前記ステップの後に、
    前記SBAモジュールによって、前記ファイルシステムのロックインタフェースを呼び出して、前記拡張された事前に定義されたファイルに割り当てられた前記仮想ストレージブロックをロックするステップをさらに含む、請求項2または3に記載の方法。
  10. 前記ポリシーに従って空いているとマーク付けされた前記仮想ストレージブロックの一部または全部に対応する前記物理ストレージスペースを解放する前記ステップが、
    前記VMにおいて前記ストレージスペースを割り当てるまたは解放する動作の頻度が、事前に設定された閾値よりも大きいかどうかを判断し、
    前記VMにおいて前記ストレージスペースを割り当てるまたは解放する前記動作の前記頻度が前記事前に設定された閾値以下である場合、空いているとマーク付けされた前記仮想ストレージブロックに対応する前記物理ストレージスペースを、事前に設定された比率で、解放するステップと、
    前記VMにおいて前記ストレージスペースを割り当てるまたは解放する前記動作の前記頻度が前記事前に設定された閾値以上である場合、事前に設定されたレートで前記事前に設定された比率を下げ、前記下げた比率で、空いているとマーク付けされた前記仮想ストレージブロックに対応する前記物理ストレージスペースを解放するステップを含む、請求項3に記載の方法。
  11. 前記仮想ストレージブロックに対応する前記仮想ストレージ空きブロック情報を前記SBDモジュールに伝える前記ステップが、
    前記SBAモジュールによって、前記仮想ストレージブロックに対応する前記仮想ストレージ空きブロック情報を前記SBDモジュールにメモリを共有することによって伝えるステップ
    を含む、請求項1から5のいずれか一項に記載の方法。
  12. 仮想マシン(VM)のストレージスペースを管理するためのシステムであって、VMに配備されたストレージバルーンエージェント(SBA)モジュールと、仮想マシンモニタ(VMM)レイヤに配備されたストレージバルーンデーモン(SBD)とを備え、
    前記SBAモジュールが、事前に定義されたファイルによって占有された仮想ストレージスペースのサイズと、事前に定義されたファイルによって占有され得る仮想ストレージの空き領域を示す限界値範囲との比較によって入手された結果に従って、事前に定義されたファイルの拡張部分によって占有された仮想ストレージブロック、又は、事前に定義されたファイルの縮小部分によって占有された仮想ストレージブロックを取得し、前記仮想ストレージブロックを示す仮想ストレージ空きブロック情報をSBDモジュールに伝えるように構成され(402)
    前記SBDモジュールが、解放した物理ストレージスペースが再割当てされるように、前記仮想ストレージの空きブロック情報に対応する物理ストレージスペースの一部または全部を解放し、前記解放した物理ストレージスペースに対応する仮想ストレージブロックにVMストレージフォーマットには利用できないとマーク付けするように構成され、前記事前に定義されたファイルは一定の仮想ストレージの空き領域を占有するために使用される、システム。
  13. ハードウェアレイヤと、前記ハードウェアレイヤ上で動作する仮想マシンモニタ(VMM)レイヤと、前記VMM上で動作する少なくとも1つの仮想マシン(VM)とを備える物理ホストであって、前記VMにストレージバルーンエージェント(SBA)モジュール(401)が配備され、前記VMMレイヤにストレージバルーンデーモン(SBD)モジュール(402)が配備され、
    前記SBAモジュール(401)が、事前に定義されたファイルによって占有された仮想ストレージスペースのサイズと、事前に定義されたファイルによって占有され得る仮想ストレージの空き領域を示す限界値範囲との比較によって入手された結果に従って、事前に定義されたファイルの拡張部分によって占有された仮想ストレージブロック、又は、事前に定義されたファイルの縮小部分によって占有された仮想ストレージブロックを取得し、前記仮想ストレージブロックを示す仮想ストレージ空きブロック情報を前記SBDモジュール(402)に伝えるように構成され、
    前記SBDモジュール(402)が、解放した物理ストレージスペースが再割当てされるように、前記仮想ストレージの空きブロック情報に対応する物理ストレージスペースの一部または全部を解放し、前記解放した物理ストレージスペースに対応する仮想ストレージブロックにVMストレージフォーマットには利用できないとマーク付けするように構成され
    前記事前に定義されたファイルは一定の仮想ストレージの空き領域を占有するために使用される、物理ホスト。
  14. 前記SBAモジュール(401)が具体的には、前記事前に定義されたファイルによって占有された前記仮想ストレージスペースの前記サイズを前記入手した限界値範囲と比較し、前記事前に定義されたファイルによって占有された前記仮想ストレージスペースが前記限界値範囲の下限値よりも小さい場合、ファイルシステムを呼び出して前記事前に定義されたファイルを拡張し、前記拡張された事前に定義されたファイルに仮想ストレージブロックを割り当て、前記ファイルシステムを呼び出して、前記事前に定義されたファイルの拡張部分によって占有された仮想ストレージブロックを取得し、前記仮想ストレージブロックを示す第1の仮想ストレージ空きブロック情報を前記SBDモジュール(402)に伝えるように構成され、
    前記SBDモジュール(402)が具体的には、前記第1の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが利用できるかどうかを判断し、前記第1の仮想ストレージ空きブロック情報に対応する前記仮想ストレージブロックが利用できる場合、前記仮想ストレージブロックを空いているとマーク付けし、空いているとマーク付けされた前記仮想ストレージブロックの一部または全部に対応する物理ストレージスペースを解放し、前記解放した物理ストレージスペースに対応する仮想ストレージブロックをポリシーに従って利用できないとマーク付けするように構成された、請求項13に記載の物理ホスト。
  15. 前記SBAモジュール(401)がさらに、前記事前に定義されたファイルによって占有された前記仮想ストレージスペースが前記限界値範囲の上限値よりも大きい場合、前記ファイルシステムを呼び出して前記事前に定義されたファイルの縮小部分によって占有された仮想ストレージブロックを入手し、前記仮想ストレージブロックを示す第2の仮想ストレージ空きブロック情報を前記SBDモジュール(402)に伝え、前記ファイルシステムを呼び出して前記事前に定義されたファイルを縮小するように構成され、
    前記SBDモジュール(402)がさらに、前記第2の仮想ストレージ空きブロック情報に対応する仮想ストレージブロックが空いているかどうかを判断し、前記第2の仮想ストレージ空きブロック情報に対応する前記仮想ストレージブロックが空いている場合、前記仮想ストレージブロックに利用できるとマーク付けするように構成された、請求項14に記載の物理ホスト。
JP2012542354A 2010-11-03 2011-05-13 仮想マシンのストレージスペースおよび物理ホストを管理するための方法およびシステム Active JP5510556B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN 201010530638 CN101986285B (zh) 2010-11-03 2010-11-03 虚拟机存储空间管理方法、系统及物理主机
CN201010530638.8 2010-11-03
PCT/CN2011/074025 WO2012058917A1 (zh) 2010-11-03 2011-05-13 虚拟机存储空间管理方法、系统及物理主机

Publications (2)

Publication Number Publication Date
JP2013513174A JP2013513174A (ja) 2013-04-18
JP5510556B2 true JP5510556B2 (ja) 2014-06-04

Family

ID=43710634

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012542354A Active JP5510556B2 (ja) 2010-11-03 2011-05-13 仮想マシンのストレージスペースおよび物理ホストを管理するための方法およびシステム

Country Status (5)

Country Link
EP (1) EP2479677A4 (ja)
JP (1) JP5510556B2 (ja)
KR (1) KR101403416B1 (ja)
CN (1) CN101986285B (ja)
WO (1) WO2012058917A1 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8850156B2 (en) 2010-11-03 2014-09-30 Huawei Technologies Co., Ltd. Method and system for managing virtual machine storage space and physical host
CN101986285B (zh) * 2010-11-03 2012-09-19 华为技术有限公司 虚拟机存储空间管理方法、系统及物理主机
CN102012834B (zh) * 2010-12-20 2013-02-27 复旦大学 基于用户空闲进程的提高虚拟机性能与可伸缩性的方法
US8873398B2 (en) * 2011-05-23 2014-10-28 Telefonaktiebolaget L M Ericsson (Publ) Implementing EPC in a cloud computer with openflow data plane
CN102222014B (zh) * 2011-06-16 2013-05-22 华中科技大学 基于内存热插拔的虚拟机动态内存管理方法
CN102404253B (zh) * 2011-06-28 2014-08-06 西安交通大学 支持linux 的硬件抽象层的虚拟网卡设计方法
CN103226518B (zh) 2012-01-31 2016-06-22 国际商业机器公司 一种在存储管理系统中进行卷扩展的方法和装置
CN102779074B (zh) * 2012-06-18 2015-04-08 中国人民解放军国防科学技术大学 基于内存空洞机制的虚拟机内存资源分配方法
US9128843B2 (en) 2012-10-11 2015-09-08 Industrial Technology Research Institute Method and computer system for memory management on virtual machine system
CN102968380B (zh) * 2012-11-02 2016-12-07 深圳市同洲电子股份有限公司 内存文件系统中内存分区的管理方法和装置
US9053002B2 (en) * 2013-11-12 2015-06-09 International Business Machines Corporation Thick and thin data volume management
CN103713941B (zh) * 2013-12-20 2018-05-04 汉柏科技有限公司 基于qcow2格式的虚拟机镜像克隆方法及系统
CN103744622B (zh) * 2014-01-10 2017-10-13 浪潮电子信息产业股份有限公司 一种实现存储系统自动精简配置异步全额分配的方法
CN104156173A (zh) * 2014-07-29 2014-11-19 浪潮(北京)电子信息产业有限公司 一种实现磁盘碎片整理的方法及装置
US20160299712A1 (en) * 2015-04-07 2016-10-13 Microsoft Technology Licensing, Llc Virtual Machines Backed by Host Virtual Memory
CN105138284B (zh) * 2015-08-11 2018-10-23 上海交通大学 虚拟机磁盘镜像同步操作优化的系统及方法
CN105550111A (zh) * 2015-12-16 2016-05-04 浪潮(北京)电子信息产业有限公司 虚拟环境下操作系统io性能基准的测试调优方法及系统
CN107783722B (zh) * 2016-08-25 2020-08-21 星辰天合(北京)数据科技有限公司 数据传输方法和数据转发装置
CN106502762A (zh) * 2016-10-20 2017-03-15 浪潮电子信息产业股份有限公司 一种基于虚拟化技术的内存自动优化方法
CN109697016B (zh) * 2017-10-20 2022-02-15 伊姆西Ip控股有限责任公司 用于改进容器的存储性能的方法和装置
CN107800806B (zh) * 2017-11-15 2019-08-06 中国联合网络通信集团有限公司 云环境下存储资源回收方法、共享存储系统和云服务系统
CN110389905B (zh) * 2018-04-20 2023-12-19 伊姆西Ip控股有限责任公司 资源释放方法、资源分配方法、设备和计算机程序产品
CN109324893B (zh) * 2018-08-07 2021-08-31 华为技术有限公司 分配内存的方法和装置
CN109857343B (zh) * 2019-01-30 2023-02-07 新华三云计算技术有限公司 磁盘空间释放方法及装置
CN112148228A (zh) * 2020-09-29 2020-12-29 上海摩勤智能技术有限公司 存储空间的释放方法、终端及存储介质
CN112286630A (zh) * 2020-10-22 2021-01-29 烽火通信科技股份有限公司 一种虚拟机内存热迁移的优化方法与装置
CN112395045B (zh) * 2020-11-13 2024-07-09 深圳力维智联技术有限公司 虚拟机回收及其资源调整方法
CN116074003B (zh) * 2023-03-06 2023-06-20 中安云科科技发展(山东)有限公司 一种密码机动态多线程负载均衡方法、系统及密码机
CN118394721B (zh) * 2024-06-21 2024-09-13 威海海洋职业学院 一种基于计算机系统资源使用数据的分析管理系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000155713A (ja) * 1998-11-24 2000-06-06 Sony Corp キャッシュサイズ制御装置
US7433951B1 (en) * 2000-09-22 2008-10-07 Vmware, Inc. System and method for controlling resource revocation in a multi-guest computer system
JP2005011208A (ja) * 2003-06-20 2005-01-13 Hitachi Ltd ボリュームサイズ変更装置および変更方法
JP2006293543A (ja) * 2005-04-07 2006-10-26 Nec Corp ストレージシステム及び物理記憶領域の動的回収方法
JP4765967B2 (ja) * 2007-03-20 2011-09-07 日本電気株式会社 情報処理装置及び情報処理方法並びにプログラム
US8195866B2 (en) * 2007-04-26 2012-06-05 Vmware, Inc. Adjusting available persistent storage during execution in a virtual computer system
US8156492B2 (en) * 2007-09-07 2012-04-10 Oracle International Corporation System and method to improve memory usage in virtual machines running as hypervisor guests
JP5146174B2 (ja) * 2008-07-28 2013-02-20 富士通株式会社 仮想マシンモニタ装置およびプログラム,ならびに仮想マシン間メモリ共有管理方法
CN101477495B (zh) * 2008-10-28 2011-03-16 北京航空航天大学 分布式内存虚拟化技术的实现方法
CN101751335B (zh) * 2008-11-28 2012-01-18 国际商业机器公司 调度虚拟机的垃圾收集的方法、装置和集群系统
CN101587524B (zh) * 2009-06-23 2015-02-11 宏碁电脑(上海)有限公司 一种基于虚拟系统的数据存储设备加密方法
CN101986285B (zh) * 2010-11-03 2012-09-19 华为技术有限公司 虚拟机存储空间管理方法、系统及物理主机

Also Published As

Publication number Publication date
WO2012058917A1 (zh) 2012-05-10
EP2479677A4 (en) 2012-08-08
KR20120086322A (ko) 2012-08-02
EP2479677A1 (en) 2012-07-25
KR101403416B1 (ko) 2014-06-03
CN101986285B (zh) 2012-09-19
JP2013513174A (ja) 2013-04-18
CN101986285A (zh) 2011-03-16

Similar Documents

Publication Publication Date Title
JP5510556B2 (ja) 仮想マシンのストレージスペースおよび物理ホストを管理するための方法およびシステム
US8850156B2 (en) Method and system for managing virtual machine storage space and physical host
US10810045B2 (en) Method and apparatus for allocating central processing unit (CPU) resources in a default resource pool
US11575748B2 (en) Data storage method and apparatus for combining different data distribution policies
EP3631628B1 (en) Method and apparatus for implementing virtual gpu and system
US10701139B2 (en) Life cycle management method and apparatus
CN108701059B (zh) 多租户资源分配方法和系统
EP3073374B1 (en) Thread creation method, service request processing method and related device
US11301303B2 (en) Resource pool processing to determine to create new virtual resource pools and storage devices based on currebt pools and devices not meeting SLA requirements
WO2015196931A1 (zh) 基于磁盘io的虚拟资源分配方法及装置
US10241836B2 (en) Resource management in a virtualized computing environment
CN110098946B (zh) 虚拟化网元设备的部署方法以及装置
JP7467593B2 (ja) リソース割振り方法、記憶デバイス、および記憶システム
CN117480494A (zh) 改进虚拟计算环境中资源分配的协调容器调度
CN109417488A (zh) 虚拟网络功能资源管理的方法和设备
WO2021057489A1 (zh) 虚拟机内存管理的方法及设备
CN109960569B (zh) 一种虚拟化处理方法及装置
CN110019475B (zh) 数据持久化处理方法、装置及系统
EP2642387B1 (en) Method, memory management unit and computer system for managing memory of computer system
CN116483740B (zh) 内存数据的迁移方法、装置、存储介质及电子装置
CN106325972B (zh) 一种虚拟机管理方法及网络设备
WO2022142515A1 (zh) 管理实例的方法、装置以及云应用引擎
CN116436968A (zh) 一种服务网格通信方法、系统、装置以及存储介质
CN111580935A (zh) 一种网络通信方法、装置、设备及存储介质
CN110209499B (zh) 一种云平台资源动态配置方法、装置及云平台

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130903

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131202

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140225

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140310

R150 Certificate of patent or registration of utility model

Ref document number: 5510556

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250