标签:
有一些用户在刚开始的时候创建了A7,D14等虚拟机来跑一些IO要求比较高的应用,比如Oracle数据库,MySQL数据库,等到用户量上来之后,性能不够,需要升级数据磁盘到SSD固态硬盘,但是问题是:
那么在这种情况下,除了创建高级存储账号,重新创建DS系列的虚拟机,导数据库的数据从头再来之外, 有没有别的办法?答案是肯定的,你可以根据如下步骤完成虚拟机的迁移:
上述这些步骤比较复杂,也容易出错,因此上我创建了一个虚拟机迁移脚本,这个脚本可以在同一个订阅的不同vnet之间,不同云服务之间,不同存储账号之间,不同的订阅之间,不同的虚拟机类型之间进行迁移,脚本我已经放在了github上,请前往如下地址下载:
https://github.com/kingliantop/azurelabs/blob/master/vm/VMCopy.ps1
本文介绍如何使用该脚本进行不同类型虚拟机之间的迁移:
Powershell 0.9.8
https://github.com/Azure/azure-powershell/releases?after=v1.0.0-preview-gallery-October2015
4. 安装最新版本的azcopy,下载连接如下,请将azcopy安装在d:\migvm下:
azcopy最新版本:
5. 下载Github上的VMcopy.ps1, 放在D:\migvm目录下
6. 利用Azure上的新portal,或者powershell,创建高级存储,目前国内的新portal经过测试可以成功创建高级存储:
或者通过Powershell创建:
New-AzureStorageAccount -StorageAccountName "mypremstorage" -Location "China North" -Type "Premium_LRS"
8. 收集当前需要迁移的源VM的相关信息:
注意事项和说明:
.\VMCopy.ps1 -SourceSubscriptionId SubID
-DestSubscritpionId DesSubID
-SourceCloudServiceName "mycs"
-SourceVMName "myvm"
-DestCloudServiceName "descs"
-DestStorageAccountName "destorage"
-DestLocationName "China East"
-DestVNetName "myvnet"
-DestSubNet "desubnet"
-DestSuffix "new"
9. 登入你的迁移工具虚拟机,打开Azure Powershell,添加源订阅账号和目标订阅账号:
Add-AzureAccount -Environment AzureChinacloud
10. 在Powershell里面,执行迁移脚本进行迁移,例如:
PS D:\migratevm> .\VMCopy.ps1 -SourceSubscriptionId IDXXX -DestSubscritpionId IDXXXX -SourceCloudServiceName mydockermaster -SourceVMName mydockermaster -DestCloudServiceName mydo
ckermasterds -DestStorageAccountName myxiostorage -SourceStorageContainerName vhds -DestStorageContainerName vhds -DestVNetName mydsvmnet -DestLocationName "China North"
待续。。
标签:
原文地址:http://www.cnblogs.com/cloudapps/p/5808586.html