Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird gezeigt, wie Sie PowerShell- oder Azure CLI-Befehle zum Skripten oder Automatisieren des Start- oder Stopps für virtuelle Azure DevTest Labs-Computer verwenden können. Sie können z. B. Start- oder Stoppbefehle verwenden, um:
- Testen Sie eine dreistufige Anwendung, in der die Ebenen in einer Sequenz beginnen müssen.
- Deaktivieren Sie Ihre virtuellen Computer, um Kosten zu sparen, wenn sie benutzerdefinierte Kriterien erfüllen.
- Starten und stoppen einer VM, wenn ein CI/CD-Workflow (Continuous Integration und Continuous Delivery) beginnt und endet.
Hinweis
Sie können devTest Labs-VMs auch starten, beenden oder neu starten , indem Sie das Azure-Portal verwenden. Lab-Administratoren können das Portal verwenden, um Zeitpläne für automatisches Starten und automatisches Herunterfahren und Richtlinien für Labor-VMs zu konfigurieren.
Voraussetzungen
- Administratorzugriff auf eine Lab-VM in DevTest Labs.
- Zugriff auf Azure PowerShell. Sie können die Azure Cloud Shell PowerShell-Umgebung verwenden oder Azure PowerShell installieren , um einen physischen oder virtuellen Computer zu verwenden. Führen Sie
Update-Module -Name Azaus, um Ihre Installation bei Bedarf zu aktualisieren.
Starten oder Beenden eines virtuellen Computers
Das folgende PowerShell-Skript startet oder stoppt einen virtuellen Computer in einem Labor mithilfe des PowerShell-Cmdlets Invoke-AzResourceAction . Der ResourceId Parameter ist die vollqualifizierte ID für die Lab-VM, die Sie starten oder beenden möchten. Der Action Parameter bestimmt, ob der virtuelle Computer gestartet oder beendet werden soll, je nachdem, welche Aktion Sie benötigen.
Wenn Sie Cloud Shell verwenden, stellen Sie sicher, dass die PowerShell-Umgebung ausgewählt ist.
Verwenden Sie das PowerShell Connect-AzAccount-Cmdlet , um sich bei Ihrem Azure-Konto anzumelden. Wenn Sie über mehrere Azure-Abonnements verfügen, können Sie die Auskommentierung von
Set-AzContextaufheben und die<SubscriptionId>angeben, die verwendet werden soll.$sub = Get-AzSubscription -ErrorAction SilentlyContinue if(-not($sub)) { Connect-AzAccount } # Set-AzContext -SubscriptionId "<Subscription ID>"Legen Sie Variablen fest, indem Sie eigene Werte für
<lab name>,<VM name>angeben und ob SieStartoderStopfür die VM wählen.$devTestLabName = "<lab name>" $vMToStart = "<VM name>" $vmAction = "<Start or Stop>"Starten oder beenden Sie den virtuellen Computer basierend auf dem übergebenen Wert an
$vmAction.# Get the lab information $devTestLab = Get-AzResource -ResourceType 'Microsoft.DevTestLab/labs' -ResourceName $devTestLabName # Start or stop the VM and return a succeeded or failed status $returnStatus = Invoke-AzResourceAction ` -ResourceId "$($devTestLab.ResourceId)/virtualmachines/$vMToStart" ` -Action $vmAction ` -Force if ($returnStatus.Status -eq 'Succeeded') { Write-Output "##[section] Successfully updated DTL machine: $vMToStart, Action: $vmAction" } else { Write-Error "##[error] Failed to update DTL machine: $vMToStart, Action: $vmAction" }