我正在尝试将添加到 Windows 2019 Server VM 的单独托管磁盘从标准 SSD 转换为高级 SSD。根据https://docs.microsoft.com/bs-latn-ba/Azure/virtual-machines/windows/convert-disk-storage上的步骤,我必须停止 VM 才能执行此操作——但我'恐怕如果我停止它,将会产生连锁反应,这将延迟我的团队重新上线并立即继续工作的能力。我试图避免的一种特定情况是强制重新部署 VM。
请看,我在此 Azure VM 上运行了第三方软件,如果重新部署 VM,可能需要重置/重新初始化其软件许可模块 (SLM)。重新初始化可能是一个漫长的过程,因为我必须打电话给技术支持,请求帮助,重新路由谁知道多少次,等待重新颁发的许可证,申请新的许可证,然后测试一切恢复正常。这是我试图避免的事情,因为在我让软件制造商重新发布/重新配置我的 SLM 时,它可能会让我的团队失去一天的工作。SLM 依赖于其主机的 CPUID 和 MAC ID。由于重新部署意味着虚拟机可能会部署在不同的物理硬件上,因此我很可能需要重置 SLM。我不
所以我的问题是,
如果我关闭 VM 进行维护(例如,将外部托管磁盘从标准 SSD 升级到高级 SSD),是否会强制重新部署?
关闭是否与在 Azure 门户上为该 VM 按停止有效?
我听说有一个停止和一个单独的停止/重新部署选项,但如果是这样,我不会立即看到。这是我点击停止后会看到的重新部署选项吗?
尤里卡!我设法升级了我的托管数据磁盘,而无需重新部署 VM!根据 Azure 门户网站,“只有在磁盘未附加或所有者 VM 被解除分配时,才能调整磁盘大小或更改帐户类型。” 看来,如果我可以取消附加/分离有问题的托管磁盘,我就可以自由回家,而无需停止和释放 VM!事实上,事情就是这样。
我了解到,“您可以使用 PowerShell热删除数据磁盘,但在将其与 VM 分离之前,请确保没有任何东西正在使用该磁盘。” (来源:请参阅本文底部的超链接 #3。)因此,我继续并停止了依赖于该磁盘的第三方服务,让 VM 继续运行,并从我自己的本地 PC 上执行了所有步骤记录在这里。
我将在下面详细介绍我执行的自定义 PowerShell 命令(从我的 Windows PowerShell ISE 用户界面记录,嵌入结果,我称之为阶段 1、2 和 4)。我还需要使用 Azure Web 门户(我称之为第 3 阶段)。
这一切都奏效了!再次注意,我分四个阶段执行我的解决方案。简而言之,它们是:
阶段 1:这是使用 PowerShell 完成的。最初,直到 Connect-AzAccount 命令,您将看到安装必要的 Azure PowerShell 模块并将我的 PC 设置为允许执行脚本的准备步骤。我必须单击 Yes 或 Yes To All 几次才能完成模块安装
阶段 2:仍在使用 PowerShell。这是我在运行 Connect-AzAccount 时必须输入 Azure 门户凭据的地方。基本上,然后我在 VM 仍在运行时分离磁盘。这发生在 Remove-AzVMDataDisk 命令和紧随其后的 Update-AzVM 中。
阶段 3:那时,我回到了 Azure 门户网站,将托管数据磁盘从标准 SSD 更改为高级 SSD。
阶段 4:最后,我回到我的 PowerShell 屏幕并继续执行导致 Add-AzVMDataDisk 命令将我的磁盘重新附加到 VM 的步骤 - 以及随后启动它的 Update-AzVM。这使升级后的托管磁盘驱动器在我的 VM 上重新焕发生机!
更棒的是,所有数据都完好无损,我之前分配的驱动器号被保留了,甚至我给它的网络共享名称仍然可以通过我的虚拟网络被其他虚拟机访问!
(请注意,在第 4 阶段,我还执行了一个额外的步骤,希望通过读/写缓存获得最佳的 Premium SSD 性能:这就是命令,'Set-AzVMDataDisk -VM $VM -Lun "0" -Caching ReadWrite'。)
现在,请注意我在 PowerShell 中执行的所有详细步骤以及我在 Azure 门户网站中所做的事情:
阶段1
阶段2
第三阶段
这是我回到 Azure 门户并将驱动器从标准 SSD 更改为高级 SSD 并保存更改的地方!为此,我,
磁盘转换实际上是瞬间完成的。
第 4 阶段
这些是帮助我找到此解决方案的网站:
1 https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-6
2 https://docs.microsoft.com/en-us/powershell/azure/install-az-ps?view=azps-2.5.0
3 https://docs.microsoft.com/en-us/azure/virtual-machines/windows/detach-disk
4 https://docs.microsoft.com/bs-latn-ba/Azure/virtual-machines/windows/convert-disk-storage
5 https://docs.microsoft.com/en-us/azure/virtual-machines/windows/attach-disk-ps
6 https://docs.microsoft.com/en-us/learn/modules/caching-and-performance-azure-storage-and-disks/6-exercise-manage-cache-settings-with-powershell