未经同意,请勿转载!
适用版本:Azure Local 12.2602.1002.501(2602) → 12.2606.1003.205(2606)
文档来源:What's new in Azure Local / Release information / Known issues / AzureStackHCI-Supportability
维护版本:v1.1 · 2026-07-21 · ACP 评审修订版
TL;DR
- 2602 直跳 2606 在微软 6 个月支持窗口内完全合规 ,但中间会一次性带入 2604 那一波 GA 项,升级前必须做兼容性评估(特别是 AKS Arc node pool / OEM SBE / 外部 SAN)。
- Azure Stack HCI 23H2 OS(OS Build 25398.xxxx)已进入生命周期末期,Azure Local 24H2(OS Build 26100.xxxx,与 Windows Server 2025 24H2 系列 Build Number 一致)成为当前主支持版本------任何仍在 23H2 的客户应当把升 24H2 当作"当下最重要"的版本任务。
- 升级路径不是线性的 :必须先升到"上一个 Cumulative Build",再升 Feature Build;跳过中间的 Cumulative 直接升 Feature 是微软不推荐的做法。
- 本篇给出可直接执行的实战清单:升级前的 7 项检查、升级中的 5 步顺序、升级后的 4 项验证,以及一份"按场景分类"的升级决策树。
一、升级路径全景图
1.1 微软的硬性升级路径规则
"To keep your Azure Local solution in a supported state, you have up to six months to install updates. However, before installing the feature update, make sure to install the last released cumulative update."
"Before you can update to the 2511 release, you must first apply the 12.2510 update. The 12.2510 (24H2) update becomes automatically available once you apply 11.2510."
也就是说:
| 维度 | 规则 |
|---|---|
| Feature Build 升级前 | 必须先装上一个 Feature Build 的最后一个 Cumulative Build |
| 从 23H2 升 24H2 | 必须先升 11.2510,再升 12.2510,才能进 24H2 主线 |
| 跳过中间 Cumulative | 微软不推荐,可能触发 SBE manifest 校验失败 |
| 6 个月支持窗口 | 超过 6 个月未更新 = 不受支持 |
1.2 两条主线的推荐升级路径
A. 仍在 23H2(11.xxxx 系列,OS 25398.xxxx)的客户
推荐路径(合规且最稳):
11.2503 → 11.2504 → 11.2505 → 11.2506 → 11.2507 → 11.2508 → 11.2509 → 11.2510
↓
└→ 12.2510 → 12.2511 → 12.2512 → 12.2601 → 12.2602 → ... → 12.2606
↑
(注意:23H2 已进入生命周期末期,必须尽快迁到 24H2)
紧急路径 (生产已被 23H2 EOL 风险暴露,但仍想保留 HCI 形态): 直接升 11.2510 → 12.2510 → ... → 12.2606。微软允许从 23H2 的最终 Cumulative Build(11.2510.1002.93)跨到 12.x,但必须先升到 11.2510。
B. 已在 24H2(12.xxxx 系列,OS 26100.xxxx)的客户
推荐路径(以 2602 为例):
12.2602 → 12.2602.x(最后 Cumulative)→ 12.2603 → 12.2603.x → ... → 12.2606
更精简的"合规直跳"路径(仍在 6 个月窗口内):
12.2602 → 12.2603 → 12.2604 → 12.2605 → 12.2606
(中间 Cumulative 由 Update Wizard 自动应用,**前提是 OEM SBE 允许**)
1.3 容易踩的坑
| 坑 | 说明 |
|---|---|
| 跳过中间的 Cumulative 直接装 Feature | 可能触发 SBE manifest 校验失败(已知 warning 级 error "SBE manifest endpoint not reported by Get-SolutionDiscoveryDiagnosticInfo") |
| 使用被召回的 11.2510.1002.87 / 12.2510.1002.88 镜像 | add node / repair node 会失败,必须先升到 .93 / .94 |
| Azure Arc resource bridge 超 1 年未升级 | 证书失效、Azure Local VM 功能异常 |
| Defender for Endpoint 启用了 Restrict App Execution | Update / Repair 失败 |
| Defender ASR 规则阻止 PSExec & WMI | Solution Update 失败 |
二、升级前:必须检查的 7 件事
2.1 OEM Solution Builder Extension(SBE)状态
"If your cluster supports Solution Builder Extension software updates, you receive feature release updates after your hardware vendor completes their validation and confirms the release is ready. This process typically takes a few weeks following the Microsoft release and varies by hardware vendor."
为什么这件事排在第一 :微软每个月 release 后,OEM 还要做 SBE 适配验证,验证完成前 SBE 不会推送。客户在 Azure Update Manager 里看不到 2606 不代表集群"落后",可能是 OEM 还在验证。
检查方式:
- Azure Update Manager → Cluster → "Readiness checks" / "Available updates"
- 与 OEM Support 确认 2606 SBE 适配时间表
2.2 AKS Arc 集群的 K8s 版本与 node pool OS
| 检查项 | 要求 |
|---|---|
| K8s 版本 | 在 1.31.12 ~ 1.33.5 之间(2606 支持矩阵) |
| WS2019 node pool | 必须在升级前迁移到 WS2022 / WS2025------WS2019 SKU 在 2603 已完全 EOL |
| KMS 配置 | 评估是否要迁到 KMS v2(v1 弃用倒计时) |
关键原则 :升 Azure Local 之前,先把 AKS Arc 升到受支持的 K8s + 受支持的 node pool OS。否则升 Azure Local 后 AKS Arc 会进入不可用状态。
2.3 集群当前 Solution 版本与 OS Build
确认起点:
- 如果在 2601 / 2602,需要注意 MOC 误删 VM 漏洞------升级前应用 Remediation Support Tool
- 如果在 11.xxxx(23H2),需要先升 11.2510 再跨 12.x
- 如果在 10.xxxx(旧 23H2 终端),需要先升 11.x
2.4 外部存储(SAN)依赖
| 检查项 | 说明 |
|---|---|
| 是否使用 FC SAN | 2604 GA,iSCSI 仍在 preview |
| 存储 vendor 是否在 Azure Local 支持矩阵 | 微软只认证特定 vendor |
| iSCSI 流量隔离网络 | iSCSI SAN 需要独立网络 |
2.5 GPU 部署计划
| 检查项 | 说明 |
|---|---|
| 现有 GPU 型号 | 在 OEM SKU 认证列表内?RTX PRO 6000 Blackwell 是 2603 起支持 |
| 计划用 DDA 还是 GPU-P | 决策影响 GPU 切分策略、监控告警设置 |
| Day-2 热操作是否需要 | 2604 起支持热挂 / 热卸载 |
2.6 Local Identity with Key Vault(仅限气隙 / 弱连接客户)
| 检查项 | 说明 |
|---|---|
| 客户是否已部署 Key Vault | Key Vault 必须可访问,轮换策略已就绪 |
| Rack-aware 集群是否计划用 Local Identity | 2604 起支持 Rack-aware + Local Identity 组合 |
| 哪些 Azure 服务还依赖 Azure AD | 参考 Generally available or supported services |
2.7 Defender for Endpoint / Defender ASR 配置
| 检查项 | 说明 |
|---|---|
| Restrict App Execution 是否启用 | 必须禁用,否则 Update / Repair 失败 |
| Block Process Creations originating from PSExec & WMI | 不能 Block ,否则 Solution Update 失败;参考 TSG |
三、升级中:5 步推荐顺序
3.1 第一步:备份与快照
虽然 Azure Local 升级是 in-place,但强烈建议做以下备份:
- 配置备份:通过 Azure portal 或 PowerShell 导出集群配置
- 关键 VM 快照 :Azure Local VM 在升级前不需要关机 (in-place),但仍建议对关键业务 VM 做快照
- OEM iDRAC 配置导出:便于回滚
3.2 第二步:安装上一个 Feature Build 的最后 Cumulative
"Before installing the feature update, make sure to install the last released cumulative update."
举例:从 2602 升 2603 之前,先确认已装 12.2602.1002.501(2602 最后 Cumulative)。
判断方法:
Get-SolutionUpdate | Where-Object { $_.State -eq "Installed" } | Select Version, State
3.3 第三步:解决 readiness check 的同名重复问题
"When you view the readiness check results for an Azure Local instance via the Azure Update Manager, there might be multiple readiness checks with the same name. There's no known workaround in this release."
2606 仍没有 fix 这个 UI 问题。处理方式:
- 不被同名检查项困扰,点 View details 看具体内容
- 不要因为"看到多个同名 Failed"就判定升级失败------具体看每个 View details 的失败原因
3.4 第四步:在 Azure Update Manager 中执行 Feature Update
操作步骤:
- Azure Portal → Azure Arc → Azure Local → 集群
- Updates → 检查 2606 是否 available
- 若未 available:等 OEM SBE 适配完成
- Readiness check 全 Pass 后点击 Install
- 不要在更新过程中同时跑其他工作流(add node / repair node / new VM deploy)
3.5 第五步:升级后验证(见第四节)
四、升级后:必须验证的 4 件事
4.1 验证 Solution 版本与 OS Build
Get-SolutionUpdate | Where-Object { $_.State -eq "Installed" } | Select Version, State
# 期望:12.2606.1003.205
# 在每个节点上:
Get-ComputerInfo | Select WindowsProductName, WindowsVersion, OsBuildNumber
# 期望:26100.32995
4.2 验证 .NET Runtime
Get-ChildItem 'C:\Program Files\dotnet\shared\Microsoft.NETCore.App' | Select Name
# 期望看到 8.0.28 + 10.0.9
4.3 验证已知修复
| 验证项 | 操作 | 期望 |
|---|---|---|
| NIC 创建/删除 + tenant logical network IP pool 重叠 | 创建 IP pool 与 infra logical network 重叠的 tenant logical network | 不再被阻断 |
| startup memory / vCPU 外部修改回滚 | 在 Azure 外部修改 VM startup memory 后看 sync 行为 | 不再回滚到旧配置 |
4.4 验证 Update workflow
-
Azure Portal → Azure Local → Updates
-
检查 2606 显示为 Installed
-
如果 Portal 显示 "Failed to update" / "In progress" 但实际已完成:
远程 PowerShell 连接到集群
Update = Get-SolutionUpdate | Where-Object { _.Version -eq "12.2606.1003.205" }
$Update.State期望:Installed
强制 Portal 刷新(在其中一个节点上):
Stop-ClusterGroup "Cloud Management"
Start-ClusterGroup "Cloud Management"
"If the update status is Installed, no further action is required. The Azure portal refreshes the status correctly within 24 hours."
五、按场景分类的升级决策树
5.1 场景 A:当前 23H2(OS 25398.xxxx)
当前:11.xxxx(OS 25398.xxxx)
↓
Q: 11.2510.1002.93 或 12.2510.1002.94 是否已装?
├─ 是 → 直接跳 12.2606
└─ 否 → 必须先升到 11.2510.1002.93 → 12.2510 → 12.2511 → 12.2512 → 12.2601 → 12.2602 → ... → 12.2606
5.2 场景 B:当前 24H2 早期(2601 / 2602)
当前:12.2601.x / 12.2602.x
↓
Q: AKS Arc 是否用 WS2019 node pool?
├─ 是 → 先升 AKS Arc 到 WS2022/WS2025 node pool
│ ↓
│ 再升 Azure Local 到 12.2606
└─ 否 → 直接升 12.2606(中间 2603/2604/2605 由 Update Wizard 自动应用)
5.3 场景 C:当前 2603 / 2604 / 2605
当前:12.2603.x / 12.2604.x / 12.2605.x
↓
Q: 是否在新功能使用上"已经用上 2604 的 GA 项"?
├─ 是 → 评估 2606 是否带来兼容性问题(一般没有),升到 2606
└─ 否 → 评估是否需要 2606 的修复(NIC IP pool 重叠、startup memory sync)
├─ 是 → 升到 2606
└─ 否 → 可走正常 Update cadence,不必立即升
5.4 场景 D:使用 GPU-P / DDA
Q: 现有 GPU 是否在 OEM 认证列表?
├─ 否 → 不要升 2606,先解决硬件认证
└─ 是 → 升 2606 后用 GPU-P 指标监控验证(2605 起 Azure Monitor 收录)
5.5 场景 E:使用 Local Identity with Key Vault
Q: 当前是否在 Local Identity + KV 部署?
├─ 否 → 不影响 2606 升级(2604 已经 GA)
└─ 是 → 升级后验证 Key Vault 访问策略未变;轮换策略仍生效
六、回滚策略与边界
6.1 升级可以回滚吗?
Azure Local 升级是单向的 in-place 操作,没有"撤销"按钮。
可回滚的边界:
- 配置变更:可由备份恢复
- VM 数据:可由 VM 快照恢复(升级前做的快照)
- 集群拓扑:升级后不可降级到 23H2
6.2 如果升级失败怎么办?
来自 Known issues:
| 失败场景 | 微软建议 |
|---|---|
| 更新状态 Portal 显示 Failed | 用 PowerShell 验证 $Update.State,重启 Cloud Management 集群组强制刷新 |
| Readiness check 失败 | 不要直接放弃------先看具体 View details,可能是 Defendder ASR / Mochostagent 卡死 |
| Mochostagent 卡死 | restart-service mochostagent |
| Defender Restrict App Execution 导致失败 | 禁用该设置 + reboot |
| Defender ASR 阻止 PSExec & WMI | 参考 TSG |
| ARC registration exitcode: 42 | 参考 TSG |
6.3 OEM Support 的回滚路径
如果升级触发 OEM SBE 兼容问题:
- 联系 OEM Support 提供 Solution Builder Extension logs
- OEM 可能推送 SBE hotfix(在 Solution Update 之外的独立补丁)
- 极端情况:OEM 可能建议保持上一版 Solution Update 不动直到 hotfix 发布
七、2606 仍未解决的"已知 / 预期行为"
这部分是客户做架构决策时必须知道 的"已知系统行为",不是 Bug,但会影响运营:
| Feature | 行为 | 影响 |
|---|---|---|
| Operating System | 使用 RegBack 恢复 registry 不支持------会移除 LCM 与 MOC 设置,损坏方案 | 绝对不要用 RegBack 做 Azure Local 的 registry 备份恢复 |
来自 Known and expected behaviors:
"Restoring the registry by using RegBack isn't supported on Azure Local. This operation can remove the Lifecycle Manager (LCM) and Microsoft On-premises Cloud (MOC) settings on your Azure Local instance, which can corrupt the solution."
八、推荐升级窗口(基于微软 6 个月规则)
| 起点 Release | 直跳 2606 的最迟合规日期 | 计算方式 |
|---|---|---|
| 12.2602(首次发布 2026-02-17) | 2026-08-17 | 起点 + 6 个月 |
| 12.2603(首次发布 2026-03-17) | 2026-09-17 | 起点 + 6 个月 |
| 12.2604(首次发布 2026-04-22) | 2026-10-22 | 起点 + 6 个月 |
| 12.2605(首次发布 2026-05-28) | 2026-11-28 | 起点 + 6 个月 |
| 11.2510(首次发布 2025-10-24,23H2 终版) | 2026-04 进入生命周期末期 | 23H2 整条线进入末期 |
强烈建议:不要等到最迟日期才升级。预留 2~4 周的测试窗口(在预生产集群上验证),避免生产环境踩坑。
关于"23H2 已 EOL" 的措辞 :本文严格采用微软官方原文 "reached end of support in April 2026" 的措辞(Solution 支持层面),避免在公开文章里写"23H2 OS 已完全终止支持"------后者容易在客户支持对话中引发争议,且与 Azure Local Solution Support Lifecycle 与 Windows Server OS Servicing Lifecycle 两个独立但相互关联的体系不完全等价。
九、本篇核心 takeaway
- 2602 直跳 2606 在 6 个月窗口内合规------2026-08-17 是硬截止日。
- Azure Stack HCI 23H2 OS(OS Build 25398.xxxx)已进入生命周期末期,24H2(OS Build 26100.xxxx,与 Windows Server 2025 24H2 系列 Build Number 一致)成为当前主支持版本------仍在 23H2 的客户必须启动 24H2 迁移。
- 升级前必须做 7 项检查,特别关注 OEM SBE、AKS Arc WS2019 EOL、SAN 依赖、Defender 配置。
- 升级中按 5 步顺序执行,关键是先装上一个 Cumulative Build、再升 Feature。
- 升级后用 PowerShell 验证 Solution 版本与 OS Build,Portal 状态可能滞后 24 小时。
- Azure Local 升级不可回滚------做好升级前快照,但集群拓扑不可降级。
附录 C · 升级检查清单(可打印)
升级前(7 项)
[ ] 1. OEM SBE 适配状态(2606 是否在 OEM 支持矩阵)
[ ] 2. AKS Arc K8s 版本 + node pool OS(不能是 WS2019)
[ ] 3. 当前 Solution 版本 + OS Build
[ ] 4. 外部 SAN 依赖(FC / iSCSI)
[ ] 5. GPU 部署计划(DDA / GPU-P / 型号)
[ ] 6. Local Identity with KV(如适用)
[ ] 7. Defender 配置(Restrict App Execution / ASR PSExec & WMI 规则)
升级中(5 步)
[ ] 1. 备份 + VM 快照 + iDRAC 配置导出
[ ] 2. 装上一个 Feature Build 的最后 Cumulative
[ ] 3. 解决 readiness check 同名重复问题
[ ] 4. Azure Update Manager 执行 Feature Update
[ ] 5. 升级后验证
升级后(4 项)
[ ] 1. Get-SolutionUpdate 验证 12.2606.1003.205 Installed
[ ] 2. Get-ComputerInfo 验证 OS 26100.32995
[ ] 3. .NET 8.0.28 + 10.0.9 路径验证
[ ] 4. 已知修复验证(NIC IP pool / startup memory sync)
升级后已知未修复(持续监控)
[ ] Mochostagent 卡死(一个月未更新日志)→ restart-service
[ ] Update 状态 Portal 误报 → 用 PowerShell 验证实际状态
[ ] WAC Cluster Manager 扩展 < 5.2.6 → 升级到 2511 build 2.6.6.18+
[ ] Defender Restrict App Execution → 禁用 + reboot
[ ] Defender ASR Block PSExec & WMI → 配置例外
附录 D · 参考链接
| 类别 | 链接 |
|---|---|
| What's new 2606 | [What's new in Hyperconverged Deployments of Azure Local latest release - Azure Local | Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-local/whats-new?view=azloc-2606 "What's new in Hyperconverged Deployments of Azure Local latest release - Azure Local |
| Release information | [Azure Local release information - Azure Local | Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-local/release-information-23h2?view=azloc-2606 "Azure Local release information - Azure Local |
| Known issues | [Release notes with fixed and known issues in Azure Local - Azure Local | Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-local/known-issues?view=azloc-2606 "Release notes with fixed and known issues in Azure Local - Azure Local |
| Overview | [What Is Azure Local? Overview and Key Benefits - Azure Local | Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-local/overview?view=azloc-2606 "What Is Azure Local? Overview and Key Benefits - Azure Local |
| Azure Local Supportability | https://github.com/Azure/AzureStackHCI-Supportability |
| Azure Local Catalog(OEM 认证) | https://aka.ms/AzureStackHCICatalog |
| Disaggregated deployment | [Overview of Disaggregated Deployments for Azure Local - Azure Local | Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-local/overview/disaggregated-overview "Overview of Disaggregated Deployments for Azure Local - Azure Local |
| SAN storage | [Enable External Storage on Azure Local - Azure Local | Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-local/deploy/enable-external-storage "Enable External Storage on Azure Local - Azure Local |
| Local identity with Key Vault | [Deploy Azure Local Using Local Identity with Azure Key Vault - Azure Local | Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-local/deploy/deployment-local-identity-with-key-vault "Deploy Azure Local Using Local Identity with Azure Key Vault - Azure Local |
| Drift detection | [Drift Detection for Azure Local - Azure Local | Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-local/manage/drift-detection "Drift Detection for Azure Local - Azure Local |
| GPU preparation | [Prepare GPUs for Azure Local instance - Azure Local | Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-local/manage/gpu-preparation "Prepare GPUs for Azure Local instance - Azure Local |
| GPU metrics | https://learn.microsoft.com/en-us/azure/azure-local/manage/monitor-cluster-with-metrics#metrics-for-gpu |
| Secure Boot updates | [Manage Secure Boot Updates - Azure Local | Microsoft Learn](https://learn.microsoft.com/en-us/azure/azure-local/manage/manage-secure-boot-updates "Manage Secure Boot Updates - Azure Local |
| Simplified machine provisioning | https://learn.microsoft.com/en-us/azure/azure-local/deploy/simplified-machine-provisioning |
| Security baseline | https://learn.microsoft.com/en-us/azure/azure-local/manage/manage-secure-baseline |
文档维护:本文以微软 Learn 当前版本(azloc-2606)为准。请以官方页面为最终事实。