JP2020194521A - 仮想マシンを起動させるための方法、装置、デバイス及び媒体 - Google Patents

仮想マシンを起動させるための方法、装置、デバイス及び媒体 Download PDF

Info

Publication number
JP2020194521A
JP2020194521A JP2020001150A JP2020001150A JP2020194521A JP 2020194521 A JP2020194521 A JP 2020194521A JP 2020001150 A JP2020001150 A JP 2020001150A JP 2020001150 A JP2020001150 A JP 2020001150A JP 2020194521 A JP2020194521 A JP 2020194521A
Authority
JP
Japan
Prior art keywords
virtual machine
disk
storage capacity
virtual
disk snapshot
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.)
Granted
Application number
JP2020001150A
Other languages
English (en)
Other versions
JP6859463B2 (ja
Inventor
シエ、ヨンチー
Yongji Xie
チャイ、ウェン
Wen Chai
チャン、ユイ
Yu Zhang
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Publication of JP2020194521A publication Critical patent/JP2020194521A/ja
Application granted granted Critical
Publication of JP6859463B2 publication Critical patent/JP6859463B2/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/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • 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/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]
    • 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
    • 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/45562Creating, deleting, cloning virtual machine instances
    • 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/45575Starting, stopping, suspending or resuming virtual machine instances
    • 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
    • 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/45583Memory management, e.g. access or allocation
    • 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/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】仮想マシンを起動させるための方法、装置、デバイス及び媒体を提供する。【解決手段】仮想マシンを起動させるための方法は、第1の仮想マシンの仮想ディスクにおける第1のデータに対してディスクスナップショットを生成するステップと、第1の仮想マシンの識別子情報及びディスクスナップショットのアドレス情報に基づき第2の仮想マシンを稼動させることによって第1のデータを第2の仮想マシンの仮想ディスクに複写するステップと、を含む。起動された第2の仮想マシンにおけるオペレーティングシステムの初期化の完了に応じて、第2の仮想マシンの稼動を一時停止することによって、第1の仮想マシンが使用不能な時に第1の仮想マシンを復元させる。【選択図】図2

Description

本開示の実施形態は主にコンピュータ分野に関し、更に具体的に、仮想マシンを起動させるための方法、装置、デバイス及びコンピュータ読取可能な記憶媒体に関している。
クラウド・コンピューティングの発展に従い、クラウドにデプロイするよう選択するインターネットサービスはますます多くなる。サービスをクラウドにデプロイすることによって、ユーザは多くのデバイスの配置を必要としなく、コストを低減できる。なお、クラウド上の仮想マシンを用いてこれらのサービスを稼働させることによってサービスの稼動効率を向上できる。しかしながら、これらのサービスは、クラウド上にデプロイされるので、コストを考慮すると、クラウド上の仮想マシンとともに起動されることが一般的である。
しかしながら、クラウドプラットフォームで稼動されている一部のサービスは、性能パラメータに対する要求が厳しい。したがって、クラウドプラットフォームにおけるサーバでこれらのサービスを稼動させることも、クラウドプラットフォームサーバに対し厳しく要求している。従来の仮想マシン稼動機構はこれらの要求を満たすことができないので、サービスの提供時の効率が低く、速度が遅くなり、ひいては、対応するサービスを提供できない虞がある。
本開示の例示的な実施形態により、仮想マシンを起動させるため技術案が提供される。
本開示の第1態様において、仮想マシンを起動させるための方法を提供する。該方法は、第1の仮想マシンの仮想ディスクにおける第1のデータに対してディスクスナップショットを生成するステップと、第1の仮想マシンの識別子情報およびディスクスナップショットのアドレス情報に基づき、第2の仮想マシンを稼動させることによって、第1のデータを第2の仮想マシンの仮想ディスクに複写するステップと、起動された第2の仮想マシンにおけるオペレーティングシステムの初期化の完了に応じて、第2の仮想マシンの稼動を一時停止させることによって、第1の仮想マシンが使用不能な時に第1の仮想マシンを復元させるステップと、を含む。
本開示の第2態様において、仮想マシンを起動させるための装置を提供する。該装置は、第1の仮想マシンの仮想ディスクにおける第1のデータに対してディスクスナップショットを生成するように構成されている第1のディスクスナップショット生成モジュールと、第1の仮想マシンの識別子情報およびディスクスナップショットのアドレス情報に基づき、第2の仮想マシンを稼動させることによって、第1のデータを第2の仮想マシンの仮想ディスクに複写するように構成されている起動仮想マシンモジュールと、起動された第2の仮想マシンにおけるオペレーティングシステムの初期化の完了に応じて、第2の仮想マシンの稼動を一時停止させることによって、第1の仮想マシンが使用不能な時に第1の仮想マシンを復元させるように構成されている第1の一時停止モジュールと、を備える装置。
本開示の第3態様において、1つのまたは複数のプロセッサと、1つのまたは複数のプログラムを記憶するための記憶装置であって、1つまたは複数のプログラムが1つ又は複数のプロセッサにより実行されると、1つまたは複数のプロセッサに本開示の第1態様に記載の方法を実行させる記憶装置と、を備える電子デバイスを提供する。
本開示の第4態様において、コンピュータプログラムが記憶されるコンピュータ読取可能な記憶媒体であって、該プログラムがプロセッサにより実行されると、本開示の第1態様に記載の方法を実現するコンピュータ読取可能な記憶媒体を提供する。
発明の概要部分に記載の内容は本開示の実施形態の肝心の、又は重要の特徴を限定することを主旨としなく、本開示の範囲を限定することを目的としていないことを理解すべきである。本開示におけるその他の特徴は下記の記載により容易に理解され得る。
図面を参照するとともに下記の詳細の説明を参照して、本開示の各実施形態の上記の、及びその他の特徴、利点や態様はより明らかになる。図面における同一又は類似の図面の符号は同一又は類似の部材を示す。
本開示の実施形態に係る仮想マシンを起動させる例示的な環境100を示す模式図である。
本開示の実施形態に係る仮想マシンを起動させるための方法200を示すフローチャートである。
本開示の実施形態に係る仮想マシンを復元させるための方法300を示すフローチャートである。
本開示の実施形態に係る仮想マシンを起動させるための装置400を示す概略ブロック図である。
本開示の複数の実施形態を実施可能なコンピューティングデバイス500を示すブロック図である。
図面を参照して本開示の実施形態を更に詳細に説明する。図面は本開示の一部の実施形態を示しているが、本開示は様々の形式にて実現され得、且つ、本明細書に記載の実施形態に限定されないものであると理解すべきであり、ただし、これらの実施形態は本開示を更に詳細且つ完備に理解するために提示されるものである。本開示の図面及び実施形態は本開示の保護範囲を限定するものでなく例示的なものであると理解すべきである。
本開示の実施形態の記載における用語である「含む」及びその類似の用語は、非限定の表現、即ち、「含むがそれに限定されない」と理解すべきである。用語である「基づく」は、「少なくとも一部が…に基づき」と理解すべきである。用語である「一実施形態」又は「該実施形態」は、「少なくとも一実施形態」と理解すべきである。用語である「第1の」、「第2の」などは、異なるか、または、同一の対象を指すことができる。下記の記載は明示的及び暗黙的な他の定義を含む可能性もある。
通常に、仮想マシンは主にスナップショットにて1つの仮想マシンのミラーファイルを生成することによって高速起動される。通常に、該スナップショットは、仮想マシンの仮想メモリ及び/又は仮想ディスクにおけるデータに対して生成されるもの、例えば、仮想マシンディスクに基づき生成されるディスクスナップショット、仮想メモリに基づき生成されるメモリスナップショット等である。そして、ミラーファイルは仮想マシンの起動毎に直接的にローディングされる。このようにして、仮想マシンはスナップショット作成時の状態に直接復元され、仮想マシンBIOS及びカーネルの起動プロセスをスキップして起動速度を加速できる。しかしながら、スナップショットファイルをローディングして仮想マシンを起動させる方式は、仮想マシンが起動時に磁気ディスクにおけるスナップショットファイルを読み書きする必要があるので、仮想マシンのメモリが比較的大きいか、又は、磁気ディスクの速度が比較的遅いとき、スナップショットファイルの読取時間が起動時間の更なるボトルネックとなるという欠点がある。
本開示の実施形態によれば、仮想マシンの起動のための、改良された技術案は提供される。該技術案においては、第1の仮想マシンのディスクスナップショットを生成することによって、第1の仮想マシンに対応する第2の仮想マシン(テンプレート仮想マシンとも称され得る)を自動的に生成する。そして、該第2の仮想マシンを稼動させる。該第2の仮想マシンのオペレーティングシステムの初期化が完了された後に、該第2の仮想マシンの稼動を一時停止させる。このようにして得られる第2の仮想マシンは、第1の仮想マシンの復元中に、復元されるべき第1の仮想マシンとして直接利用され得る。この場合には、仮想マシンのプリロードにて該第2の仮想マシンを起動させるので、ディスクデータ及びメモリデータを改めてローディングする必要はない。したがって、仮想マシンの復元速度が高まれ、仮想マシンの復元に要する時間が短縮され、仮想マシンの利用効率が向上された。
図1は本開示の実施形態に係る仮想マシンを起動させる例示的な環境100を示す模式図である。例示的な環境100はマネージャ102を備える。マネージャ102は仮想マシンの稼動を管理するためのものである。マネージャ102は記憶システムのコントローラであってもよいし、独立したコンピューティングデバイスのプロセッサであってもよいし、更に、仮想マシンの稼動を管理可能な任意の他の適宜のデバイスであってもよい。上記の例は本開示に対し具体的に限定するものでなく、本開示を記述するための実施形態に過ぎない。
図1はマネージャ102によって第1の仮想マシン104及び第2の仮想マシン106を管理することを示す。当業者は、図1に示す仮想マシン104及び仮想マシン106は本開示に対し具体的に限定するものでなく、例示的なものに過ぎないことを理解されたい。マネージャ102は必要に応じて任意の数の仮想マシンを管理できる。
仮想マシン104とは、特定のアプリケーションによって物理的機械のハードウェアプラットフォームにおいて作成されるアプリケーション実行環境を指しており、ユーザは、物理的機械の使用の如く、該環境によってアプリケーションを実行させて対話をすることができる。通常に、1つの仮想マシンを作成する場合には、仮想マシン104の動作中の使用のために、マネージャ102によって該仮想マシンを収容するマスターシステムから所定数のリソースを割り当てる必要がある。該リソースは仮想マシンを稼動させるための任意の利用可能なリソース、例えば、コンピューティングリソース(例えば、CPU、GPU、FPGAなど)、記憶リソース(例えば、メモリ、記憶ディスクなど)、ネットワークリソース(例えば、ネットワークカードなど)などであり得る。マネージャ102は仮想マシン104に各種のリソース、例えば、メモリ及びディスクを割り当てる。
仮想マシン106は、仮想マシン104に対するディスクスナップショットの生成時に、マネージャ102により該ディスクスナップショットに基づき生成されるものである。該ディスクスナップショットは仮想マシンの磁気ディスクにおけるデータに対するミラーファイルである。生成されるディスクスナップショットは所定の記憶位置、例えば、仮想マシンを稼動させるマスターの記憶ディスクに保存される。仮想マシン106は仮想マシン104のテンプレート仮想マシンとも称され得る。仮想マシン104に対するディスクスナップショットの生成時に、マネージャ102は仮想マシン104の識別子情報及びディスクスナップショットのアドレス情報を取得する。そして、識別子情報に基づき、仮想マシン104の配置情報を取得できる。該識別子情報及びアドレス情報によって仮想マシン106を起動させる。起動された仮想マシン106はディスクスナップショットに関わるディスクデータを仮想マシンのディスクに記憶する。
一部の実施形態において、仮想マシン106と仮想マシン104とはメモリの記憶容量が異なる。一部の実施形態において、仮想マシン106のメモリの記憶容量が仮想マシン104のメモリの記憶容量より小さい。一例において、仮想マシン106のメモリの記憶容量の大きさがそのオペレーティングシステムの起動のみに適する。一例において、仮想マシン106のメモリの大きさが512Mである。上記の例は本開示に対する具体的な限定ではなく、本開示を説明するためのものに過ぎない。当業者は必要に応じて仮想マシン106のメモリの大きさを任意の適当な値に設定することができる。
仮想マシン106は、マネージャ102によって、生成された仮想マシン104のディスクスナップショットに基づき起動され得る。仮想マシン106のオペレーティングシステムが稼動された後、マネージャ102は仮想マシン106の稼動を一時停止させる。仮想マシン106の稼動を一時停止させることによって、仮想マシン106の持続稼動に用いられるコンピューティングリソースを低減することができる。仮想マシン104の復元リクエストが受信された場合、一時停止の仮想マシン106を改めて起動させることによって仮想マシン104を高速に復元させ得る。例えば、仮想マシン104が停止された後、マネージャ102は仮想マシン104の復元リクエストを受信した後、復元の仮想マシン104として仮想マシン106を改めて稼動させる。
一部の実施形態において、仮想マシン104の数回のスナップショットを生成する時に、その前のスナップショットに対して生成される仮想マシンを停止させて、最終回のスナップショットに対して生成される仮想マシンだけを保留する。
上記の図1は、本開示の実施形態に係る仮想マシンを起動させる例示的な環境100を示す模式図である。次に、図2を参照して、本開示の実施形態に係る仮想マシンを起動させるための方法200のフローチャートを説明する。方法200は図1におけるマネージャ102により実現され得る。説明の便宜上、図1を参照しながら方法200を説明する。特別な順序で示されているが、方法200における一部のステップは、示される順序と異なる順序、又は、並行方式にて実行され得ると理解すべきである。この面において本開示の実施形態は限定されるものではない。なお、図1を参照して方法200を説明するのは、方法200に対する具体的な限定ではなく、あくまでも例示的なものである。
ブロック202において、マネージャ102は仮想マシン104(説明の便宜上、次に、第1の仮想マシンとも称される)の仮想ディスクにおける第1のデータに対してディスクスナップショットを生成する。該ディスクスナップショットは仮想マシンの磁気ディスクにおけるデータに対するミラーファイルである。生成されたディスクスナップショットは所定の記憶位置、例えば、仮想マシンを稼動させるマスターの記憶ディスクに保存される。一部の実施形態において、マネージャ102は、第1の仮想マシンの仮想ディスクにおける第1のデータのみに対してディスクスナップショットを生成する。その代わりにまたは付加的には、マネージャ102は第1の仮想マシンのメモリにおけるデータに対して対応するスナップショットを生成しない。
マネージャ102が第1の仮想マシンの仮想ディスクにおけるデータに対してディスクスナップショットを生成するタイミングも必要に応じて設定される。一部の実施形態において、マネージャ102はユーザから第1の仮想マシンに対するディスクスナップショットを生成するリクエストを受信すると該ディスクスナップショットを生成する。一部の実施形態において、第1の仮想マシンが使用可能な時に、仮想マシンのディスクにおけるデータに対するディスクスナップショットを生成し得る。一例において、マネージャ102は、第1の仮想マシンが停止されるべきであることを検出すると、第1の仮想マシンの仮想ディスクに対するディスクスナップショットを生成する。上記の例は本開示に対する具体的な限定ではなく、本開示を記述するためのものに過ぎない。
ブロック204において、マネージャ102は第1の仮想マシンの識別子情報及びディスクスナップショットのアドレス情報に基づき、仮想マシン106(説明の便宜上、次に、第2の仮想マシンとも称され得る)を稼動させることによって、第1のデータを第2の仮想マシンの仮想ディスクに複写する。ディスクスナップショットのアドレス情報は、生成されたディスクスナップショットの記憶位置を指示する。マネージャ102は、第1の仮想マシンのディスクスナップショットが生成されたことを確定すると、該ディスクスナップショットに基づき第2の仮想マシンを起動させる。該プロセスにおいて、マネージャ102は第1の仮想マシンの識別子及び生成されたディスクスナップショットのアドレスを確定する。次に、これらの2つのデータを仮想マシン起動プログラムに送信し、第1の仮想マシンに対応する第2の仮想マシンを生成することができる。メモリを除き、第2の仮想マシンの配置は第1の仮想マシンの配置と同じである。
一部の実施形態において、第1の仮想マシンの第1のメモリの第1の記憶容量が第2の仮想マシンの第2のメモリの第2の記憶容量より大きい。一例において、第2の仮想マシンのメモリの記憶容量の大きさが、そのオペレーティングシステムの起動のみに適する。一例において、第2の仮想マシンのメモリの大きさが512Mである。上記の例は本開示に対する具体的な限定ではなく、本開示を記述するためのものに過ぎない。該仮想マシンがメモリに常置されるものであるので、そのメモリを最小化に配置することによって、メモリリソースへの占有を低減できる。当業者は必要に応じて第2の仮想マシンのメモリの大きさを任意の適当な値に設定することができる。
さらに、第2の仮想マシンは取得したディスクスナップショットのアドレス情報に基づき第1の仮想マシンの仮想ディスクに記憶されているデータを第2の仮想マシンの記憶ディスクに記憶する。これにより、生成された第2の仮想マシンのディスクデータを、スナップショットの生成時の第1の仮想マシンにおけるディスクデータと一致させる。したがって、この時の第2の仮想マシンのディスクデータは、第1の仮想マシンがディスクスナップショットを生成する時の状態に復元される。
ブロック206において、マネージャ102は既に起動された第2の仮想マシンにおけるオペレーティングシステムの初期化が完成されたか否かを確定する。既に起動された第2の仮想マシンにおけるオペレーティングシステムの初期化が既に完成されたと確定された場合、ブロック208において、マネージャ102は第2の仮想マシンの稼動を一時停止させることで、第1の仮想マシンが使用不能な時に、第1の仮想マシンを復元させる。マネージャ102は、第2の仮想マシンを起動させた後、第2の仮想マシンによるオペレーティングシステムの初期化を待つ。初期化が完了した後に、第2の仮想マシンの稼動を一時停止させる。該一時停止された第2の仮想マシンは、第1の仮想マシンが利用不能となった後、第1の仮想マシンを復元させるためのリクエストが受信されると、第1の仮想マシンとしてデプロイされる各種のサービスを稼動させることができる。
一部の実施形態において、マネージャ102は、第2の仮想マシンからのオペレーティングシステムの初期化完了を示す指示情報の受信に応じて、第2の仮想マシンを一時停止させる。一例において、マネージャ102は、第2の仮想マシンにおいて所定のサービスをデプロイする。該サービスは、第2の仮想マシンにおけるオペレーティングシステムの初期化が完了した時に、自動的に稼動し始まる。該サービスは、稼動している時にオペレーティングシステムの初期化完了を示す指示情報をマネージャ102に送信することができる。この場合、マネージャ102は該指示情報に基づきオペレーティングシステムの初期化の完了を確定できる。
一部の実施形態において、マネージャ102は、起動された第2の仮想マシンをモニタリングすることができる。第2の仮想マシンが所定のアクセス動作を実行したことがモニタリングされると、オペレーティングシステムの初期化が既に完了したことを意味する。所定のアクセス動作は、予め定義された1種又は数種のアクセス動作、例えば、ネットワークアダプタ、メモリ等に対する読み書き動作等であり得る。一例において、マネージャ102によって第2の仮想マシンがネットワークアダプタ(例えば、ネットワークカード)にアクセスしたことがモニタリングされると、初期化プロセスが完成されたことを意味する。他の一例において、マネージャ102は、第2の仮想マシンによる所定の記憶位置へのアクセス動作をモニタリングした。上記の例は本開示に対する具体的な限定ではなく、本開示を記述するためのものに過ぎない。当業者は必要に応じて、マネージャによりモニタリング可能な、第2の仮想マシンのオペレーティングシステムの初期化完了を示すための任意の適当なアクセス動作を設置することができる。第2の仮想マシにより特定の部材又は記憶位置にアクセスしたことがモニタリングされることが確定された後に、第2の仮想マシンの稼動を一時停止できる。上記の例は本開示に対する具体的な限定ではなく、本開示を記述するための実施形態だけである。
第1の仮想マシンのディスクスナップショットを生成する時に、ディスクスナップショットによって第1の仮想マシンに対応する第2の仮想マシン(テンプレート仮想マシンとも称され得る)を自動的に生成する。そして、該第2の仮想マシンを一時停止させるとともに、第2の仮想マシンをメモリに常置させることによって、第1の仮想マシンを新たに復元させる時に、復元されるべき第1の仮想マシンとして第2の仮想マシンの稼動を直接復元させることができる。このような仮想マシンプリロードの方式にて、仮想マシンを復元させることは、ディスクデータ及びメモリデータを改めてローディングする必要はない。したがって、仮想マシンの復元速度が高まれ、仮想マシンの復元に要する時間が短縮され、仮想マシンの利用効率が向上された。
上記のように、図2を参照して、本開示の実施形態に係る仮想マシンを起動するための方法200のフローチャートを説明した。次に、図3を参照して、本開示の実施形態に係る仮想マシンを復元させるための方法300のフローチャートを説明する。方法300は、方法200において第2の仮想マシンを起動させて一時停止させた後に行なわれ、図1に示すマネージャ102により実現される方法である。説明の便宜上、図1を参照しながら方法300を説明する。特別な順序で示されるが、方法300における一部のステップは、示される順序と異なる順序又は並行方式にて実行され得ると理解すべきである。この面において、本開示の実施形態は限定されない。なお、図1を参照して方法300を説明することは、方法300に対する具体的な限定ではなく、例示的なものだけである。
ブロック302において、マネージャ102は、第1の仮想マシンを復元させるための、第1の仮想マシンの識別子情報を含むリクエストを受信する。第1の仮想マシンの操作中において、第1の仮想マシンを停止することは常にあることである。第1の仮想マシンが停止された後に、第1の仮想マシンを再度利用するために、ユーザは第1の仮想マシンを復元させるリクエストを出すことがある。一部の実施形態において、該リクエストは第1の仮想マシンの識別子情報を含む。その代わりにまたは付加的に、該リクエストはユーザの識別子情報を更に含み得る。上記の例は本開示に対する具体的な限定ではなく、本開示を記述するためのものに過ぎない。
ブロック304において、マネージャ102は識別子情報に基づき第2の仮想マシン及び第1の仮想マシンの第1のメモリの第1の記憶容量を確定する。マネージャ102は、リクエストを受信した後に、リクエストに含まれる仮想マシンの識別子情報を確定する。該識別子情報に基づき、マネージャ102は該識別子情報に対応する第2の仮想マシンを検索でき、且つ、マネージャ102は該識別子情報に基づき該識別子情報に対応する第1の仮想マシンの配置情報、例えば、第1の仮想マシンの第1のメモリの第1の記憶容量を確定することができる。
ブロック306において、マネージャ102は、第2の仮想マシンの第2のメモリの記憶容量を、第2の記憶容量から第1の記憶容量に調整する。一部の実施形態において、該記憶容量の調整プロセスは、仮想マシンのメモリのホットスワップ技術によって実現される。メモリのホットスワップ技術によって、第2のメモリの記憶容量を第1の記憶容量に調整できる。
一部の実施形態において、第1の仮想マシンの第1のメモリの第1の記憶容量が、第2の仮想マシンの第2のメモリの第2の記憶容量より大きい。第1の仮想マシンの記憶容量は、ユーザによって設置される記憶容量であるが、第2の仮想マシンの記憶容量は、第1の仮想マシンを復元させるための予め生成されたものである。したがって、第2の仮想マシンのメモリの記憶容量は小さく設置されている。したがって、第1の仮想マシンとして第2の仮想マシンを用いるために、第2の仮想マシンのメモリの記憶容量を第1の記憶容量に復元しなければならない。上記の例は本開示に対する具体的な限定ではなく、本開示を記述するためのものに過ぎない。
ブロック308において、マネージャ102は、第2の仮想マシンを引き続き稼動させることにより第1の仮想マシンとする。第2の仮想マシンのメモリの記憶容量が第1の仮想マシンの記憶容量と同じように復元された後、第2の仮想マシンの状態は第1の仮想マシンのスナップショット時の状態と同じとなる。したがって、第1の仮想マシンの復元は高速に実現された。
第1の仮想マシンを復元させるリクエストを受信した後に、一時停止された第2の仮想マシンを用いて、そのメモリの大きさを調整することによって、第1の仮想マシンを高速に復元させることが実現された。メモリの大きさ及び仮想マシンのプリロード方式を調整することによって、仮想マシンを復元させ、仮想マシンのグローバルミラースナップショット(例えば、メモリ、システムディスクデータを保存することなど)を生成する必要がなく、システムディスクのスナップショットファイルだけを生成すればよい。且つ、このような操作は磁気ディスクスナップショットファイルへの読み書きステップを完全に回避し、仮想マシンの復元速度を加速できる。
図4は本開示の実施形態に係る仮想マシンを起動するための装置400を示す概略ブロック図である。装置400は、図1に示すマネージャ102に含まれ得るか、または、マネージャ102として実現され得る。図4に示すように、装置400は、第1の仮想マシンの仮想ディスクにおける第1のデータに対しディスクスナップショットを生成するように構成されている第1のディスクスナップショット生成モジュール402を備える。装置400は、第1の仮想マシンの識別子情報及びディスクスナップショットのアドレス情報に基づき、第2の仮想マシンを稼動させることで、第1のデータを第2の仮想マシンの仮想ディスクに複製するように構成されている仮想マシン起動モジュール404を更に備える。装置400は、第1の仮想マシンの利用不能のときに第1の仮想マシンを復元させるために、既に起動された第2の仮想マシンにおけるオペレーティングシステムの初期化の完了に応じて、第2の仮想マシンの稼動を一時停止させるように構成されている第1の一時停止モジュールを更に備える。
一部の実施形態において、第1の仮想マシンの第1のメモリの第1の記憶容量が第2の仮想マシンの第2のメモリの第2の記憶容量より大きい。
一部の実施形態において、該装置400は、第1の仮想マシンの識別子情報を含む、第1の仮想マシンを復元させるためのリクエストを受信するように構成されるリクエスト受信モジュールを更に備える。該装置400は、識別子情報に基づき第2の仮想マシンと第1の記憶容量を確定するように構成されている記憶容量確定モジュールを更に備える。該装置400は、第2の仮想マシンの第2のメモリの記憶容量を第2の記憶容量から第1の記憶容量に調整するように構成されている記憶容量調整モジュールを更に備える。該装置400は、第2の仮想マシンを引き続き稼動させることにより第1の仮想マシンとするように構成されている仮想マシン稼動モジュールを更に備える。
一部の実施形態において、第1のディスクスナップショット生成モジュールは、ディスクスナップショットの生成のためのリクエストの受信に応じて、ディスクスナップショットを生成するように構成されている第2のディスクスナップショット生成モジュールと、第1の仮想マシンの利用可能なときにディスクスナップショットを自動的に生成するように構成されている第3のディスクスナップショット生成モジュールとのうち、少なくとも一方を備える。
一部の実施形態において、第1の一時停止モジュールは、オペレーティングシステムの初期化の完了を示す指示情報が第2の仮想マシンから受信されたことに応じて第2の仮想マシンを一時停止させるように構成されている第2の一時停止モジュールを備える。
一部の実施形態において、第1の一時停止モジュールは、第2の仮想マシンによる所定のアクセス動作の実行がモニタリングされたことに応じて、オペレーティングシステムの初期化の完了を確定するように構成されている初期化モジュールを備える。
図5は本開示の実施形態を実現できる電子デバイス500を示す概略ブロック図である。デバイス500は図1に示すマネージャ102を実現するために用いられる。図に示すように、デバイス500は、読み出し専用メモリ(ROM)502に記憶されているコンピュータプログラム指令、または、記憶手段508からランダム・アクセス・メモリ(RAM)503にローディングされたコンピュータプログラム指令に応じて、各種の適宜の動作及び処理を行うことができるコンピューティングデバイス501を備える。RAM 503には、デバイス500の動作に必要な各種のプログラム及びデータも記憶され得る。コンピューティングデバイス501、ROM 502、及びRAM 503は、バス504を介して互いに接続されている。入力/出力(I/O)インターフェース505もバス504に接続されている。
デバイス500における複数の部材はI/Oインターフェース505に接続されており、キーボード、マウスなどのような入力手段506、各種類のディスプレイ、スピーカなどのような出力手段507、磁気ディスク、光ディスクなどのような記憶手段508、及びネットワークカード、モデム、無線通信送受信機などのような通信手段509を備える。通信手段509は、デバイス500がインターネットのようなコンピュータネットワーク、及び/又は、各種の電信ネットワークを介して他のデバイスと情報/データを交換することを可能にする。
コンピューティングデバイス501は、処理及び演算能力を有する汎用の、及び/又は、専用の各種の処理コンポーネントであり得る。コンピューティングデバイス501の一部の例は、中央処理装置(CPU)、グラフィックスプロセシングユニット(GPU)、各種の専用の人工知能(AI)コンピューティングチップ、機械学習モデルアルゴリズムを実行する各種のコンピューティングデバイス、デジタル信号プロセッサ(DSP)、及び任意の適当なプロセッサ、コントローラ、マイクロコントローラなどを含むがこれらに限らない。コンピューティングデバイス501は、上記のように記載された各方法及び処理、例えば、方法200及び300を実行する。例えば、一部の実施形態において、方法200及び300は、記憶手段508などの機械読取可能な媒体に有形に具現化されるコンピュータソフトウェアプログラムとして実現され得る。一部の実施形態において、コンピュータプログラムの一部又は全部は、ROM 502、及び/又は、通信手段509を介して、デバイス500にロード、及び/又は、インストールされ得る。コンピュータプログラムがRAM 503にローディングされるとともにコンピューティングデバイス501により実行されるとき、上記の方法200と方法300の1つまたは複数のステップを実行することができる。任意選択で、他の実施形態において、コンピューティングデバイス501は他の任意の適当な方式(例えば、ファームウェアを用いる)にて方法500を実行するように設置され得る。
本明細書において、上記のように記載されている機能は少なくとも一部が1つ又は複数のハードウェアロジック部材により実行され得る。例えば、非制限的には、使用可能な例示的なハードウェアロジック部材は、フィールド・プログラマブル・ゲート・アレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システム・オン・チップ(SOC)、複雑なプログラマブルロジックデバイス(CPLD)などを含む。
本開示の方法を実施するためのプログラムコードは1つ又は複数のプログラミング言語の任意の組み合わせによって作成され得る。これらのプログラムコードは汎用コンピュータ、専用コンピュータ、或いは、他のプログラマブルデータ処理装置のプロセッサ又はコントローラに提供され得る。これにより、プログラムコードがプロセッサまたはコントローラにより実行される時に、フローチャート及び/又はブロック図に示す機能/動作は実施される。プログラムコードは、全部が機械で実行されてもよいし、一部が機械で実行されてもよい。スタンドアロンソフトウェアパッケージとして、プログラムコードは、一部が機械で実行されるとともに一部がリモートマシンで実行されてもよいし、全部がリモートマシン又はサーバで実行されてもよい。
本開示の全文において、機械読取可能な媒体は有形媒体であり得、指令実行システム、装置又はデバイスの使用、或いは、指令実行システム、装置またはデバイスに組み合わせて使用するためのプログラムを含むか、又は、記憶することができる。機械読取可能な媒体は、機械読取可能な信号媒体又は機械読取可能な記憶媒体であり得る。機械読取可能な媒体は、電子的、磁気的、光学的、電磁気的、赤外の、あるいは、半導体システム、装置またはデバイス、あるいは、これらの如何なる適当な組み合わせを含むがこれらに限られない。機械読取可能な記憶媒体としては、更に具体的には、1本または複数本の導線に基づく電気的接続、携帯式コンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROMまたはフラッシュメモリ)、光ファイバー、シーディーロム(CD−ROM)、光学記憶デバイス、磁気記憶デバイス、又は、これらのあらゆる適当な組み合わせは挙げられる。
なお、各動作は特定な順序で記載されているが、このような動作が示された特別な順序又は順位で実行されるよう要求されること、又は、所望の結果を取得できるように図示されたあらゆる動作が実行されるよう要求されることと理解すべきである。一定の条件下で、マルチタスク及び並行処理は有利である可能性がある。同様に、上記の記載には実現のための若干の具体的な内容は含まれるが、これらは本開示の範囲を限定するものでないと解釈すべきである。単一の実施形態に記載されている一部の特徴を組み合わせて単一の実施で具現化され得る。これに対して、単一の実施に記載されている各種の特徴も独立に又は如何なる適切なサブセットにて複数の実施で具現化され得る。
構造特徴及び/又は方法ロジック動作に対して特別な言語で本主題を記載しているが、特許請求の範囲に限定されている主題は必ずしも上記のように記載されている特定な特徴又は動作に限定されることではない。逆に、上記のように記載されている特定な特徴及び動作は特許請求の範囲を実現するための例示的なものに過ぎない。

