Skip to main content

Veeam v11版本里面最重要的一项技术功能更新是CDP,它有以下特点:

无需虚拟机快照 — Veeam CDP通过VMware认证的I/O驱动程序直接在数据路径中捕捉所有读写I/O,无需像Replication作业一样创建VM虚拟机快照。借助I/O级跟踪,只有实际更改的数据会被发送到灾难恢复站点。

无工作负载或硬件依赖性 — 保护在VMware 虚拟机内运行的任何操作系统和应用程序。与基于硬件级的复制技术不同,Veeam CDP能够跨非同类型的存储阵、超融合存储解决方案甚至在本地vSphere ESXi存储运行,且不受距离限制。

灵活保留 — 短期保留Short-term retention允许将VM虚拟机恢复到几秒或几分钟前的状态(取决于指定的RPO),最多可以保留24 小时。长期保留Long-term retention允许创建额外的还原点用于将VM虚拟机恢复到较早的状态(如24小时之前),并可以设置Application-consistent应用一致性保护。

灵活部署模式 — 根据受保护的VM虚拟机数量,可以灵活选择虚拟机、甚至是物理机充当 CDP Proxy,以便从VMware 主机上分流所有复制数据处理的开销,从而消除对虚拟机整合率的影响。无论是哪种情形下,使用多个CDP Proxy可提供冗余并提高可扩展性。

部署助手 — 内置的部署计算器可查看在CDP策略中选择用于保护的VM虚拟机的历史I/O,以估计实现指定RPO所需的带宽,并评估当前可用的CDP代理资源是否足以适应历史变化率,从而消除复制时网络的不确定性。

 

1、Veeam CDP要求和限制

Veeam CDP有以下要求和限制,请严格遵守:

要求:

  • CDP功能包含在Veeam VUL许可中,但使用基于CPU授权的旧许可证时,需要Enterprise Plus版本。

  • CDP功能只支持VMware to VMware,且VMware 软件必须是标准版或更高版本,不支持Essentials版本。

  • VMware 版本最低要求为6.5 U2,且必须要有VC和Cluster的环境,不支持独立的ESXi主机。

  • 同一个Cluster中的所有ESXi主机必须具有相同的大版本:7.x或6.x(如:支持6.5或6.7、或6.5和6.7的组合,不支持7.0和6.7、或7.0和6.5的组合),复制时可以跨版本,如:6.x to 7.x、或7.x to 6.x。

  • 在CDP策略首次启动时,计划保护的VM虚拟机不能有快照。但是,在CDP策略成功创建第一个还原点后,可以创建快照。这意味着还可以备份受CDP保护的 VM虚拟机。

  • 在初始同步期间,VBR需要为具有厚配置磁盘的VM虚拟机分配双倍空间。初始同步完成后,VBR会为此VM虚拟机释放一半的已分配空间。这是支持保护新添加到原始VM虚拟机的磁盘所需的机制的一部分。

  • CDP所需的基础设施组件之间的网络必须至少为1Gbps,建议使用10Gbps 或更快的速度和修改对应的MTU值为9000。

  • 如果在VMware站点上启用VM虚拟机加密,请确保在默认加密属性存储策略组件中将加密前允许 I/O 过滤器参数设置为True。

  • 源ESXi主机和目标ESXi主机,以及VBR服务器,都至少需要16GB RAM。

  • VBR Server、CDP Proxy Server、VC和ESXi主机必须能够相互解析DNS名称。

限制:

  • CDP仅适用于已启动的VM虚拟机,即源虚拟机需要是开机状态,并且这台VM虚拟机只能由一条CDP策略处理。

  • 一个VM虚拟机已经由CDP策略执行复制时,还可以继续对该虚拟机执行备份,但复制后的VM虚拟机不支持备份。

  • 复制后的VM虚拟机只能使用Veeam故障转移操作启动,VC上的手工开机操作被禁用。

  • 在目标端ESXi主机上,VBR不允许使用VMware Storage vMotion迁移虚拟机副本,但是支持主机vMotion。

  • 不支持共享磁盘、物理RDM和SCSI总线共享。请注意,支持vRDM磁盘。

  • 一台源VM虚拟机支持的最大磁盘数为50,一台源ESXi主机的最大磁盘数为500。

  • 数据加密规则不适用于ESXi主机和VMware CDP Proxy之间的流量。

  • 不支持将Cisco HyperFlex作为源或目标,不支持VMware Cloud on AWS。

​​

2、测试环境

本次的测试环境是VMware vSphere 7.0.1 , Veeam v11 11.0.0.837 P20210507版本。

如下图测试架构图所示:实现对VC:10.10.1.198所在的Workload-Cluster上的源ESXi主机:10.10.1.100中的一台名为Oracle的源虚拟机,使用Veeam CDP技术,复制到VC:10.10.3.198所在的DR-Cluster上的目标ESXi主机:10.10.3.100上,目标虚拟机名称名为Oracle_CDP。

其中:VBR Server随意部署,只需要与两个VC正常通讯即可,并要求有足够的权限。CDPProxy01与Oracle虚拟机均部署在ESXi:10.10.1.100上;CDPProxy02则部署在ESXi:10.10.3.100上。本次测试使用的传输网络,可以理解成“万兆内网”。😄

RMjswn.png

​​

3、增加DNS解析

于前面章节“Veeam CDP要求和限制”提到的,请在准备安装、配置Veeam CDP之前,先做好VC、ESXi、VBR Server、CDP Proxy Server的DNS解析!DNS解析!DNS解析!(最重要的事情说三遍)😄

如果现有VMware环境正在使用DNS服务,则把VBR Server、CDP Proxy Server增加到DNS解析记录即可。否则请手工增加VC、ESXi、VBR Server、CDP Proxy Server之间的Hosts解析,不然在接下来的添加 CDP I/O filter时,会发生千奇百怪、莫名其妙的报错。

VC、ESXi的Hosts解析文件是:/etc/hosts,VBR Server、CDP Proxy Server的Hosts解析文件是:C:\Windows\System32\drivers\etc\hosts。

示例如下:

###Veeam10.10.1.201     SEDEMOVBRGA10.10.1.36      CDPProxy0110.10.3.36      CDPProxy02​###VMware10.10.1.198     vCenter0110.10.1.100     ESXi0110.10.3.198     vCenter0210.10.3.100     ESXi02​

​​

4、添加CDP I/O filters

VBR v11的安装、配置过程忽略,以下只介绍与CDP相关的内容。

请注意:ESXi Server必须位于Cluster之下,才能推送CDP I/O filter;另外,不能指定ESXi Server推送CDP I/O filter,即:Cluster下面的所有ESXi主机都会被推送CDP I/O filter。

选中需要安装CDP I/O filter的Cluster,右键后选择Install I/O filter。

https://

点击Yes,开始安装I/O filter。

KACVWB.jpg

点击Close,确保安装成功。

acw4Ve.jpg

点击Details,检查安装状态。

10Oud6.jpg

yOCZRi.jpg

也可以在VC管理界面上,检查ESXi主机上veecdp I/O filters的安装情况。

NBui5E.jpg

请注意:如果ESXi主机上已经安装其他厂商的CDP I/O filters,强烈建议先卸载原有的CDP I/O filters,再安装Veeam CDP I/O filters,否则可能会有冲突。或者使用全新的ESXi环境来测试Veeam CDP。

继续在其他Cluster上执行相同的安装CDP I/O filters的操作,如:对Workload-Cluster安装CDP I/O filters。

RpaFf3.jpg

​​

5、添加 VMware CDP Proxy Server

请注意:CDP Proxy Server必须是Windows系统,暂不支持Linux系统;且最好不建议与原有的VMware Backup Proxy一起使用,即不建议在VMware Backup Proxy上推送CDP Proxy Server组件。

点击Add VMware CDP proxy。

