一种虚拟机磁盘数据块同步方法技术

技术编号:14786049 阅读:102 留言:0更新日期:2017-03-11 00:06
本发明专利技术公开了一种虚拟机磁盘数据块同步方法,包括如下具体步骤:虚拟机被定义为高可用模式时,虚拟化管理平台会在不同主机上生成两个配置完全一致的虚拟机,其中一台为primary,一台为secondary;虚拟机在启动过程中,标识为primary的虚拟机处于running状态,标识为secondary的虚拟机处于paused状态,等待数据同步;心跳系统网络侦测隶属在不同主机上的虚拟机运行状态,若primary失效,通知虚拟化管理平台及时将primary降级为secondary,并启用secondary为primary继续对外提供服务;本发明专利技术具有如下优点:仅须修改虚拟化(Hypervisor)平台的block层;能够支持所有虚拟化(Hypervisor)平台支持的操作系统。

【技术实现步骤摘要】

本专利技术属于计算机
,更具体地说,尤其涉及一种虚拟机磁盘数据块同步方法
技术介绍
随着基于标准x86平台的虚拟化应用广泛普及,对于虚拟化的高可用(HA)方案的需求强烈,当前主流的解决方案是基于传统的共享存储方案而来,如采用存储区域网络(SAN)、网络附加存储(NAS)、分布式文件存储系统等。然而对于中小企业或一般性能要求的关键应用场合,这种方案存在明显不足。具体问题如下:1.SAN/NAS存储系统成本太高、关键设备如光纤交换机、HBA板卡完全依赖进口。系统安装调试与日常维护复杂。2.分布式文件系统从概念逻辑上就非常复杂,不同的分布式文件系统概念、算法、架构都有所不同,仅有少数的专业技术人才才能掌握;优点是扩展非常容易,成本低,适合互联网领域、大型企业、政府等大规模数据中心等应用场合。缺点系统结构复杂、物理部署拓扑结构复杂、需要更多的主机、交换机、专用网络。系统异常难以排查,维护工程师要求非常专业,由于开源的分布式存储软件系统达不到商业应用的稳定性,因此需要一定的定制开发才能满足企业需求,不适合中小企业关键应用场合。基于当前市场上常见的共享存储系统和分布式存储系统的应用局限性,本专利技术提供一种基于虚拟化(Hypervisor)平台的虚拟机磁盘数据块同步方法(简称“虚拟数据块同步vBlockSync”),特别适合于中小企业的关键应用场合。
技术实现思路
本专利技术的目的是为了解决现有技术中存在的缺点,而提出的一种虚拟机磁盘数据块同步方法。为实现上述目的,本专利技术提供如下技术方案:一种虚拟机磁盘数据块同步方法,包括如下具体步骤:S1、虚拟机被定义为高可用模式时,虚拟化管理平台会在不同主机上生成两个配置完全一致的虚拟机,其中一台为primary,一台为secondary;虚拟机在启动过程中,标识为primary的虚拟机处于running状态,标识为secondary的虚拟机处于paused状态,等待数据同步;S2、心跳系统网络侦测隶属在不同主机上的虚拟机运行状态,若primary失效,通知虚拟化管理平台及时将primary降级为secondary,并启用secondary为primary继续对外提供服务;S3、虚拟化管理平台启动虚拟机时,首先运行SyncSuit同步组件,SyncSuit同步组件在虚拟机整个运行周期中处于运行状态。S4、经过SyncSuit同步组件的静态同步模块、delta同步模块、动态同步模块同步后,虚拟化磁盘数据完全一致。优选的,所述SyncSuit同步组件,包括:组件初始化层,负责设置SyncSuit同步组件的初始化所需参数设置、缓存区建立、初始化各功能模块,若虚拟机为Primary,则建立tcp侦听端口,若为secondary则建立到Primary的同步tcp链接;同步策略层,根据secondary虚拟机的虚拟化磁盘状态调用不同的功能模块执行对应同步功能模块;功能模块层,所述功能模块层包括静态同步模块、delta同步模块、动态同步模块、读同步模块;网络传输层,负责数据的网络传输,同时提中断检测、中断重连,使用tcp协议。优选的,所述静态同步模块在虚拟机启动前,基于虚拟机配置文件,使用rsync同步所有虚拟化磁盘,同步虚拟化磁盘时rsync软件需要启用checksum参数检查。优选的,所述delta同步模块在模块初始时为每个虚拟化磁盘生成bitmap数据文件,每个bit表示512Byte磁盘块,初始所有bit位值为’0’,若有’write’操作则置’1’;考虑效率问题,建议支持单块虚拟化磁盘容量不超过2T。优选的,所述动态同步模块为primary虚拟机在写数据到磁盘时,Hypervisor同步插件先将数据块写入本地并更新bitmap文件数据,再发送给secondary虚拟机;若secondary写入失败,则意味着磁盘数据不一致,同步策略层须执行delta同步模块。优选的,所述读同步模块:primary在读磁盘数据时,SyncSuit同步组件先读取primary数据并生成checksum,SyncSuit同步插件获取secondary的对应数据块的checksum,若不匹配,则需要执行静态同步模块后再执行动态同步模块。本专利技术的技术效果和优点:本专利技术具有如下优点:1、仅须修改虚拟化(Hypervisor)平台的block层;2、能够支持所有虚拟化(Hypervisor)平台支持的操作系统;3、配置、维护简单。本专利技术须修改Hypervisor(qemu)的Block层,加入SyncSuit同步组件;本专利技术须使用开源的rsync软件(配置为daemon模式)作为静态虚拟化磁盘同步工具。附图说明图1为本专利技术的虚拟化管理平台拓扑结构图;图2为本专利技术的SyncSuit同步组件架构图;图3为本专利技术的静态磁盘同步流程图;图4为本专利技术的虚拟化磁盘的bitmap图图5为本专利技术的动态同步流程图;图6为本专利技术的delta同步流程图;图7为本专利技术的读同步流程图;具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合具体实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提供如图1所示的一种虚拟机磁盘数据块同步方法,包括如下具体步骤:S1、虚拟机被定义为高可用模式时,虚拟化管理平台会在不同主机上生成两个配置完全一致的虚拟机,其中一台为primary,一台为secondary;虚拟机在启动过程中,标识为primary的虚拟机处于running状态,标识为secondary的虚拟机处于paused状态,等待数据同步;S2、心跳系统网络侦测隶属在不同主机上的虚拟机运行状态,若primary失效,通知虚拟化管理平台及时将primary降级为secondary,并启用secondary为primary继续对外提供服务;S3、虚拟化管理平台启动虚拟机时,首先运行SyncSuit同步组件,SyncSuit同步组件在虚拟机整个运行周期中处于运行状态。S4、经过SyncSuit同步组件的静态同步模块、delta同步模块、动态同步模块同步后,虚拟化磁盘数据完全一致。本专利技术提供如图2所示的同步组件架构图,所述SyncSuit同步组件包括:组件初始化层,负责设置SyncSuit同步组件的初始化所需参数设置、缓存区建立、初始化各功能模块,若虚拟机为Primary,则建立tcp侦听端口,若为secondary则建立到Primary的同步tcp链接;同步策略层,根据secondary虚拟机的虚拟化磁盘状态调用不同的功能模块执行对应同步功能模块;功能模块层,所述功能模块层包括静态同步模块、delta同步模块、动态同步模块、读同步模块;网络传输层,负责数据的网络传输,同时提供中断检测、中断重连,使用tcp协议。如图3所示,所述静态同步模块在虚拟机启动前,基于虚拟机配置文件,使用rsync同步所有虚拟化磁盘,同步虚拟化磁盘时rsync软件需要启用checksum参数检查。如图4-5所示,所述delta同步模块在模块初始时为每个虚拟化磁盘生成bitmap数本文档来自技高网...
一种虚拟机磁盘数据块同步方法

