AnyBackup-ESXi 6.0.x 堆内存耗尽导致 VMware 备份任务 CBT 无法生效

2018-11-14

关键字

VMware、ESXi、CBT

 

适用产品

本文档适用于AnyBackup 6.0.x。

 

问题描述

在VMware ESXi 6.0.x 启用变更数据块跟踪(Changed Block Tracking,CBT)时,AnyBackup 备份任务输出提示 CBT 未生效,具体输出任务信息如下:

未能成功获取虚拟机磁盘XXX的局部变化块,将对磁盘所有块进行备份,可以通过VMware的最佳实践使CBT功能生效。

且通过重置 CBT 之后,也无法使之生效。

同时,在正在运行受影响的虚拟机的 ESXi 主机上的 /var/log/vmkernel.log 文件中,有以下警告信息:

T

并且,在受影响的虚拟机的 vmware.log 文件中,显示类似以下内容的条目:

vcpu-0| I120: DISKLIB-CBT : Creating cbt node 92b78c-cbt failed with error Cannot allocate memory (0xbad0014, Out of memory)

 

问题原因

问题原因为 ESXi 的堆内存耗尽。出现堆内存耗尽的可能场景如下:

l  具有大量虚拟磁盘的虚拟机,可能会因为堆内存耗尽而导致 CBT 启用失败;

l  多个虚拟机同时启用了 CBT 时,可能会出现此问题。

l  对于启用了 VSS 的 Windows 虚拟机,生成静默快照会产生双倍的内存开销,也可能导致此问题发生。

 

解决方案

升级到 ESXi 6.0 Build 2715440。具体执行步骤,请参见 VMware 知识库文章:Backing up the virtual machine fails when CBT is enabled (2114076),或联系 VMware 获得技术支持。

 

更多信息

关于重置 CBT 的方法,请参见 VMware 知识库文章:Resetting Changed Block Tracking for VMware vSphere virtual machines (2139574)。


在线咨询

立即咨询