CN112380069B - 一种虚拟机容错系统及其容错方法 - Google Patents

一种虚拟机容错系统及其容错方法 Download PDF

Info

Publication number
CN112380069B
CN112380069B CN202011415535.7A CN202011415535A CN112380069B CN 112380069 B CN112380069 B CN 112380069B CN 202011415535 A CN202011415535 A CN 202011415535A CN 112380069 B CN112380069 B CN 112380069B
Authority
CN
China
Prior art keywords
random number
virtual machine
host
data source
number data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011415535.7A
Other languages
English (en)
Other versions
CN112380069A (zh
Inventor
藏洪永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Haiguang Information Technology Co Ltd
Original Assignee
Haiguang Information 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 Haiguang Information Technology Co Ltd filed Critical Haiguang Information Technology Co Ltd
Priority to CN202011415535.7A priority Critical patent/CN112380069B/zh
Publication of CN112380069A publication Critical patent/CN112380069A/zh
Application granted granted Critical
Publication of CN112380069B publication Critical patent/CN112380069B/zh
Active 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/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
    • 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/4557Distribution of virtual machine instances; Migration and load balancing

Abstract

本发明提供了一种虚拟机容错系统及其容错方法,该虚拟机容错系统包括第一主机端和第二主机端。两个主机端分别运行有第一虚拟机和第二虚拟机,两个虚拟机上分别安装有第一前端驱动和第二前端驱动。两个主机端分别安装有第一后端驱动和第二后端驱动。第二后端驱动能够与第一主机端进行数据交互,以接收第一主机端生成的随机数数据源。通过将第一主机端生成的随机数数据源,实时同步到第二主机端,确保第一虚拟机和第二虚拟机使用相同的随机数数据源处理网络请求包,避免了由于随机数数据源不同而导致主备虚拟机的状态不同步现象,减少由于主备虚拟机所生成的网络响应数据包不相同而需要进行Checkpoint同步的次数,提升虚拟机容错系统的性能。

Description

一种虚拟机容错系统及其容错方法
技术领域
本发明涉及虚拟机技术领域,尤其涉及一种虚拟机容错系统及其容错方法。
背景技术
虚拟化技术随着云计算的开展得到广泛应用,虚拟机容错技术可以为关键应用提供可靠性保证。早期的虚拟机容错技术(如MicroCheckpointing、Kemari等),备虚拟机一直处于暂停状态,不停高频同步主虚拟机的状态变化,若主虚拟机发生故障,则激活备虚拟机运行。主虚拟机和备虚拟机之间定期高频做Checkpoint(检查点机制,一种状态数据同步方式),同时Checkpoint需要暂停源虚拟机运行,由于高频Checkpoint引入的开销较大,这种容错技术无法商用。
针对早期虚拟机容错开销较大问题,Intel(英特尔)提出粗粒度同步技术(COarse-grained LOck-stepping,简称COLO),该方法主备虚拟机都处于运行状态,外部客户端发给主虚拟机的网络请求,主虚拟机同时发给备虚拟机处理,通过比较主虚拟机和备虚拟机对同一网络请求的网络响应,决定是否需要同步主备虚拟机的状态。若主备虚拟机对客户端网络请求产生的响应数据包相同,则无需做Checkpoint;否则,立刻同步主备虚拟机状态。该方法减少了Checkpoint的频率,降低了容错开销,已在云计算产品中商用(如ZStack等),此外VMware也采用了与COLO类似的容错技术。
目前,随机数在验证码、UUID(Universally Unique Identifier,通用唯一识别码)生成、安全秘钥等场景得到广泛应用,生成随机数依赖本地的软硬件环境数据,在COLO容错场景中,主备虚拟机生成的随机数由于软硬件环境不同而不同。虚拟机业务在需要随机数时,由于备虚拟机获取的随机数与主虚拟机不同,后续生成的网络响应包的内容也因随机数不同而不同。随机数是导致COLO主备虚拟机状态需要同步的主要原因。但COLO技术判断是否需要Checkpoint的条件,完全依赖主备虚拟机对客户端网络请求产生的响应包的比对结果,导致备虚拟机在获取随机数之后的计算成为一种不必要的浪费。
发明内容
本发明提供了一种虚拟机容错系统及其容错方法,使主虚拟机和备虚拟机使用相同的随机数数据源处理网络请求包,避免由于随机数数据源不同导致主备虚拟机的状态不同步现象,减少了主备虚拟机进行Checkpoint同步的次数,提升虚拟机容错系统的性能。
第一方面,本发明提供了一种虚拟机容错系统,该虚拟机容错系统包括第一主机端和第二主机端。第一主机端上运行有第一虚拟机,第一虚拟机上安装有用于提供随机数接口的第一前端驱动,第一主机端安装有能够与第一前端驱动进行数据交互的第一后端驱动;其中,该第一后端驱动用于接收第一主机端生成的随机数数据源,并将随机数数据源转发给第一前端驱动。第二主机端上运行有第二虚拟机,第二虚拟机上安装有用于提供随机数接口的第二前端驱动,第二主机端安装有能够与第二前端驱动进行数据交互的第二后端驱动;其中,第二后端驱动能够与第一主机端进行数据交互,以接收第一主机端生成的随机数数据源,并将该随机数数据源转发给第二前端驱动。
在上述的方案中,通过将第一主机端生成的随机数数据源,实时同步到第二主机端,使第一前端驱动和第二前端驱动所接收到的随机数数据源相同,从而确保第一虚拟机和第二虚拟机使用相同的随机数数据源处理网络请求包。相比现有COLO技术的方式,本申请的方案能够使主虚拟机和备虚拟机使用相同的随机数数据源处理网络请求包,避免了由于随机数数据源不同而导致主备虚拟机的状态不同步现象,减少了由于主备虚拟机所生成的网络响应数据包不相同而需要进行Checkpoint同步的次数,从而提升了虚拟机容错系统的性能。
在一个具体的实施方式中,第一主机端设置有用于生成随机数数据源的随机数生成器,且随机数生成器与第一后端驱动能够进行数据交互,以将生成的随机数数据源发送给第一后端驱动。
在一个具体的实施方式中,随机数生成器为硬件随机数生成器,以产生真正的随机数。
在一个具体的实施方式中,第一主机端设置有第一随机数同步装置;且第一随机数同步装置与随机数生成器能够进行数据交互,以接收随机数生成器生成的随机数数据源。第二主机端设置有能够与第二后端驱动进行数据交互的第二随机数同步装置;且第二随机数同步装置能够与第一随机数同步装置进行数据交互,以接收第一随机数同步装置发送的随机数数据源,并将接收到的随机数数据源转发给第二后端驱动。以便于第一主机端将生成的随机数数据源快速的同步给第二主机端。
在一个具体的实施方式中,第一随机数同步装置与第二随机数同步装置之间采用服务器-客户机模式进行数据交互。其中,第一随机数同步装置作为服务器端,以向作为客户机端的第二随机数同步装置发送随机数数据源。以提高第一随机数同步装置向第二随机数同步装置传送随机数数据源的传输速率。
在一个具体的实施方式中,第一主机端上安装有第一KVM(Kernel-based VirtualMachine的简称,是一个系统虚拟化模块)虚拟机,第一虚拟机运行在第一KVM虚拟机下。第二主机端上安装有第二KVM虚拟机,第二虚拟机运行在第二KVM虚拟机下。
在一个具体的实施方式中,第一前端驱动及第二前端驱动均为Virtio-rng(Virtio为半虚拟化Hypervisor(虚拟机监视器)中位于设备之上的抽象层;Virtio-rng中的rng的全称为random number generator,是指随机数生成器;Virtio-rng为Virtio中专门用于调取随时数的驱动)前端驱动,第一后端驱动及第二后端驱动均为Virtio-rng后端驱动。以提高前端驱动及后端驱动之间数据交互的传输速率。
在一个具体的实施方式中,第一主机端为主物理机端,第一虚拟机为主虚拟机。第二主机端为备物理机端,第二虚拟机为备虚拟机,使主物理机端生成的随机数数据源同步给备虚拟机。
第二方面,本发明还提供了一种基于上述任意一种虚拟机容错系统的容错方法,该容错方法包括:第一主机端将生成的随机数数据源发送给第一后端驱动,由第一后端驱动将随机数数据源发送给第一前端驱动;第一主机端将生成的随机数数据源同步给第二主机端,由第二主机端通过第二后端驱动发送给第二前端驱动。
在上述的方案中,通过将第一主机端生成的随机数数据源,实时同步到第二主机端,使第一前端驱动和第二前端驱动所接收到的随机数数据源相同,从而确保第一虚拟机和第二虚拟机使用相同的随机数数据源处理网络请求包。相比现有COLO技术的方式,本申请的方案能够使主虚拟机和备虚拟机使用相同的随机数数据源处理网络请求包,避免了由于随机数数据源不同而导致主备虚拟机的状态不同步现象,减少了由于主备虚拟机所生成的网络响应数据包不相同而需要进行Checkpoint同步的次数,从而提升了虚拟机容错系统的性能。
在一个具体的实施方式中,该容错方法还包括:在虚拟机容错系统初始化时,将第一主机端的随机数数据源同步给第二主机端。进行随机数数据源的初始化,确保虚拟机容错系统开始时主备虚拟机分别对应的主机端双方的随机数数据源一致。
在一个具体的实施方式中,该容错方法还包括:在第一主机端每次有新的随机数数据源生成时,第一主机端均将新生成的随机数数据源同步给第二主机端。使第一主机端能够实时将新生成的随机数数据源同步给第二主机端,保证主备虚拟机始终使用相同的随机数数据源对网络请求包进行处理。
附图说明
图1为本发明实施例提供的一种虚拟机容错系统的结构示意图;
图2为本发明实施例提供的一种虚拟机容错系统的架构图;
图3为本发明实施例提供的容错方法的一种流程图;
图4为本发明实施例提供的容错方法的另一种流程图;
图5为本发明实施例提供的容错方法的另一种流程图;
图6为本发明实施例提供的容错方法的另一种流程图。
附图标记:
10-第一虚拟机 11-第一前端驱动 12-第一后端驱动
13-第一主机端 14-第一随机数同步装置 15-随机数生成器
20-第二虚拟机 21-第二前端驱动 22-第二后端驱动
23-第二主机端 24-第二随机数同步装置
31-第一KVM虚拟机 32-第二KVM虚拟机
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了方便理解本发明实施例提供的虚拟机容错系统,下面首先说明一下本发明实施例提供的虚拟机容错系统的应用场景,该虚拟机容错系统应用于具有主虚拟机及备虚拟机的系统中。下面结合附图对该虚拟机容错系统进行详细的叙述。
参考图1、图2及图3,本发明实施例提供的虚拟机容错系统包括第一主机端13和第二主机端23。第一主机端13上运行有第一虚拟机10,第一虚拟机10上安装有用于提供随机数接口的第一前端驱动11,第一主机端13安装有能够与第一前端驱动11进行数据交互的第一后端驱动12。其中,该第一后端驱动12用于接收第一主机端13生成的随机数数据源,并将随机数数据源转发给第一前端驱动11。第二主机端23上运行有第二虚拟机20,第二虚拟机20上安装有用于提供随机数接口的第二前端驱动21,第二主机端23安装有能够与第二前端驱动21进行数据交互的第二后端驱动22。其中,第二后端驱动22能够与第一主机端13进行数据交互,以接收第一主机端13生成的随机数数据源,并将该随机数数据源转发给第二前端驱动21。
在上述的方案中,通过将第一主机端13生成的随机数数据源,实时同步到第二主机端23,使第一前端驱动11和第二前端驱动21所接收到的随机数数据源相同,从而确保第一虚拟机10和第二虚拟机20使用相同的随机数数据源处理网络请求包。相比现有COLO技术的方式,本申请的方案能够使主虚拟机和备虚拟机使用相同的随机数数据源处理网络请求包,避免了由于随机数数据源不同导致主备虚拟机的状态不同步现象,减少了由于主备虚拟机所生成的网络响应数据包不相同而需要进行Checkpoint同步的次数,从而提升了虚拟机容错系统的性能。下面结合附图对上述各个器件进行详细的介绍。
参考图1及图2,在第一主机端13上运行有第一虚拟机10,第二主机端23上运行有第二虚拟机20。其中,第一主机端13和第二主机端23中的一个主机端为主物理机端,另一个主机端为备物理机端;对应的,第一虚拟机10和第二虚拟机20中的一个虚拟机为主虚拟机,另一个为备虚拟机。设置时,可以使第一主机端13为主物理机端,第一虚拟机10为主虚拟机。第二主机端23为备物理机端,第二虚拟机20为备虚拟机,使主物理机端生成的随机数数据源同步给备虚拟机。还可以使第一主机端13为备物理机端,第一虚拟机10为备虚拟机,第二主机端23为主物理机端,第二虚拟机20为主虚拟机,使备物理机端生成的随机数数据源同步给主虚拟机。
在具体在两个主机端上分别运行两个虚拟机时,参考图2,可以在第一主机端13上安装有第一KVM虚拟机31,第一虚拟机10运行在第一KVM虚拟机31下。在第二主机端23上安装有第二KVM虚拟机32,第二虚拟机20运行在第二KVM虚拟机32下。
参考图1,在两个虚拟机上分别安装有两个前端驱动,具体的,第一虚拟机10上安装有第一前端驱动11,第二虚拟机20上安装有第二前端驱动21。在两个主机端上分别安装有两个后端驱动,具体的,在第一主机端13上安装有第一后端驱动12,在第二主机端23上安装有第二后端驱动22。
在设置两个前端驱动和两个后端驱动时,参考图1,第一前端驱动11及第二前端驱动21可以均为Virtio-rng前端驱动,第一后端驱动12及第二后端驱动22可以均为Virtio-rng后端驱动。以提高前端驱动及后端驱动之间数据交互的传输速率。
在第一主机端13具体生成随机数数据源时,参考图1及图4,可以在第一主机端13设置有用于生成随机数数据源的随机数生成器15,且随机数生成器15与第一后端驱动12能够进行数据交互,以实现第一主机端13生成随机数数据源,同时将第一主机端13生成的随机数数据源发送给第一后端驱动12,由第一后端驱动12将随机数数据源转发给的第一前端驱动11,由第一虚拟机10在处理网络请求包过程中使用。具体设置该随机数生成器15时,该随机数生成器15可以由确定性的算法组成的随机数生成器,以生成伪随机数。该随机数生成器15还可以为硬件随机数生成器,使硬件随机数生成器根据主机端的软硬件环境,产生真正的随机数。
参考图1及图5,可以在第一主机端13设置有第一随机数同步装置14,且第一随机数同步装置14与随机数生成器15能够进行数据交互,以接收随机数生成器15生成的随机数数据源,即随机数生成器15生成随机数后分别同时发送给第一后端驱动12和第一随机数同步装置14。在第二主机端23设置有能够与第二后端驱动22进行数据交互的第二随机数同步装置24,且第二随机数同步装置24能够与第一随机数同步装置14进行数据交互,以接收第一随机数同步装置14发送的随机数数据源,并将接收到的随机数数据源转发给第二后端驱动22。即在第一随机数同步装置14接收到随机数生成器15生成的随机数数据源后,将接收到的随机数数据源转发给第二随机数同步装置24,由第二随机数同步装置24接收并发送给的第二后端驱动22,并由第二后端驱动22转发给第二前端驱动21,从而使第一前端驱动11和第二前端驱动21所收到的随机数数据源完全相同,从而使第一虚拟机10和第二虚拟机20在处理网络请求包时,使用相同的随机数数据源进行处理,从而保证主虚拟机和备虚拟机不因生成随机数而导致状态数据不相同,从而减少后期生成的网络相应数据包不相同的可能性,减少主备虚拟机进行Checkpoint同步的次数,提高虚拟机容错系统的性能。另外,通过设置第一随机数同步装置14和第二随机数同步装置24的方式实现第一主机端13向第二主机端23传输随机数数据源,使第一主机端13与第二主机端23之间存在专用的高速网络通道进行状态同步,以便于第一主机端13将生成的随机数数据源快速同步给第二主机端23。
在具体实现第一随机数同步装置14与第二随机数同步装置24之间进行数据传输时,可以使第一随机数同步装置14与第二随机数同步装置24之间采用服务器-客户机模式进行数据交互的方式。其中,第一随机数同步装置14作为服务器端,以向作为客户机端的第二随机数同步装置24发送随机数数据源。以提高第一随机数同步装置14向第二随机数同步装置24传送随机数数据源的传输速率。
通过将第一主机端13生成的随机数数据源,实时同步到第二主机端23,使第一前端驱动11和第二前端驱动21所接收到的随机数数据源相同,从而确保第一虚拟机10和第二虚拟机20使用相同的随机数数据源处理网络请求包。相比现有COLO技术的方式,本申请的方案能够使主虚拟机和备虚拟机使用相同的随机数数据源处理网络请求包,避免了由于随机数数据源不同而导致主备虚拟机的状态不同步现象,减少了由于主备虚拟机所生成的网络响应数据包不相同而需要进行Checkpoint同步的次数,从而提升了虚拟机容错系统的性能。
另外,本发明实施例还提供了一种基于上述任意一种的虚拟机容错系统的容错方法,参考图1、图2及图3,该容错方法包括:
第一主机端13将生成的随机数数据源发送给第一后端驱动12,由第一后端驱动12将随机数数据源发送给第一前端驱动11;
第一主机端13将生成的随机数数据源同步给第二主机端23,由第二主机端23通过第二后端驱动22发送给第二前端驱动21。
在上述的方案中,通过将第一主机端13生成的随机数数据源,实时同步到第二主机端23,使第一前端驱动11和第二前端驱动21所接收到的随机数数据源相同,从而确保第一虚拟机10和第二虚拟机20使用相同的随机数数据源处理网络请求包。相比现有COLO技术的方式,本申请的方案能够使主虚拟机和备虚拟机使用相同的随机数数据源处理网络请求包,避免了由于随机数数据源不同而导致主备虚拟机的状态不同步现象,减少了由于主备虚拟机所生成的网络响应数据包不相同而需要进行Checkpoint同步的次数,从而提升了虚拟机容错系统的性能。
参考图6,在对虚拟机容错系统初始化时,可以将第一主机端13的随机数数据源同步给第二主机端23,进行随机数数据源的初始化,确保虚拟机容错系统开始时主备虚拟机分别对应的主机端双方的随机数数据源一致。
继续参考图6,在虚拟机容错系统正常运行阶段,可以在第一主机端13每次有新的随机数数据源生成时,第一主机端13均将新生成的随机数数据源同步给第二主机端23。使第一主机端13能够实时将新生成的随机数数据源同步给第二主机端23,保证主备虚拟机始终使用相同的随机数数据源对网络请求包进行处理。
通过将第一主机端13生成的随机数数据源,实时同步到第二主机端23,使第一前端驱动11和第二前端驱动21所接收到的随机数数据源相同,从而确保第一虚拟机10和第二虚拟机20使用相同的随机数数据源处理网络请求包。相比现有COLO技术的方式,本申请的方案能够使主虚拟机和备虚拟机使用相同的随机数数据源处理网络请求包,避免了由于随机数数据源不同而导致主备虚拟机的状态不同步现象,减少了由于主备虚拟机所生成的网络响应数据包不相同而需要进行Checkpoint同步的次数,从而提升了虚拟机容错系统的性能。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (11)

1.一种虚拟机容错系统,其特征在于,包括:
第一主机端,所述第一主机端运行有第一虚拟机,所述第一虚拟机上安装有用于提供随机数接口的第一前端驱动,所述第一主机端安装有能够与所述第一前端驱动进行数据交互的第一后端驱动;其中,所述第一后端驱动用于接收所述第一主机端生成的随机数数据源,并将所述随机数数据源转发给所述第一前端驱动;所述第一虚拟机使用所述第一前端驱动接收的所述随机数数据源处理网络请求包;
第二主机端,所述第二主机端运行有第二虚拟机,所述第二虚拟机上安装有用于提供随机数接口的第二前端驱动,所述第二主机端安装有能够与所述第二前端驱动进行数据交互的第二后端驱动;其中,所述第二后端驱动能够与所述第一主机端进行数据交互,以接收所述第一主机端生成的随机数数据源,并将所述随机数数据源转发给所述第二前端驱动;且所述第二虚拟机使用所述第二前端驱动接收到的所述随机数数据源处理网络请求包。
2.如权利要求1所述的虚拟机容错系统,其特征在于,所述第一主机端设置有用于生成所述随机数数据源的随机数生成器;且所述随机数生成器与所述第一后端驱动能够进行数据交互,以将生成的所述随机数数据源发送给所述第一后端驱动。
3.如权利要求2所述的虚拟机容错系统,其特征在于,所述随机数生成器为硬件随机数生成器。
4.如权利要求2所述的虚拟机容错系统,其特征在于,所述第一主机端设置有第一随机数同步装置;且所述第一随机数同步装置能够与所述随机数生成器进行数据交互,以接收所述随机数生成器生成的所述随机数数据源;
所述第二主机端设置有能够与所述第二后端驱动进行数据交互的第二随机数同步装置;且所第二随机数同步装置能够与所述第一随机数同步装置进行数据交互,以接收所述第一随机数同步装置发送的所述随机数数据源,并将所述随机数数据源转发给所述第二后端驱动。
5.如权利要求4所述的虚拟机容错系统,其特征在于,所述第一随机数同步装置与所述第二随机数同步装置之间采用服务器-客户机模式进行数据交互;
其中,所述第一随机数同步装置作为服务器端,以向作为客户机端的所述第二随机数同步装置发送所述随机数数据源。
6.如权利要求1所述的虚拟机容错系统,其特征在于,所述第一主机端上安装有第一KVM虚拟机,所述第一虚拟机运行在所述第一KVM虚拟机下;
所述第二主机端上安装有第二KVM虚拟机,所述第二虚拟机运行在所述第二KVM虚拟机下。
7.如权利要求6所述的虚拟机容错系统,其特征在于,所述第一前端驱动及第二前端驱动均为Virtio-rng前端驱动,所述第一后端驱动及第二后端驱动均为Virtio-rng后端驱动。
8.如权利要求1所述的虚拟机容错系统,其特征在于,所述第一主机端为主物理机端,所述第一虚拟机为主虚拟机;
所述第二主机端为备物理机端,所述第二虚拟机为备虚拟机。
9.一种基于权利要求1~8任一项所述的虚拟机容错系统的容错方法,其特征在于,包括:
第一主机端将生成的随机数数据源发送给第一后端驱动,由所述第一后端驱动将所述随机数数据源发送给第一前端驱动;
所述第一主机端将生成的所述随机数数据源同步给第二主机端,由所述第二主机端通过第二后端驱动发送给第二前端驱动。
10.如权利要求9所述的容错方法,其特征在于,还包括:在所述虚拟机容错系统初始化时,将所述第一主机端的随机数数据源同步给所述第二主机端。
11.如权利要求9所述的容错方法,其特征在于,还包括:在所述第一主机端每次有新的随机数数据源生成时,所述第一主机端均将新生成的随机数数据源同步给所述第二主机端。
CN202011415535.7A 2020-12-04 2020-12-04 一种虚拟机容错系统及其容错方法 Active CN112380069B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011415535.7A CN112380069B (zh) 2020-12-04 2020-12-04 一种虚拟机容错系统及其容错方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011415535.7A CN112380069B (zh) 2020-12-04 2020-12-04 一种虚拟机容错系统及其容错方法

Publications (2)

Publication Number Publication Date
CN112380069A CN112380069A (zh) 2021-02-19
CN112380069B true CN112380069B (zh) 2022-05-17

Family

ID=74589810

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011415535.7A Active CN112380069B (zh) 2020-12-04 2020-12-04 一种虚拟机容错系统及其容错方法

Country Status (1)

Country Link
CN (1) CN112380069B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102473098A (zh) * 2009-08-24 2012-05-23 微软公司 用于虚拟机的熵池
CN103501290A (zh) * 2013-09-18 2014-01-08 万达信息股份有限公司 一种基于动态备份虚拟机的高可靠服务系统构建方法
CN104618155A (zh) * 2015-01-23 2015-05-13 华为技术有限公司 一种虚拟机容错的方法、装置及系统
CN105531678A (zh) * 2014-08-18 2016-04-27 华为技术有限公司 虚拟机数据的同步方法和装置
CN107077366A (zh) * 2014-10-08 2017-08-18 英特尔公司 用于主与辅虚拟机之间的检查点/传递的技术
CN111813606A (zh) * 2020-07-22 2020-10-23 山东超越数控电子股份有限公司 一种双节点虚拟机容错的方法、系统、设备及介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293994A (zh) * 2015-05-15 2017-01-04 株式会社日立制作所 网络文件系统中的虚拟机克隆方法和网络文件系统
CN107544870A (zh) * 2017-06-14 2018-01-05 新华三云计算技术有限公司 一种虚拟机磁盘备份方法及装置
US11204794B2 (en) * 2019-04-19 2021-12-21 EMC IP Holding Company LLC Automated disaster recovery of discrete virtual machines

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102473098A (zh) * 2009-08-24 2012-05-23 微软公司 用于虚拟机的熵池
CN103501290A (zh) * 2013-09-18 2014-01-08 万达信息股份有限公司 一种基于动态备份虚拟机的高可靠服务系统构建方法
CN105531678A (zh) * 2014-08-18 2016-04-27 华为技术有限公司 虚拟机数据的同步方法和装置
CN107077366A (zh) * 2014-10-08 2017-08-18 英特尔公司 用于主与辅虚拟机之间的检查点/传递的技术
CN104618155A (zh) * 2015-01-23 2015-05-13 华为技术有限公司 一种虚拟机容错的方法、装置及系统
CN111813606A (zh) * 2020-07-22 2020-10-23 山东超越数控电子股份有限公司 一种双节点虚拟机容错的方法、系统、设备及介质

Also Published As

Publication number Publication date
CN112380069A (zh) 2021-02-19

Similar Documents

Publication Publication Date Title
CN111769957B (zh) 区块链跨链查询方法、装置、设备和存储介质
USRE47852E1 (en) Snapshot and replication of a multi-stream application on multiple hosts at near-sync frequency
US10678655B2 (en) Using RDMA for fast system recovery in virtualized environments
US8230256B1 (en) Method and apparatus for achieving high availability for an application in a computer cluster
US8880768B2 (en) Storage controller system with data synchronization and method of operation thereof
US7512815B1 (en) Systems, methods and computer program products for high availability enhancements of virtual security module servers
Reiser et al. Hypervisor-based efficient proactive recovery
CN110058959B (zh) 数据备份方法、设备和计算机程序产品
US7970852B2 (en) Method for moving operating systems between computer electronic complexes without loss of service
US20180302469A1 (en) METHODS, DEVICES AND COMPUTER READABLE MEDIUMs FOR DATA SYNCHRONIZATION
Wood et al. PipeCloud: using causality to overcome speed-of-light delays in cloud-based disaster recovery
US10108510B2 (en) Continuously available program replicas
EP2798496B1 (en) Method and apparatus for synchronization in primary-backup replication schemes
CN111124993B (zh) 减小i/o处理时缓存数据镜像时延的方法、设备和程序产品
CN108259569B (zh) 一种基于ipsan共享存储的无代理连续数据保护方法及系统
CN112380069B (zh) 一种虚拟机容错系统及其容错方法
US20150358309A1 (en) Data protection backup agent management
CN111831490B (zh) 一种冗余主备用节点之间内存同步方法及系统
JP6056408B2 (ja) フォールトトレラントシステム
Castro et al. Byzantine fault tolerance can be fast
CN112380070B (zh) 一种虚拟机容错系统及其容错方法
CN111865834B (zh) 一种消息处理方法及装置
CN112380068A (zh) 一种虚拟机容错系统及其容错方法
Reiser et al. Fault and intrusion tolerance on the basis of virtual machines
CN112307013A (zh) 用于管理应用系统的方法、设备和计算机程序产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant