JP5578720B2 - 高利用率と仮想化の観点から固体ドライブの管理を向上する方法 - Google Patents

高利用率と仮想化の観点から固体ドライブの管理を向上する方法 Download PDF

Info

Publication number
JP5578720B2
JP5578720B2 JP2010210466A JP2010210466A JP5578720B2 JP 5578720 B2 JP5578720 B2 JP 5578720B2 JP 2010210466 A JP2010210466 A JP 2010210466A JP 2010210466 A JP2010210466 A JP 2010210466A JP 5578720 B2 JP5578720 B2 JP 5578720B2
Authority
JP
Japan
Prior art keywords
memory device
virtual machine
memory
failure
processor
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.)
Expired - Fee Related
Application number
JP2010210466A
Other languages
English (en)
Other versions
JP2011070667A (ja
Inventor
マニ マハリンガム
Original Assignee
アバイア インク.
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 アバイア インク. filed Critical アバイア インク.
Publication of JP2011070667A publication Critical patent/JP2011070667A/ja
Application granted granted Critical
Publication of JP5578720B2 publication Critical patent/JP5578720B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • 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
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Description

本発明は、高利用率と仮想化を実現するシステムに関し、特に、メモリをミラー転写する仮想化システム(memory mirrored virtualization sytem)に関する。
固体ドライブ(SSDs:Solid-state drives)は、省エネで安定した記憶装置に向けた更なる一歩である。SSDは、永久的にデータを記憶するために、固体メモリを用いたデータ記憶装置である。SSDは、ハードディスク・ドライブ・インターフェースを模擬し、その代役を務める。フラッシュ・メモリを用いたSSDは、フラッシュ・ドライブとして知られている。SRAMとDRAMと用いたSSDは、RAMドライブと称する。DRAMベースのSSDは、内部バッテリ又は外部のAC/DCアダプタのいずれかに接続され、記憶システムをバックアップして、外部から電力がドライブに供給されない停電間でも、データの永続性を保障する。電源が失われると、バッテリが電力を供給し、その間、全ての情報は、RAMからバックアップ記憶装置にコピーされる。電源が回復すると、情報は、RAMにバックアップ記憶装置から戻され、SSDは、通常動作に戻る。
省エネと仮想化とパフォーマンスを考慮に入れることにより、新たに注目され出したマーケットは生まれている。この為、SSDは、システムのミラー転写するメモリと、ファイル−ディスク状態に対する相互の実行装置として、仮想化技術と組み合わせての使用例を見出している。それ故に、これらを開発する様々な機会がある。例えば、SSD環境に独自の手段による障害回復(DR:disaster recovery)がある。通常、企業クラスのSSDは、SRAMでバックアップされ、これが次に低電源あるいは低コストのバッテリ(SSDユニット上のオンボードの充電可能なボタン電池)で、さらにバックアップ(例えば、fusion-io(商標)社の商品名Drive Duo(商標)で市販されているSSDにより)される。このようなSSDの使用は、安定した記憶が可能なメイン・メモリを有し、停電に備えて、バックアップし、ファイルシステムあるいは高度にダイナミックなシステム状態とファイルシステムをリアルタイムでバックアップする。
上記の必要性あるいは他の必要性は、本発明の様々な実施例により解決される。本発明は、仮想環境において、固体ドライブを使用して、障害回復を提供する。
本発明の第1実施例によれば、機器の障害を復旧する方法は、請求項1に記載のとうりである。即ち、第1メモリ・デバイスと第2メモリ・デバイスと第3メモリ・デバイスとプロセッサとを有するマシンにおいて機器の障害を復旧する方法において、
前記第2メモリ・デバイスは、前記第1メモリ・デバイスとは異なるディスク記憶装置の長期記憶装置であり、
前記第3メモリ・デバイスは、前記第1メモリ・デバイスと前記第2メモリ・デバイスとは異なる固体ドライブ装置であり、
前記プロセッサが下記の(a)−(d)を実行する。
(a)前記第1メモリ・デバイス上で前記第1仮想機械の動作を開始させるステップと、
(b)ファイルシステムと、前記第1メモリ・デバイスの第1メモリ内容と、前記第1仮想機械のネットワーク状態の内の少なくとも1つを、前記第2メモリ・デバイスにミラー転写するステップと、
(c)下記の(i)と(ii)の内の少なくとも1つを検出するステップと、
(i)前記第1メモリ・デバイスと前記第2メモリ・デバイスの内の少なくとも一方に影響を及ぼす停電、
(ii)第2メモリ・デバイスに影響を及ぼすディスク故障、
(d)前記ステップに応答して、下記のサブステップ(d1)と(d2)の内の少なくとも一方を実行するステップと、
(d1)前記ファイルシステムと、前記第1メモリ内容と、前記第2メモリ・デバイスから第3メモリ・デバイスへのネットワーク状態の内の少なくとも1つを故障回復するサブステップ、
このサブステップ(d1)により、前記第1仮想機械が前記第1メモリ・デバイス上で動き続け、
(d2)前記ファイルシステムと、前記第1メモリ内容と、前記第1メモリ・デバイスと第2メモリ・デバイスから前記第3メモリ・デバイスへのネットワーク状態を故障回復するサブステップと、
このサブステップ(d2)により、前記第1仮想機械は、前記第1メモリ・デバイス上で動作を終了し、前記第3メモリ・デバイス上で動作を開始する、
ことを特徴とする。
本発明の一実施例によれば、第1メモリ(揮発性)と、サポーティング・プロセッサ・システムが、停電から限られた期間、機器を保護する機能を有する無停電電源(UPS:Uninterruptible Power Supply)によりバックアップされる。このUPSは、メイン・パワーアウテッジ(停電)・シグナルを出力するが、これはプロセッサ・システムを停止することなく行う。プロセッサ・システムのソフトウェアは、これを検知できる。これによりフォローアップ動作ができる。
本発明の一実施例によれば、ステップ(d2)は、メモリ再マッピング・ステップを有する。このステップにより、停電信号を受領すると直ちに、現在の第1メモリ・デバイスを第3メモリ・デバイスに、再度マッピングする。このステップは、UPSが機能しなくなる遙か前に終了する。
本発明の第2実施例によれば、第1メモリ・デバイスと第2メモリ・デバイスと第3メモリ・デバイスとプロセッサとを有するマシンにおいて機器の障害を復旧する方法において、
前記第2メモリ・デバイスは、前記第1メモリ・デバイスとは異なるディスク記憶装置の長期記憶装置であり、
前記第3メモリ・デバイスは、前記第1メモリ・デバイスと前記第2メモリ・デバイスとは異なる固体ドライブ装置であり、
前記プロセッサが下記の(a)−(d)を実行する
(a)前記第1と第2仮想機械を、前記第1と第2のメモリ・デバイスと通信しながら、前記プロセッサ上で実行するステップと、
(b)ファイルシステムと、ネットワーク状態と、前記第1と第2仮想機械の出力を、前記第2メモリ・デバイスに記憶するステップと、
(c)前記プロセッサと第1メモリ・デバイスに影響を及ぼす停電を検知するステップと、
(d)前記ステップ(c)に応答し、パワーを保持するために、前記第1仮想機械の動作を継続すると決定するステップと、
(e)前記プロセッサにより、前記第2仮想機械の動作を終了させるステップと
を有する。
本発明は、様々な実施例があり、それにより様々な利点がある。本発明の一実施例により、低電力の動作モードが可能となる。この低電力の動作モードにおいて、重要ではないディスク向け(diskbound)のサービスが最少にできる。このようなシステムを用いて、長期化した停電あるいはディスクの故障を、ほとんどシームレスに(セッションの保存と呼びの保存を行いながら)フェイルオーバー(故障回復)することができる。低コストのSSDにより、仮想化のレベルと高利用性のレベルが上がり、高バンド幅のシステムのミラー転写に、ファイルシステムのフェイルオーバーによる(移行によるのではなく)非明示的な仮想環境のフェイルオーバー(故障回復)を与える。例えば、第2実施例は、SSDのRAMミラー転写を用いて直接仮想機械の故障回復を行うが、これは仮想機械の故障回復/切り替えを用いるものではない。システムの融通性により、計画通りのスイッチオーバー(切り替え)の場合には、短期間ではあるが完全なサービスへの切り替えか、長期間に渡る限られたサービスへの故障回復のいずれかを選択することができる。
本発明の一実施例による仮想化システムのブロック図。 本発明の一実施例によるフローチャート図。 本発明の一実施例によるフローチャート図。 本発明の一実施例による仮想化システムのブロック図。 本発明の一実施例によるフローチャート図。
本発明の仮想化システムは、SSDの使用範囲を広げて、操作の連続性を提供する。これは、高利用率と高利用率−仮想化のSSD記憶装置の永続性を利用して、短期のフェイルオーバ(故障回復)/スイッチオーバ(切り替え)を確保する。ディスクの故障や停電の場合には、SSDは、その間仮想機械に永続的なメモリを提供する。これは、システムのメイン・メモリ上の動作によるか、SSDそのものの動作によるかのいずれでもよい。その後、システムは、パワー回復のメイン・システムのモードにフェイルバック(故障から戻る)か、オンボード・バッテリの場合にはSSDの安定した記憶装置内での保持状態にフォールバック(待避)するか、長期の停電に対しては無停電電源装置(UPS)が切れることになる。
図1は、本発明の仮想化システム100を示す。このシステム100は、プロセッサ104(複数の仮想機械を実行するマイクロ・プロセッサ)と、メイン・メモリ108と、ディスク記憶装置112と、SSD116とを有し、これらは、シグナル・キャリア(信号線)120で接続されている。メイン・メモリ108とディスク記憶装置112は、コンピュータで読み取り可能な記憶媒体を形成する。一般的に、ディスク記憶装置112は、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、他の磁気媒体、磁気光学媒体、CD−ROM、他の光学媒体、パンチ・カード、ペーパーテープ、あるいは他の穴の開いた物理的媒体のいずれかである。シグナル・キャリア120は、バス(bus)、LAN、WAN、あるいは他の適宜なキャリアである。一実施例において、プロセッサ104とメイン・メモリ108は、例えば、近くに、例えばサーバー内に配置され、ディスク記憶装置112又はSSD116は、そこから離れて配置される。本発明は、クライアント−サーバ・ネットワーク・タイプについて議論するが、ピアツーピア(peer-to-peer)のネットワーク・タイプにも、採用できる。
図1には示していないが、システム内のプロセッサ104とメイン・メモリ108は、無停電電源装置(パワーバックアップ機構)に接続されている。無停電電源装置は、停電を通知する信号をシステムに流す。VM制御モジュール156は、この通知信号を検知しそれに応答する。
SSD116は、揮発性メモリ124とドライブ・コントローラ128とオンボード電源132と非揮発性メモリ136を有する。非揮発性メモリ136と揮発性メモリ124とドライブ・コントローラ128は、シグナル・キャリア140により相互に接続される。センサ144は、シングル・キャリア146を介して、ドライブ・コントローラ128に、オンボード電源132の残り寿命を通知する。パワーライン148は、オンボード電源132からの電力を、揮発性メモリ124とドライブ・コントローラ128に与える。SSD116は、fusion-io(商標)社より製造されたioDrive Duo(商標)である。
ドライブ・コントローラ128により、プロセッサ104が、揮発性メモリ124と非揮発性メモリ136と通信する。
オンボード電源132は、オンボードのエネルギー貯蔵装置であり、例えば、バッテリー電源(例、SSD上のボタン電池)である。
揮発性メモリ124と非揮発性メモリ136は、コンピュータで読み取り可能な記憶媒体である。
メイン・メモリ108は、第1、第2,−−第n(活性)の仮想機械152a−nとVM(仮想機械)制御モジュール156とを有する。VM制御モジュール156は、ハイパーバイザ(hypervisor:1台のコンピュータ上で複数のOSを動かす仮想化ソフトウェア)である。VM制御モジュール156は、メイン・メモリ108内の仮想機械システム内のドメイン又は仮想機械ゼロである。仮想機械の操作を制御することとは別に、VM制御モジュール156は、所定のフェイルオーバー(故障回復)措置を実行する。これについては、以下説明する。
ディスク記憶装置112と揮発性メモリ124は、第1、2、...n番目のバックアップVMを有する。「バックアップVM(仮想機械)」とは、ミラー転写された(メイン)メモリ、ネットワーク(セッション)、対応する仮想機械に取り付けられたファイルシステムの内の1つを意味する。バックアップVMのメインテナンスは、様々な技術で実行可能である。
Remus(商標)の商品名で市販されているソフトウェア・システムの一実施例において、ファイルシステム、ネットワーク(セッション)、VM出力キャッシュ(メイン・メモリ108内の)、選択された活性状態のVMのメイン・メモリ108の状態の周期的な「スナップショット」は、比較的高い頻度で複製される。これらの技術は、4つのステップを利用する。即ち、チェックポイント、送信、同期、リリース(開放)の各ステップを利用する。チェックポイント・ステップと送信ステップにおいては、仮想機械の実行は中断され、活性状態の仮想機械の状態をコピーし、このコピーされた状態を外部のバックアップ記憶装置(特に、ディスク記憶装置112又は揮発性メモリ124)に送信し、仮想機械が予測実行(speculative execution)を再開する。予測実行は、バックアップ記憶装置からの受領確認を待つことなく、行われる。状態の完全な組を受領すると、チェックポイントは、外部記憶装置からプロセッサ104に受領確認される。リリース・ステップにおいては、バッファされたネットワーク出力がリリースされる。通常の出力ストリームが、同期を取らなければならない時を指定する代わりに、仮想機械出力は、メイン・メモリ108内に、適宜の時点までバッファされ、同期ポイントに先立って予測的に計算を実行する。仮想機械出力をメイン・メモリ108内にバッファすることにより、複製が非同期的に行われる。外部バックアップ記憶装置において、仮想機械のイメージが、活性状態のシステムの故障を検知すると、直ちに実行を開始する。バックアップは、活性状態の仮想機械と周期的にしか一致していないために、全てのネットワーク出力は、状態がバックアップの記憶装置と同期を取るまで、メイン・メモリ108内にバッファ(一時的に記憶)される。
Paragon Software Group(商標)社のSnaphot(商標)の商品名で市販されているソフトウェアシステムにより実行される実施例において、ファイルシステムは、所定の第1データ・ブロックを、コンピュータで読み取り可能な記憶媒体に書き込み、その時それらにポインターでマークを付ける。スナップショットが行われるが、このスナップショットは、データを記憶媒体に読み込んだり、書き込んだり、コピーしたりすることなく、行われる。スナップショットは、ファイルシステム、ネットワーク、第1VM152a−nの仮想機械出力キャッシュ状態のスナップショットである。スナップショットは、単に現在のロケーションを指すだけである。一変形例において、ファイルシステムは、第1データブロックの所定の1つを修正し、所定のブロックで第2データを記憶媒体に書き込む。最初に、所定の第1データブロックを新たなロケーションにコピーし、その後、元の所定の第1データブロックを第2データに変更する。このファイルシステムは、同一のロケーションを指す。他の変形例において、ファイルシステムは、第2データを記憶媒体に書き込むが、これは所定の第1データブロックを変更することなく行う。このファイルシステムは、所定の第1データブロックの代わりに、第2データを指すが、同時にスナップショットは、依然として選択された第1データブロック(これは変化していない)を指す。
他のミラー転写技術は、Double-Take(商標)社から市販されているDouble-Take(商標)Softwareを用いる技術である。
揮発性メモリ124は、アラーム・モジュール164を有し、ディスク記憶装置が故障した時や停電が発生した時を、決定する。これは、VM制御モジュール156からの警報信号や中断指令信号に応答して、行われる。この信号は、無停電電源装置UPS(図示せず)で受領する。
図2に本発明のシステム100の動作を示す。この実施例において、第1VM152a−nのミラーリング(ミラー転写)動作は、ディスク記憶装置112で行われるものとする。
ステップ200において、ディスク記憶装置112の故障を、VM制御モジュール156が検知し、警報信号あるいは中断信号が、アラーム・モジュール164に送信される。VM制御モジュール156には、故障が通知される。これは、書き込みあるいは読み出しコマンドに応答して受領したエラーメッセージにより、行われる。
それに応答して、アラーム・モジュール164は、ドライブ・コントローラ128とVM制御モジュール156に、通知し、所定の故障復旧操作を実行する。この故障復旧操作は、VM(仮想機械)状態の変更を、ディスク記憶装置112の代わりにSSD116にミラー転写することである。この実施例において、揮発性メモリ124内の第1,第2,第n番目のバックアップVM160a−nで示すように、SSD116へファイルシステムのフェイルオーバー(故障回復)が行われ、活性状態にある連続した第1、第2,第n番目のVM152a−nの操作が可能となる。言い替えると、所定の活性状態にある仮想機械用のメイン・メモリ108へのデータ記憶装置のポインター(あるいはリファレンス)は、前記の所定の仮想機械に対し保持され、揮発性メモリ124に対するデータ記憶ポインターは、ディスク記憶装置112を参照する為に使用された前のものとは異なり、ディスク記憶装置112により以前にミラー転写された仮想機械状態情報を参照する為に、用いられる。その後、ミラー転写は、揮発性メモリ124内で継続する。これは上記の技術を用いて行われる。揮発性メモリ124によるミラー転写は、ディスク記憶装置112によるミラー転写と並行して行われるか、或いは揮発性メモリ124によりディスク記憶装置112の故障後にのみ行われる。揮発性メモリ124内の第1、第2、第n番目のバックアップVM160a−nのミラー転写は、非揮発性メモリ136内で同時に行われる。この実施例により、別のメモリ内の新たな(別の)活性仮想機械は、この操作を実行しないが、メイン・メモリ内の同一の活性仮想機械が、この操作を継続する。所定の活性状態のバックアップVM160に対して、特定のVMインスタンスから別のVMインスタンスへの切り替えは、行われない。
図1、3、4を参照して、本発明のシステム100の動作を説明する。前の実施例と比較すると、本発明の実施例は、ファイルシステムのVM参照の切り替え(あるいはディスク記憶装置112からのSSD116の揮発性メモリ124へのフェイルオーバーの実行)のみならず、メイン・メモリ108からSSD116の揮発性メモリ124へのメモリのフェイルオーバーの実行をする。言い替えると、活性状態にある第1、第2,第n番目のVM152a−nは、SSD116の揮発性メモリ124に直接マッピングされる。ディスク記憶装置112の故障の場合、活性状態のVMフェイルオーバーがトリガーされて、メイン・インスタンス(あるいは活性VM)を走らす。これは、メイン・メモリ108をSSD116にメモリ・ミラー転写させ、かつメイン・メモリ108が活性VMを走らすことを停止させることにより、行う。
ステップ300において、ディスク記憶装置112の故障が検出される。ディスク記憶装置112の故障の前において、図1に示す仮想化システムは、メイン・メモリ108内にある第1、第2,第n番目のVM152a−nは活性状態で、ディスク記憶装置112と、更には選択事項として、揮発性メモリ124内の第1,第2、第n番目のVM160a−nをバックアップしている。
ステップ304においては、図4に示すように、活性状態にある第1VM152a−nを切り替えて、メイン・メモリ108ではなくSSD116を走らす。言い替えると、活性状態の第1VM152a−nの全てのリファレンスあるいはポインターを、メイン・メモリ108とディスク記憶装置112から、SSD116に切り替える。これは、活性状態にあるVM160a−nをパーシング(parsing:構文解析)し、活性状態にあるVM160a−nの物理的(実際の)ページを、SSD116のミラー転写された揮発性メモリ124の物理的(実際の)ページに再度マッピングし、その後、揮発性メモリ124上で、活性状態にあるVM160a−nの操作を再スタートすることにより、行う。言い替えると、メイン・メモリ108とディスク記憶装置112から、SSD116内の揮発性メモリ124への完全な切り替えがなされたことになる。SSD116の揮発性メモリ124は、チェックポイントされたメモリとネットワークとファイルシステムの状態に依存する、即ちそれを参照する。揮発性メモリ124内の第1VM152a−nのミラー転写は、非揮発性メモリ136内で同時に実行される。図4に示す実施例では、メイン・メモリ108は、VMミラー転写操作用に、使用される。
図4、5を参照して、本発明のシステム100の動作を説明する。前と実施例に比較すると、この実施例は、活性状態にある第1VM152a−nのファイルシステムのリファレンスを、SSD116の揮発性メモリ124に直接マッピングし、このVM160a−nを、非揮発性メモリ136にミラー転写している。この実施例において、SSD116の揮発性メモリ124を、プロセッサ104のプライマリ・メモリとして使用しているために、ある記憶媒体から別の記憶媒体への切り替えとフェイルオーバーの複雑さを回避できる。選択的事項として、メイン・メモリ108は仮想機械操作用にのみ使用される。第1VM152a−nの動作がSSD116の揮発性メモリ124上で行われる。図4の実施例は、UPS(バックアップ用電源)400を含む。これにより、バックアップ・パワーを、ライン404を介して、電源の故障の場合には、プロセッサ104とメイン・メモリ108に与える。
この実施例は、停電時の回復性を提供する。
図5において、停電がステップ500で検出される。この停電は、プロセッサ104と、メイン・メモリ108と、SSD116に、影響する。この停電の結果として、プロセッサ104と、メイン・メモリ108と、SSD116が、一時的な電源で動作する。SSD116の一時的電源はオンボード電源132であり、プロセッサ104とメイン・メモリ108の一時的電源は無停電電源装置(バックアップ電源)400である。
ステップ504において、VM制御モジュール156は、第1、第2、第n番目のVM152a−nの内、どの仮想機械の動作を継続し、どの仮想機械の動作を止めるを決定する。これは、プロセッサ104と、メイン・メモリ108と、SSD116により消費される電力を減らし、かつ高い処理能力を維持するためである。仮想機械(VM)を選択をする際に用いられるファクターの一例は以下である。システム操作用に選択されたVMの重要性(これは仮想機械の種類と機能に依存する)と、各VMを走らすために使用されるメモリ量、各VMを実行するのに必要な処理パワー量(又はVMにより消費されるエネルギー量)と、VMがリアルタイムで実行すべきかあるいは時間差を持って実行してもよいかの判断(ディスク記憶装置の管理は、時間差を許容し、それ故に、より遅い非揮発性メモリ136内で走ることができる、これはより早い揮発性メモリ124を使用しなければならないのと対照的である)とを含む。
ステップ508において、選択された仮想機械の状態は、非揮発性メモリ136に記憶され、その動作を終了する。その間動作を継続すべき仮想機械は、揮発性メモリ124上で走る。
ステップ512において、センサ144は、オンボード電源132の残り寿命を決定する。
ステップ516において、ドライブ・コントローラ128は、残り寿命が動作の継続に十分であるか否かを決定する。十分な場合には、プロセスはステップ512に行き、適宜の間隔で、又は別の構成として、ステップ504に戻り、そこで追加の仮想機械の動作を中止すべきか否かの決定がなされる。残寿命が十分でない場合には、プロセスはステップ520に移る。
ステップ520において、ドライブ・コントローラ128は、メイン・メモリ108内のバックアップVM160a−nに移る。別の構成においては、第1、第2、第n番目のVM152a−nは、非揮発性メモリ136にミラー転写され、全てのVMの動作を終了する。
ステップ524において、前の構成において、メイン・メモリ108上のバックアップVM152a−nの実行が開始される。SSD116のオンボード電源132が、所定のレベルまでチャージされると、VMの実行は、再び揮発性メモリ124に移され、動作が継続される。
フェイルバック(故障から戻る)とスイッチバック(切り替えから戻る)は、フェイルオーバー(故障回避)とスイッチオーバー(切り替え)の反対動作である。フェイルオーバーとスイッチオーバーは、メイン・メモリ108が停電の障害を受け、第1、第2,第n番目のVM152a−nを記憶することを継続する時には、メイン・メモリ108に適応される。
他の実施例において、第1、第2,第n番目のVM152a−nは、非揮発性メモリ136に直接マッピングされるが、選択的事項として、メイン・メモリ108を用いて、フェイルバック、或いは、第1、第2,第n番目のバックアップVM160a−nを、SSD116の揮発性メモリ124にミラー転写してもよい。言い換えると、第1、第2,第n番目のVM152a−nは、非揮発性メモリ136上で走らせてもよい。
用語「ファイル・システム(filesystem)」とは、コンピュータファイルとそれが含む日付を記憶し組織化することにより、そのファイルを見出しアクセスを容易にするシステムである。ファイル・システムは、コンピュータで読み取り可能な記憶媒体を使用し、ファイルの物理的な位置(ロケーション)を保持する。
用語「ハイパーバイザ(hypervisor)」あるいは仮想機械のモニタは、仮想化を提供するソフトウェア・レイヤーを指す。ハイパーバイザは、ベアーなハードウェア(タイプIあるいはネイティブ仮想機械)、あるいはオペレーティング・システム(タイプIIあるいはホストされた仮想機械)上で動作する。
用語「ページ(page)」とは、ある時点でアクセス可能なメモリの一部を意味する。
用語「仮想機械」とは、システム仮想機械とプロセス仮想機械を含む。システム仮想機械は、ハードウェア仮想機械とも称し、完全なシステム・プラットフォームを提供して、完全なオペレーティング・システムの実行をサポートする。プロセス仮想機械は、1つのプロセスとサポートする1つのプログラムを動かす。システム仮想機械により、元となる物理的マシーンのリソースを異なる仮想機械間で共有できる。各仮想機械は、それ自身のオペレーティング・システム上で動作する。プロセス仮想機械は、オペレーティング・システム内の通常のアプリケーションとして動作し、サポートされるプロセスがスタートした時に作りだされ、そのプロセスが終了した時に壊される。仮想機械の共通の特徴は、内部のソフトウェア・ランニングが、仮想機械により提供されるリソースと、アブストラクションに限定される点である。
用語「コンピュータで読み取り可能な媒体」とは、コンピュータが実行するプロセスを記憶する媒体或いは伝送媒体を意味する。媒体とは、非揮発性媒体、揮発性媒体、伝送媒体を意味する。非揮発性の媒体とは、NVRAM、磁気ディスク又は光学ディスクである。揮発性媒体とは、DRAM、メインメモリを意味する。このコンピュータで読み取り可能な媒体の一般的なものとしては、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気ディスク、他の磁気媒体、磁気光学媒体、CD−ROM、パンチカード、ペーパーテープ等、更にRAM、PROM、EPROM、FLASH−EPROM、メモリカード、メモリチップ、或いはカートリッジ等がある。e−mail或いは他の自己保存型の情報アーカイブに付属したデジタルファイルは、記憶媒体に等価な分配型の記憶媒体であり、本発明でいう記憶媒体と見なすことができる。コンピュータで読み取り可能な媒体がデータベースとして構築された場合には、このデータベースは、あらゆる種類のデータベース、例えば関連型、階層型、オブジェクト志向型のいずれをも含む。
冗長な説明を回避するために公知の構造については省略した、或いはブラックボックスの形態で示している。この省略は本発明の範囲を制限するものではない。ここに開示した実施例は、発明を理解するためのものであり、本発明は個々に述べた特定の実施例以外の様々な方法で実現できる。
上記の実施例では、システムの様々な構成要素或いはシステムのある構成要素は、遠隔地に即ち分散型ネットワーク(LAN、ケーブルネットワーク、インターネット)のノードに、又は専用のシステム内の離れた点に配置されている。しかしシステムのこれ等の構成要素は、1つの装置例えばゲートウエイに組み込むこともできる。或いは分散型ネットワーク(例えばアナログ又はデジタルの通信ネットワーク、パケット交換ネットワーク、回路交換ネットワーク、ケーブルネットワーク)の特定のノード上に、集めることもできる。
ここで議論したフローチャートは、特定のイベントのシーケンスを例に説明するが、本発明の操作に影響を及ぼすことなく、これ等のシーケンスの変更、追加、一部省略も可能である。本発明のシステムと方法は、特殊コンピュータ、プログラムされたマイクロプロセッサ、マイクロコントローラ、ASIC、他の集積回路DSP、ハードワイヤド電子素子、論理素子、例えばディスクリートな要素回路、プログラム可能な論理回路、ゲートアレイ、例えばPLD、PLA、FPGA、PAL、特殊目的コンピュータ或いは他の手段で実現できる。
他の実施例に於いては、ここに開示された方法は、オブジェクト指向のソフトウエア開発環境を用いたソフトウエアと組み合わせて実現できる。このソフトウエア環境は、様々なコンピュータ又はワークステーションで使用されるポータブルなソースコードを提供する。別の構成として、開示されたシステムは、標準の論理回路又はVLSIデザインを用いて一部又は全部のハードウエアで実現できる。本発明のシステムを実行するのにハードウエア又はソフトウエアを用いるかは、システムに要求される速度と効率に依存する。特に使用される特定のソフトウエア、ハードウエアのシステム、マイクロプロセッサ又はマイクロコンピュータシステムに依存する。
他の実施例に於いては、開示された方法は、コンピュータで読み取り可能な記憶媒体に記憶されたソフトウエアで実行され、コントローラとメモリとを有するプログラムされた汎用コンピュータ、特殊目的コンピュータ、マイクロプロセッサ等で実施される。これ等の実施例に於いては、本発明のシステムと方法は、パソコンに組み込まれたプログラムで実行できる。例えばアプレット、JAVA、CGIスクプリト、サーバ或いはコンピュータ、ワークステーションに記録された資源或いは専用の測定システムに組み込まれたルーチン等で実施できる。
本発明のシステムは、本発明のシステムと方法をソフトウエア又はハードウエアのシステムに物理的に組み込むことにより実施することもできる。 本発明は、特定の標準及びプロトコルを例に説明したが、本発明はこのような標準とプロトコルに制限されるものではない。他の類似の標準とプロトコルも本発明で用いることができる。これ等の標準とプロトコルは、今後開発されるより効率的な標準とプロトコルで置換されるかも知れないが、このような置換も本発明の一態様(一実施例)と考えられる。
以上の説明は、本発明の一実施例に関するもので、この技術分野の当業者であれば、本発明の種々の変形例を考え得るが、それらはいずれも本発明の技術的範囲に包含される。特許請求の範囲の構成要素の後に記載した括弧内の番号は、図面の部品番号に対応し、発明の容易なる理解の為に付したものであり、発明を限定的に解釈するために用いてはならない。また、同一番号でも明細書と特許請求の範囲の部品名は必ずしも同一ではない。これは上記した理由による。用語「又は」に関して、例えば「A又はB」は、「Aのみ」、「Bのみ」ならず、「AとBの両方」を選択することも含む。特に記載のない限り、装置又は手段の数は、単数か複数かを問わない。
100 システム
104 プロセッサ
108 メイン・メモリ
112 ディスク記憶装置
124 揮発性メモリ
128 ドライブ・コントローラ
132 オンボード電源
136 非揮発性メモリ
144 センサ

152a 第1VM
156 VM制御モジュール
160a 第1バックアップVM
164 アラーム・モジュール

図2
200:ディスク記憶装置の故障が検出された
204:状態変化の所定の組がディスク記憶装置の代わりにSSDにミラー転写される

図3
300:ディスク記憶装置の故障が検出された
304:仮想機械がSSD上のバックアップ用仮想機械に切り替わる。

図5
500:停電を検出した
504:停止すべき仮想機械を選択する。
508:選択された仮想機械の状態を非揮発性メモリにセーブし終了する
512:オンボード電源の残り寿命をチェックする
516:許容可能か?
520:メイン・メモリのバックアップVMに移行する
524:メイン・メモリを用いてVMを実行する

Claims (10)

  1. 第1メモリ・デバイスと第2メモリ・デバイスと第3メモリ・デバイスとプロセッサとを有するマシンにおいて機器の障害を復旧する方法であって、
    前記第2メモリ・デバイスは、前記第1メモリ・デバイスとは異なるディスク記憶装置の長期記憶装置であり、
    前記第3メモリ・デバイスは、前記第1メモリ・デバイスと前記第2メモリ・デバイスとは異なる固体ドライブ装置であり、
    前記プロセッサが下記の(a)−(d)を実行する
    (a)前記第1メモリ・デバイス上で前記第1仮想機械の動作を開始させるステップと、
    (b)ファイルシステムと、前記第1メモリ・デバイスの第1メモリ内容と、前記第1仮想機械のネットワーク状態の内の少なくとも1つを、前記第2メモリ・デバイスにミラー転写するステップと、
    (c)下記の(i)と(ii)の内の少なくとも1つを検出するステップと、
    (i)前記第1メモリ・デバイスと前記第2メモリ・デバイスの内の少なくとも一方に影響を及ぼす停電、
    (ii)第2メモリ・デバイスに影響を及ぼすディスク故障、
    (d)前記ステップに応答して、下記のサブステップ(d1)と(d2)の内の少なくとも一方を実行するステップと、
    (d1)前記ファイルシステムと、前記第1メモリ内容と、前記第2メモリ・デバイスから第3メモリ・デバイスへのネットワーク状態の内の少なくとも1つを故障回復するサブステップ、
    このサブステップ(d1)により、前記第1仮想機械が前記第1メモリ・デバイス上で動き続け、
    (d2)前記ファイルシステムと、前記第1メモリ内容と、前記第1メモリ・デバイスと第2メモリ・デバイスから前記第3メモリ・デバイスへのネットワーク状態を故障回復するサブステップと、
    このサブステップ(d2)により、前記第1仮想機械は、前記第1メモリ・デバイス上で動作を終了し、前記第3メモリ・デバイス上で動作を開始する、
    ことを特徴とする機器の障害を復旧する方法。
  2. 前記サブステップ(d1)が実行される際、
    前記第1メモリ・デバイスは、サーバ内にあり、
    前記第2メモリ・デバイスは、前記第1メモリ・デバイスとは別個に配置され、
    前記第1メモリ・デバイスと前記第2メモリ・デバイスは、ネットワークを介して通信状態にあり、
    前記第2メモリ・デバイスは、ディスク記憶装置であり、
    無停電電源装置を更に有し、
    前記無停電電源装置は、停電を通知あるいは検知する機能を具備し、一定期間遮断されない電源を提供する
    ことを特徴とする請求項1記載の方法。
  3. 前記サブステップ(d2)が実行される際、
    前記第1メモリ・デバイスは、サーバ内にあり、
    前記第2メモリ・デバイスは、前記第1メモリ・デバイスとは別個に配置され、
    前記第1メモリ・デバイスと前記第2メモリ・デバイスは、ネットワークを介して通信状態にあり、
    前記第2メモリ・デバイスは、ディスク記憶装置であり、
    無停電電源装置を更に有し、
    前記無停電電源装置は、停電を通知あるいは検知する機能を具備し、一定期間遮断されない電源を提供する
    ことを特徴とする請求項1記載の方法。
  4. 前記サブステップ(d2)は、
    (d21)前記第1仮想機械をパースィングするステップと、
    これにより、前記第1仮想機械のページを、前記第1メモリ・デバイスに与え、
    (d22)前記第1メモリ・デバイス内のページを、前記第3メモリ・デバイス内のページに再度マッピングするステップと、
    (d23)その後、前記第3メモリ・デバイス上で、前記第1仮想機械の操作を再開するステップと、
    を有し、
    下記(i)と(ii)の少なくとも一方は、電源不足で発生し、
    (i)前記第1メモリ・デバイスと前記第2メモリ・デバイスの少なくとも一方に影響を及ぼす停電、
    (ii)第2メモリ・デバイスに影響を及ぼすディスク故障、
    本発明の方法は、
    (e)前記ステップ(c)に応答し、パワーを保存するために、第2仮想機械は動作させず前記第1仮想機械の動作のみを継続すると決定するステップと、
    (f)前記プロセッサにより前記第2仮想機械の動作を終了させるステップと、
    をさらに有する
    ことを特徴とする請求項3記載の方法。
  5. 請求項1の各ステップを前記プロセッサが実行できるようなインストラクションを有するコンピュータで読み取り可能な記憶媒体。
  6. 第1メモリ・デバイスと第2メモリ・デバイスと第3メモリ・デバイスとプロセッサとを有するマシンにおいて、
    前記第2メモリ・デバイスは、前記第1メモリ・デバイスとは異なるディスク記憶装置の長期記憶装置であり、
    前記第3メモリ・デバイスは、前記第1メモリ・デバイスと前記第2メモリ・デバイスとは異なる固体ドライブ装置であり、
    前記プロセッサは、下記の(a)−(d)を実行する、
    (a)前記第1メモリ・デバイス上で前記第1仮想機械の動作を開始させ、
    (b)ファイルシステムと、前記第1メモリ・デバイスの第1メモリ内容と、前記第1仮想機械のネットワーク状態の内の少なくとも1つを、前記第2メモリ・デバイスにミラー転写し、
    (c)下記の(i)と(ii)の内の少なくとも1つを検出し、
    (i)前記第1メモリ・デバイスと前記第2メモリ・デバイスの少なくとも一方に影響を及ぼす停電、
    (ii)第2メモリ・デバイスに影響を及ぼすディスク故障、
    (d)前記ステップに応答して、下記の動作(d1)と(d2)
    (d1)前記ファイルシステムと、前記第1メモリ内容と、前記第2メモリ・デバイスから第3メモリ・デバイスへのネットワーク状態の内の少なくとも1つを故障回復する第1動作、
    この第1動作により、前記第1仮想機械が前記第1メモリ・デバイス上で動き続け、
    (d2)前記ファイルシステムと、前記第1メモリ内容と、前記第1メモリ・デバイスと第2メモリ・デバイスから前記第3メモリ・デバイスへのネットワーク状態を故障回復する第2動作、
    この第2動作により、前記第1仮想機械は、前記第1メモリ・デバイス上で動作することを終了し、前記第3メモリ・デバイス上で動作を開始する、
    の少なくとも一方を実行する、
    ことを特徴とするマシン。
  7. 前記第1動作(d1)が実行される際、
    前記第1メモリ・デバイスは、サーバ内にあり、
    前記第2メモリ・デバイスは、前記第1メモリ・デバイスとは別個に配置され、
    前記第1メモリ・デバイスと前記第2メモリ・デバイスは、ネットワークを介して通信状態にあり、
    前記第2メモリ・デバイスは、ディスク記憶装置である
    ことを特徴とする請求項6記載のマシン。
  8. 前記第2動作(d2)が実行される際、
    前記第1メモリ・デバイスは、サーバ内にあり、
    前記第2メモリ・デバイスは、前記第1メモリ・デバイスとは別個に配置され、
    前記第1メモリ・デバイスと前記第2メモリ・デバイスは、ネットワークを介して通信状態にあり、
    前記第2メモリ・デバイスは、ディスク記憶装置であり、
    前記第2動作(d2)は、下記の(d21)−(d23)の動作
    (d21)前記第1仮想機械をパースィングする動作と、
    これにより、前記第1仮想機械のページを、前記第1メモリ・デバイスに与える動作と、
    (d22)前記第1メモリ・デバイス内のページを、前記第3メモリ・デバイス内のページに再度マッピングする動作と、
    (d23)その後、前記第3メモリ・デバイス上で、前記第1仮想機械の操作を再開する動作と
    を行う
    ことを特徴とする請求項6記載のマシン。
  9. 下記(i)と(ii)の少なくとも一方は、電源不足で発生し、
    (i)前記第1メモリ・デバイスと前記第2メモリ・デバイスの少なくとも一方に影響を及ぼす停電、
    (ii)第2メモリ・デバイスに影響を及ぼすディスク故障、
    本発明のマシンは、
    (e)前記動作(c)に応答し、パワーを保存するために、前記第1仮想機械の動作のみを継続すると決定し、
    (f)前記第2仮想機械の動作を継続しないとの決定に応じて、前記プロセッサにより第2仮想機械の動作を終了させ、
    前記第1仮想機械は、前記第3メモリ・デバイス上で動作し、
    前記プロセッサは、前記第1メモリ・デバイス上で、ファイルシステムと、前記第1メモリ・デバイスの第1メモリ内容と、前記第1仮想機械のネットワーク状態の内の少なくとも1つを、ミラー転写する
    ことを特徴とする請求項6記載のマシン。
  10. 前記第3メモリ・デバイスは、揮発性メモリと非揮発性メモリを有し、
    前記第1仮想機械が、前記第3メモリ・デバイスの揮発性メモリ上で動いている間、前記プロセッサは、前記第3メモリ・デバイスの非揮発性メモリ上で、ファイルシステムと、前記第1メモリ内容と、前記第1仮想機械のネットワーク状態の内の少なくとも1つをミラー転写する
    ことを特徴とする請求項6記載のマシン。
JP2010210466A 2009-09-24 2010-09-21 高利用率と仮想化の観点から固体ドライブの管理を向上する方法 Expired - Fee Related JP5578720B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/566,234 US8769535B2 (en) 2009-09-24 2009-09-24 Providing virtual machine high-availability and fault tolerance via solid-state backup drives
US12/566,234 2009-09-24

Publications (2)

Publication Number Publication Date
JP2011070667A JP2011070667A (ja) 2011-04-07
JP5578720B2 true JP5578720B2 (ja) 2014-08-27

Family

ID=43587204

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010210466A Expired - Fee Related JP5578720B2 (ja) 2009-09-24 2010-09-21 高利用率と仮想化の観点から固体ドライブの管理を向上する方法

Country Status (4)

Country Link
US (1) US8769535B2 (ja)
EP (1) EP2306318B1 (ja)
JP (1) JP5578720B2 (ja)
CN (1) CN102033795B (ja)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8307177B2 (en) 2008-09-05 2012-11-06 Commvault Systems, Inc. Systems and methods for management of virtualization data
US9778718B2 (en) 2009-02-13 2017-10-03 Schneider Electric It Corporation Power supply and data center control
US8407404B2 (en) * 2009-12-31 2013-03-26 International Business Machines Corporation Record sorting
US20110202728A1 (en) * 2010-02-17 2011-08-18 Lsi Corporation Methods and apparatus for managing cache persistence in a storage system using multiple virtual machines
US8510590B2 (en) 2010-03-17 2013-08-13 Vmware, Inc. Method and system for cluster resource management in a virtualized computing environment
US8850151B2 (en) * 2010-03-24 2014-09-30 Apple Inc. Hybrid-device storage based on environmental state
US8635494B2 (en) * 2010-04-30 2014-01-21 Taejin Info Tech Co., Ltd. Backup and restoration for a semiconductor storage device
US11449394B2 (en) 2010-06-04 2022-09-20 Commvault Systems, Inc. Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources
US8782434B1 (en) 2010-07-15 2014-07-15 The Research Foundation For The State University Of New York System and method for validating program execution at run-time
US8688643B1 (en) * 2010-08-16 2014-04-01 Symantec Corporation Systems and methods for adaptively preferring mirrors for read operations
US8464257B2 (en) * 2010-12-22 2013-06-11 Lsi Corporation Method and system for reducing power loss to backup IO start time of a storage device in a storage virtualization environment
US8954798B2 (en) * 2011-02-11 2015-02-10 Taejin Info Tech Co., Ltd. Alarm-based backup and restoration for a semiconductor storage device
US9110693B1 (en) * 2011-02-17 2015-08-18 Emc Corporation VM mobility over distance
WO2012129729A1 (en) 2011-03-31 2012-10-04 Intel Corporation Memory mirroring and redundancy generation for high availability
TWI451237B (zh) * 2011-04-29 2014-09-01 Taejin Infotech Co Ltd 用於記憶體磁片部的備份及恢復系統及方法
US8839024B2 (en) * 2011-07-22 2014-09-16 Taejin Info Tech Co., Ltd. Semiconductor storage device-based data restoration
US9417794B2 (en) 2011-07-26 2016-08-16 Apple Inc. Including performance-related hints in requests to composite memory
US20130086315A1 (en) * 2011-10-04 2013-04-04 Moon J. Kim Direct memory access without main memory in a semiconductor storage device-based system
WO2013065115A1 (ja) * 2011-10-31 2013-05-10 富士通株式会社 情報処理装置、情報処理装置の制御方法、仮想マシン制御プログラム及び情報処理システム
US20130124916A1 (en) * 2011-11-16 2013-05-16 Microsoft Corporation Layout of mirrored databases across different servers for failover
AU2011384034A1 (en) 2011-12-22 2014-07-10 Schneider Electric It Corporation Systems and methods for reducing energy storage requirements in a data center
US9275096B2 (en) 2012-01-17 2016-03-01 Apple Inc. Optimized b-tree
US8972971B2 (en) 2012-08-09 2015-03-03 International Business Machines Corporation Image instance mapping
US9122873B2 (en) 2012-09-14 2015-09-01 The Research Foundation For The State University Of New York Continuous run-time validation of program execution: a practical approach
US9069782B2 (en) 2012-10-01 2015-06-30 The Research Foundation For The State University Of New York System and method for security and privacy aware virtual machine checkpointing
US20140129765A1 (en) * 2012-11-07 2014-05-08 Taejin Info Tech Co., Ltd. Method to improve data reliability in dram ssd using asynchronous logging and incremental backup
US9740702B2 (en) 2012-12-21 2017-08-22 Commvault Systems, Inc. Systems and methods to identify unprotected virtual machines
US9311121B2 (en) 2012-12-21 2016-04-12 Commvault Systems, Inc. Archiving virtual machines in a data storage system
US20140196039A1 (en) 2013-01-08 2014-07-10 Commvault Systems, Inc. Virtual machine categorization system and method
EP2962170A4 (en) * 2013-02-28 2016-11-09 Hewlett Packard Entpr Dev Lp REDUCTION OF PERFORMANCE FOR MEMORY DEVICES
CN103268203A (zh) * 2013-05-20 2013-08-28 深圳市京华科讯科技有限公司 存储虚拟化处理方法
US9235485B2 (en) 2013-07-22 2016-01-12 International Business Machines Corporation Moving objects in a primary computer based on memory errors in a secondary computer
US9939981B2 (en) 2013-09-12 2018-04-10 Commvault Systems, Inc. File manager integration with virtualization in an information management system with an enhanced storage manager, including user control and storage management of virtual machines
IN2013CH05013A (ja) 2013-11-07 2015-05-08 Schneider Electric It Corp
US20150378415A1 (en) * 2014-02-05 2015-12-31 Christopher George Back-up power supply systems and methods for use with solid state storage devices
US9195401B2 (en) 2014-02-18 2015-11-24 University Of Florida Research Foundation, Inc. Method and apparatus for virtual machine live storage migration in heterogeneous storage environment
WO2015126518A2 (en) * 2014-02-20 2015-08-27 Rambus Inc. High performance persistent memory
US9563518B2 (en) 2014-04-02 2017-02-07 Commvault Systems, Inc. Information management by a media agent in the absence of communications with a storage manager
US10496495B2 (en) 2014-04-30 2019-12-03 Hewlett Packard Enterprise Development Lp On demand remote diagnostics for hardware component failure and disk drive data recovery using embedded storage media
US20160019317A1 (en) 2014-07-16 2016-01-21 Commvault Systems, Inc. Volume or virtual machine level backup and generating placeholders for virtual machine files
US9710465B2 (en) 2014-09-22 2017-07-18 Commvault Systems, Inc. Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations
US10776209B2 (en) 2014-11-10 2020-09-15 Commvault Systems, Inc. Cross-platform virtual machine backup and replication
US9983936B2 (en) 2014-11-20 2018-05-29 Commvault Systems, Inc. Virtual machine change block tracking
US10108339B2 (en) * 2014-12-17 2018-10-23 Intel Corporation Reduction of intermingling of input and output operations in solid state drives
US10108502B1 (en) * 2015-06-26 2018-10-23 EMC IP Holding Company LLC Data protection using checkpoint restart for cluster shared resources
US9792190B2 (en) 2015-06-26 2017-10-17 Intel Corporation High performance persistent memory
US20170153907A1 (en) * 2015-12-01 2017-06-01 Rajeev Grover Out-of-band Management Of Virtual Machines
CN105700935A (zh) * 2016-01-12 2016-06-22 浪潮(北京)电子信息产业有限公司 一种Xen虚拟域的域控制方法及系统
US10565067B2 (en) 2016-03-09 2020-02-18 Commvault Systems, Inc. Virtual server cloud file system for virtual machine backup from cloud operations
EP3341838A4 (en) 2016-05-31 2019-05-08 Avago Technologies International Sales Pte. Limited HIGH AVAILABILITY FOR VIRTUAL MACHINES
US10417102B2 (en) 2016-09-30 2019-09-17 Commvault Systems, Inc. Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including virtual machine distribution logic
US10162528B2 (en) 2016-10-25 2018-12-25 Commvault Systems, Inc. Targeted snapshot based on virtual machine location
US10678758B2 (en) 2016-11-21 2020-06-09 Commvault Systems, Inc. Cross-platform virtual machine data and memory backup and replication
US20180143880A1 (en) * 2016-11-21 2018-05-24 Commvault Systems, Inc. Cross-platform virtual machine data and memory backup and resumption
US20180276085A1 (en) 2017-03-24 2018-09-27 Commvault Systems, Inc. Virtual machine recovery point generation
US10387073B2 (en) 2017-03-29 2019-08-20 Commvault Systems, Inc. External dynamic virtual machine synchronization
US10452298B2 (en) 2017-05-09 2019-10-22 Microsoft Technology Licensing, Llc Portable file-backed virtual storage class memory
US10496492B2 (en) * 2018-02-02 2019-12-03 EMC IP Holding Company LLC Virtual machine backup with efficient checkpoint handling based on a consistent state of the virtual machine of history data and a backup type of a current consistent state of the virtual machine
US10877928B2 (en) 2018-03-07 2020-12-29 Commvault Systems, Inc. Using utilities injected into cloud-based virtual machines for speeding up virtual machine backup operations
US11200124B2 (en) 2018-12-06 2021-12-14 Commvault Systems, Inc. Assigning backup resources based on failover of partnered data storage servers in a data storage management system
US10768971B2 (en) 2019-01-30 2020-09-08 Commvault Systems, Inc. Cross-hypervisor live mount of backed up virtual machine data
JP7128419B2 (ja) * 2019-02-14 2022-08-31 日本電信電話株式会社 二重化運転システム及びその方法
US11167212B1 (en) * 2019-06-20 2021-11-09 Amazon Technologies, Inc. Maintaining session state using redundant servers
US11465045B1 (en) 2019-06-20 2022-10-11 Amazon Technologies, Inc. Maintaining session state using redundant servers
US11593168B2 (en) * 2019-06-26 2023-02-28 Red Hat, Inc. Zero copy message reception for devices via page tables used to access receiving buffers
US11210171B2 (en) * 2020-01-06 2021-12-28 International Business Machines Corporation Apparatus, systems, and methods for booting from a checkpoint image
US11467753B2 (en) 2020-02-14 2022-10-11 Commvault Systems, Inc. On-demand restore of virtual machine data
US11442768B2 (en) 2020-03-12 2022-09-13 Commvault Systems, Inc. Cross-hypervisor live recovery of virtual machines
US11099956B1 (en) 2020-03-26 2021-08-24 Commvault Systems, Inc. Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations
US11803446B2 (en) 2020-07-13 2023-10-31 Samsung Electronics Co., Ltd. Fault resilient storage device
US11500669B2 (en) 2020-05-15 2022-11-15 Commvault Systems, Inc. Live recovery of virtual machines in a public cloud computing environment
US11656951B2 (en) 2020-10-28 2023-05-23 Commvault Systems, Inc. Data loss vulnerability detection

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09330277A (ja) * 1996-06-07 1997-12-22 Mitsubishi Electric Corp ディスクキャッシュシステムにおける停電処理方式及び停電処理方法
US6223202B1 (en) * 1998-06-05 2001-04-24 International Business Machines Corp. Virtual machine pooling
TW456091B (en) * 1999-12-20 2001-09-21 Zone Technology Inc UPS capable of automatically storing data
US7225441B2 (en) * 2000-12-27 2007-05-29 Intel Corporation Mechanism for providing power management through virtualization
US7200144B2 (en) 2001-10-18 2007-04-03 Qlogic, Corp. Router and methods using network addresses for virtualization
US7139885B2 (en) 2001-12-27 2006-11-21 Hitachi, Ltd. Method and apparatus for managing storage based replication
US6990603B2 (en) * 2002-01-02 2006-01-24 Exanet Inc. Method and apparatus for securing volatile data in power failure in systems having redundancy
US7058835B1 (en) * 2002-03-21 2006-06-06 Emc Corporation System, method and apparatus for controlling supply of backup power to first and second power planes in the event of a power failure of a main power supply
US7093086B1 (en) * 2002-03-28 2006-08-15 Veritas Operating Corporation Disaster recovery and backup using virtual machines
US7017017B2 (en) * 2002-11-08 2006-03-21 Intel Corporation Memory controllers with interleaved mirrored memory modes
US7216222B2 (en) * 2003-10-30 2007-05-08 Texas Memory Systems, Inc. System and method for writing data from a storage means to a memory module in a solid state disk system
US9213609B2 (en) * 2003-12-16 2015-12-15 Hewlett-Packard Development Company, L.P. Persistent memory device for backup process checkpoint states
US7853698B2 (en) 2005-04-29 2010-12-14 Sap Ag Internal persistence of session state information
US7266962B2 (en) * 2005-05-17 2007-09-11 Whirlpool Corporation Battery supplemented refrigerator and method for using same
JP4662550B2 (ja) 2005-10-20 2011-03-30 株式会社日立製作所 ストレージシステム
EP1962192A1 (en) * 2007-02-21 2008-08-27 Deutsche Telekom AG Method and system for the transparent migration of virtual machine storage
US7840839B2 (en) * 2007-11-06 2010-11-23 Vmware, Inc. Storage handling for fault tolerance in virtual machines
US8229886B2 (en) * 2008-02-19 2012-07-24 International Business Machines Corporation Continuously available program replicas
US20090210620A1 (en) * 2008-02-19 2009-08-20 Jibbe Mahmoud K Method to handle demand based dynamic cache allocation between SSD and RAID cache
US8001079B2 (en) 2008-02-29 2011-08-16 Double-Take Software Inc. System and method for system state replication
WO2009110144A1 (en) 2008-03-07 2009-09-11 Kabushiki Kaisha Toshiba Information processing apparatus and non-volatile semiconductor memory drive
US8577845B2 (en) * 2008-06-13 2013-11-05 Symantec Operating Corporation Remote, granular restore from full virtual machine backup
US8352482B2 (en) * 2009-07-21 2013-01-08 Vmware, Inc. System and method for replicating disk images in a cloud computing based virtual machine file system

Also Published As

Publication number Publication date
EP2306318A1 (en) 2011-04-06
EP2306318B1 (en) 2012-11-28
CN102033795B (zh) 2015-03-04
CN102033795A (zh) 2011-04-27
JP2011070667A (ja) 2011-04-07
US8769535B2 (en) 2014-07-01
US20110072430A1 (en) 2011-03-24

Similar Documents

Publication Publication Date Title
JP5578720B2 (ja) 高利用率と仮想化の観点から固体ドライブの管理を向上する方法
Scales et al. The design of a practical system for fault-tolerant virtual machines
JP4839841B2 (ja) スナップショット再起動方法
Gioiosa et al. Transparent, incremental checkpointing at kernel level: a foundation for fault tolerance for parallel computers
US6978398B2 (en) Method and system for proactively reducing the outage time of a computer system
US7689859B2 (en) Backup system and method
Wang et al. Proactive process-level live migration in HPC environments
JP2505928B2 (ja) フォ―ルト・トレラント・システムのためのチェックポイント機構
JP4688617B2 (ja) 記憶制御システム及び方法
RU2619894C2 (ru) Управление дублированным виртуальным хранилищем на сайтах восстановления
US9501374B2 (en) Disaster recovery appliance
US8689047B2 (en) Virtual disk replication using log files
US8639966B2 (en) Data transfer and recovery process
US8954784B2 (en) Reduced power failover
US10929234B2 (en) Application fault tolerance via battery-backed replication of volatile state
KR950014175B1 (ko) 데이타의 타임제로 백업 복사 방법과 수단
US20100107158A1 (en) Low overhead fault tolerance through hybrid checkpointing and replay
Zhao et al. Exploring reliability of exascale systems through simulations.
JP2011060055A (ja) 仮想計算機システム、仮想マシンの復旧処理方法及びそのプログラム
Ramakrishnan et al. Live data center migration across WANs: a robust cooperative context aware approach
US20060018505A1 (en) Method, system and software for enhanced data protection using raw device backup of copy-on-write snapshots
Vekiarides Fault-tolerant disk storage and file systems using reflective memory
JP2020030580A (ja) 情報処理装置、データ管理方法およびデータ管理プログラム
JP7056057B2 (ja) 情報処理装置、情報処理方法、情報処理システム、及び、コンピュータ・プログラム
Fernando et al. V-Recover: Virtual Machine Recovery When Live Migration Fails

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120627

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130917

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20131227

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140618

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140618

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140707

R150 Certificate of patent or registration of utility model

Ref document number: 5578720

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

LAPS Cancellation because of no payment of annual fees