jiP8Pa.jpg

点击Add New,开始添加Windows Server向导。

请注意:CDP Proxy Server需要一些端口进行通讯。

关于CDP Proxy Server端口的更多介绍,请参阅以下网址: https://helpcenter.veeam.com/docs/backup/vsphere/used_ports.html?ver=110#cdp-connections

ygp7RC.jpg

点击Next,输入名称。

IoTpIl.jpg

在Credentials选项里,点击Add 添加凭证。

MQWDNB.jpg

DhegbL.jpg

Veeam Transport组件将被推送安装,点击Apply,完成添加Windows Server向导。

jH6wfe.jpg

NoTpTk.jpg

cQEljl.jpg

点击上图的Finish后,回到添加CDP Proxy向导。

pexwF8.jpg

在Cache选项里,指定CDP Cache路径。

请注意推荐值:为每台源虚拟机上的每块VM磁盘分配10GB可用空间。

0feJjd.jpg

数据加密规则不适用于ESXi主机和VMware CDP Proxy之间的流量。

w1zCiK.jpg

点击Apply,开始往CDPProxy01上推送Veeam CDP组件。

T5JI0o.jpg

点击Next,确保推送成功。

lxvogP.jpg

点击Finish,完成添加CDP Proxy向导。

QBA8X0.jpg

继续使用相同配置方法在CDPProxy02上执行操作,并确保成功添加。

ga6jQK.jpg

​​

6、 添加CDP Policy并运行

点击CDP Policy,开始添加向导。

lj5AQT.jpg

在Name选项里,输入CDP Policy名称。

请注意:CDP与Replication的向导操作过程很相似。原有的:Replica seeding、Network remapping、Replica re-IP都适用于CDP策略。

QxVzYN.jpg

在Virtual Machines选项里,点击Add,选择做CDP保护的源虚拟机。可以通过多种方式添加虚拟机,比较简便的方式是使用VMware Tag。

fK5saP.jpg

在Destination选项里,选择目标端的Host或者Cluster、Resource pool、VM folder、Datastore。

请注意:通过CDP复制到目标端后的虚拟机,是会直接注册到目标端VC上的,即:目标端VC是可以正常查看到CDP复制过来的虚拟机。所以如果复制虚拟机数量比较多时,会对VC日常管理运维工作带来困扰。建议使用专用的VM folder来存放CDP复制虚拟机,并对这个VM folder设定相关的VC帐号、权限即可。

aSWjms.jpg

在Policy Settings选项里,选择合适的Source proxy、Target proxy、指定复制虚拟机的后缀名称(目的是容易识别),并可以点击Test,计算出CDP Proxy的计算资源的Sizing结果,以供参考。

mEkZzq.jpg

KtdomF.jpg

在Schedule选项里,输入需要设置的RPO值、Short-term retention值、Long-term retention值。

06ybAr.jpg

在Schedule选项里,可以设置CDP策略的允许执行时间、禁止执行时间。

06AhJt.jpg

在Reporting选项里,可以设置Warning或Error的报告阈值。

CKwyij.jpg

在Short-term retention选项里,可以设置合适的point-in-time值。如下图举例所示:是指可以在2小时内拉起任意时间点(point-in-time)的目标端虚拟机。

JHsADs.jpg

在Long-term retention选项里,可以设置合适的restore point值。如下图举例所示:是指每24小时对目标端虚拟机生成一个快照还原点,该还原点保留7天。

YpZXUp.jpg

点击Schedule,可以设置Long-term retention的运行时间段。其中:Application-consistent应用一致性保护是可以确保目标端虚拟机的应用是受一致性保护,而Carsh-sonsistent系统一致性保护只是确保系统受一致性保护。

简单理解就是:目标端虚拟机Oracle_CDP,如果只是执行了Carsh-sonsistent系统一致性保护,那么在进行虚拟机切换后,是可以保证虚拟机系统是可以启动、运行,但不确保数据库、应用能正常启动;但是如果需要目标端虚拟机Oracle_CDP上面运行的Oracle数据库也要正常启动、运行,则就需要Application-consistent应用一致性保护。

LnjnuU.jpg

所以如果需要Application-consistent应用一致性保护,则需要在Guest Processing选项上,勾选Enable application-aware processing。

再次提醒:只有勾选使用Enable application-aware processing,才能确保对受保护的虚拟机执行Application-consistent应用一致性的保护。

q2eGWX.jpg

点击Add,选择合适的oracle帐号。

请注意:这里是选择oracle数据库帐号,不是root系统帐号。

Rnytyf.jpg

关于添加Oracle帐号权限的更多介绍,请参阅以下网址: https://helpcenter.veeam.com/docs/backup/vsphere/required_permissions.html?ver=110#rptcb

需要把Oracle帐号提权。

jcwIz0.jpg

如果没有事先配置好sudores file,则需要使用su方式提权,此时需要输入root用户密码。

r7mXzC.jpg

点击Test Now,可以提前验证网络通讯、帐号权限等。

OwW6B4.jpg

确保验证成功。

ERce1q.jpg

点击Apply,

ehyD9y.jpg

勾选Enable the policy when I click Finish,可以立即启动CDP策略。

uN7idg.jpg

开始执行首次的Initial sync传输,请耐心等待Initial sync传输完成。😄

wp9cKS.jpg

Initial sync传输完成后,进入Syncing状态,开始执行增量复制。

GZJ5b5.jpg

如果需要暂停CDP复制策略,Veeam不提供Pause按键,只提供Disable按键。😄

r7zQGb.jpg

也不提供Enable按键,只需要再次点击Disable即可。

Hu5QoB.jpg

CDP复制策略将继续欢快地执行增量复制。😄

wr9RMO.jpg

​​

7、 切换和回迁

7.1、Failover 切换

 

本次测试旨在展示CDP复制功能,并未对Oracle数据库进行读写操作,有兴趣可以自行测试。😄

 

Failover切换是指把目标端虚拟机Oracle_CDP开机起来,它的主要使用场景是:计划内的停机切换用于业务测试、容灾演练,非计划内的停机用于接管生产。

如果是用于业务测试、容灾演练时,则建议手工关机源虚拟机,然后再进行切换测试、演练。这样好处是确保CDP复制时的数据一致性。如果是非计划内的停机,那就直接Failover切换吧。

请注意:如果源虚拟机Oracle还在开机状态,Failover切换时是不会执行源虚拟机关机的,只会对目标端虚拟机Oracle_CDP执行开机。另外,执行完Failover切换后,原有CDP策略会自动停止复制。

点击VBR主界面的Ready,找到已经做过CDP复制的虚拟机。

RKG7B4.png

右键虚拟机后,点击Failover now,开始切换。

RKGxgK.png

开始进入切换向导。点击Point,选择指定的还原点时间、还原项。

RKJev8.png

在Restore Points选项里,选择合适的还原项。其中:

Restore to the latest crash-consistent state(least data loss),是指还原到最近时间点的系统一致的状态。

Restore to the last application-consistent state,是指还原到最后一个时间点的应用程序一致的状态。

Restore to point in time,是指通过拖拽式的滚动条方式选择合适时间点的:系统一致的状态或应用程序一致的状态。

本次测试选择:Restore to the latest crash-consistent state。

RKYYFA.png

输入任意Reason,点击Next、Finish,开始切换。

RKtYBF.png

RKtUAJ.png

检查Failover结果。

RKsBIf.png

原有CDP策略会自动停止复制。

RMF8zt.png

检查目标端虚拟机的状态。

RKUmJs.png

检查oracle数据库状态。

RKacHU.png

​​

7.2、Failback 回迁

点击VBR主界面的Active,找到已经执行Failover切换的虚拟机。

RKWAmQ.png

 

右键虚拟机后,会有几种Failover的选择项。其中:

Permanent failover,是指永久切换,让目标端虚拟机Oracle_CDP变为永久生产状态。

Undo failover,是指不带目标端虚拟机Oracle_CDP新增的数据回迁,然后对源端虚拟机Oracle开机,让源端虚拟机Oracle接管生产。执行完Undo failover后,原有的CDP复制策略会自动继续执行增量复制。

Failback to production,是指带目标端虚拟机Oracle_CDP新增的数据回迁,然后对源端虚拟机Oracle开机,让源端虚拟机Oracle接管生产。执行完Failback to production,原有的CDP复制策略会自动继续执行增量复制。

RKTzzn.png

本次测试使用Failback to production。

RKxlwR.png

开始Failback向导。其中Size的数据是目标虚拟机Oracle_CDP上新增的数据。

RKxrkt.png

在Destinatin选项里,有三个选择:

Failback to the original VM:是指回迁到原始位置,并可使用Quick rollback技术,快速回迁有变化的数据。

Failback to the original VM restored in a different location:是指回迁到原始位置,并与源虚拟机Oracle的Mapping。

Failback to the specified location (advanced):是指回迁到任意位置,从目标端虚拟机Oracle_CDP传输全部数据。这是非常耗时的。

RKzVHA.png

本次测试使用Failback to the original VM方式回迁,并指定CDP Proxy和使用Quick rollback技术。

关于Quick rollback的更多介绍,请参阅以下网址: https://helpcenter.veeam.com/docs/backup/vsphere/cdp_failback_quick_rollback.html?ver=110

RM9W80.png

RM9xKO.png

在Failback Mode选项里,可选择Failback生效时间。

本次测试使用Auto。

RM97VJ.png

在Summary选项里,可勾选"Power on target VM after restoring",回迁完成后执行开机。

点击Finish,然后请耐心等待。😄

请注意:为确保回迁前后的数据一致性,目标端虚拟机Oracle_CDP会关机。

RMC4JI.png

Failback回迁成功。

RMkRjP.png

在接下来的Switch过程中,对目标端虚拟机Oracle_CDP进行关机,对源端虚拟机Oracle进行开机。

(注意:此界面不会自动弹出出现,在History里面可以看到这个界面)

RMASN4.png

检查源虚拟机Oracle的状态。

RMVzE8.png

检查源虚拟机Oracle的数据库状态。

RMZM8J.png

 

在Active处,找到已经执行Failback回迁的虚拟机。(细心的可以发现Oracle虚拟机旁边不同形状的图标)😄

RMAmUe.png

右键虚拟机后,继续会有几种Failback的选择项。

其中:Commit failback,是指永久回迁,让源端虚拟机Oracle变为永久生产状态。

Undo failback,是指撤消回迁,把业务撤回目标端虚拟机Oracle_CDP。

RMAM8A.png

本次测试选择Commit failback。

RMVsNF.png

查看Commit failback结果。

RMVT4e.png

原有CDP策略,自动开启CBT mode模式。耐心等待后,会自动变成Syncing。

RMZgIS.png

 

RMRV9P.png

 

如果感觉上述术语“Failover、Permanent failover、Undo failover、Failback to production、Commit failback、Undo failback”不容易记住、又或者对整个Failover切换、Failback回迁的逻辑、流程不熟悉,那除了多做几遍Failover切换、Failback回迁的操作以外,希望下图可以帮助更加清晰地理解。😄

 

cdp_failover_failback.png

​​

8、 其他注意事项

8.1、卸载CDP I/O filter

如果VBR在可用的情况下,请在VBR上右键对应Cluster进行Uninstall I/O filter。

关于卸载CDP I/O filter的更多介绍,请参阅以下网址: https://helpcenter.veeam.com/docs/backup/vsphere/cdp_io_filter_remove.html

请注意:卸载前请确保ESXi主机进入维护模式。

FIjPbq.jpg

 

hhRcWl.jpg

 

PDTqrB.jpg

 

