最近遇到蛮多需要在2个不同的Azure订阅之间迁移VM的案例,在此将使用Azure copy这个工具的迁移方法写出来,供大家参考。

优势:数据迁移的速度非常快,不需要重新部署应用和数据库,只需要从磁盘重新创建VM。

劣势:需要重新配置Vnet和VM IP,重新创建VM(数据保留在VHD中)

1、 下载--Azure copy : https://azure.microsoft.com/en-us/documentation/articles/storage-use-azcopy/

页面上同时有详细的使用介绍

2、 获取2个订阅的 manage KEY

在源订阅中点击存储---- 需要迁移的存储账户-----manage access KEYs.

记一次Azure VM 迁移(不同的订阅之间)_第1张图片

获取到秘密。

记一次Azure VM 迁移(不同的订阅之间)_第2张图片

使用相同的方法获取目标订阅的存储账户密钥。

获取要迁移的容器URL和目标容器URL(这里直接迁移整个容器,根据不同场景,可以仅迁移指定VHD)

点击需要迁移的VHD所在的容器名称,在URL处获得链接。

记一次Azure VM 迁移(不同的订阅之间)_第3张图片

3、 开始迁移

安装并打开azcopy,输入以下命令:

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest: https://myaccount.blob.core.windows.net/mycontainer /SourceKey:key /DestKey:key /s

记一次Azure VM 迁移(不同的订阅之间)_第4张图片

在我的容器里有1个VHD文件,可以看到所花的时间很短(都在东区),如果是北京和上海之间的迁移,时间会稍长。

4、 在目标订阅中创建VM.

点击虚拟机----磁盘,选择下面的创建

记一次Azure VM 迁移(不同的订阅之间)_第5张图片

输入磁盘的名称

在VHD URL处点开后选择刚才迁移过来的VHD

勾选已包含操作系统

选择你的OS版本

记一次Azure VM 迁移(不同的订阅之间)_第6张图片

创建VM

选择自定义方式

在镜像处选择我的磁盘---刚才创建的VHD

下一步,完成VM的创建。

记一次Azure VM 迁移(不同的订阅之间)_第7张图片