CN107203443A - 一种基于kvm虚拟化的虚拟机高可用的方法与装置 - Google Patents

一种基于kvm虚拟化的虚拟机高可用的方法与装置 Download PDF

Info

Publication number
CN107203443A
CN107203443A CN201710485767.1A CN201710485767A CN107203443A CN 107203443 A CN107203443 A CN 107203443A CN 201710485767 A CN201710485767 A CN 201710485767A CN 107203443 A CN107203443 A CN 107203443A
Authority
CN
China
Prior art keywords
virtual machine
host
backup
target data
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.)
Pending
Application number
CN201710485767.1A
Other languages
English (en)
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710485767.1A priority Critical patent/CN107203443A/zh
Publication of CN107203443A publication Critical patent/CN107203443A/zh
Pending legal-status Critical Current

Links

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/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/202Error 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 where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • 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/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • 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/202Error 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 where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/203Failover techniques using migration
    • 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

Landscapes

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

Abstract

本发明实施例公开了一种基于KVM虚拟化的虚拟机高可用的方法与装置,在备份节点上设置一个备份虚拟机,备份虚拟机通过接收主虚拟机发送的TCP连接请求后,实现与主虚拟机的连接。主虚拟机通过向备份虚拟机发送目标数据的方式,实现数据的同步。当备份虚拟机接收到主虚拟机发送的特定报文后,或者是在预设时间内未接收到主虚拟机发送的目标数据时,备份虚拟机可以启动对应的虚拟CPU,代替主虚拟机工作。可见,通过设置备份虚拟机,并且保持备份虚拟机与主虚拟机数据的同步,可以在主节点发生故障时将主虚拟机的进程立即切换到备份节点,由备份虚拟机代替主虚拟机工作,该过程可以达到无缝切换的效果,对虚拟机内服务不会产生影响,实现了虚拟机的高可用。

Description