Claims (14)

  1. 仮想マシンを起動させるための方法であって、
    前記第1の仮想マシンの仮想ディスクにおける第1のデータに対してディスクスナップショットを生成するステップと、
    前記第1の仮想マシンの識別子情報および前記ディスクスナップショットのアドレス情報に基づき、第2の仮想マシンを稼動させることによって、前記第1のデータを前記第2の仮想マシンの仮想ディスクに複写するステップと、
    起動された前記第2の仮想マシンにおけるオペレーティングシステムの初期化の完了に応じて、前記第2の仮想マシンの稼動を一時停止させることによって、前記第1の仮想マシンが使用不能な時に前記第1の仮想マシンを復元させるステップと、を含む方法。
  2. 前記第1の仮想マシンの第1のメモリの第1の記憶容量が、前記第2の仮想マシンの第2のメモリの第2の記憶容量より大きい請求項1に記載の方法。
  3. 前記第1の仮想マシンを復元させるための、前記第1の仮想マシンの識別子情報を含むリクエストを受信するステップと、
    前記識別子情報に基づき、前記第2の仮想マシンおよび前記第1の記憶容量を確定するステップと、
    前記第2の仮想マシンの前記第2のメモリの記憶容量を、前記第2の記憶容量から前記第1の記憶容量に調整するステップと、
    前記第2の仮想マシンを引き続き稼動させることで前記第1の仮想マシンとするステップと、をさらに含む請求項2に記載の方法。
  4. 前記の第1の仮想マシンに対してディスクスナップショットを生成するステップは、
    ディスクスナップショットを生成するためのリクエストの受信に応じて前記ディスクスナップショットを生成するステップと、
    前記第1の仮想マシンが使用可能な時に前記ディスクスナップショットを生成するステップと、のうち、少なくとも一方を含む請求項1に記載の方法。
  5. 前記第2の仮想マシンを一時停止させるステップは、
    前記オペレーティングシステムの初期化の完了を示す指示情報が前記第2の仮想マシンから受信されたことに応じて、前記第2の仮想マシンを一時停止させるステップを含む請求項1に記載の方法。
  6. 前記第2の仮想マシンを一時停止させるステップは、
    前記第2の仮想マシンが所定のアクセス動作を実行したことがモニタリングされたことに応じて、前記オペレーティングシステムの初期化の完了を確定するステップを含む請求項1に記載の方法。
  7. 仮想マシンを起動させるための装置であって、
    前記第1の仮想マシンの仮想ディスクにおける第1のデータに対してディスクスナップショットを生成するように構成される第1のディスクスナップショット生成モジュールと、
    前記第1の仮想マシンの識別子情報および前記ディスクスナップショットのアドレス情報に基づき、第2の仮想マシンを稼動させることによって、前記第1のデータを前記第2の仮想マシンの仮想ディスクに複写するように構成される仮想マシン起動モジュールと、
    起動された前記第2の仮想マシンにおけるオペレーティングシステムの初期化の完了に応じて、前記第2の仮想マシンの稼動を一時停止させることによって、前記第1の仮想マシンが使用不能な時に前記第1の仮想マシンを復元させるように構成される第1の一時停止モジュールと、を備える装置。
  8. 前記第1の仮想マシンの第1のメモリの第1の記憶容量が、前記第2の仮想マシンの第2のメモリの第2の記憶容量より大きい請求項7に記載の装置。
  9. 前記第1の仮想マシンを復元させるための、前記第1の仮想マシンの識別子情報を含むリクエストを受信するように構成されるリクエスト受信モジュールと、
    前記識別子情報に基づき、前記第2の仮想マシンと前記第1の記憶容量を確定するように構成される記憶容量確定モジュールと、
    前記第2の仮想マシンの前記第2のメモリの記憶容量を、前記第2の記憶容量から前記第1の記憶容量に調整するように構成される記憶容量調整モジュールと、
    前記第2の仮想マシンを引き続き稼動させることによって前記第1の仮想マシンとするように構成される仮想マシン稼動モジュールと、をさらに備える請求項8に記載の装置。
  10. 第1のディスクスナップショット生成モジュールは、
    ディスクスナップショットを生成するためのリクエストの受信に応じて、前記ディスクスナップショットを生成するように構成される第2のディスクスナップショット生成モジュールと、
    前記第1の仮想マシンの使用可能な時に前記ディスクスナップショットを生成するように構成される第3のディスクスナップショット生成モジュールとのうち、少なくとも一方を備える請求項7に記載の装置。
  11. 前記第1の一時停止モジュールは、
    前記オペレーティングシステムの初期化の完了を示す指示情報が前記第2の仮想マシンから受信されたことに応じて、前記第2の仮想マシンを一時停止させるように構成される第2の一時停止モジュールを備える請求項7に記載の装置。
  12. 前記第1の一時停止モジュールは、
    前記第2の仮想マシンによる所定のアクセス動作の実行がモニタリングされたことに応じて、前記オペレーティングシステムの初期化の完了を確定するように構成される初期化モジュールを備える請求項7に記載の装置。
  13. 1つまたは複数のプロセッサと、
    1つまたは複数のプログラムを記憶するための記憶装置であって、前記1つまたは複数のプログラムが前記1つ又は複数のプロセッサにより実行されると、前記1つまたは複数のプロセッサに請求項1〜6のいずれか1項に記載の方法を実行させる記憶装置と、を備える電子デバイス。
  14. コンピュータプログラムが記憶されるコンピュータ読取可能な記憶媒体であって、
    前記プログラムがプロセッサにより実行されると、請求項1〜6のいずれか1項に記載の方法を実現するコンピュータ読取可能な記憶媒体。
