Skip to content

同账号跨区域迁移

文档版本: v1.0
适用环境: Azure Portal
难度等级: ⭐⭐⭐ 中级
预计耗时: 2-4 小时(取决于磁盘大小)

将虚拟机从源区域迁移至目标区域,保持虚拟机配置不变,数据完整性100%。

  • 订阅所有者(Owner)权限或贡献者(Contributor)+用户访问管理员权限
  • 目标区域有足够的配额支持相同规格的虚拟机
  • 虚拟机处于运行状态
  • 已安装最新的根证书和CRL(Linux遵循发行版指南)

本文档使用以下配置作为演示:

配置项
虚拟机名称demo-ubuntu-vm
操作系统Ubuntu 24.04 LTS
虚拟机规格Standard_B2s (2 vCPU, 4 GiB 内存)
系统磁盘Premium SSD 30 GiB
数据磁盘Premium SSD 128 GiB (LUN 0)
源区域East Asia (香港)
目标区域Southeast Asia (新加坡)

最佳实践 - 适用于生产环境

  • 优势: 自动处理依赖项、支持测试验证、可回滚
  • 停机时间: 2-5 分钟(仅在最终迁移阶段)
  • 数据安全: 使用Azure Site Recovery技术在线复制
  • 成本透明: 免费服务,仅收取传输和临时资源费用

备选方案 - 适用于简单场景

  • 优势: 步骤简单直观
  • 停机时间: 15-30 分钟
  • 适用场景: 测试环境、单磁盘虚拟机
  • 限制: 需手动重新配置所有设置

本文档仅介绍方法一(Azure Resource Mover)

  1. 登录Azure Portal
  2. 搜索框输入 resource mover
  3. 选择 Azure Resource Mover
  4. 点击 开始使用(Get Started)

资源转移器

跨区域移动

  1. 订阅: 选择虚拟机所在订阅
  2. 源区域: East Asia (香港)
  3. 目标区域: Southeast Asia (新加坡)
  4. 点击 下一步

配置源和目标

选择要迁移的虚拟机

重要: 仅选择虚拟机本身,不要选择关联的磁盘或网卡。系统会自动检测并添加依赖项。

遇到权限错误,等待新账号

  1. 点击 选择资源
  2. 勾选目标虚拟机: demo-ubuntu-vm
  3. 点击 完成
  4. 点击 下一步
  5. 点击 继续(Proceed)

等待系统验证资源(约30秒)。

图片占位符: 依赖项验证结果

Resource Mover会自动检测以下依赖项:

  • 系统磁盘 (OS Disk)
  • 数据磁盘 (Data Disk)
  • 网络接口卡 (NIC)
  • 虚拟网络 (VNet)
  • 网络安全组 (NSG)
  • 资源组
  1. 切换到 跨区域(Across regions) 视图
  2. 检查所有资源状态为 准备待处理(Prepare pending)
  3. 如果显示 验证依赖项,点击手动触发

图片占位符: 开始准备资源

关键步骤: 此阶段会在虚拟机上安装Azure Site Recovery Mobility代理,开始在线复制数据到目标区域。

  1. 选中所有 准备待处理 状态的资源
  2. 点击 准备(Prepare)
  3. 等待准备完成(30-120分钟,取决于磁盘大小)

数据复制说明:

  • 虚拟机保持运行,业务不受影响
  • 数据经压缩后传输,减少网络成本
  • 目标区域创建临时存储资源
  • 状态变更为 启动移动待处理(Initiate move pending)

图片占位符: 检查复制进度

准备完成后,系统会显示:

  • ✅ 源虚拟机继续运行
  • ✅ 数据已复制到目标区域
  • ✅ ARM模板已生成

停机预警: 此步骤会关闭源虚拟机,预计停机 2-5 分钟

图片占位符: 启动迁移操作

  1. 选中状态为 启动移动待处理 的资源
  2. 点击 启动移动(Initiate move)
  3. 确认操作

迁移过程:

%%{init: {'theme':'base', 'themeVariables': { 'primaryColor':'#0078D4', 'primaryTextColor':'#fff', 'primaryBorderColor':'#005a9e', 'lineColor':'#5c5c5c', 'secondaryColor':'#50E6FF', 'tertiaryColor':'#f0f0f0'}}}%%
flowchart LR
    A[源虚拟机运行中] --> B[复制最终增量数据]
    B --> C[关闭源虚拟机]
    C --> D[目标区域创建虚拟机]
    D --> E[启动目标虚拟机]
    E --> F[迁移完成]
    
    style C fill:#FF6B6B,color:#fff
    style D fill:#0078D4,color:#fff
    style F fill:#4CAF50,color:#fff

通过通知栏跟踪进度:

  • 正在关闭源虚拟机…
  • 正在创建目标虚拟机…
  • 虚拟机启动中…

完成标志: 资源状态变更为 提交移动待处理(Commit move pending)

图片占位符: 目标区域的新虚拟机

  1. 导航至目标区域资源组
  2. 确认虚拟机 demo-ubuntu-vm 存在
  3. 检查状态为 正在运行
  4. 验证网络连接和磁盘挂载

验证检查清单:

  • 虚拟机可通过SSH/RDP连接
  • 所有数据磁盘已挂载且数据完整
  • 网络配置正确(内网IP、NSG规则)
  • 应用服务运行正常

在提交前,源虚拟机和目标虚拟机同时存在,可充分测试。

测试建议:

  • 验证应用功能完整性
  • 检查数据库连接
  • 测试外部API调用
  • 确认监控告警正常

图片占位符: 提交迁移操作

如果测试通过:

  1. 选中 提交移动待处理 状态的资源
  2. 点击 提交移动(Commit move)
  3. 确认操作

提交效果:

  • 迁移标记为成功
  • 资源状态变更为 删除源待处理(Delete source pending)
  • 源虚拟机不再产生费用(但尚未删除)

图片占位符: 放弃迁移操作

如果测试失败:

  1. 选中 提交移动待处理 状态的资源
  2. 点击 放弃移动(Discard move)
  3. 确认操作

回滚效果:

  • 删除目标区域的虚拟机
  • 启动源虚拟机
  • 状态回退至 启动移动待处理
  • 可重新执行迁移

谨慎操作: 删除前请再次确认目标虚拟机运行正常

图片占位符: 删除源资源

  1. 跨区域 视图中选择源资源
  2. 点击 删除源(Delete source)
  3. 确认删除

系统会自动创建隐藏的临时资源:

  • 移动集合(Move Collection)
  • 缓存存储账户
  • Site Recovery资源

清理步骤:

  1. 导航至资源组 RegionMoveRG-eastasia-southeastasia
  2. 启用 显示隐藏资源
  3. 删除缓存存储锁(Lock)
  4. 删除资源组
费用项说明预估成本(演示配置)
Azure Resource Mover服务本身$0 (免费)
数据传输(Egress)跨区域复制压缩后的数据~$0.40 (158 GB × $0.02/GB × 压缩率30%)
临时存储目标区域临时磁盘~$0.10 (按小时计费)
Site Recovery复制许可费用~$10 (按VM数量)
双倍资源期测试期间同时运行两个VM~$0.20/小时 × 测试时长
总计假设测试2小时~$11

注意:

  • 每月前100GB出站流量免费
  • 区域内传输(如East Asia内部): $0.02/GB
  • 跨洲传输(如亚洲到欧洲): $0.05/GB
  1. 缩短测试窗口: 确认后立即提交并删除源资源
  2. 批量迁移: 单次迁移多个虚拟机摊薄管理成本
  3. 非工作时段: 在流量低谷期执行迁移
  • Azure Spot 虚拟机: 不支持跨区域迁移
  • Trusted Launch Linux 虚拟机: 不支持
  • 配置了Marketplace计划的虚拟机: 需取消计划后迁移
  • 启用了Azure Disk Encryption的虚拟机: 需先解除加密
  • Standard SKU公网IP: 无法迁移,需在目标区域重新分配
  • 虚拟机规格: 目标区域必须支持相同或更大的规格
  • 可用性集: 如果源VM在可用性集中,需手动配置目标
  • 仅支持同订阅: 源和目标必须在同一订阅
  • 公有云区域: 支持所有Azure公有云区域互迁
  • 中国区域: 仅支持中国区域内部迁移
  • 政府云: 部分政府云区域受限

检查虚拟机兼容性:

  1. 导航至虚拟机资源页面
  2. 查看 位置 标签旁是否有移动图标
  3. 缺少图标表示该虚拟机类型不支持迁移

准备阶段: 虚拟机持续运行,Mobility代理在后台复制数据,CPU和网络使用率略有增加(通常<5%),不影响业务。

迁移阶段: 虚拟机关闭2-5分钟,无性能影响。

不会。Azure Site Recovery使用块级复制技术,确保数据一致性。复制过程中的增量变更会在最终迁移时同步。建议在迁移前手动创建快照作为额外保险。

直接迁移不支持。需要分两步:

  1. 使用Resource Mover迁移到目标区域(同订阅)
  2. 使用Azure Resource Manager移动到目标订阅

参考: 移动资源到新订阅

Resource Mover支持自动回滚:

  • 准备失败: 不影响源虚拟机,重新准备即可
  • 迁移失败: 源虚拟机保持关闭状态,目标虚拟机未创建,可重试
  • 已迁移未提交: 可使用”放弃移动”恢复源虚拟机

所有操作都是事务性的,不会出现资源悬空。

为什么我的虚拟机显示不支持迁移?

Section titled “为什么我的虚拟机显示不支持迁移?”

常见原因:

  1. 虚拟机类型为Spot或Trusted Launch
  2. 虚拟机关联了不可迁移的资源(如某些负载均衡器)
  3. 虚拟机启用了特殊加密
  4. 目标区域不支持该虚拟机规格

解决方案: 检查虚拟机配置,移除不兼容的设置,或使用手动快照重建方法。