一种基于KVM虚拟化的虚拟机高可用的方法与装置
技术领域
本发明涉及虚拟机技术领域,特别是涉及一种基于KVM虚拟化的虚拟机高可用的方法与装置。
背景技术
虚拟机(Virtual Machine,VM)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。
传统方式中,为了实现VM高可用的功能,通常依赖上层管理策略,监控到VM异常后,在另一节点重启该VM,以保证VM业务的正常运行。但是,这种方法的缺点在于,VM重启过程中,其上的所有应用会中断服务,并且伴随有无法恢复的风险。并且,目前,对于基于kernel的虚拟机(Kernel-based Virtual Machine,KVM)虚拟化并没有提供虚拟机高可用的功能。
可见,如何实现基于KVM虚拟化的虚拟机的高可用,是本领域技术人员亟待解决的问题。
发明内容
本发明实施例的目的是提供一种基于KVM虚拟化的虚拟机高可用的方法与装置,可以实现基于KVM虚拟化的虚拟机的高可用。
为解决上述技术问题,本发明实施例提供一种基于KVM虚拟化的虚拟机高可用的方法,包括:
备份虚拟机接收到主虚拟机发送的TCP连接请求后,向所述主虚拟机发送响应消息;所述备份虚拟机位于备份节点上;所述主虚拟机与所述备份虚拟机使用同一个文件系统;
所述备份虚拟机接收到所述主虚拟机发送的目标数据后,将所述目标数据存储于对应的缓冲区,并向所述主虚拟机发送反馈信息;
所述备份虚拟机接收到所述主虚拟机发送的特定报文后,或者是在预设时间内未接收到所述主虚拟机发送的目标数据时,则启动对应的虚拟CPU,代替所述主虚拟机工作。
可选的,在所述将所述目标数据存储于对应的缓冲之后,还包括:
将所述缓冲区中的目标数据还原为虚拟内存数据和虚拟设备数据,并将所述虚拟内存数据保存至对应的虚拟内存中,将所述虚拟设备数据保存至对应的虚拟设备中。
可选的,还包括:
在规定时间内未接收到所述主虚拟机发送的所述目标数据时,则向所述主虚拟机发送获取目标数据的请求;所述规定时间小于所述预设时间。
本发明实施例还提供了一种基于KVM虚拟化的虚拟机高可用的装置,包括接收单元、发送单元和启动单元,
所述接收单元,用于接收主虚拟机发送的TCP连接请求,并触发所述发送单元,向所述主虚拟机发送响应消息;所述备份虚拟机位于备份节点上;所述主虚拟机与所述备份虚拟机使用同一个文件系统;
所述接收单元还用于接收所述主虚拟机发送的目标数据,将所述目标数据存储于对应的缓冲区,并触发所述发送单元,所述发送单元还用于向所述主虚拟机发送反馈信息;
所述启动单元,用于当接收到所述主虚拟机发送的特定报文后,或者是在预设时间内未接收到所述主虚拟机发送的目标数据时,则启动对应的虚拟CPU,代替所述主虚拟机工作。
可选的,还包括还原单元,
所述还原单元,用于将所述缓冲区中的目标数据还原为虚拟内存数据和虚拟设备数据,并将所述虚拟内存数据保存至对应的虚拟内存中,将所述虚拟设备数据保存至对应的虚拟设备中。
可选的,所述发送单元还用于在规定时间内未接收到所述主虚拟机发送的所述目标数据时,则向所述主虚拟机发送获取目标数据的请求;所述规定时间小于所述预设时间。
由上述技术方案可以看出,在备份节点上设置一个备份虚拟机,该备份虚拟机可以作为主虚拟机的镜像虚拟机,备份虚拟机接收到主虚拟机发送的TCP连接请求后,向所述主虚拟机发送响应消息,实现与主虚拟机的连接。建立连接关系后,主虚拟机可以向备份虚拟机发送目标数据,备份虚拟机接收到主虚拟机发送的目标数据后,可以将目标数据存储于对应的缓冲区,并向所述主虚拟机发送反馈信息;主虚拟机通过发送目标数据的方式,可以实现备份虚拟机和主虚拟机数据的同步。当备份虚拟机接收到所述主虚拟机发送的特定报文后,或者是在预设时间内未接收到所述主虚拟机发送的目标数据时,则说明主虚拟机所在的主节点出现了故障,也即主虚拟机已将无法正常工作,此时备份虚拟机可以启动对应的虚拟CPU,代替所述主虚拟机工作。可见,通过设置备份虚拟机,并且保持备份虚拟机与主虚拟机数据的同步,可以在主节点发生故障时将主虚拟机的进程立即切换到备份节点,由备份虚拟机代替主虚拟机工作,该过程可以达到无缝切换的效果,对虚拟机内服务不会产生影响,实现了虚拟机的高可用。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于KVM虚拟化的虚拟机高可用的方法的流程图;
图2为本发明实施例提供的一种主虚拟机和备份虚拟机结构的示意图;
图3为本发明实施例提供的一种基于KVM虚拟化的虚拟机高可用的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
接下来,详细介绍本发明实施例所提供的一种基于KVM虚拟化的虚拟机高可用的方法。图1为本发明实施例提供的一种基于KVM虚拟化的虚拟机高可用的方法的流程图,该方法包括:
S101:备份虚拟机接收到主虚拟机发送的TCP连接请求后,向所述主虚拟机发送响应消息。
在本发明实施例中,为了保证主节点上的虚拟机(可以将该虚拟机称为主虚拟机)业务的连续性,可以在备份节点上创建一个备份虚拟机。该备份虚拟机相当于是主虚拟机的镜像虚拟机,其完全按照主虚拟机的定义进行创建。
如图2所示,为主虚拟机和备份虚拟机的结构示意图,每台虚拟机中包含有虚拟CPU、虚拟内存和虚拟设备,其中虚拟内存可以用于存储虚拟内存数据,虚拟设备可以用于存储虚拟设备数据。主节点运行正常时,主虚拟机的虚拟CPU处于开启状态,而备份虚拟机上的虚拟CPU处于锁定状态,其中,两台虚拟机共享一个文件系统。
为了实现两个虚拟机之间的数据同步,两台虚拟机需要先建立连接关系。主虚拟机可以通过特定的端口向备份虚拟机发送TCP连接请求,备份虚拟机在接收到该TCP连接请求后,可以向主虚拟机发送响应消息,以便于主虚拟机可以依据该响应消息,确认与备份虚拟机已经连接成功。
S102:所述备份虚拟机接收到所述主虚拟机发送的目标数据后,将所述目标数据存储于对应的缓冲区,并向所述主虚拟机发送反馈信息。
在本发明实施例中,为了使得虚拟机能够尽可能快的保存与接收数据,在主虚拟机和备份虚拟机中可以预先设置缓冲区,这两个缓冲区位于同一个文件系统中。
主虚拟机可以将需要传输的虚拟内存数据以及虚拟设备数据结构化的保存至其对应的缓冲区中,为便于后续介绍,可以将主虚拟机中的这些数据称作目标数据。当主虚拟机接收到备份虚拟机发送的响应信息后,则说明连接已经建立成功,主虚拟机便可以将目标数据发送给所述备份虚拟机。
考虑到目标数据的数据量往往较大,在传输目标数据时可以对其进行分段处理,并对每段数据进行标号,以便于备份虚拟机可以识别出各段数据之间的前后顺序。
例如,可以将目标数据切分成10个数据段,依次标号为0-9,编号0的数据段即为第一个数据段,标号为9的数据段即为该目标数据的最后一个数据段。
在本发明实施例中,可以将主虚拟机向备份虚拟机传输一次目标数据看做是一次完整的数据同步的过程,由于每次传输的目标数据的数据量大小不尽相同,相应的,对其进行切分的段数也并非固定不变。为了便于备份虚拟机可以识别出哪个数据段是目标数据的第一个数据段,哪个数据段是目标数据的最后一个数据段,主虚拟机在向备份虚拟机发送各个数据段时,在第一个数据段和最后一个数据段中可以携带相应的标识信息。
例如,可以在第一段数据中携带“transfer begin”标识,在最后一个数据段中携带“transfer finish”标识。
备份虚拟机在接收到一个数据段后,便可以向主虚拟机发送一个响应信息,例如,可以发送携带“transfer verify”标识的数据段作为反馈信息,以便于主虚拟机依据该反馈信息可以获知数据段已经发送成功。
S103:所述备份虚拟机接收到所述主虚拟机发送的特定报文后,或者是在预设时间内未接收到所述主虚拟机发送的目标数据时,则启动对应的虚拟CPU,代替所述主虚拟机工作。
在上述S102中可以实现主虚拟机与备份虚拟机数据的同步,在数据同步期间,备份虚拟机的虚拟CPU处于锁定状态,即备份虚拟机并不提供实质性的业务服务。
当主虚拟机所属的主节点发生故障时,为了保证主虚拟机上业务的连续性,可以将备份虚拟机的虚拟CPU激活,由备份虚拟机代替主虚拟机,继续执行主虚拟机的业务。
其中,激活备份虚拟机的虚拟CPU可以有两种方式,一种方式,可以是主虚拟机向备份虚拟机发送状态异常的报文。在具体实现中,可以通过指定信号或信号集设置处理句柄,主节点在发生故障时,会触发该处理句柄发出信号异常指令,主虚拟机捕捉到该信号异常指令后,继续传输完成正在同步的数据,并后向备份虚拟机发送状态异常的报文,备份虚拟机在接收到该报文后,便可以将其对应的虚拟CPU激活。
另一种方式,可以是备份虚拟机自行激活其对应的虚拟CPU。当主节点出现故障时,此时主虚拟机将无法产生新的目标数据,也即备份虚拟机将无法获取到新的目标数据。依据数据传输的时间,可以设置相应的预设时间,当备份虚拟机在预设时间内未接收到新的目标数据时,则可以说明主节点出现了故障,此时,备份虚拟机可以主动激活自身的虚拟CPU,以接替主虚拟机的工作,以保证主虚拟机上原本业务的连续。
由上述技术方案可以看出,在备份节点上设置一个备份虚拟机,该备份虚拟机可以作为主虚拟机的镜像虚拟机,备份虚拟机接收到主虚拟机发送的TCP连接请求后,向所述主虚拟机发送响应消息,实现与主虚拟机的连接。建立连接关系后,主虚拟机可以向备份虚拟机发送目标数据,备份虚拟机接收到主虚拟机发送的目标数据后,可以将目标数据存储于对应的缓冲区,并向所述主虚拟机发送反馈信息;主虚拟机通过发送目标数据的方式,可以实现备份虚拟机和主虚拟机数据的同步。当备份虚拟机接收到所述主虚拟机发送的特定报文后,或者是在预设时间内未接收到所述主虚拟机发送的目标数据时,则说明主虚拟机所在的主节点出现了故障,也即主虚拟机已将无法正常工作,此时备份虚拟机可以启动对应的虚拟CPU,代替所述主虚拟机工作。可见,通过设置备份虚拟机,并且保持备份虚拟机与主虚拟机数据的同步,可以在主节点发生故障时将主虚拟机的进程立即切换到备份节点,由备份虚拟机代替主虚拟机工作,该过程可以达到无缝切换的效果,对虚拟机内服务不会产生影响,实现了虚拟机的高可用。
为了快速接收数据,备份虚拟机可以将接收的目标数据先存储于其对应的缓冲区中,其中,依据数据类型的不同,目标数据可以分为虚拟内存数据和虚拟设备数据。由图2可以是看出,备份虚拟机中有相应的虚拟内存和虚拟设备,因此,备份虚拟机在接收到目标数据后,可以将所述缓冲区中的目标数据还原为虚拟内存数据和虚拟设备数据,并将所述虚拟内存数据保存至对应的虚拟内存中,将所述虚拟设备数据保存至对应的虚拟设备中。
考虑到受网络因素的影响,可能会出现备份虚拟机无法成功接收到目标数据的情况,针对该种情况,备份虚拟机可以向主虚拟机发送获取目标数据的请求。具体的,当备份虚拟机在规定时间内未接收到所述主虚拟机发送的所述目标数据时,则向所述主虚拟机发送获取目标数据的请求。
结合上述将目标数据分段传输的方式,每段数据都有其对应的标号信息,当备份虚拟机未接收到某一个数据段时,则可以在向主虚拟机发送获取目标数据的请求中携带该数据段标号信息。
在上述激活备份虚拟机的虚拟CPU的第二种方式中涉及到了预设时间,为了避免将重新发送数据与激活虚拟CPU混淆,可以将规定时间设置的小于所述预设时间。
图3为本发明实施例提供的一种基于KVM虚拟化的虚拟机高可用的装置的结构示意图,包括接收单元31、发送单元32和启动单元33,
所述接收单元31,用于接收主虚拟机发送的TCP连接请求,并触发所述发送单元32,向所述主虚拟机发送响应消息;所述备份虚拟机位于备份节点上;所述主虚拟机与所述备份虚拟机使用同一个文件系统。
所述接收单元31还用于接收所述主虚拟机发送的目标数据,将所述目标数据存储于对应的缓冲区,并触发所述发送单元32,所述发送单元32还用于向所述主虚拟机发送反馈信息;
所述启动单元33,用于当接收到所述主虚拟机发送的特定报文后,或者是在预设时间内未接收到所述主虚拟机发送的目标数据时,则启动对应的虚拟CPU,代替所述主虚拟机工作。
可选的,还包括还原单元,
所述还原单元,用于将所述缓冲区中的目标数据还原为虚拟内存数据和虚拟设备数据,并将所述虚拟内存数据保存至对应的虚拟内存中,将所述虚拟设备数据保存至对应的虚拟设备中。
可选的,所述发送单元还用于在规定时间内未接收到所述主虚拟机发送的所述目标数据时,则向所述主虚拟机发送获取目标数据的请求;所述规定时间小于所述预设时间。
图3所对应实施例中特征的说明可以参见图1所对应实施例的相关说明,这里不再一一赘述。
由上述技术方案可以看出,在备份节点上设置一个备份虚拟机,该备份虚拟机可以作为主虚拟机的镜像虚拟机,备份虚拟机接收到主虚拟机发送的TCP连接请求后,向所述主虚拟机发送响应消息,实现与主虚拟机的连接。建立连接关系后,主虚拟机可以向备份虚拟机发送目标数据,备份虚拟机接收到主虚拟机发送的目标数据后,可以将目标数据存储于对应的缓冲区,并向所述主虚拟机发送反馈信息;主虚拟机通过发送目标数据的方式,可以实现备份虚拟机和主虚拟机数据的同步。当备份虚拟机接收到所述主虚拟机发送的特定报文后,或者是在预设时间内未接收到所述主虚拟机发送的目标数据时,则说明主虚拟机所在的主节点出现了故障,也即主虚拟机已将无法正常工作,此时备份虚拟机可以启动对应的虚拟CPU,代替所述主虚拟机工作。可见,通过设置备份虚拟机,并且保持备份虚拟机与主虚拟机数据的同步,可以在主节点发生故障时将主虚拟机的进程立即切换到备份节点,由备份虚拟机代替主虚拟机工作,该过程可以达到无缝切换的效果,对虚拟机内服务不会产生影响,实现了虚拟机的高可用。
以上对本发明实施例所提供的一种基于KVM虚拟化的虚拟机高可用的方法与装置进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