JP2020001150A 2019-05-24 2020-01-08 仮想マシンを起動させるための方法、装置、デバイス及び媒体 Active JP6859463B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910438528.X 2019-05-24
CN201910438528.XA CN110209468A (zh) 2019-05-24 2019-05-24 用于启动虚拟机的方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
JP2020194521A true JP2020194521A (ja) 2020-12-03
JP6859463B2 JP6859463B2 (ja) 2021-04-14

Family

ID=67788552

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020001150A Active JP6859463B2 (ja) 2019-05-24 2020-01-08 仮想マシンを起動させるための方法、装置、デバイス及び媒体

Country Status (4)

Country Link
US (1) US20200371882A1 (ja)
JP (1) JP6859463B2 (ja)
KR (1) KR102315102B1 (ja)
CN (1) CN110209468A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181596B (zh) * 2020-10-10 2023-05-12 济南浪潮数据技术有限公司 一种虚拟机克隆方法、装置、设备及存储介质
CN113467887B (zh) * 2021-06-25 2024-02-23 深信服科技股份有限公司 故障修复方法、宿主机以及可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007148839A (ja) * 2005-11-29 2007-06-14 Hitachi Ltd 障害回復方法
JP2011060055A (ja) * 2009-09-11 2011-03-24 Fujitsu Ltd 仮想計算機システム、仮想マシンの復旧処理方法及びそのプログラム
WO2012020482A1 (ja) * 2010-08-11 2012-02-16 富士通株式会社 バックアップ方法、情報処理装置及びプログラム
JP2012221321A (ja) * 2011-04-11 2012-11-12 Nec Corp フォールトトレラント計算機システム、フォールトトレラント計算機システムの制御方法、及びフォールトトレラント計算機システムの制御プログラム
JP2014139706A (ja) * 2013-01-21 2014-07-31 Nec Corp フォールトトレラントシステム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101212273B1 (ko) * 2010-12-07 2012-12-13 한국과학기술연구원 가상화 기술 기반의 고속 부팅 장치 및 방법
CN102662751B (zh) * 2012-03-30 2016-05-11 浪潮电子信息产业股份有限公司 一种提高基于热迁移虚拟机系统可用性的方法
US9552285B2 (en) * 2013-05-02 2017-01-24 Microsoft Technology Licensing, Llc Micro-execution for software testing
CN103425535B (zh) * 2013-06-05 2016-08-10 浙江大学 云环境下的敏捷弹性伸缩方法
US9842032B2 (en) * 2013-08-27 2017-12-12 Red Hat, Inc. Memory first live snapshot
KR101554554B1 (ko) * 2013-11-29 2015-09-22 한국과학기술정보연구원 가상 머신 구동 시스템 및 방법
KR102210408B1 (ko) * 2014-03-26 2021-01-29 에스케이텔레콤 주식회사 가상화 서버의 이중화를 위한 제어 방법 및 이를 위한 가상화 제어 장치
CN105446826A (zh) * 2014-06-30 2016-03-30 国际商业机器公司 虚拟机备份、恢复的方法及设备
US10241691B2 (en) 2014-11-04 2019-03-26 Rubrik, Inc. Data management system
US10469582B2 (en) * 2016-04-13 2019-11-05 Netapp, Inc. Methods and systems for managing provisioning requests in a networked storage environment
CN107463426B (zh) * 2016-06-06 2020-11-27 阿里巴巴集团控股有限公司 一种kvm虚拟化下虚拟机克隆的方法及装置
CN106557355A (zh) * 2016-12-01 2017-04-05 北京奇虎科技有限公司 虚拟机镜像的生成方法及生成装置
CN106802840A (zh) * 2017-01-19 2017-06-06 郑州云海信息技术有限公司 一种虚拟机备份、恢复方法及装置
CN108874459B (zh) * 2017-05-10 2021-06-29 华为机器有限公司 基于虚拟化技术的快速启动方法和装置
KR102445674B1 (ko) * 2017-12-18 2022-09-22 삼성전자주식회사 선택적으로 메모리를 부팅시키도록 구성되는 램 컨트롤러 및 그 동작 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007148839A (ja) * 2005-11-29 2007-06-14 Hitachi Ltd 障害回復方法
JP2011060055A (ja) * 2009-09-11 2011-03-24 Fujitsu Ltd 仮想計算機システム、仮想マシンの復旧処理方法及びそのプログラム
WO2012020482A1 (ja) * 2010-08-11 2012-02-16 富士通株式会社 バックアップ方法、情報処理装置及びプログラム
JP2012221321A (ja) * 2011-04-11 2012-11-12 Nec Corp フォールトトレラント計算機システム、フォールトトレラント計算機システムの制御方法、及びフォールトトレラント計算機システムの制御プログラム
JP2014139706A (ja) * 2013-01-21 2014-07-31 Nec Corp フォールトトレラントシステム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
平山 毅(外5名), 「絵で見てわかるクラウドインフラとAPIの仕組み」, vol. 初版, JPN6021009901, 18 February 2016 (2016-02-18), JP, pages 34 - 40, ISSN: 0004468761 *
日本CLOUDSTACKユーザー会ほか, 「CLOUDSTACK徹底入門」, vol. 初版, JPN6021009902, 30 January 2013 (2013-01-30), JP, pages 39 - 40, ISSN: 0004468762 *
田口 貴久(外2名), 「VMWARE ポケットリファレンス [VMWARE VSPHERE 5.1対応]」, vol. 初版, JPN6021009903, 25 April 2013 (2013-04-25), JP, pages 125 - 135, ISSN: 0004468763 *

