我们正在运行一个 KVM 节点,该节点不规则地崩溃,表现出非常奇怪的行为。有趣的是,我们已经在另一个节点上遇到了这个问题,它每 1-2 周就崩溃一次。由于找不到硬件问题,我们开始将 VM 迁移到新节点。在我们迁移了 50% 的虚拟机大约一周后,新节点崩溃了,而“旧”节点从那时起运行良好(正常运行时间为 3 周,几个月来我们没有看到如此长的正常运行时间)。
当一个节点崩溃时,我们有时会在 Supermicro IPMI 上看到这些奇怪的东西:
我们还看到:
- “无信号”如服务器已关机(当然不是,而且在 IPMI 主页上也从未显示为已关机)
- 正常的登录屏幕或服务器的其他正常输出,但冻结
我们从未见过内核恐慌或崩溃前日志中的至少一些消息,完全静默,直到灯突然熄灭。
随着问题从一台服务器“转移”到另一台服务器(全新机器),我认为只剩下几个选项:
- 特定的虚拟机导致问题
- 内核错误
- 关于我们设置的硬件问题
有关机器的更多信息:
- CentOS 7 最新内核 (3.10.0-514.2.2.el7.x86_64)
- 带冗余电源的 Supermicro 机箱
- 具有最新 BIOS 版本的 Supermicro X10DRi / X10DRWi
- 英特尔至强 E5-2630 v3 / v4
- 512 GB DDR4 ECC RAM(三星服务器 RAM)
- 145 台虚拟机正在运行(RAM 和 CPU 远未饱和,这也要感谢 KSM)
- 软件 RAID-10 8 / 16 SSD
有没有人看到这种行为或者可以对控制台上奇怪的“消息”说些什么?我从来没有见过这样的东西,甚至不知道我应该如何描述这个谷歌搜索。目前我们还不太清楚下一步应该做什么,因为它可能是一切。
提前致谢!
这可能是 CPU 错误。英特尔发布了有关此问题的勘误表,他们还为 E5 v3/v4 CPU 提供了微码更新(日期代码 20170707)。CentOS 7.4 已经有了更新的微码版本 0xb000021(在 CentOS 7.3 中是 0xb00001e)。更换微码或升级到 7.4 可能会有所帮助。这个系统冻结我也遇到了很多麻烦。我更换了主板(X10DRi)、RAM、CPU 和电源,但没有成功。我不能确定这是否是解决方案,因为我更新了微码后没有足够的正常运行时间。Supermicro 仍然没有提供带有当前英特尔微码的更新 BIOS。您可能会从您的分销商处获得 X10DRI 的非官方预发布版本。
对此的简短更新:升级到最新的 LTS 内核 (4.4.39) 后,服务器稳定。现在正常运行时间 19 天,所以我想我们明白了。虽然我们并不真正知道根本原因,但我们认为 CentOS 7 内核 (3.10) 对于某些非常现代的硬件来说可能太旧了。由于我们无法提供有用的错误消息(最好的情况下就像内核崩溃),我们决定不向 CentOS 开发人员报告这件事。