如何在多个Azure VM上并行删除自定义脚本扩展?

时间:2018-09-04 07:57:16

标签: azure devops

我正在Devops项目上运行QA powershell代码作为自定义脚本扩展。我需要在多个虚拟机上运行它(最少10个)。我想出了如何在VM中并行安装自定义脚本扩展。但是我没有找到在Vms中并行卸载自定义脚本扩展的解决方案。请帮忙。我可以使用ARM模板或使用Azure CLI。

1 个答案:

答案 0 :(得分:0)

一种方法是使用作业,如下所示(草图):

"vm1","vm2","vm3" | Foreach-Object {
    Start-Job -ScriptBlock {
        Remove-AzureRMVMCustomScriptExtension -ResourceGroupName xxx -VmName $using:PSItem -Name extensionname -Force
    }
}

如果您启用了azurermcontextautosave,则以上操作将起作用。 ARM模板无法删除自定义脚本扩展,您可以尝试使用Complete模式,但这有点危险。

但是说实话,您只需要使用forceUpdateTag即可强制扩展重新运行,而无需删除它