一种基于VMwareSDKs备份还原ESXi虚拟机的方法技术

技术编号:32643768 阅读:12 留言:0更新日期:2022-03-12 18:21
本发明专利技术公开了一种基于VMware SDKs备份ESXi虚拟机的方法,包括备份和还原,其中,备份包括完整备份;完整备份包括以下步骤:开始步骤S1;虚拟机步骤S2;创建快照步骤S3;信息获取步骤S4;备份步骤S5;清理步骤S6;结束步骤S7。通过本发明专利技术解决了在使用ESXi虚拟机时需要对数据大量备份的问题。同时,还提供了一种ESXi虚拟机数据还原方法,能够在ESXi虚拟机数据被破坏时,通过完整备份、增量备份和差异备份实现的数据备份中,完成数据还原。有效解决了ESXi虚拟机使用时的数据备份、还原问题。还原问题。还原问题。

【技术实现步骤摘要】
一种基于VMware SDKs备份还原ESXi虚拟机的方法


[0001]本专利技术属于计算机备份还原
,具体为一种基于VMware SDKs备份还原ESXi虚拟机的方法。

技术介绍

[0002]随着企业对虚拟主机Exsi的使用,常常会面临虚拟机被破坏后的数据恢复的问题。而数据恢复就依赖与数据备份,所以企业对于虚拟主机Exsi的备份和还原的需求也与日俱增,面对该需求,于是本专利技术提供了一种基于VMware提供的SDK备份还原Exsi虚拟机的方法。

技术实现思路

