SSM Patch Manager 扫描 Windows 补丁失败:微软更新服务 503
SSM Patch Manager 扫描 Windows 补丁失败:微软更新服务 503
使用 Systems Manager Patch Manager 扫描 Windows Server 2019 补丁时,如果 SSM Agent、网络和权限都正常,但 WindowsUpdate.log 里显示微软更新服务返回 503,根因可能在微软侧,而不是 AWS 侧。
现象
执行 AWS-RunPatchBaseline 扫描失败,返回类似:
The find operation did not complete successfullyHResult 可能是:
-2145107934同一网络环境下 Windows Server 2016 正常,Windows Server 2019 失败。
排查过程
1. 验证 SSM 相关端点
Test-NetConnection ssm.<region>.amazonaws.com -Port 443
Test-NetConnection ssmmessages.<region>.amazonaws.com -Port 443
Test-NetConnection ec2messages.<region>.amazonaws.com -Port 443如果使用中国区或 VPC Endpoint,需要替换为对应域名。
2. 验证 Windows Update 网络
Test-NetConnection sls.update.microsoft.com -Port 443
Test-NetConnection download.windowsupdate.com -Port 80同时检查是否配置 WSUS:
Get-ItemProperty "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" -ErrorAction SilentlyContinue
Get-ItemProperty "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -ErrorAction SilentlyContinue3. 导出 Windows Update 日志
Get-WindowsUpdateLog如果日志出现:
The server returned HTTP status code '503'
The service is temporarily overloaded
*FAILED* [80244022] Web service call说明 Windows Update 客户端已经连到微软服务,但服务端返回不可用。
根因
Windows Server 2019 可能访问的是某个特定微软更新服务域名,例如:
fe3.delivery.mp.microsoft.com如果该服务端临时过载,就会返回 HTTP 503,对应错误码:
0x80244022同一时间 Windows Server 2016 正常,可能是因为它访问的是另一组更新服务域名,未受影响。
规避方案
1. 等待微软服务恢复
如果确认网络、SSM、WSUS 配置都正常,且错误明确是 503,最直接的方式是等待服务恢复后重试。
2. 手动下载补丁
从 Microsoft Update Catalog 下载 .msu,再通过脚本或 SSM Run Command 安装:
https://www.catalog.update.microsoft.com/3. 提前缓存补丁
Patch Manager 本身不提供“只下载不安装”的标准模式。可以使用自定义 SSM 文档提前下载补丁,在维护窗口再执行安装。
4. 部署 WSUS
对补丁窗口要求严格的环境,可以部署内网 WSUS,把补丁提前同步到本地服务器,降低对公网微软更新服务的依赖。
总结
SSM Patch Manager 扫描失败不一定是 SSM 问题。排查时要分层:
- SSM Agent 是否在线。
- AWS 端点是否可达。
- Windows Update 端点是否可达。
- WindowsUpdate.log 是否显示微软服务端 503。
如果日志已经明确 0x80244022 和 HTTP 503,通常应按微软更新服务临时不可用处理,考虑重试、手动补丁、提前缓存或 WSUS。