【技术保护点】
一种虚拟机磁盘数据块同步方法,其特征在于,包括如下具体步骤:S1、虚拟机被定义为高可用模式时,虚拟化管理平台会在不同主机上生成两个配置完全一致的虚拟机,其中一台为primary,一台为secondary;虚拟机在启动过程中,标识为primary的虚拟机处于running状态,标识为secondary的虚拟机处于paused状态,等待数据同步;S2、心跳系统网络侦测隶属在不同主机上的虚拟机运行状态,若primary失效,通知虚拟化管理平台及时将primary降级为secondary,并启用secondary为primary继续对外提供服务;S3、虚拟化管理平台启动虚拟机时,首先运行SyncSuit同步组件,SyncSuit同步组件在虚拟机整个运行周期中处于运行状态;S4、经过SyncSuit同步组件的静态同步模块、delta同步模块、动态同步模块同步后,虚拟化磁盘数据完全一致。

【技术特征摘要】
1.一种虚拟机磁盘数据块同步方法,其特征在于,包括如下具体步骤:S1、虚拟机被定义为高可用模式时,虚拟化管理平台会在不同主机上生成两个配置完全一致的虚拟机,其中一台为primary,一台为secondary;虚拟机在启动过程中,标识为primary的虚拟机处于running状态,标识为secondary的虚拟机处于paused状态,等待数据同步;S2、心跳系统网络侦测隶属在不同主机上的虚拟机运行状态,若primary失效,通知虚拟化管理平台及时将primary降级为secondary,并启用secondary为primary继续对外提供服务;S3、虚拟化管理平台启动虚拟机时,首先运行SyncSuit同步组件,SyncSuit同步组件在虚拟机整个运行周期中处于运行状态;S4、经过SyncSuit同步组件的静态同步模块、delta同步模块、动态同步模块同步后,虚拟化磁盘数据完全一致。2.根据权利要求1所述的一种虚拟机磁盘数据块同步方法,其特征在于:所述SyncSuit同步组件,包括:组件初始化层,负责设置SyncSuit同步组件的初始化所需参数设置、缓存区建立、初始化各功能模块,若虚拟机为Primary,则建立tcp侦听端口,若为secondary则建立到Primary的同步tcp链接;同步策略层,根据secondary虚拟机的虚拟化磁盘状态调用不同的功能模块执行对应同步功能模块;功能模块层,所述功能模块层包括...

【专利技术属性】
技术研发人员:杜志军钟豪陈晖
申请(专利权)人:上海泓戟信息科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1