[0003]本专利技术的目的在于提供一种基于VMware SDKs备份还原ESXi虚拟机的方法,以解决
技术介绍
中提出的现有技术中,在使用虚拟主机Exsi时,面临数据被破坏,不能还原的问题。
[0004]为解决上述技术问题,本专利技术所采用的技术方案是:
[0005]一种基于VMware SDKs备份ESXi虚拟机的方法,包括备份和还原,其中,备份包括完整备份;
[0006]完整备份包括以下步骤:
[0007]开始步骤S1:启动Exsi管理工具;
[0008]虚拟机步骤S2:使用Exsi管理工具连接需要备份的虚拟机的主机Exsi,通过虚拟机名获取到需要备份的虚拟机对象;
[0009]创建快照步骤S3:利用虚拟机对象通过快照事务创建备份快照,并通过返回得到的备份快照的对象,获取和保存虚拟机配置信息VirtualMachineConfigInfo;
[0010]信息获取步骤S4:从获取的VirtualMachineConfigInfo中获取到虚拟机所有的磁盘访问地址,并作为参数通知磁盘读写工具磁盘,完整的数据备份开始;
[0011]备份步骤S5:利用从Esxi管理工具获取到的虚拟机磁盘的访问地址,打开磁盘,通过VDDK提供的VixDiskLib_QueryAllocatedBlocks方法或者通过vSphere Management SDK提供的QueryChangedDiskAreas方法获取该磁盘上所有数据的磁盘偏移以及数据长度,然后通过磁盘工具利用VDDK提供的VixDiskLib_Open和VixDiskLib_Read方法依次访问并读取该磁盘对应偏移位置上的数据,保存到镜像文件中;
[0012]清理步骤S6:磁盘读写工具完成数据备份后,Esxi管理工具将快照删除,减少Exsi存储单元的空间压力;
[0013]结束步骤S7:完整备份结束。
[0014]根据上述技术方案,所述信息获取步骤S4中,磁盘读写工具通过输入Exsi主机的IP地址,与Exsi主机连接。
[0015]根据上述技术方案,所述备份还包括增量备份,在完整备份的基础上实现增量备
份,所述增量备份包括数据获取步骤和备份执行步骤:
[0016]数据获取步骤具体为:从获取的VirtualMachineConfigInfo中获取到虚拟机所有的磁盘访问地址,获取上次完整备份或增量备份点保存的VirtualMachineConfigInfo中的磁盘记录ChangeID,通过vSphere Management SDK提供的QueryChangedDiskAreas方法,将磁盘记录ID作为参数传入QueryChangedDiskAreas方法,查询上次完整或增量备份点至今的增量数据的磁盘偏移和数据长度;最后Esxi管理工具将磁盘访问地址和增量数据信息作为参数通知磁盘读写工具磁盘,增量数据备份开始。
[0017]根据上述技术方案,所述备份执行步骤具体为:磁盘读写工具连接上Exsi主机,利用Esxi管理工具获取到磁盘访问地址依次打开磁盘,已经从Esxi管理工具获取到了上次完整备份或增量备份点至今的增量数据的磁盘片偏移和数据长度后,直接访问并读取该磁盘偏移上的增量数据,保存到增量备份镜像文件当中;同时也将磁盘信息以及增量数据信息保存到增量备份镜像文件当中。
[0018]根据上述技术方案,所述备份还包括差异备份,在完整备份的基础上实现差异备份,所述差异备份包括信息采集步骤和备份还原步骤:
[0019]信息采集步骤具体为:获取上次完整备份点保存的VirtualMachineConfigInfo中的磁盘记录ChangeID,通过vSphere Management SDK提供的QueryChangedDiskAreas方法,将磁盘记录ID作为参数传入QueryChangedDiskAreas方法,查询上次备份点至今的差异数据的磁盘偏移和数据长度;最后Esxi管理工具将磁盘访问地址和差异数据信息作为参数通知磁盘读写工具磁盘,差异数据备份开始。
[0020]根据上述技术方案,所述备份还原步骤具体为:磁盘读写工具连接上Exsi主机,同样时利用Esxi管理工具获取到磁盘访问地址依次打开磁盘磁盘;已经从Esxi管理工具获取到了上次完整备份点至今的差异数据的磁盘偏移和数据长度后,直接访问并读取该磁盘偏移上的差异数据,保存到差异备份镜像文件当中;同时也将磁盘信息以及差异数据信息也保存到差异备份镜像文件当中,以便以后还原该备份点的虚拟机时,将差异数据信息还原到对应磁盘位置上。
[0021]一种基于VMware SDKs还原ESXi虚拟机的方法,包括以下步骤:
[0022]开始步骤C1:启动Exsi管理工具;
[0023]虚拟机连接步骤C2:通过Esxi管理工具连接需要还原的虚拟机的Exsi主机,通过虚拟机名获取到需要备份的虚拟机对象;通过关机事务方法PowerOffVM_Task关闭该虚拟机;然后再利用该虚拟机对象创建虚拟机快照;
[0024]信息获取步骤C3:从需要还原的备份点保存的VirtualMachineConfigInfo获取出虚拟机在该时间点的所有配置信息,重新构造虚拟机配置参数VirtualMachineConfigSpac;完成以上操作后,Esxi管理工具通知磁盘读写工具,数据还原工作开始
[0025]备份步骤C4:启动磁盘读写工具,磁盘读写工具在接到数据还原通知后连接上Exsi主机;获取备份文件当中保存的磁盘信息和数据;打开磁盘,将备份的数据写回到磁盘中;
[0026]清理步骤C5:磁盘读写工具在完成数据恢复后,Esxi管理工具还需要将快照删除,减少Exsi存储单元的空间压力;然后用开机事务PowerOnVM_Task让还原后的虚拟机重新开
机;
[0027]结束步骤C6:还原结束。
[0028]根据上述技术方案,所述备份步骤C4中,获取的备份文件为完整备份时,还原的具体步骤为:磁盘读写工具从该完整备份点的镜像文件当中获取磁盘信息和数据信息;利用磁盘信息里的访问地址,打开磁盘,然后按数据信息里记录的磁盘偏移和数据长度,将该数据还原到该磁盘的对应位置上。
[0029]根据上述技术方案,所述备份步骤C4中,获取的备份文件为增量备份时,还原的具体步骤为:需要优先从该增量备份点所在的备份版本链根部依次向下还原,直到还原到需要还原的增量本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于VMware SDKs备份ESXi虚拟机的方法,其特征在于:包括备份和还原,其中,备份包括完整备份;完整备份包括以下步骤:开始步骤S1:启动Exsi管理工具;虚拟机步骤S2:使用Exsi管理工具连接需要备份的虚拟机的主机Exsi,通过虚拟机名获取到需要备份的虚拟机对象;创建快照步骤S3:利用虚拟机对象通过快照事务创建备份快照,并通过返回得到的备份快照的对象,获取和保存虚拟机配置信息VirtualMachineConfigInfo;信息获取步骤S4:从获取的VirtualMachineConfigInfo中获取到虚拟机所有的磁盘访问地址,并作为参数通知磁盘读写工具磁盘,完整的数据备份开始;备份步骤S5:利用从Esxi管理工具获取到的虚拟机磁盘的访问地址,打开磁盘,通过VDDK提供的VixDiskLib_QueryAl locatedBlocks方法或者通过vSphere Management SDK提供的QueryChangedDi skAreas方法获取该磁盘上所有数据的磁盘偏移以及数据长度,然后通过磁盘工具利用VDDK提供的Vi xDiskLib_Open和VixDiskLib_Read方法依次访问并读取该磁盘对应偏移位置上的数据,保存到镜像文件中;清理步骤S6:磁盘读写工具完成数据备份后,Esxi管理工具将快照删除,减少Exsi存储单元的空间压力;结束步骤S7:完整备份结束。2.根据权利要求1所述的一种基于VMware SDKs备份ESXi虚拟机的方法,其特征在于:所述信息获取步骤S4中,磁盘读写工具通过输入Exsi主机的IP地址,与Exsi主机连接。3.根据权利要求1所述的一种基于VMware SDKs备份ESXi虚拟机的方法,其特征在于:所述备份还包括增量备份,所述增量备份包括数据获取步骤和备份执行步骤:数据获取步骤为:从获取的VirtualMachineConfigInfo中获取到虚拟机所有的磁盘访问地址,获取上次完整备份或增量备份点保存的VirtualMachineConfigInfo中的磁盘记录ChangeID,通过vSphe re Management SDK提供的QueryChangedDiskAreas方法,将磁盘记录ID作为参数传入QueryChanged DiskAreas方法,查询上次完整或增量备份点至今的增量数据的磁盘偏移和数据长度;最后Esxi管理工具将磁盘访问地址和增量数据信息作为参数通知磁盘读写工具磁盘,增量数据备份开始。4.根据权利要求3所述的一种基于VMware SDKs备份ESXi虚拟机的方法,其特征在于:所述备份执行步骤具体为:磁盘读写工具连接上Exsi主机,利用Esxi管理工具获取到磁盘访问地址依次打开磁盘,已经从Esxi管理工具获取到了上次完整或增量备份点至今的增量数据的磁盘偏移和数据长度后,直接访问并读取该磁盘偏移上的增量数据,保存到增量备份镜像文件当中;同时也将磁盘信息以及增量数据信息保存到增量备份镜像文件当中。5.根据权利要求1所述的一种基于VMware SDKs备份ESXi虚拟机的方法,其特征在于:所述备份还包括差异备份,所述差异备份包括信息采集步骤和备份还原步骤:信息采集步骤具体为:获取上次完整备份点保存的Virtua...

【专利技术属性】
技术研发人员:袁翔
申请(专利权)人:成都傲梅科技有限公司
类型:发明
国别省市:

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

1