Claims (6)

1.一种基于KVM虚拟化的虚拟机高可用的方法,其特征在于,包括:
备份虚拟机接收到主虚拟机发送的TCP连接请求后,向所述主虚拟机发送响应消息;所述备份虚拟机位于备份节点上;所述主虚拟机与所述备份虚拟机使用同一个文件系统;
所述备份虚拟机接收到所述主虚拟机发送的目标数据后,将所述目标数据存储于对应的缓冲区,并向所述主虚拟机发送反馈信息;
所述备份虚拟机接收到所述主虚拟机发送的特定报文后,或者是在预设时间内未接收到所述主虚拟机发送的目标数据时,则启动对应的虚拟CPU,代替所述主虚拟机工作。
2.根据权利要求1所述的方法,其特征在于,在所述将所述目标数据存储于对应的缓冲之后,还包括:
将所述缓冲区中的目标数据还原为虚拟内存数据和虚拟设备数据,并将所述虚拟内存数据保存至对应的虚拟内存中,将所述虚拟设备数据保存至对应的虚拟设备中。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
在规定时间内未接收到所述主虚拟机发送的所述目标数据时,则向所述主虚拟机发送获取目标数据的请求;所述规定时间小于所述预设时间。
4.一种基于KVM虚拟化的虚拟机高可用的装置,其特征在于,包括接收单元、发送单元和启动单元,
所述接收单元,用于接收主虚拟机发送的TCP连接请求,并触发所述发送单元,向所述主虚拟机发送响应消息;所述备份虚拟机位于备份节点上;所述主虚拟机与所述备份虚拟机使用同一个文件系统;
所述接收单元还用于接收所述主虚拟机发送的目标数据,将所述目标数据存储于对应的缓冲区,并触发所述发送单元,所述发送单元还用于向所述主虚拟机发送反馈信息;
所述启动单元,用于当接收到所述主虚拟机发送的特定报文后,或者是在预设时间内未接收到所述主虚拟机发送的目标数据时,则启动对应的虚拟CPU,代替所述主虚拟机工作。
5.根据权利要求4所述的装置,其特征在于,还包括还原单元,
所述还原单元,用于将所述缓冲区中的目标数据还原为虚拟内存数据和虚拟设备数据,并将所述虚拟内存数据保存至对应的虚拟内存中,将所述虚拟设备数据保存至对应的虚拟设备中。
6.根据权利要求4或5所述的装置,其特征在于,所述发送单元还用于在规定时间内未接收到所述主虚拟机发送的所述目标数据时,则向所述主虚拟机发送获取目标数据的请求;所述规定时间小于所述预设时间。
CN201710485767.1A 2017-06-23 2017-06-23 一种基于kvm虚拟化的虚拟机高可用的方法与装置 Pending CN107203443A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710485767.1A CN107203443A (zh) 2017-06-23 2017-06-23 一种基于kvm虚拟化的虚拟机高可用的方法与装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710485767.1A CN107203443A (zh) 2017-06-23 2017-06-23 一种基于kvm虚拟化的虚拟机高可用的方法与装置

