如何将Azure映像从一个区域复制到另一个区域

时间:2017-08-16 18:52:26

标签: azure

我在Azure区域(加拿大中部)的Azure映像中有一个(sysprepped / generalized)服务器模板。我想用它在不同的Azure区域(美国中部)创建Azure VM。它不起作用。

因此,我需要Azure Image也驻留在美国中部。如何将Azure图像从一个Azure区域复制到另一个Azure区域?

3 个答案:

答案 0 :(得分:5)

您可以使用天蓝色的cli extension在区域之间复制图像

az extension add --name image-copy-extension
az image copy --source-resource-group mySources-rg --source-object-name myImage --target-location uksouth northeurope --target-resource-group "images-repo-rg" --cleanup

答案 1 :(得分:0)

目前没有通过门户网站或简单的命令行开关直接选项。

但您可以通过Azcopy工具实现此目的。您实际上将VM映像从区域A中的存储帐户复制到区域B中的另一个存储帐户。

通过代码的另一个选择是使用Azure storage data movement library

另一个选项用于使用azure site recovery的另一个区域的计划外故障转移选项。但是这个选项有一些限制。(在链接中提到)

答案 2 :(得分:0)

正如Aravind所说,目前没有可以将图像复制到另一个位置的命令。您需要将图像的VHD复制到新位置并创建新图像。请参考以下步骤:

1.使用图像在当前位置创建VM。

2.在westeurope中创建一个存储帐户。

3.停止VM并将VM的托管磁盘复制到新的存储帐户。

$sas = Grant-AzureRmDiskAccess -ResourceGroupName "[ResourceGroupName]" -DiskName "[ManagedDiskName]" -DurationInSecond 3600 -Access Read  
$destContext = New-AzureStorageContext –StorageAccountName "[StorageAccountName]" -StorageAccountKey "[StorageAccountAccessKey]"
$blobcopy=Start-AzureStorageBlobCopy -AbsoluteUri $sas.AccessSAS -DestContainer "[ContainerName]" -DestContext $destContext -DestBlob "[NameOfVhdFileToBeCreated].vhd"

注意:使用image创建VM,操作系统磁盘是托管磁盘。

4.使用VHD创建新VM,您可以使用template执行此操作。

5.使用VM创建新图像。请参阅此link

注意:如果您拥有图像的原始VHD,则可以将其复制到新位置并使用它来创建新VM,然后重新创建图像。