Also Published As

Publication number Publication date
JP6859463B2 (ja) 2021-04-14
KR102315102B1 (ko) 2021-10-19
US20200371882A1 (en) 2020-11-26
KR20200135138A (ko) 2020-12-02
CN110209468A (zh) 2019-09-06

Similar Documents

Publication Publication Date Title
US9811369B2 (en) Method and system for physical computer system virtualization
US10339236B2 (en) Techniques for improving computational throughput by using virtual machines
US8904159B2 (en) Methods and systems for enabling control to a hypervisor in a cloud computing environment
US11385903B2 (en) Firmware update patch
JP6262870B2 (ja) プラットフォーム固有の機能の選択的有効化
US11403150B1 (en) Replenishment-aware resource usage management
US11886302B1 (en) System and method for execution of applications in a container
US11016861B2 (en) Crash recoverability for graphics processing units (GPU) in a computing environment
US10402204B1 (en) Multi-platform firmware support
JP6859463B2 (ja) 仮想マシンを起動させるための方法、装置、デバイス及び媒体
US10318343B2 (en) Migration methods and apparatuses for migrating virtual machine including locally stored and shared data
CN114968477A (zh) 容器热迁移方法及容器热迁移装置
US9553761B2 (en) Dynamic server to server configuration and initialization
CN111782335A (zh) 通过进程内操作系统的扩展应用机制
WO2023151502A1 (zh) 设备运行方法、固件管理方法及固件管理系统
US10942821B1 (en) Method and apparatus for dynamic binding and unbinding thin logical storage volumes to snapshots of a file system
US10838737B1 (en) Restoration of memory content to restore machine state
CN113326098B (zh) 支持kvm虚拟化与容器虚拟化的云管平台
CN113986451A (zh) 虚拟机迁移方法、装置、电子设备和存储介质
WO2023274166A1 (zh) 内核升级方法及装置
US11425191B1 (en) Unified and efficient method to generate file system table (FSTAB) to support on-premise and multi-cloud environment
US20240160427A1 (en) System and method of offloading and migrating management controller functionalities using containerized services and application thereof
CN115509590B (zh) 持续部署方法及计算机设备
US11409615B2 (en) Cloning storage volumes from backup
US11797234B2 (en) Determining a size of virtual disks

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200108

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200108

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: 20210319

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210325

R150 Certificate of patent or registration of utility model

Ref document number: 6859463

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250