You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调整Azure VM大小遇Key Vault ID不匹配错误,VM无法启动求助

解决Azure VM调整大小失败+KeyVaultAccessForbidden+无法启动问题

你遇到的这个KeyVaultAccessForbidden问题在跨资源组用Key Vault加密VM磁盘的场景里其实挺常见的,尤其是VM配置里的KV引用出了偏差的时候。结合你的情况,我给你一步步的排查和修复方案:

  • 第一步:确认Key Vault资源ID完全匹配
    报错里的保管库ID指向了ResourceGroupB,但你的KV明明在另一个资源组,这说明VM的磁盘加密配置里肯定是引用了错误的KV资源ID。你可以用Azure CLI先拿到KV的真实资源ID:

    az keyvault show --name [NameOfKeyVault] --resource-group [KV所在的资源组名] --query id --output tsv
    

    然后去VM的磁盘加密设置里对比引用的ID——有时候哪怕你选对了KV,配置里也可能残留旧的错误ID,直接手动修正成正确的ID试试。

  • 第二步:验证Key Vault的权限和网络访问
    你说已经启用了部署功能,但再仔细检查这几点:

    1. 在KV的权限(旧门户是访问策略)里,确保Microsoft.Compute服务主体有机密读取的权限;如果VM用了系统/用户托管标识,也要给这个标识分配KV的机密读取权限。
    2. 要是KV开了防火墙,得确认VM所在的VNet被加入了KV的允许列表,或者允许信任的Microsoft服务访问KV。
  • 第三步:修复VM的加密配置(解决无法启动的核心)
    现在VM已经停了,先试试用CLI更新加密配置里的KV引用:

    az vm encryption update --resource-group [ResourceGroupB] --name [你的VM名] --disk-encryption-keyvault [第一步拿到的正确KV资源ID]
    

    如果更新失败,那只能先禁用磁盘加密(重要:先给VM磁盘拍快照备份数据!):

    az vm encryption disable --resource-group [ResourceGroupB] --name [你的VM名] --volume-type all
    

    禁用成功后,重新启用加密,这次一定要选对正确的Key Vault。

  • 第四步:清理VM的残留依赖
    为什么VM会把这个错误的KV当成依赖?大概率是磁盘加密配置里绑定了错误的机密版本。你可以用Azure Portal里的Resource Explorer搜索到你的VM,查看properties.storageProfile.osDisk.encryptionSettings节点,里面的diskEncryptionKey和keyEncryptionKey里的KV资源ID如果是错的,直接编辑保存修正(操作前务必备份配置)。

按这个流程走下来,应该能解决VM无法启动和调整大小的问题,操作前记得备份数据,避免意外!

内容的提问来源于stack exchange,提问作者clickatwill

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 11:37:44