千家信息网

Azure ASM VM 迁移 ARM

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,今天来讨论下ASM与ARM的迁移问题,ASM和ARM是Azure中的两种不同模式,ASM是很古老的一种模式了,与ARM模式相比有很多的不便之处。比如ASM创建资源只能是串行的,没办法多个资源并行创建,
千家信息网最后更新 2025年01月23日Azure ASM VM 迁移 ARM

今天来讨论下ASM与ARM的迁移问题,ASM和ARM是Azure中的两种不同模式,ASM是很古老的一种模式了,与ARM模式相比有很多的不便之处。

比如ASM创建资源只能是串行的,没办法多个资源并行创建,资源没办法打tag,各个组件之间耦合度大等多个问题。所以微软很久之前就已经在推荐客户使用ARM模式的资源了

很多情况下,用户如果创建了ASM资源,比如说虚拟机,现在也都在准备迁移到ARM了。那么如何才能进行迁移,今天就来介绍一番,正巧我在Global Azure中有一个很久之前的ASM资源,可以拿来做实验

通常意义上,VM从ASM迁移到ARM,可以分为两种情况

1:VM关机迁移

这种情况相对简单,通过Azcopy首先拷贝一份vhd文件出来,直接通过vhd创建出disk,然后再通过disk创建出ARM VM即可

2:VM开机迁移

相对来说复杂一点,但是其实也很简单,首先对磁盘做快照,然后将快照导出成vhd,使用vhd创建disk,然后再通过disk创建出ARM VM即可,这种方法对于HDD和SSD磁盘都是通用的

一般来讲对于这种比较繁琐的操作,我都是写好PowerShell脚本执行的,在Mooncake中,这是个不得已而为之的做法,但是在Global Azure,实际上我们可以简单得多


选择一个ASM vm之后,可以看到有个选项直接就是migrate to ARM,真是简单粗暴,我很喜欢



首先迁移前,要先进行一些检查工作,因为其实有很多元素是不支持迁移的


验证过程中


可以看到果然验证出了问题,因为有一个extension不支持迁移,所以验证失败了



没关系,直接到VM中,选择extension,然后把这个extension直接卸载掉


Endpoint rules也会导致失败,删除rules之后,重新进行验证,这时候终于成功了


第二步开始准备迁移工作



准备完成后,会告诉我们资源迁移到ARM模式后会被放在哪个资源组中,另外也会删除注明迁移后之前的ASM资源将会被删除,输入yes之后,点击commit


已经开始迁移


等待一段时间之后,迁移已经完成了


之前的ASM资源已经不见了,换成了ARM资源!



如果Public IP是Reserved IP的话,那么是可以保留的,因为我的IP是动态的,所以迁移后就没了

另外,迁移之后使用的是非托管磁盘,这个可以手动更新



这时候,我们看到的就是一个全新的ARM虚拟机了!跟在mooncake的体验简直完全不一样



0