我们的 Exchange Server 2013 上有一些随机数据库损坏,ESE 上出现事件 476。这已经是第五次发生这种情况了,情况已经令人无法接受。以下是事件查看器中事件的屏幕截图。
恢复过程必须从备份中完成,或者通过eseutil /p
有损过程完成,因为日志也会损坏。
此时,我真的想找出问题所在,并找出应该归咎于哪个设备。此 Exchange Server 在 vSphere 6.0 中的 VM 内运行。VMDK 通过 iSCSI 从 Dell Powervault MD3820i 导出。
从错误性质来看,这似乎是存储子系统的问题,但我们如何调查这个问题?对于之前的问题,DELL 的员工说存储方面一切正常,但我不知道他们运行的诊断是否足够可靠。
提前致谢,
编辑:服务器上没有安装防病毒软件。运行 VMware vSphere 6.0 的主机硬件是经 DELL 认证的 DELL PowerEdge R730,用于运行 vSphere。日志中没有 VMware 错误或类似内容,或者至少我在日志中找不到任何问题。
存储通信由 iSCSI 完成,使用两条 Cat6 电缆以多路径模式与 PowerVault MD3820i 上的双控制器配合使用,因此它是一个非常默认的配置并且可以正常工作,并且再次获得了 DELL 的认可。
我知道戴尔认可的东西并不意味着就是好的。但他们销售硬件,推荐最佳实践,我们全部遵循。
编辑二:PowerVault 存储设备运行的是 DELL 的最新固件,版本 08_20_09_60 比最新版本旧一个,解决了导致数据损坏的一个特定问题:解决了可能导致处理器故障并进而导致数据完整性问题的罕见情况
关于网卡,我们使用的是双 Broadcom NetXtreme II BCM57810 10GbE。该卡不支持 TCP 引擎卸载和/或 iSCSI 卸载,因此这应该不是问题。
VMware 也运行本地 SAS 控制器的推荐驱动程序:该megaraid_sas
驱动程序,而不是与 VMware 捆绑在一起的默认驱动程序tg3
。我不认为这可能是问题所在,因为虚拟机位于 iSCSI 存储上,而不是本地存储上。
答案1
正如事件日志错误描述中所说,这几乎肯定是系统硬件故障,当谈到虚拟客户时,这可能是一个相当模糊的概念。
我会仔细检查存储子系统 - 鉴于我最近在戴尔服务器上构建虚拟集群的经验,我怀疑网卡固件或存储系统固件存在问题。
喝了一杯茶,想了想,我又看了看你的错误,你得到了一个 1019 错误。这具体说的是,Exchange 服务器去读取数据库中的一些数据,它“知道”这些数据已经被写入,但无法找到它(你读过吗?https://support.microsoft.com/en-gb/kb/314917- 其中详细讨论了错误)。
这只能是某种磁盘损坏,其根本原因很可能是存储系统的问题,特别是考虑到您提到这种情况以前发生过。
此时我担心的另一个问题是 1019 错误可能相当隐蔽;这可能是前段时间写入出错而未被检测到的最终结果,因为一段时间内不需要该数据。例如,如果损坏发生在上周,那么恢复昨天的备份将无济于事。
此时,我肯定会联系戴尔,或许还会联系微软。
答案2
由于有关其运行环境的信息有限,我将首先检查以下内容。
确保 AV 已为交换设置适当的排除项。
确保存储和网络驱动程序是另一端设备的正确稳定版本。
寻找故障发生前的其他事件。
尝试包含有关硬件、服务器类型、内存、CPU、网卡类型和配置(端口通道等)的更多信息
仔细查看您的 vsphere 日志,查找任何与存储相关的错误。
答案3
VMware 6 中存在一些问题,可能会损坏 Exchange 存储(或任何活动内容,如数据库)。Veeam 等虚拟备份软件使用的更改块跟踪 (CBT) 功能存在(相关?)问题。搜索这些主题,您会发现其他 Exchange 存储损坏的问题。这是一个特别严重的问题,因为您的存储损坏后,CBT 错误可能会使您的所有备份还原点(包括异地)都无法使用。据我所知,VMware 有一个补丁可以防止正在运行的服务器损坏,但在发布此帖子时,还没有针对 CBT 问题的修复,并且 ESXi 6.0 的基于 CBT 的备份不可靠。FWIW - 我对戴尔的 MD SAN 有很好的体验。它们并不花哨,但我有几个客户在运行它们,从来没有遇到过问题。同样,我有不少可靠的 Equallogic 机架。当然,我只使用基本的 LUN 功能,没有快照或复制等花哨的功能;依靠 Veeam 来实现这一点。