如何更换Azure Scale Set VM OS磁盘(从快照恢复)

如何更换Azure Scale Set VM OS磁盘(从快照恢复),azure,azure-virtual-machine,Azure,Azure Virtual Machine,是否可以在Linux Azure Scale Set虚拟机上更换操作系统磁盘?我正在尝试从快照恢复多节点集群,其中每个VM的操作系统和数据磁盘都有唯一的信息。我可以通过修改scale set模型使其没有数据磁盘,手动将各个VM更新为最新的模型,然后将恢复的数据磁盘添加到VM来替换原始数据磁盘。我未能成功修改缩放集模型,使其没有尝试使用空StorageProfile或StorageProfile.OsDisk节更新操作系统磁盘-没有错误,但模型没有更改。我还尝试在操作系统磁盘上复制快照,但收到“磁

是否可以在Linux Azure Scale Set虚拟机上更换操作系统磁盘?我正在尝试从快照恢复多节点集群,其中每个VM的操作系统和数据磁盘都有唯一的信息。我可以通过修改scale set模型使其没有数据磁盘,手动将各个VM更新为最新的模型,然后将恢复的数据磁盘添加到VM来替换原始数据磁盘。我未能成功修改缩放集模型,使其没有尝试使用空StorageProfile或StorageProfile.OsDisk节更新操作系统磁盘-没有错误,但模型没有更改。我还尝试在操作系统磁盘上复制快照,但收到“磁盘xxx未找到”错误。有没有办法从快照恢复缩放集?

您可以拍摄虚拟机缩放集实例的快照,并从该快照创建托管磁盘

实现Azure PowerShell的步骤:

从虚拟机规模集的实例创建快照:

$rgname=myResourceGroup $vmssname=myVMScaleSet $Id=0 $location=美国东部

$vmss1 = Get-AzVmssVM -ResourceGroupName $rgname -VMScaleSetName $vmssname -InstanceId $Id     
$snapshotconfig = New-AzSnapshotConfig -Location $location -AccountType Standard_LRS -OsType Windows -CreateOption Copy -SourceUri $vmss1.StorageProfile.OsDisk.ManagedDisk.id
New-AzSnapshot -ResourceGroupName $rgname -SnapshotName 'mySnapshot' -Snapshot $snapshotconfig
从快照创建受管磁盘:

$snapshotName=myShapshot $snapshot=Get-AzSnapshot-ResourceGroupName$rgname-SnapshotName$SnapshotName $diskConfig=New-AzDiskConfig-AccountType Premium\u LRS-Location$Location-CreateOption Copy-SourceResourceId$snapshot.Id $osDisk=New-AzDisk-Disk$diskConfig-ResourceGroupName$rgname-DiskName$snapshotName+“\u Disk”

参考文件: