作为创建的一部分,是否可以在DevTest Labs虚拟机上启用自动启动功能,即是否可以将其添加到VM的ARM模板中?DevTest Labs虚拟机自动启动
我目前通过Azure门户手动启用此功能,但是我发现它在从Team Services进行后续部署时被禁用。
解决方案
从下面阿肖克接受答案的启发,我已经成功地调整和简化PowerShell脚本以下...
Param([string] $resourceId)
$tags = (Get-AzureRmResource -ResourceId $resourceId).Tags
if (-Not ($tags) -Or -Not($tags.ContainsKey('AutoStartOn'))) {
$tags += @{ AutoStartOn=$true; }
}
if (-Not ($tags) -Or -Not($tags.ContainsKey('AlwaysOn'))) {
$tags += @{ AlwaysOn=$true; }
}
Set-AzureRmResource -ResourceId $resourceId -Tag $tags -Force
您如何从团队服务部署? –
作为Team Services发布定义的一部分,我们使用** DevTest Labs创建VM **任务来确保机器在deployemnt之前可用。我只能假设这个过程是什么导致机器失去**自动启动**标签。可能是由于在VM创建期间提供了ARM模板?也许还有另一种方法来处理这个问题,比如Ashok的答案中的PowerShell。 – smd
你能通过Get-AzureRmResource命令获得必要的信息吗? '$ VmResourceId =“subscriptions/$ subscriptionId/resourcegroups/$ labResourceGroup/providers/microsoft.devtestlab/labs/$ labName/virtualmachines/$ VmName” $ vm = Get-AzureRmResource -ResourceId $ VmResourceId -ExpandProperties' –