如果VBR已经不可用的情况下、或者在VBR可用时却没有在VBR上使用正确方式卸载的情况下,请手动卸载CDP I/O filter。

关于手动卸载CDP I/O filter的更多介绍,请参阅以下网址: https://www.veeam.com/kb4151

 

8.2、检查虚拟机存储策略的合规性

检查CDP复制的源虚拟机,执行“检查虚拟机存储策略的合规性”。如果检查结果是非合规的状态,则有可能会造成CDP策略运行失败。

rPYoC0.jpg

 

如果检查结果是:已过期、不合规、不适用时,需要手工操作“重新应用虚拟机存储策略”。

CpFo1z.jpg

 

确保合规性状态是:合规。

VZSlOY.jpg

 

B3EhZl.jpg

​​

 

 

 

如对以上过程有技术疑问,请联系本文作者📧helly.wu@veeam.com

感谢Helly写了这么事无巨细的测试报告,非常有参考价值。看来V家的CDP方案可以作为存储硬件厂家的有力补充。

有2点疑问,还请解惑:

 

1- 如果主站和灾备站点的VMware架构使用的都是vSAN作为虚拟机存储,是否会对CDP的性能发挥有限制?

 

2- 在CDP Proxy的部分,Helly您有写到“请注意推荐值:为每台源虚拟机上的每块VM磁盘分配10GB可用空间”。但是对应的截图中好像每块VM磁盘的cache推荐值是1GB,即“we recommend allocating at least 1GB of cache for each protected VM disk”这里应该以哪个为准?同时、CDP-Proxy的服务器资源配置有没有什么硬性要求?除了上面提到的硬盘大小需要注意以外。


感谢Helly写了这么事无巨细的测试报告,非常有参考价值。看来V家的CDP方案可以作为存储硬件厂家的有力补充。

有2点疑问,还请解惑:

 

感谢YY同学的细致、细心的阅读,回复如下:

 

1- 如果主站和灾备站点的VMware架构使用的都是vSAN作为虚拟机存储,是否会对CDP的性能发挥有限制?

//不管是传统的ESXi架构、还是使用vSAN的架构,Veeam CDP功能都适用于以上两种架构,并无使用上的功能、性能限制。

 

2- 在CDP Proxy的部分,Helly您有写到“请注意推荐值:为每台源虚拟机上的每块VM磁盘分配10GB可用空间”。但是对应的截图中好像每块VM磁盘的cache推荐值是1GB,即“we recommend allocating at least 1GB of cache for each protected VM disk”这里应该以哪个为准?同时、CDP-Proxy的服务器资源配置有没有什么硬性要求?除了上面提到的硬盘大小需要注意以外。

//如果说10GB是最佳推荐值,那么1GB则是最小值:)当CDP Proxy服务器的资源足够时,当然建议配置10GB。

关于CDP Proxy服务器资源配置要求,请参考以下网址:

https://helpcenter.veeam.com/docs/backup/vsphere/system_requirements.html?ver=110#cdp_prox

https://helpcenter.veeam.com/docs/backup/vsphere/cdp_proxy.html?ver=110


Helly, 谢谢谢谢,非常详细的解答、关键一看就懂、巴适~:relieved:


请问我是在同一个集群里从一个存储复制到另一个,状态一直就是Initial sync,不会进入Syncing,会是什么原因呢?


@moonking 两边的IO/Filter都是enable的,并且确保两边的9080端口是通的。如果IO/filter或网络不通,可参照VMware的KB76633和KB49798查一下


请问我是在同一个集群里从一个存储复制到另一个,状态一直就是Initial sync,不会进入Syncing,会是什么原因呢?

两边的IO/Filter都是enable的,并且确保两边的9080端口是通的。如果IO/filter或网络不通,可参照VMware的KB76633和KB49798查一下


您好,此文章中的图片无法显示,请修复一下。


老哥,图挂了😭


@PEPPER 你好,请发邮件给我,我发原稿给你。(图床链接已失效)


Comment