在 ESXi 主机上运行的 Server 2008 R2 w/sp1 VM 上运行 EMC NetWorker 服务器。VMDK 与我们组织运行的所有其他 VM 服务器的 VMDK 一起存储在 VNXe 机器上。其他 VM 均未出现此问题:
本周后半段的每个晚上,大约晚上 9 点以后,这台服务器都会丢失硬盘。早上检查系统时,我发现这台机器在尝试 PXE 后停留在启动提示符处,并报告找不到可启动设备。检查虚拟机设置时,我发现机器上没有连接硬盘。
恢复非常简单,只需为系统分配一个新硬盘并将其指向仍然位于 VNXe 上托管的数据存储上的现有 VMDK 即可。
vSphere 服务器没有报告任何错误或任何错误。
服务器本身的系统日志中没有信息,所以我很确定它不知道发生了什么。
问题开始于我开始使用 NetWorker 系统进行备份,添加新的主机进行备份。目前,我仅使用 NetWorker 服务器内置的已配置 VADP 代理备份虚拟主机,以及使用该机器本地安装的 NetWorker 客户端备份测试 SQL 服务器(也是 VM)。我正在备份 NetWorker 服务器本身,因为文档指出这不应该有问题,但在发现此问题后不久就禁用了该备份。
我需要找出 VMDK 脱离 NetWorker 服务器的原因和方式。如果有人能明确地告诉我就好了,但也许找到显示系统发生的所有事情的 vSphere 日志会是一个不错的选择。
更新:更多详细信息
虚拟机的备份计划于每晚 9 点开始。
从该虚拟机的 vSphere 日志中:
- 2/21 晚上 9:00:11:任务:创建虚拟机快照。
- 2/22 凌晨 2:18:57:任务:删除快照。这是首次尝试对该虚拟机进行自身计划备份,表明备份系统运行成功且正确。
- 2/22:我将机器迁移到不同的 ESXi 主机(HA 配置中有三个相同的主机)以更好地安排资源。
- 2/22 晚上 9:00:15:任务:重新配置虚拟机。这是第一次从虚拟机中移除 HDD。
- 2 月 23 日上午 8:25 左右:检查系统时,我第一次发现该虚拟机上的 HDD 丢失。这让我相信 NetWorker 计划备份触发的快照操作被 ESXi 主机转换为“从该虚拟机中删除 HDD”。
- 2/23 晚上 9:00:14:任务:重新配置虚拟机。
- 2/24 我重新连接了硬盘并在 NetWorker 中禁用了此虚拟机的所有计划备份。
- 2/24 晚上 9:31:32:任务:重新配置虚拟机。
- 2 月 25 日晚上 9:00:15、2 月 26 日晚上 9:00:11:相同的重新配置虚拟机任务从此虚拟机中移除了 HDD。我于第二天早上将其重新连接。
根据此日志我需要检查以下内容:
- 当虚拟机在不同主机上运行时,问题是否仍然存在?
- 当根本没有运行备份时,问题是否仍然存在?
我会检查这些并报告成功或失败。
更新 2:故障排除报告
我还发现了一件事:在 NetWorker 中每个 VM 客户端的配置中,有一个地方可以记录 VM 所在的 ESXi 主机。当我将 VM vMotion 到不同的 ESXi 主机时,即使在 NetWorker 中启用了 VM 自动检测,此值也不会更新。因此,我将 VM 客户端配置中的此值更新为当前 ESXi 主机。如果 AutoDetect 能够自行更新它,那就太好了。
因此,报告一下我昨天尝试的故障排除情况:
首先,今天早上硬盘仍然连接着,这证实了问题至少是由 NetWorker 触发的。我昨天禁用了所有备份,并将 NetWorker 服务器移至新的 ESXi 主机。我还更新了上一段中提到的 ESXi 主机信息。
今天我重新启用了大部分备份(保留了 SQL 和 Exchange 等高可用性系统)。
如果今晚移除了硬盘,那么问题就在于备份配置。
如果今晚没有移除硬盘,那么问题就是主机配置信息或主机本身造成的。
更新 3:故障排除后续
昨晚硬盘又丢了,这意味着问题很可能出在 NetWorker 配置上。
回顾一下:昨晚我运行了几个虚拟机(但不是 NetWorker 服务器)的计划备份,晚上 9 点之后,我看到了我在问题中先前提到的相同日志条目,导致不再有与虚拟机关联的 HDD。
我还想尝试另一件事:根据 EMC 文档,NetWorker 服务器也可以是存储节点,大多数虚拟机都通过此节点处理其备份(这与 VADP 不同)。我将通过节点备份禁用这些功能,看看是否会产生影响。
此外,我们的 NAS/网络驱动器的物理系统备份和 NDMP 备份运行正常。
我将开始隔离虚拟机,并一次将一台虚拟机添加到备份中,看看能否确定某个虚拟机是否导致了问题。我应该可以在工作时间测试一下。
更新:测试结果显示
好的,每当我尝试使用 VADP 备份虚拟机时都会出现问题。
我使用各种设置排列测试了备份正在运行和关闭的虚拟机,而决定 NetWorker 服务器是否丢失驱动器的唯一因素是我是否在目标虚拟机上安装了 NetWorker 客户端,并且是否使用 NetWorker 客户端或使用 VADP 进行备份。
使用客户端向导配置备份时,首先选择是否配置新的 VADP 代理、VM 备份客户端或 NetWorker 客户端。
如果您选择 VM 备份客户端,则您可以选择使用 VADP(这是默认设置)还是使用安装在 VM 上的 NetWorker 客户端(如果您需要任何特殊的备份配置)进行备份。VADP 命中实际的 VMDK 并与 VMWare 集成。NetWorker 仍然“知道”客户端是 VM,但可用于指定特定驱动器、VSS 和其他功能。VADP 备份 VM 而不使用任何客户机资源,完全依赖于 ESXi 主机。NetWorker 客户端软件使用客户端资源来运行备份。
因此,运行 VM 主机的 VADP 备份会从 NetWorker 服务器上移除 HDD。当 HDD 被移除时,vSphere 客户端中会显示更多日志条目:
- 启动 VADP 代理备份后约 20 秒,vSphere 报告尝试将 NetWorker 服务器从 VM2 迁移到 VM2
- 然后 NetWorker 服务器被重置
- 然后事件状态为“已获取 typemks 的票”
- 然后出现有关分配给虚拟机的视频内存量的警告
- 最后报告NetWorker服务器VM已启动。
答案1
可能已经太晚了,但这可能对未来的规划有帮助。
发生这种情况的原因是使用 HotAdd 传输模式备份作为备份代理的虚拟机后,备份成功完成,但在清理过程中,常规虚拟磁盘与 HotAdded 磁盘一起被错误地删除。
这是 VDDK 套件当时的一个已知问题:http://www.vmware.com/support/developer/vddk/VDDK-1.2.1-Relnotes.html。在建立热添加环境时,不要使用 VADP 备份代理,这一点非常重要。
答案2
最终的解决方案是彻底重建 NetWorker 服务器,出于几个原因,这是一件好事。
备份正在运行,并且 NetWorker 服务器/VADP 代理的驱动器不会被丢弃。