我负责 Citrix Presentation Server 4.5 场。从 11 月 30 日星期五开始,我的服务器开始随机崩溃。到目前为止,我们已经经历了 80 次崩溃,所以这显然对我们来说正成为一个越来越大的问题。我有 12 年以上的 IT 经验,所以我知道 0 和 1 之间的区别,但我很难破解它。
我们已经回滚了我能想到的针对不同服务器组的所有最近更改,但所有组似乎仍然崩溃。我没有解释内存转储来找到罪魁祸首的技能。
- 有没有人遇到过相同或类似的问题?- 可能是一般的 Windows 问题
- 除了在 WinDbg 中执行“analyze -v”之外,我如何通过内存转储来查看实际触发 BSOD 的原因?
- 有什么建议的步骤来深入了解这个问题吗?
任何帮助是极大的赞赏。如有必要,我还可以提供指向内核内存转储或 WinDbg 输出的链接。
谢谢!
问题描述
我们遇到的大多数 STOP 错误是:
- 0x0000008e KERNEL_MODE_EXCEPTION_NOT_HANDLED (50%)
- 0x0000007e SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (26%)
- 0x00000050 PAGE_FAULT_IN_NONPAGED_AREA (21%)
我们还看到一些0x0000000a IRQL_NOT_LESS_OR_EQUAL (3%)。
对于 0x0000008e 和 0x0000007e 错误检查,异常代码是0xc0000005(访问冲突)。在 WinDbg 中打开转储文件时,大部分细节完全相同,分别针对所有 0x0000008e 和 0x0000007e 错误检查:
0x0000008e
- 异常地址:0x808bc9e3
- 陷阱框:[变化]
- FAILURE_BUCKET_ID:0x8E_nt!HvpGetCellMapped+97
- 可能由 (IMAGE_NAME) 引起:ntkrpamp.exe
0x0000007e
- 异常地址:0x808369b6
- 异常记录地址:0xf70d3be0
- 上下文记录地址:0xf70d38dc
- FAILURE_BUCKET_ID:0x7E_nt!MmPurgeSection+14
- 可能由以下原因引起:memory_corruption
大约 30% 的崩溃发生在 17:00 到 19:00 之间,这让我相信这种情况在注销期间更容易发生。但话又说回来,只有约 15% 发生在 15:00 到 17:00 之间。
农场概要
- Windows Server 2003 R2 SP2 上的 Citrix Presentation Server 4.5 R06
- 所有高优先级补丁,至少从 10 月开始安装
- 在 HP Proliant BL460c G6 刀片服务器上使用 VMWare ESX/vSphere 4.1 进行虚拟化
- 大约 53 台 Presentation Server 处于生产状态,分为三个孤岛 - 只有其中最大的一个受到影响
- 每个演示服务器 2 个 vCPU(保留 5 GHz)、8 GB RAM(全部保留)
- 大量可用磁盘空间
- 很少的打印机驱动程序——每晚自动删除未经批准的驱动程序
- 约 1.000 个峰值并发用户,在 10:30 左右(工作日)达到
- 会话数在 15:00 和 19:00 之间稳步下降至 ~230
我们在较旧版本的 citrix (PS4) 上遇到了类似的问题,该问题归结于 HP 打印驱动程序。在重新安装适当的之前,我必须清除所有内容,这似乎清除了蓝色屏幕问题。也对“每晚自动删除未经批准的驱动程序”感到好奇。如果你每晚都清除未经批准的那些,你为什么首先允许它们安装?您可以在 citrix 策略中停止安装它们。认为是在Printing -> Drivers -> Native printer driver auto-install下(设置为不自动安装)
我们最终应用了 PS 4.5 roll-up pack 7(没有安装,因为它之前破坏了我们的会话可靠性)和一些 R07 后的修补程序。
此外,我们用较新的 UPHClean 1.6g 替换了 UPHClean 2.0 的最新测试版,Microsoft 已将其作为单独的组件(仍然内置于更高版本的 Windows)放弃。
从那以后,农场一直很稳定,但为什么在没有做出任何重大改变的情况下突然破产,这仍然是一个谜。