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

将一代Azure VM恢复至新VM时遇CloudInternalError故障排查

问题描述

尝试将Gen 1 Azure VM恢复至不同Azure区域的另一资源组中的新Gen 1 VM,目标资源组已包含新VM所需的虚拟网络。使用以下PowerShell脚本获取最新恢复点并执行恢复:

# Get the most recent recovery point name
[string]$rpName = az backup recoverypoint list --resource-group $vm.resourceGroup `
    --vault-name $vm.vaultName `
    --backup-management-type 'AzureIaasVM' `
    --container-name $vm.vmName `
    --item-name $vm.vmName `
    --query '[0].name' `
    --output 'tsv'

Write-Output "Restoring $($vm.vmName) to $($vm.targetVmName)"
az backup restore restore-disks --resource-group $vm.resourceGroup `
    --vault-name $vm.vaultName `
    --container-name $vm.vmName `
    --item-name $vm.vmName `
    --restore-mode 'AlternateLocation' `
    --storage-account $storageAccountName `
    --storage-account-resource-group $storageAccountRg `
    --target-resource-group $vm.targetVnetResourceGroup `
    --rp-name $rpName `
    --target-vm-name $vm.targetVmName `
    --target-vnet-name $vm.targetVnetName `
    --target-vnet-resource-group $vm.targetVnetResourceGroup `
    --target-subnet-name $vm.targetSubnetName

恢复任务在备份中心显示「Completed with warnings」,深入查看作业发现错误代码为CloudInternalError,提示「Microsoft Azure Backup encountered an internal error」。任务子步骤:

  • 从保管库传输数据(已完成)
  • 创建恢复的虚拟机(执行失败)

使用的存储账户为Standard_LRS类型的StorageV2账户,请问问题出在哪里?

可能的原因及解决方法

1. 存储账户区域与目标区域不匹配

跨区域恢复时,指定的存储账户必须位于目标VM所在的区域。如果存储账户在源区域或其他非目标区域,会导致磁盘传输完成后,VM创建过程中因跨区域磁盘访问限制触发内部错误。

解决步骤:

  • 检查$storageAccountName对应的存储账户区域,确认与$vm.targetVnetResourceGroup的区域一致
  • 若区域不匹配,在目标区域创建新的Standard_LRS StorageV2账户,替换脚本中的存储账户参数后重新执行恢复

2. 目标子网的网络配置限制

目标子网的NSG规则或服务端点配置可能阻止了VM创建所需的内部操作:

  • NSG规则拒绝了Azure Compute服务的内部API调用
  • 子网启用了Storage服务端点,但未将恢复用的存储账户加入允许列表,导致磁盘附加失败

解决步骤:

  • 临时移除目标子网关联的NSG,重新尝试恢复。若恢复成功,再逐步排查NSG中限制VM创建的规则
  • 检查子网的服务端点设置,确保存储账户的资源ID或所在区域被包含在允许范围内

3. 磁盘加密状态不兼容

如果源VM启用了Azure磁盘加密,目标区域的密钥管理配置可能不匹配:

  • 目标区域没有对应的密钥保管库,或备份服务没有访问该密钥保管库的权限
  • 加密密钥的区域与目标区域不兼容,导致磁盘无法正常附加到新VM

解决步骤:

  • 确认目标区域存在与源VM同类型的密钥保管库(如使用相同的密钥类型、访问策略)
  • 为Azure Backup服务主体分配密钥保管库的Key Vault Contributor或Crypto Service Encryption User权限
  • 尝试手动从存储账户中取出恢复的磁盘,手动创建Gen 1 VM并附加磁盘,观察是否出现具体错误提示

4. 区域服务临时故障

CloudInternalError有时是由于目标区域的Compute或Backup服务出现临时中断导致的。

解决步骤:

  • 查看Azure状态页面,确认目标区域的Compute和Backup服务状态正常
  • 等待30-60分钟后重新执行恢复脚本,避开服务高峰期

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 08:32:41