Publications (1)

Publication Number Publication Date
CN107203443A true CN107203443A (zh) 2017-09-26

Family

ID=59907989

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710485767.1A Pending CN107203443A (zh) 2017-06-23 2017-06-23 一种基于kvm虚拟化的虚拟机高可用的方法与装置

Country Status (1)

Country Link
CN (1) CN107203443A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108469996A (zh) * 2018-03-13 2018-08-31 山东超越数控电子股份有限公司 一种基于自动快照的系统高可用方法
CN109842685A (zh) * 2019-02-14 2019-06-04 视联动力信息技术股份有限公司 一种数据同步方法和装置
CN110308974A (zh) * 2019-07-11 2019-10-08 联想(北京)有限公司 一种数据处理方法、虚拟机装置及虚拟机架构
CN110661599A (zh) * 2018-06-28 2020-01-07 中兴通讯股份有限公司 一种主、备节点间的ha实现方法、装置及存储介质
CN110874292A (zh) * 2018-08-29 2020-03-10 中车株洲电力机车研究所有限公司 一种冗余显示系统
CN112131042A (zh) * 2020-08-19 2020-12-25 中安浩瑞科技有限公司 一种容灾备份处理方法、系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120198440A1 (en) * 2011-01-27 2012-08-02 Amit Shah Mechanism for Communication in a Virtualization System Via Multiple Generic Channels of a Paravirtualized Device
CN104536842A (zh) * 2014-12-17 2015-04-22 中电科华云信息技术有限公司 基于kvm虚拟化的虚拟机容错方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120198440A1 (en) * 2011-01-27 2012-08-02 Amit Shah Mechanism for Communication in a Virtualization System Via Multiple Generic Channels of a Paravirtualized Device
CN104536842A (zh) * 2014-12-17 2015-04-22 中电科华云信息技术有限公司 基于kvm虚拟化的虚拟机容错方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
尹朝庆: "《计算机系统结构》", 31 March 2000, 华中理工大学出版社 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108469996A (zh) * 2018-03-13 2018-08-31 山东超越数控电子股份有限公司 一种基于自动快照的系统高可用方法
CN110661599A (zh) * 2018-06-28 2020-01-07 中兴通讯股份有限公司 一种主、备节点间的ha实现方法、装置及存储介质
CN110874292A (zh) * 2018-08-29 2020-03-10 中车株洲电力机车研究所有限公司 一种冗余显示系统
CN109842685A (zh) * 2019-02-14 2019-06-04 视联动力信息技术股份有限公司 一种数据同步方法和装置
CN110308974A (zh) * 2019-07-11 2019-10-08 联想(北京)有限公司 一种数据处理方法、虚拟机装置及虚拟机架构
CN112131042A (zh) * 2020-08-19 2020-12-25 中安浩瑞科技有限公司 一种容灾备份处理方法、系统

