http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1020128

CBT 简介

CBT (changed block tracking)是Vmware的一个feature,作用于vm的incremental 备份。 VDP就是使用了这项技术,同时它也可以被其他开发人员应用在备份还原软件中。

详解

在ESX/ESXi 主机上运行的虚拟机可以跟踪那些改变的磁盘扇区,这个feature就是Changed Block Tracking(CBT)。在许多文件系统中,CBT通过两个改变的ID集来确认改变的磁盘扇区。,在VMFS中,CBT同样可以识别所有正在使用的磁盘扇区。

虚拟磁盘块变化被外部的虚拟机跟踪,在虚拟层。当软件进行备份时,它可以请求传输那些从上次备份以来改变的磁盘块,或者那些正在使用的磁盘块。 CBT feature可以做为面向数据保护的Vsphere API(VADP)的一部分被第三方应用程序访问进行。应用程序调用VADP请求Vmkernel 返回那些自上次备份快照后改变的数据块。

硬件软件要求:

为了使CBT能够识别已经改变的数据磁盘,下面的要求应被满足:

1 注意必须是ESX/ESXi 4.0以及更高版本

2 拥有被跟踪的磁盘的虚拟机 硬件版本为7或更高

3 I/O操作都必须经过ESX/ESXi堆栈,因此要支持NFS,因为RDM是虚拟兼容模式,不是物理兼容模式。FMFS需要支持,无论是通过SAN、iSCSI,或者本地磁盘

4 虚拟机的CBT必须enable。

5 虚拟机存储一定不能使独立磁盘(永久的或者不永久的),独立磁盘以为战不收snapshot影响。

CBT识别change id 有*的磁盘扇区时,则需要以下:

1 虚拟磁盘必须安装在VMFS Volume上,通过SAN,iSCSI或者本地磁盘支持的均可;

2 当CBT enable时,虚拟机必须有一个具有零(0)的快照

在一些情形下,比如虚拟机运行时遭遇店里故障或者强制关机,CBT会重置和失去对增量变化的追踪。在Vsphere 4.1以及之前的版本中,cold migration(不是storage vMotion)会导致CBT重置,但是不会disable。 在vSphere5.x,Storge vMotion 会重置CBT。

检查虚拟磁盘是否enable CBT:

打开vSphere client,选择一个关机的虚拟机:

点击Edit Settings ->Options ->Advanced/general –> Configuration Parameters. -> Add Row,填写ctkEnable,设值为true。

Note:当值为 false时就disable CBT。

对每一个虚拟磁盘,添加

scsix:x.ctkEnable = “True”

对于每个虚拟磁盘和快照磁盘,都有.ctkfile,例如

Vmname.vmdk

Vmname-flat.vmdk

Vmname-ctk.vmdk

Vmname-000001.vmdk

Vmname-000001-delta.vmdk

Vmname-000001-ctk.vmdk

04-26 05:01