JP5702652B2 - Memory synchronization method, active virtual machine, standby virtual machine, and memory synchronization program - Google Patents
Memory synchronization method, active virtual machine, standby virtual machine, and memory synchronization program Download PDFInfo
- Publication number
- JP5702652B2 JP5702652B2 JP2011084054A JP2011084054A JP5702652B2 JP 5702652 B2 JP5702652 B2 JP 5702652B2 JP 2011084054 A JP2011084054 A JP 2011084054A JP 2011084054 A JP2011084054 A JP 2011084054A JP 5702652 B2 JP5702652 B2 JP 5702652B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual machine
- standby
- read
- memory
- active
- 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
Links
Images
Landscapes
- Hardware Redundancy (AREA)
Description
本発明は、メモリ同期方法及び運用系の仮想マシン及び待機系の仮想マシン及びメモリ同期プログラムに係り、特に、物理マシンを2台以上用いて冗長化構成を有する仮想マシン同期機構において、運用系と待機系のストレージが一致している場合(例えば、共有ストレージの利用)、運用系と待機系の仮想マシンのメモリ状態を同期させるためのメモリ同期方法及び運用系の仮想マシン及び待機系の仮想マシン及びメモリ同期プログラムに関する。 The present invention relates to a memory synchronization method, an active virtual machine, a standby virtual machine, and a memory synchronization program, and in particular, in a virtual machine synchronization mechanism having a redundant configuration using two or more physical machines, When the standby storages match (for example, using shared storage), a memory synchronization method for synchronizing the memory states of the active and standby virtual machines, the active virtual machine, and the standby virtual machine And a memory synchronization program.
物理マシンを2台以上用意し、冗長化することで、信頼性の高いシステムを実現するためにはシステムを同期させる必要がある。 In order to realize a highly reliable system by preparing two or more physical machines and making them redundant, it is necessary to synchronize the systems.
そのための方法として、運用系の物理マシン上で動作する仮想マシンのサービス停止時間を最小限に抑えて、待機系の物理マシンに仮想マシンの実行状態を転送するシステムがある(例えば、非特許文献1参照)。このシステムは、仮想マシンを停止せずに、仮想マシンの実行状態を転送していくので、実行状態は常に更新されていく。そのため、既に転送済みの仮想マシンメモリに変更が生じた場合は、再度転送しなおす必要がある。転送すべき仮想マシンの実行状態が十分に小さくなると、運用系の仮想マシンを停止して、残りのデータを待機系に転送する。 As a method for this, there is a system that transfers the execution state of a virtual machine to a standby physical machine while minimizing service stop time of the virtual machine operating on the active physical machine (for example, non-patent literature) 1). Since this system transfers the execution state of the virtual machine without stopping the virtual machine, the execution state is constantly updated. Therefore, if a change occurs in the already transferred virtual machine memory, it is necessary to transfer it again. When the execution state of the virtual machine to be transferred becomes sufficiently small, the active virtual machine is stopped and the remaining data is transferred to the standby system.
また、ネットワークアウトプットもしくは、ストレージ書き込みを契機に仮想マシンの実行状態を同期することで、常にプライマリとセカンダリの仮想マシンの実行状態を同一に保つシステムがある(例えば、非特許文献2参照)。このシステムは、仮想マシンが利用するストレージの同期は行っていないため、共有ストレージを利用している。 In addition, there is a system in which the execution state of the primary and secondary virtual machines is always kept the same by synchronizing the execution state of the virtual machine triggered by network output or storage writing (for example, see Non-Patent Document 2). Since this system does not synchronize the storage used by the virtual machine, it uses shared storage.
当該システムについて以下に説明する。 The system will be described below.
図1は、従来の同期システムの構成を示す。 FIG. 1 shows the configuration of a conventional synchronization system.
運用系1A及び待機系1B共に、仮想マシン制御部10を有し、各仮想マシン制御部10は、同期制御部11を有し、運用系の物理マシン上で動作する仮想マシンの実行状態に生じた変更を、待機系1Bの物理マシンに転送し、待機系の仮想マシンに適用することで、仮想マシン20A,20Bの実行状態(CPU、メモリ、デバイス)を常に同一状態に保つ。なお、同図では共有ストレージ2を運用系システム1A,待機系システム1Bのハードウェア30A,30Bが共用している例を示しているが、ストレージ2を同一状態に保つための構成は同図の構成に限定されるものではなく、例えば、運用系、待機系がそれぞれの別々のストレージを利用し、常に同一に保つ処理を行ってもよい。
Both the active system 1A and the standby system 1B have a virtual machine control unit 10, and each virtual machine control unit 10 has a synchronization control unit 11, which occurs in the execution state of a virtual machine operating on an active physical machine. The change is transferred to the physical machine of the standby system 1B and applied to the standby virtual machine, so that the execution states (CPU, memory, device) of the
運用系1A及び待機系1Bは、それぞれ図2、図3に示す動作を行う。 The active system 1A and the standby system 1B perform the operations shown in FIGS. 2 and 3, respectively.
図2は、従来技術による運用系同期制御部のフローチャートである。 FIG. 2 is a flowchart of an active system synchronization control unit according to the prior art.
運用系1Aの仮想マシン制御部10Aの同期制御部11Aはストレージ2に書き込みが発生したことを検知すると、同期を開始する(ステップ110)。前回同期時からの差分メモリを取得し、運用系仮想マシン20Aの実行状態(CPU、差分メモリ、デバイス)の差分を待機系の同期制御部11Bに送信し(ステップ120)、待機系1Bからの全データ受信完了通知が送信されたかを判断し(ステップ130)、全て受信した場合には処理を終了する。
When the
図3は、従来技術による待機系同期制御部のフローチャートである。 FIG. 3 is a flowchart of a standby synchronization control unit according to the prior art.
待機系1Bの仮想マシン制御部10Bの同期制御部11Bは、運用系マシンの実行状態の差分を受信すると(ステップ210)、受信した差分を待機系仮想マシン20Bの実行状態に反映させ(ステップ220)、送信側の運用系10Aに全データを受信したことを通知するための全データ受信完了通知を送信する(ステップ230)。
When the
また、上記の技術の他に、ネットワークアウトプットを発行する前に同期することで、常にプライマリとセカンダリの仮想マシンの実行状態及びストレージを同一に保つことができると、論文で紹介されている(例えば、非特許文献3参照)。 In addition to the above technology, the paper introduced that the execution state and storage of the primary and secondary virtual machines can always be kept the same by synchronizing before issuing the network output ( For example, refer nonpatent literature 3).
また、マスタとスレーブの記憶装置のデータに不一致がある場合に、差分を転送して同期する技術がある(例えば、特許文献1参照)。 Further, there is a technique of transferring a difference and synchronizing when there is a discrepancy between data in a master and a slave storage device (see, for example, Patent Document 1).
しかしながら、上記の非特許文献1の技術は、ストレージの読み出しにより変更が生じた仮想マシンのメモリを一致させるために、メモリのデータそのものを転送する方式であるので、転送量が大きいという問題がある。 However, since the technique of Non-Patent Document 1 described above is a method of transferring memory data itself in order to match the memory of a virtual machine that has changed due to storage read, there is a problem that the transfer amount is large. .
また、非特許文献2の技術は、ストレージの読み出しにより、変更が生じた仮想マシンのメモリを一致させるために、メモリデータそのものを転送する方式であるので、転送量が大きいという問題がある。
Further, the technique of Non-Patent
また、非特許文献3の技術は、ストレージの読み出しにより、変更が生じた仮想マシンのメモリを一致させるために、メモリデータそのものを転送する方式であるので、転送量が大きいという問題がある。 Further, the technique of Non-Patent Document 3 has a problem that the transfer amount is large because the memory data itself is transferred in order to match the memory of the virtual machine in which the change has occurred by reading the storage.
また、特許文献1の技術は、マスタは記憶装置にあるデータそのものをスレーブに転送するので、転送量が大きいという問題がある。 Further, the technique of Patent Document 1 has a problem that the transfer amount is large because the master transfers the data itself in the storage device to the slave.
本発明は、上記の点に鑑みなされたもので、運用系と待機系のストレージが一致している場合(例えば、共有ストレージの利用)に、データ転送量を削減することが可能なメモリ同期方法及び運用系の仮想マシン及び待機系の仮想マシン及びメモリ同期プログラムを提供することを目的とする。 The present invention has been made in view of the above points, and is a memory synchronization method capable of reducing the amount of data transfer when the active and standby storages match (for example, using shared storage). It is another object of the present invention to provide an active virtual machine, a standby virtual machine, and a memory synchronization program.
上記の課題を解決するために、本発明は、運用系と待機系で共有ストレージを有し、運用系の物理マシン上で動作する仮想マシンのメモリの内容と待機系の物理マシン上で動作する仮想マシンのメモリの内容を任意のタイミングで同期させるメモリ同期システムであって、
前記運用系の仮想マシンにおいて、
読み出し命令捕捉手段が、前記共有ストレージに読み出し命令が発生すると、該読み出し命令の読み込み位置及び読み出し位置及び読み出しサイズを記憶手段に格納する読み出し命令捕捉ステップと、
差分情報転送手段が、前記共有ストレージに書き込み命令が発生すると、前回同期時からの実行状態の差分情報を取得して前記待機系の仮想マシンに送信する差分情報転送ステップと、
同期データ転送手段が、前記記憶手段から前記読み込み位置、前記読み出し位置、前記読み出しサイズを取得して、前記待機系に転送する同期データ転送ステップと、
前記待機系の仮想マシンにおいて、
差分情報反映手段が、前記運用系の仮想マシンから受信した該運用系の仮想マシンの前記差分情報を当該待機系の仮想マシンに反映させる差分情報反映ステップと、
同期手段が、前記運用系の仮想マシンから受信した前記読み込み位置で指定される待機系の仮想マシンメモリに、前記読み出し位置で指定される前記共有ストレージのデータを、前記読み出しサイズ分読み込む同期ステップと、を行う。
In order to solve the above problem, the present invention has a shared storage in the active system and the standby system, and operates on the physical contents of the virtual machine that operates on the active physical machine and on the standby physical machine. A memory synchronization system that synchronizes the contents of a virtual machine's memory at an arbitrary timing,
In the operational virtual machine,
When a read command is generated in the shared storage, the read command capturing unit stores a read position, a read position, and a read size of the read command in a storage unit, and
The difference information transfer means, when a write command occurs in the shared storage, a difference information transfer step of acquiring the difference information of the execution state from the previous synchronization time and transmitting it to the standby virtual machine;
Synchronous data transfer means acquires the read position, the read position, and the read size from the storage means, and transfers the synchronous data transfer step to the standby system;
In the standby virtual machine,
A difference information reflecting step in which the difference information reflecting means reflects the difference information of the active virtual machine received from the active virtual machine to the standby virtual machine;
A synchronization step in which synchronization means reads the data of the shared storage specified by the read position into the standby virtual machine memory specified by the read position received from the active virtual machine by the read size; ,I do.
上記のように本発明は、運用系と待機系において共有ストレージを利用している場合に、運用系の仮想マシンの実行状態の差分とストレージ読み出し命令の内容(読み込み位置、読み出し位置、読み出しサイズ)を待機系に転送することにより、運用系と待機系の仮想マシンメモリを一致させているため、データそのものを転送する必要がないため、転送量を削減することができる。 As described above, according to the present invention, when the shared storage is used in the active system and the standby system, the difference in the execution state of the active virtual machine and the contents of the storage read command (read position, read position, read size) Since the virtual machine memories of the active system and the standby system are made to coincide with each other by transferring to the standby system, it is not necessary to transfer the data itself, so that the transfer amount can be reduced.
また、待機系では運用系から取得した読み出し命令に基づいて、共有ストレージの読み出しを行うため、メモリの状態を一致させることができる。 In the standby system, since the shared storage is read based on the read command acquired from the active system, the states of the memories can be matched.
以下、図面と共に、本発明の実施の形態を説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
本発明において、同期とは、運用系の物理マシン上で動作する仮想マシンのメモリの内容と、待機系の物理マシン上で動作する仮想マシンのメモリの内容を任意のタイミングで一致させる処理であり、継続的に行われるものとする。 In the present invention, synchronization and is an the contents of the memory of the virtual machines running on the operational system of the physical machine, causes the contents of the memory of the virtual machines running on the standby physical machines matched at an arbitrary timing process , Shall be conducted continuously.
本発明のシステム構成は、前述の図1と同様の構成であるが、同期制御部11で行われる処理が異なる。なお、以下において、運用系の仮想マシン20Aでは、アプリケーションが動作しているため、実行状態は常に更新されていくものとし、待機系の仮想マシン20Bでは、アプリケーションが動作していないため、実行状態は変化しない、という前提とする。また、以下の実施の形態では、運用系1Aと待機系1Bは共に共有ストレージ2を用いるものとする。
The system configuration of the present invention is the same as that of FIG. 1 described above, but the processing performed by the synchronization control unit 11 is different. In the following, since the application is operating in the active
まず、運用系1Aの同期制御部11Aの処理について説明する。
First, processing of the
図4は、本発明の一実施の形態における運用系の同期制御部の全体のフローチャートである。 FIG. 4 is an overall flowchart of the active synchronization control unit according to the embodiment of the present invention.
ステップ310) 同期制御部11Aは、共有ストレージ2に対する読み出しが発生したかを判断し、発生した場合にはステップ320に移行する。
Step 310) The
ステップ320) 同期制御部11Aは、共有ストレージ2からの読み出しを捕捉し、当該読み出し命令を主記憶装置等の記憶手段(図示せず)に格納する。当該処理の詳細については、図5にて後述する。
Step 320) The
ステップ330) 次に、同期制御部11Aは、運用系のストレージ書き込みが発生したかを判定し、発生したことを検知した場合には、同期を開始する。なお、このための処理としては、図2(非特許文献2)と同様に、共有ストレージ2への書き込みを契機に同期処理を行う方法と同様である。
Step 330) Next, the
ステップ340) 同期制御部11Aは、運用系1Aと待機系1Bを同期させるために必要なデータを待機系1Bに転送する。当該処理の詳細いついては図6にて後述する。
Step 340) The
次に、上記のステップ320の処理について説明する。 Next, the process of step 320 will be described.
図5は、本発明の一実施の形態におけるステップ320の詳細フローチャートである。 FIG. 5 is a detailed flowchart of step 320 in one embodiment of the present invention.
ステップ410) 同期制御部11Aは、仮想マシン20Aによるストレージ2からの読み出しを捕捉する。
Step 410) The
ステップ420) 同期制御部11Aは、ストレージ読み出しを検知すると、ストレージ読み出し命令を主記憶装置等の記憶手段(図示せず)に格納する。ここで、格納されるストレージ読み出し命令の情報としては、読み込み位置(例えば、仮想マシンのページアドレス)、読み出し位置(例えば、ストレージ2のセクタ番号)、読み出しサイズ等である。
Step 420) Upon detecting the storage read, the
次に、図4のステップ340の処理について説明する。非特許文献2とは、待機系の同期制御部11Bに送信する情報が異なる。
Next, the process of step 340 in FIG. 4 will be described. Information transmitted to the standby
図6は、本発明の一実施の形態におけるステップ340の詳細フローチャートである。 FIG. 6 is a detailed flowchart of step 340 in one embodiment of the present invention.
ステップ510) 同期制御部11Aは、運用系の仮想マシン20Aより、前回同期時からの差分メモリを取得する。但し、ストレージ読み出しにより変更が生じたメモリは除く。運用系仮想マシン20Aの実行状態の差分(CPU,差分メモリ、デバイス)を待機系1Bの同期制御部11Bに送信する。
Step 510) The
ステップ520) 同期制御部11Aは、ステップ320で記憶手段(図示せず)に格納したストレージの読み出し命令(読み出しデータの位置、読み込み位置、読み込みサイズ)を取り出し、待機系1Bの同期制御部11Bへ送信する。なお、本データは複数個からなることもある。
Step 520) The
ステップ530) 受信側の待機系1Bから全データの受信完了通知が送信されてきたかを判断し、送信されてきた場合はステップ540に移行する。 Step 530) It is determined whether a reception completion notification for all data has been transmitted from the standby system 1B on the receiving side, and if it has been transmitted, the process proceeds to Step 540.
ステップ540) ステップ520で記憶手段(図示せず)に保存したストレージの読み出し命令を破棄する。これは、次回同期時に、同一のデータの転送を防ぐための処理である。
Step 540) The storage read command stored in the storage means (not shown) in
次に、待機系1Bの処理について説明する。 Next, processing of standby system 1B will be described.
図7は、本発明の一実施の形態における待機系の同期制御部のフローチャートである。 FIG. 7 is a flowchart of the standby-system synchronization control unit according to the embodiment of the present invention.
ステップ610) 同期制御部11Bは、前述のステップ510、520の処理によって運用系1Aから送信されている運用系1Aの仮想マシン20Aの実行状態の差分及びストレージ2に対する読み出し命令等の同期用のデータを受信したかを判断し、受信した場合はステップ620に移行する。
Step 610) The
ステップ620) 受信した運用系1Aの仮想マシン20Aの実行状態の差分を待機系1Bの仮想マシン20Bの実行状態に反映させる。
Step 620) The received difference in the execution state of the
ステップ630) 同期制御部11Bは、待機系ストレージ2のデータ及びストレージデータの読み出し命令(読み込み位置、読み出しデータの位置、読み出しサイズ)が入力されると、読み込み位置で指定される主記憶装置上の仮想マシンメモリに、読み出しデータの位置で指定されるストレージ2のデータを、指定されているサイズ分読み込む。これにより、運用系1Aの仮想マシンメモリと待機系の仮想マシンメモリを一致させることができる。
Step 630) When the
ステップ640) 運用系側からの全データの受信完了通知を運用系1Aに送信する。 Step 640) A reception completion notification of all data from the active system side is transmitted to the active system 1A.
上記のように、本発明では、ステップ420において、ストレージ読み出し命令を運用系1Aの記憶手段に保存しているため、ステップ520及びステップ630で利用することができる。つまり、ストレージデータを読み出すことにより運用系1の仮想マシンのメモリに変更が生じても、ストレージ2には同じストレージデータが存在しているので、データそのものは転送する必要がない。仮想マシンメモリの代わりに転送するストレージ読み出し命令のデータサイズは、仮想マシンメモリそのもののデータと比較して十分に小さいので転送量を削減できる。
As described above, in the present invention, since the storage read command is stored in the storage unit of the active system 1A in Step 420, it can be used in
また、待機系1Bは、ステップ630においてストレージデータの読み出し命令に基づいて運用系1Aと同様のストレージ2から読み出しを行うため、メモリの状態を一致させることができる。
Further, since the standby system 1B reads from the
上記の実施の形態では、運用系マシンと待機系マシンが1:1の場合を示したが、以下に運用系マシンと待機系マシンがN:1,または、1:Nの例を示す。 In the above embodiment, the case where the active machine and the standby machine are 1: 1 is shown, but an example in which the active machine and the standby machine are N: 1 or 1: N is shown below.
図8は、本発明の一実施の形態における物理マシンの構成を示す図(その1)である。 FIG. 8 is a diagram (part 1) illustrating the configuration of the physical machine according to the embodiment of the invention.
同図に示す構成において、運用系マシンAと待機系マシンBは、ストレージaを共有し、待機系マシンBとはストレージbを共有している。 In the configuration shown in the figure, the active machine A and the standby machine B share the storage a, and the standby machine B shares the storage b.
物理マシンの構成に関しては、運用系マシン数:待機系マシン数=N:1の構成をとることが可能である。同図に示す待機系マシンの仮想マシンの1つは、運用系マシンAの仮想マシンと同期し、もう一方の仮想マシンは運用系マシンBと同期する。但し、仮想マシンの構成に関しては、運用系仮想マシン数:待機系仮想マシン数=N:1と、運用系仮想マシンのバックアップとなる待機系仮想マシンが、一つ以上必要となる。 Regarding the configuration of the physical machine, it is possible to adopt a configuration in which the number of active machines: the number of standby machines = N: 1. One of the virtual machines of the standby machine shown in the figure is synchronized with the virtual machine of the operational machine A, and the other virtual machine is synchronized with the operational machine B. However, regarding the configuration of virtual machines, the number of active virtual machines: the number of standby virtual machines = N: 1, and one or more standby virtual machines serving as backups for the active virtual machines are required.
なお、ある運用系仮想マシンのバックアップの先に待機系仮想マシンが複数ある場合は、運用系の故障後、どちらを新たに運用系とするか選択する必要がある。 When there are a plurality of standby virtual machines at the backup destination of a certain active virtual machine, it is necessary to select which one will be the new active system after the failure of the active system.
また、ストレージを同一状態に保つための構成は図8の例に限らない。例えば、運用系、待機系がそれぞれ別々のストレージを利用し、常に同一に保つ処理を行ってもよい。 Further, the configuration for keeping the storage in the same state is not limited to the example of FIG. For example, the active system and the standby system may use different storages and perform processing to keep them always the same.
図9は、本発明の一実施の形態における物理マシンの構成を示す図(その2)である。 FIG. 9 is a diagram (part 2) illustrating the configuration of the physical machine according to the embodiment of the invention.
同図に示す構成において、運用系と待機系A,Bは、ストレージを共有している。 In the configuration shown in the figure, the active system and standby systems A and B share storage.
同図に示すように、物理マシンのン構成に関しては、運用系マシン数:待機系マシン数=1:Nの構成をとることが可能である。同図に示す待機系マシンA,B上の仮想マシンは両方とも、運用系の仮想マシンと同期している。但し、仮想マシンの構成に関しては、運用系仮想マシン数:待機系仮想マシン数=1:Nと、運用系仮想マシンのバックアップとなる待機系仮想マシンが、一つ以上必要となる。 As shown in the figure, regarding the physical machine configuration, it is possible to adopt a configuration where the number of active machines: the number of standby machines = 1: N. Both virtual machines on the standby machines A and B shown in the figure are synchronized with the active virtual machine. However, regarding the configuration of the virtual machines, one or more standby virtual machines that are backups of the active virtual machines are required, ie, the number of active virtual machines: the number of standby virtual machines = 1: N.
なお、ある運用系仮想マシンのバックアップの先に待機系仮想マシンが複数ある場合は、運用系の故障後、どちらを新たに運用系とするか選択する必要がある。 When there are a plurality of standby virtual machines at the backup destination of a certain active virtual machine, it is necessary to select which one will be the new active system after the failure of the active system.
また、ストレージを同一状態に保つための構成は図8、9の例に限定されることなく、例えば、運用系、待機系がそれぞれ別々のストレージを利用し、常に同一に保つ処理を行ってもよい。 Further, the configuration for keeping the storage in the same state is not limited to the examples of FIGS. 8 and 9. For example, the active system and the standby system may use different storages and perform processing to keep them always the same. Good.
次に、本発明と従来技術の性能評価の結果を示す。 Next, the results of performance evaluation of the present invention and the prior art will be shown.
図10は、評価のための実験環境を示す。 FIG. 10 shows an experimental environment for evaluation.
同図において、評価のあめに、実験環境となるマシンを2台用意し、一方を運用系システム、もう一方を待機系システムとする。運用系のゲストOS上で、ファイルコピーを実行し、負荷をかけている。 In the figure, for the sake of evaluation, two machines serving as experimental environments are prepared, one being an operation system and the other being a standby system. File copy is executed on the active guest OS and a load is applied.
図11は、本発明と従来技術の同期一回当りのデータ転送量を示す。 FIG. 11 shows the data transfer amount per synchronization between the present invention and the prior art.
同図のデータは、運用系と待機系を100回同期させた時に発生したデータ転送量の平均値である。本発明を利用した場合は、従来技術(非特許文献2)と比較して、以下の効果を得ることができた。なお、本発明と非特許文献2の同期のタイミングは同一のため、発生する同期回数に変化はない。
The data in the figure is an average value of the data transfer amount generated when the active system and the standby system are synchronized 100 times. When the present invention is used, the following effects can be obtained as compared with the prior art (Non-Patent Document 2). Since the synchronization timing of the present invention and
・全体(その他+ストレージ読み出しにより変更が生じたメモリ情報としては、571KBから494KBとなり、13%のデータ転送量が削減できた。なお、上記の「その他」とは、仮想マシン実行状態(CPU,デバイス、メモリ)からストレージ読み出しにより変更が生じたメモリデータサイズを差し引いたものである。 -Overall (other + memory information changed by storage read from 571 KB to 494 KB, reducing the data transfer amount by 13%. Note that the above "other" means the virtual machine execution state (CPU, Device, memory) minus the memory data size that has changed due to storage read.
・ストレージ読み出しにより変更が生じたメモリ情報としては、77KBから0.14KBとなり、99%のデータ転送量が削減できた。なお、上記の「ストレージ読み出しによる変更が生じたメモリ情報」とは、従来技術(非特許文献2)の場合はメモリデータであり、本発明の場合はストレージ読み出し命令である。 -The memory information changed due to the storage read was changed from 77 KB to 0.14 KB, and the data transfer amount was reduced by 99%. The above-mentioned “memory information changed by storage read” is memory data in the case of the prior art (Non-Patent Document 2), and is a storage read instruction in the case of the present invention.
なお、運用系及び待機系の同期制御部の動作をプログラムとして構築し、仮想マシンとして利用される物理マシンにインストールして実行させることが可能である。 The operations of the active and standby synchronization control units can be constructed as a program, and can be installed and executed on a physical machine used as a virtual machine.
本発明は上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更応用が可能である。 The present invention is not limited to the above-described embodiments, and various modifications and applications are possible within the scope of the claims.
1A 運用系システム(データ送信側)
1B 待機系システム(データ受信側)
2 共有ストレージ
10A 仮想マシン制御部(運用系)
10B 仮想マシン制御部(待機系)
11A 同期制御部(運用系)
11B 同期制御部(待機系)
20A 仮想マシン(運用系)
20B 仮想マシン(待機系)
30A ハードウェア(運用系)
30B ハードウェア(待機系)
1A Operation system (data transmission side)
1B Standby system (data receiving side)
2
10B Virtual machine control unit (standby system)
11A Synchronization control unit (operational system)
11B Synchronization control unit (standby system)
20A virtual machine (operational)
20B Virtual machine (standby system)
30A hardware (operational)
30B hardware (standby system)
Claims (5)
前記運用系の仮想マシンは、
前記共有ストレージに読み出し命令が発生すると、該読み出し命令の読み込み位置及び読み出し位置及び読み出しサイズを記憶手段に格納する読み出し命令捕捉手段と、
前記共有ストレージに書き込み命令が発生すると、前回同期時からの実行状態の差分情報を取得して前記待機系の仮想マシンに送信する差分情報転送手段と、
前記記憶手段から前記読み込み位置、前記読み出し位置、前記読み出しサイズを取得して、前記待機系に転送する同期データ転送手段と、
を有し、
前記待機系の仮想マシンは、
前記運用系の仮想マシンから受信した該運用系の仮想マシンの前記差分情報を当該待機系の仮想マシンに反映させる差分情報反映手段と、
前記運用系の仮想マシンから受信した前記読み込み位置で指定される待機系の仮想マシンメモリに、前記読み出し位置で指定される前記共有ストレージのデータを、前記読み出しサイズ分読み込む同期手段と、
を有する
ことを特徴とするメモリ同期システム。 The active and standby systems have shared storage, and the contents of the virtual machine memory running on the active physical machine and the virtual machine memory contents running on the standby physical machine are synchronized at any time A memory synchronization system,
The active virtual machine is
When a read command is generated in the shared storage, a read command capturing unit that stores a read position, a read position, and a read size of the read command in a storage unit;
When a write command occurs in the shared storage, difference information transfer means for acquiring difference information of an execution state from the previous synchronization time and transmitting the difference information to the standby virtual machine;
Synchronous data transfer means for acquiring the read position, the read position, and the read size from the storage means and transferring them to the standby system;
Have
The standby virtual machine is
Differential information reflecting means for reflecting the difference information of the active virtual machine received from the active virtual machine to the standby virtual machine;
Synchronization means for reading the data of the shared storage specified at the read position into the standby virtual machine memory specified at the read position received from the active virtual machine for the read size;
A memory synchronization system comprising:
前記運用系の仮想マシンにおいて、
読み出し命令捕捉手段が、前記共有ストレージに読み出し命令が発生すると、該読み出し命令の読み込み位置及び読み出し位置及び読み出しサイズを記憶手段に格納する読み出し命令捕捉ステップと、
差分情報転送手段が、前記共有ストレージに書き込み命令が発生すると、前回同期時からの実行状態の差分情報を取得して前記待機系の仮想マシンに送信する差分情報転送ステップと、
同期データ転送手段が、前記記憶手段から前記読み込み位置、前記読み出し位置、前記読み出しサイズを取得して、前記待機系に転送する同期データ転送ステップと、
前記待機系の仮想マシンにおいて、
差分情報反映手段が、前記運用系の仮想マシンから受信した該運用系の仮想マシンの前記差分情報を当該待機系の仮想マシンに反映させる差分情報反映ステップと、
同期手段が、前記運用系の仮想マシンから受信した前記読み込み位置で指定される待機系の仮想マシンメモリに、前記読み出し位置で指定される前記共有ストレージのデータを、前記読み出しサイズ分読み込む同期ステップと、
を行うことを特徴とするメモリ同期方法。 A shared storage in a production system and the standby system, synchronized at any time the contents of the memory of the virtual machines running on the content of the memory of the virtual machine standby physical machines that operate on a production system of the physical machine A memory synchronization method,
In the operational virtual machine,
When a read command is generated in the shared storage, the read command capturing unit stores a read position, a read position, and a read size of the read command in a storage unit, and
The difference information transfer means, when a write command occurs in the shared storage, a difference information transfer step of acquiring the difference information of the execution state from the previous synchronization time and transmitting it to the standby virtual machine;
Synchronous data transfer means acquires the read position, the read position, and the read size from the storage means, and transfers the synchronous data transfer step to the standby system;
In the standby virtual machine,
A difference information reflecting step in which the difference information reflecting means reflects the difference information of the active virtual machine received from the active virtual machine to the standby virtual machine;
A synchronization step in which synchronization means reads the data of the shared storage specified by the read position into the standby virtual machine memory specified by the read position received from the active virtual machine by the read size; ,
And a memory synchronization method.
前記共有ストレージに読み出し命令が発生すると、該読み出し命令の読み込み位置及び読み出し位置及び読み出しサイズを記憶手段に格納する読み出し命令捕捉手段と、
前記共有ストレージに書き込み命令が発生すると、前回同期時からの実行状態の差分情報を取得して前記待機系の仮想マシンに送信する差分情報転送手段と、
前記記憶手段から前記読み込み位置、前記読み出し位置、前記読み出しサイズを取得して、前記待機系に転送する同期データ転送手段と、
を有することを特徴とする運用系の仮想マシン。 A shared storage in a production system and the standby system, synchronized at any time the contents of the memory of the virtual machines running on the content of the memory of the virtual machine standby physical machines that operate on a production system of the physical machine An operational virtual machine in a synchronous system,
When a read command is generated in the shared storage, a read command capturing unit that stores a read position, a read position, and a read size of the read command in a storage unit;
When a write command occurs in the shared storage, difference information transfer means for acquiring difference information of an execution state from the previous synchronization time and transmitting the difference information to the standby virtual machine;
Synchronous data transfer means for acquiring the read position, the read position, and the read size from the storage means and transferring them to the standby system;
An operational virtual machine characterized by comprising:
前記運用系の仮想マシンから受信した該運用系の仮想マシンの書き込み命令が発生した時における、前回同期時からの実行状態の差分情報を当該待機系の仮想マシンに反映させる差分情報反映手段と、
前記運用系の仮想マシンから読み込み命令が発生した時の読み込み位置、読み出し位置、読み出しサイズを受信し、該読み込み位置で指定される待機系の仮想マシンメモリに、該読み出し位置で指定される前記共有ストレージのデータを、該読み出しサイズ分読み込む同期手段と、
を有する
ことを特徴とする待機系の仮想マシン。 A shared storage in a production system and the standby system, synchronized at any time the contents of the memory of the virtual machines running on the content of the memory of the virtual machine standby physical machines that operate on a production system of the physical machine A standby virtual machine in a synchronous system,
At the time when the write command of the virtual machine該運for system received from the virtual machine of the active system occurs, the difference information reflecting means for reflecting the difference information corresponding execution state from the previous synchronization to the virtual machine of the standby system ,
The read position, read position, and read size when a read command is generated from the active virtual machine is received, and the shared virtual machine memory specified at the read position is stored in the standby virtual machine memory specified at the read position. Synchronization means for reading storage data for the read size;
A standby virtual machine characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011084054A JP5702652B2 (en) | 2011-04-05 | 2011-04-05 | Memory synchronization method, active virtual machine, standby virtual machine, and memory synchronization program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011084054A JP5702652B2 (en) | 2011-04-05 | 2011-04-05 | Memory synchronization method, active virtual machine, standby virtual machine, and memory synchronization program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012221064A JP2012221064A (en) | 2012-11-12 |
JP5702652B2 true JP5702652B2 (en) | 2015-04-15 |
Family
ID=47272549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011084054A Expired - Fee Related JP5702652B2 (en) | 2011-04-05 | 2011-04-05 | Memory synchronization method, active virtual machine, standby virtual machine, and memory synchronization program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5702652B2 (en) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4282030B2 (en) * | 1999-06-03 | 2009-06-17 | 株式会社日立製作所 | Data duplex control method and duplex storage subsystem |
JP3877519B2 (en) * | 2000-12-15 | 2007-02-07 | 株式会社日立製作所 | System recovery method, computer system for implementing the method, and recording medium recording the processing program |
US6728898B2 (en) * | 2002-03-06 | 2004-04-27 | Marathon Technologies Corporation | Producing a mirrored copy using incremental-divergence |
JP2006318505A (en) * | 2006-08-01 | 2006-11-24 | Hitachi Ltd | Remote copy system and remote copy method |
JP4871850B2 (en) * | 2007-12-04 | 2012-02-08 | 株式会社日立製作所 | Virtual computer system and virtual computer migration control method |
JP5692065B2 (en) * | 2009-04-28 | 2015-04-01 | 日本電気株式会社 | High-speed migration system and management device for virtual device in computer system, method and program therefor |
-
2011
- 2011-04-05 JP JP2011084054A patent/JP5702652B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012221064A (en) | 2012-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9600553B1 (en) | Distributed replication in cluster environments | |
EP3195574B1 (en) | Techniques for coordinating parallel performance and cancellation of commands in a storage cluster system | |
JP5776267B2 (en) | Distributed file system | |
JP5094460B2 (en) | Computer system, data matching method, and data matching processing program | |
JP2007115007A (en) | Restoring method of storage device and storage device | |
US20140244949A1 (en) | Asynchronous Data Mirroring in Memory Controller | |
JP5286212B2 (en) | Remote copy control method and system in storage cluster environment | |
JP2007265013A (en) | Cluster control program, cluster control method and cluster controller | |
WO2016018262A1 (en) | Storage transactions | |
JP6931081B2 (en) | Data backup system, relay site storage, data backup method, and relay site storage control program | |
JP5561334B2 (en) | Data transfer device | |
CN106919473A (en) | A kind of data disaster recovery and backup systems and method for processing business | |
CN102065138A (en) | Method for realizing thermal backup control of servers in disk-less system | |
JP2012190175A (en) | Fault tolerant system, server and method and program for fault tolerance | |
JP2006285336A (en) | Storage, storage system, and control method thereof | |
US10649862B1 (en) | Reducing failback performance duration in data replication systems | |
JP6056408B2 (en) | Fault tolerant system | |
JP2009098988A (en) | Fault tolerant computer system | |
JP5702652B2 (en) | Memory synchronization method, active virtual machine, standby virtual machine, and memory synchronization program | |
JP5702651B2 (en) | Virtual machine synchronization method and system, and operational virtual machine and program | |
US20080256313A1 (en) | System, Method And Computer Program Product For Remote Mirroring | |
US10185758B1 (en) | Direct to remote replication | |
JP5509272B2 (en) | Computer system, data matching method, and data matching processing program | |
US10656867B2 (en) | Computer system, data management method, and data management program | |
JP2012164075A (en) | Storage synchronization system, virtual machine, storage synchronization method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130814 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20131007 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140729 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140922 |
|
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: 20150217 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150220 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5702652 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |