启动与系统组件

排查滚动升级问题 - Windows Server

· 52CE 我爱测

概要 本文提供了一种结构化故障排除方法,用于解决在 Windows Server 故障转移群集(WSFC)、存储空间直通、SQL Server Always On 可用性组和 Hyper-V 中滚动升级期间可能会遇到的常见问题。 滚动升级对于维护和升级系统至关重要,确保停机时间最短。 但是,兼容性和配置错误等挑战可能会影响可用性,并可能导致数据丢失。 先决条件 开始滚动升级之前: - 验证您的工作负载和操作系统版本是否支持滚动升级功能。 - 使用 Get-

概要

本文提供了一种结构化故障排除方法,用于解决在 Windows Server 故障转移群集(WSFC)、存储空间直通、SQL Server Always On 可用性组和 Hyper-V 中滚动升级期间可能会遇到的常见问题。

滚动升级对于维护和升级系统至关重要,确保停机时间最短。 但是,兼容性和配置错误等挑战可能会影响可用性,并可能导致数据丢失。

先决条件

开始滚动升级之前:

  • 验证您的工作负载和操作系统版本是否支持滚动升级功能。
  • 使用 Get-ClusterNode PowerShell 命令验证所有群集节点是否正常。
  • 请确保备份是最新的,包括:
    • 系统状态
    • 群集配置
    • 用户数据

潜在的解决方法

解决滚动升级失败问题

  1. 使用故障转移群集管理器或 Move-ClusterGroup PowerShell 命令将核心资源移到另一个节点。
  2. 使用 Suspend-ClusterNode -Drain 从节点迁移角色和资源。
  3. 检查群集日志中是否存在可能阻止作的依赖项或错误。

故障排除清单

  1. 查看先决条件:确保环境满足本文中所述的所有先决条件。

  2. 验证群集状态:通过运行 Test-Cluster解决任何验证警告或错误。

    • 使用 Get-Cluster | Select ClusterFunctionalLevel 验证当前群集功能级别。
    • 验证所有节点之间的网络连接。
  3. 计划和顺序升级:记录节点升级的顺序(一次一个节点)。

    • 将群集角色(例如虚拟机、可用性组或文件共享)迁移出正在升级的节点。
    • 将所有节点更新到当前 OS 的最新支持的更新或修补程序。
  4. 与利益干系人沟通:通知利益干系人并安排维护时段。

    • 通知监视团队以避免不必要的警报。
  5. 确保应用程序意识:验证 SQL Server、Hyper-V 或文件服务等工作负载的应用程序兼容性。

    • 通知应用程序所有者计划升级。
  6. 进行升级前测试:查看 Windows、应用程序、群集和存储的日志,以确定任何预先存在的问题。

常见问题及其各自的解决方案

1.滚动升级不会启动或无法逐出节点

现象

无法暂停、清空或删除群集中的节点。 会收到错误消息,例如以下示例:

节点。。。无法从群集中删除。

原因

节点托管核心群集资源、依赖项配置错误或群集不稳定。

Solution

  1. 将核心资源移动到另一节点,使用故障转移群集管理器或 Move-ClusterGroup。
  2. 通过运行 Suspend-ClusterNode -Drain来移动角色和资源。
  3. 确保该节点不是最新更新的节点或法定节点。
  4. 检查群集日志以阻止依赖项。

2.无法将升级的节点还原到群集

现象

收到版本不匹配消息或错误消息,例如以下示例:

节点尝试加入故障转移群集,但由于不兼容而失败。

原因

不支持的 OS 版本混合或非更新节点。

Solution

  1. 验证支持的 OS 和群集版本矩阵。
  2. 将节点更新到最新的累积更新(CU)。
  3. 按顺序升级 OS 版本(例如,2016 → 2019 → 2022)。
  4. 使用 Get-ClusterLog 识别版本控制错误。

3. 资源或服务无法上线

现象

升级后,VM 或文件共享等资源进入失败或脱机状态。 常见事件 ID 包括1069和 1146``1230。

原因

升级期间配置错误、缺少注册表项或文件或服务帐户失败。

Solution

  1. 检查故障转移群集管理器中的群集事件。
  2. 通过运行 Get-ClusterResource | Get-ClusterOwnerNode来验证资源所有者配置。
  3. 修复或重新创建缺少的依赖项。
  4. 通过运行 Restart-Service ClusSvc重启群集服务。

4. 法定人数或通信丢失

现象

群集脱机、节点隔离或事件 ID 1135 和 1136 出现。

原因

网络分区、防火墙配置或仲裁配置错误。

Solution

  1. 请确保所有必需的端口都已打开。
  2. 检查网络、DNS 和路由配置。
  3. 通过运行 Get-ClusterQuorum来检查仲裁设置。 根据需要更新设置。
  4. 若要确定根本原因,请运行 Validate-Cluster。

5. 更新失败或已知错误

现象

由于已知有问题的更新而导致,群集服务在更新后停止响应,或资源出现故障。

原因

Microsoft更新安装后发生群集不稳定。

Solution

  1. 查看有关已知问题的Microsoft知识库(KB)文章。
  2. 如有必要,请删除有问题的更新。
  3. 应用建议的修补程序或等待新更新。
  4. 如果问题仍未解决,请提出支持案例。

6.群集验证或功能级别错误

现象

无法更新群集功能级别,或者验证失败。

原因

混合 OS 版本、不完整的升级或过时的驱动程序。

Solution

  1. 更新所有节点,并确保它们已加入群集。
  2. 更新硬件驱动程序(如网络和存储)和固件。
  3. 使用 Update-ClusterFunctionalLevel.. 完成升级。
  4. 查看驱动程序或验证失败的日志。

高级故障排除和数据收集

对于持久性或复杂问题,请收集以下数据。

群集日志


Get-ClusterLog -TimeSpan 24:00 -Destination

系统和应用程序事件日志

    
    Get-WinEvent -LogName System -MaxEvents 1000 | Export-Csv <Path>\SystemLogs.csv
    Get-WinEvent -LogName Application -MaxEvents 1000 | Export-Csv <Path>\AppLogs.csv
    

资源和节点状态


    Get-ClusterNode
    Get-ClusterResource
    Get-ClusterGroup
    Test-Cluster
    

网络和驱动程序信息

    
    Get-NetAdapter -IncludeHidden | Export-Csv <Path>\NetAdapters.csv
    

更新历史记录


Get-HotFix | Export-Csv \Hotfix.csv

References

资料来源与适用范围

资料来源
微软官方中文故障文档
适用范围
按正文的 Windows / Windows Server 适用版本;保留原文兼容性要求
内容语言
中文;命令、路径和错误标识保留技术原文
本地收录日期
2026-10-26
授权说明
CC BY 4.0

正文与所需资源由本站本地存储。查看来源及更新记录 ↗

请按适用版本和实际日志确认原因;本站没有对每一种系统或设备逐项执行文中的操作。