Similar Documents

Publication Publication Date Title
CN107203443A (zh) 一种基于kvm虚拟化的虚拟机高可用的方法与装置
US7533178B2 (en) Resuming a computing session when rebooting a computing device
JP3932994B2 (ja) サーバ引継システムおよびその方法
WO2021121370A1 (zh) 用于消息队列的消息丢失检测方法和装置
US10798199B2 (en) Network traffic accelerator
EP3114799B1 (en) Method and system for seamless sctp-server failover between sctp servers running on different machines
US20170331884A1 (en) State Replication of Virtual Network Function Instances
CN110377570B (zh) 节点切换方法、装置、计算机设备及存储介质
US20060294241A1 (en) Preserving sessions in a wireless network
EP3336695B1 (en) Method and device for reloading system service
WO2017215441A1 (zh) 一种分布式系统中单板配置自恢复方法及装置
CN102171995A (zh) 服务器故障时的报文处理方法及路由器
WO2021128927A1 (zh) 报文的处理方法及装置、存储介质和电子装置
US20210326211A1 (en) Data backup method, apparatus, and system
WO2016095344A1 (zh) 链路切换方法、装置及线卡
CN109525542A (zh) 数据恢复方法、发送/接收装置和计算机可读存储介质
CN106101297B (zh) 一种报文应答方法及装置
EP3605954B1 (en) State detection of netconf session
CN113315665A (zh) 一种双网卡终端设备的报文发送方法、装置、设备及介质
CN106941418B (zh) Ssl vpn配置信息的同步方法和装置
CN107819708A (zh) 基于虚拟机迁移的数据处理方法、系统及设备
US20220217093A1 (en) Sequence Number Synchronization Method and Apparatus
CN109450702A (zh) 一种数据处理方法及装置
CN112612670B (zh) 一种会话信息统计方法、装置、交换设备及存储介质
CN111953742B (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170926