closed
logo logo
关于我们

技术分享

技术分享 VMware整机备份之路:啥是VADP?

VMware整机备份之路:啥是VADP?

2020-08-04

VADP,即VMware vStorage API for Data Protection的缩写,是VMware从vSphere 4.0开始引入的一个新的虚拟机备份、恢复机制,以取代原先的VCB(VMware Consolidated Backup)。通过使用这项技术,我们不需要在虚拟机内部安装其他软件,便可以将虚拟机统一备份到指定的备份服务器上。


在接下来的文字当中,我将尽可能用简单的语句,把VMware虚拟机整机的备份的一系列技术细节讲述清楚。我会绕开一些无关痛痒的blah blah,直插主题,挑重要的记录。这既是自己对近期工作的一个总结,也希望能为其他对此主题感兴趣的网友提供一些微薄的帮助。


那么到底啥是VADP呢,如果你跑到VMware官网去找相关的API,你可能会扑空,因为你压根找不到一款叫VADP的SDK可供下载。实际上,所谓VADP是由两套SDK组成的,一套叫vSphere Management SDK,而另一套则叫VDDK,全称Virtual Disk Development Kit。前者支持的开发语言为Java和C#,当然网上还有一堆支持其他语言的第三方开发包,什么Perl,Python等等等,我也不会,就不多唠叨了。而VDDK支持的则是C/C++。vSphere Management SDK的功能如其名字所描述的一样,主要是用于管理。通过它,我们可以连接至vCenter或者ESXi,实现对虚拟机,以及其他相关资源(存储、主机、数据中心、资源池等等)的操作和管理。而后者,VDDK的功能就简单得多,就是操作虚拟机的虚拟磁盘,读取数据,写入数据等等。刚接触的时候,就觉得这个设定有一点蛋疼,不明白为啥准备了两套语言完全不同的API,但是既然人家是这么设计的,那我们就得这样用,谁让人家是业界老大呢。


VMware虚拟机备份的一个关键技术,就是增量备份。举个栗子,我有一台虚拟机,它有一块500GB的虚拟磁盘需要备份,那我们应该怎么做呢?我们是直接简单粗暴地把这500GB的数据复制下来吗?累不死你……首先我们应该做的,是把被文件系统使用的扇区备份下来。500GB的磁盘,如果文件系统只使用了其中100GB的空间,那我们就只备份这100GB,岂不是省力许多?OK,那这是第一步,接下来这台虚拟机跑了一段时间的业务,我们又需要对其做第二次备份,此时又该如何呢?当然也不可能再去把所有的扇区读一遍,在过去的一段时间里面,操作系统只变更了其中一部分扇区的数据,那我们只需要把这些变更了的扇区复制下来就可以了。假如,首次备份的时候,我们备份了[0, 1024]扇区之间的数据,而一段时间后,操作系统只变更了[512,1024]扇区间的数据,那第二次备份的时候,我们只需要复制[512,1024]间的数据即可。


这样做,既可以节省备份存储的空间,又可以减轻数据传输的压力。而这一切,都需要CBT技术的支持。CBT,全称Changed Block Tracking,通过它,我们可以轻松跟踪、比对、识别虚拟磁盘上自前一次备份以来被修改的区块,实现数据的增量备份。默认情况下,虚拟机的CBT功能是被禁用的,因为它会在一定程度上影响虚拟机的性能。如果我们需要实现对虚拟机的增量备份,就需要通过vSphere SDK来开启它。具体细节以后再说。


讲到这里,先简单总结一下,所谓的VADP,就是利用vSphere Management SDK和VDDK两套API,实现对虚拟机数据的增量备份。前者主要用于操作vCenter管理的各类对象,而后者主要用于读写虚拟磁盘数据。前者负责做一系列准备工作,例如开启CBT,获取虚拟机磁盘信息,读取数据增量,然后交给后者,接着要么把数据备份下来,要么把之前备份的数据恢复上去。Voila!


先写到这里。




云祺备份软件,云祺容灾备份系统,虚拟机备份,数据库备份,文件备份,实时备份,勒索软件,美国,图书馆
  • 标签:
  • 容灾备份

您可能感兴趣的新闻 换一批

现在下载,可享30天免费试用

立即下载

请添加好友为您提供支持
jia7jia_7

请拨打电话
为您提供支持

400-9955-698