VMs außerhalb der Geschäftszeiten starten/beenden – Übersicht

Hinweis

Start/Stop VM während der Off-Hours-Version 1 ist jetzt im Marketplace nicht verfügbar, da sie bis zum 30. September 2023 eingestellt wird. Es wird empfohlen, mit der Verwendung von Version 2 zu beginnen, die jetzt allgemein verfügbar ist. Die neue Version bietet alle bestehenden Funktionen und bietet neue Features, z. B. die Unterstützung mehrerer Abonnements von einer einzelnen Starten/Beenden-Instanz aus. Wenn Sie die Version 1-Lösung bereits bereitgestellt haben, können Sie das Feature weiterhin verwenden, und wir werden bis zum 30. September 2023 Support bereitstellen. Die Details der Ankündigung werden in Kürze freigegeben.

Die Funktion „VMs außerhalb der Geschäftszeiten starten/beenden“ startet bzw. beendet aktivierte virtuelle Azure-Computer. Damit können Sie Computer nach benutzerdefinierten Zeitplänen starten und beenden und außerdem über Azure Monitor-Protokolle Erkenntnisse aus Ihren Daten ziehen und durch die Nutzung von Aktionsgruppen optional E-Mails senden. Die Funktion kann in den meisten Szenarien sowohl auf Azure Resource Manager-VMs als auch auf klassischen VMs aktiviert werden.

Diese Funktion verwendet das Cmdlet Start-AzVm zum Starten von VMs. Zum Beenden von VMs wird Stop-AzVM verwendet.

Hinweis

Die Funktion „VMs außerhalb der Geschäftszeiten starten/beenden“ wurde dahingehend aktualisiert, dass sie die neuesten verfügbaren Versionen der Azure-Module unterstützt. Die aktualisierte Version dieser Funktion, die im Marketplace verfügbar ist, bietet keine Unterstützung für AzureRM-Module, da eine Migration von AzureRM- zu Az-Modulen durchgeführt wurde. Die Runbooks wurden zwar aktualisiert und verwenden die neuen Cmdlets des Azure Az-Moduls, verwenden aber weiterhin den AzureRM-Präfixalias.

Die Funktion bietet eine dezentrale und kostengünstige Automatisierungsoption für Benutzer, die ihre VM-Kosten optimieren möchten. Sie können die Funktion für Folgendes verwenden:

Die aktuelle Funktion hat folgende Einschränkungen:

  • Sie ermöglicht die Verwaltung von VMs in allen Regionen. Allerdings lässt sie sich nur unter demselben Abonnement wie Ihr Azure Automation-Konto verwenden.
  • Sie ist in Azure und Azure Government für jede Region verfügbar, die einen Log Analytics-Arbeitsbereich, ein Azure Automation-Konto und Warnungen unterstützt. Azure Government-Regionen unterstützen derzeit keine E-Mail-Funktionalität.

Berechtigungen

Sie müssen über bestimmte Berechtigungen verfügen, um die Funktion „VMs außerhalb der Geschäftszeiten starten/beenden“ aktivieren zu können. Die Berechtigungen unterscheiden sich je nachdem, ob die Funktion ein Automation-Konto und einen Log Analytics Arbeitsbereich verwendet, die vorab erstellt wurden, oder ob sie ein neues Konto und einen neuen Arbeitsbereich erstellt.

Sie müssen keine Berechtigungen konfigurieren, wenn Sie Mitwirkender für das Abonnement und einen globalen Administrator in Ihrem Microsoft Entra-Mandanten sind. Wenn Sie nicht über diese Rechte verfügen oder eine benutzerdefinierte Rolle konfigurieren möchten, stellen Sie sicher, dass Sie über die unten beschriebenen Berechtigungen verfügen.

Berechtigungen bei bereits vorhandenem Automation-Konto und Log Analytics-Arbeitsbereich

Um VMs für die Funktion „VMs außerhalb der Geschäftszeiten starten/beenden“ unter Verwendung eines vorhandenen Automation-Kontos und eines vorhandenen Log Analytics-Arbeitsbereichs zu aktivieren, benötigen Sie die folgenden Berechtigungen für den Gültigkeitsbereich der Ressourcengruppe. Weitere Informationen zu Rollen finden Sie unter Benutzerdefinierte Azure-Rollen.

Berechtigung `Scope`
Microsoft.Automation/automationAccounts/read Ressourcengruppe
Microsoft.Automation/automationAccounts/variables/write Ressourcengruppe
Microsoft.Automation/automationAccounts/schedules/write Ressourcengruppe
Microsoft.Automation/automationAccounts/runbooks/write Ressourcengruppe
Microsoft.Automation/automationAccounts/connections/write Ressourcengruppe
Microsoft.Automation/automationAccounts/certificates/write Ressourcengruppe
Microsoft.Automation/automationAccounts/modules/write Ressourcengruppe
Microsoft.Automation/automationAccounts/modules/read Ressourcengruppe
Microsoft.automation/automationAccounts/jobSchedules/write Ressourcengruppe
Microsoft.Automation/automationAccounts/jobs/write Ressourcengruppe
Microsoft.Automation/automationAccounts/jobs/read Ressourcengruppe
Microsoft.OperationsManagement/solutions/write Ressourcengruppe
Microsoft.OperationalInsights/workspaces/* Ressourcengruppe
Microsoft.Insights/diagnosticSettings/write Ressourcengruppe
Microsoft.Insights/ActionGroups/Write Ressourcengruppe
Microsoft.Insights/ActionGroups/read Ressourcengruppe
Microsoft.Resources/subscriptions/resourceGroups/read Ressourcengruppe
Microsoft.Resources/deployments/* Ressourcengruppe

Komponenten für Version 1

Die Funktion „VMs außerhalb der Geschäftszeiten starten/beenden“ enthält vorkonfigurierte Runbooks, Zeitpläne und eine Integration in die Azure Monitor-Protokolle. Mithilfe dieser Elemente können Sie das Starten und Herunterfahren Ihrer VMs an Ihre geschäftlichen Anforderungen anpassen.

Runbooks für Version 1

In der folgenden Tabelle sind die mit dieser Funktion in Ihrem Automation-Konto bereitgestellten Runbooks aufgeführt. Nehmen Sie am Runbookcode KEINE Änderungen vor. Schreiben Sie stattdessen Ihr eigenes Runbook, um neue Funktionen nutzen zu können.

Wichtig

Führen Sie keine Runbooks direkt aus, an deren Name der Zusatz child angefügt ist.

Alle übergeordneten Runbooks enthalten den Parameter WhatIf. Bei der Festlegung auf TRUE wird durch den Parameter die Beschreibung des exakten Verhaltens des Runbooks unterstützt, wenn es ohne den Parameter ausgeführt wird, und es wird überprüft, ob die richtigen VMs als Ziel verwendet werden. Ein Runbook führt seine zugehörigen definierten Aktionen nur aus, wenn der Parameter WhatIf auf FALSE festgelegt ist.

Runbook Parameter Beschreibung
AutoStop_CreateAlert_Child VMObject
AlertAction
WebHookURI
Wird über das übergeordnete Runbook aufgerufen. Dieses Runbook erstellt für das Auto-Stop-Szenario Warnungen pro Ressource.
AutoStop_CreateAlert_Parent VMList
WhatIf: TRUE oder FALSE
Erstellt oder aktualisiert Azure-Warnungsregeln auf VMs im Zielabonnement oder den Zielressourcengruppen.
VMList ist eine durch Trennzeichen getrennte Liste virtueller Computer (ohne Leerzeichen), z. B. vm1,vm2,vm3.
WhatIf ermöglicht die Überprüfung der Runbooklogik ohne Ausführung.
AutoStop_Disable None Deaktiviert Auto-Stop-Warnungen und den Standardzeitplan.
AutoStop_VM_Child WebHookData Wird über das übergeordnete Runbook aufgerufen. Warnungsregeln rufen dieses Runbook auf, um einen klassischen virtuellen Computer zu beenden.
AutoStop_VM_Child_ARM WebHookData Wird über das übergeordnete Runbook aufgerufen. Warnungsregeln rufen dieses Runbook auf, um einen virtuellen Computer zu beenden.
ScheduledStartStop_Base_Classic CloudServiceName
Aktion: Starten oder Beenden
VMList
Führt Aktionen zum Starten oder Beenden in der klassischen VM-Gruppe durch Cloud Services aus.
ScheduledStartStop_Child VMName
Aktion: Starten oder Beenden
ResourceGroupName
Wird über das übergeordnete Runbook aufgerufen. Führt für den geplanten Beendigungsvorgang eine Aktion zum Starten oder Beenden aus.
ScheduledStartStop_Child_Classic VMName
Aktion: Starten oder Beenden
ResourceGroupName
Wird über das übergeordnete Runbook aufgerufen. Führt für den geplanten Beendigungsvorgang eine Aktion zum Starten oder Beenden für klassische VMs aus.
ScheduledStartStop_Parent Aktion: Starten oder Beenden
VMList
WhatIf: TRUE oder FALSE
Das Starten oder Beenden wirkt sich auf alle virtuellen Computer im Abonnement aus. Bearbeiten Sie die Variablen External_Start_ResourceGroupNames und External_Stop_ResourceGroupNames so, dass sie nur für diese Zielressourcengruppen ausgeführt werden. Sie können zudem bestimmte VMs ausschließen, indem Sie die Variable External_ExcludeVMNames aktualisieren.
SequencedStartStop_Parent Aktion: Starten oder Beenden
WhatIf: TRUE oder FALSE
VMList
Erstellen Sie auf jeder VM, für die Sie die Aktivität zum Starten/Beenden verwenden möchten, Tags mit den Namen sequencestart und sequencestop. Bei diesen Tagnamen wird zwischen Groß- und Kleinschreibung unterschieden. Der Wert des Tags muss eine Liste positiver ganzer Zahlen (etwa 1,2,3) sein, die der Reihenfolge entspricht, in der das Starten oder Beenden durchgeführt werden soll.
Hinweis: Die VMs müssen sich innerhalb von Ressourcengruppen befinden, die in den Variablen External_Start_ResourceGroupNames, External_Stop_ResourceGroupNames und External_ExcludeVMNames definiert sind. Diese müssen über die entsprechenden Tags verfügen, damit Aktionen wirksam werden.

Variablen für Version 1

In der folgenden Tabelle sind die in Ihrem Automation-Konto erstellten Variablen aufgeführt. Ändern Sie nur Variablen, die das Präfix External aufweisen. Wenn Sie Variablen mit dem Präfix Internal ändern, hat dies unerwünschte Auswirkungen.

Hinweis

Die Einschränkungen beim VM-Namen und der Ressourcengruppe sind größtenteils durch die Variablengröße bedingt. Weitere Informationen finden Sie unter Variable Objekte in Azure Automation.

Hinweis

Der Standardwert für die Variable External_WaitTimeForVMRetryInSeconds wurde von 600 auf 2.100 aktualisiert.

In allen Szenarien sind die Variablen External_Start_ResourceGroupNames, External_Stop_ResourceGroupNames und External_ExcludeVMNames für die Ziel-VMs erforderlich. Ausgenommen sind die VMs in den durch Trennzeichen getrennten Listen für die Runbooks AutoStop_CreateAlert_Parent, SequencedStartStop_Parent und ScheduledStartStop_Parent. Dies bedeutet, dass sich die VMs in Zielressourcengruppen befinden müssen, damit Aktionen zum Starten und Beenden durchgeführt werden. Die Logik ähnelt der von Azure Policy, da Sie das Abonnement oder die Ressourcengruppe als Ziel verwenden können und neu erstellte VMs Aktionen erben. Hierdurch wird vermieden, dass für jeden virtuellen Computer jeweils ein separater Zeitplan gepflegt werden muss und dass Aktionen zum Starten und Beenden für die Skalierung verwaltet werden müssen.

Zeitpläne für Version 1

Hinweis

Dieser Artikel wurde kürzlich aktualisiert, um den Begriff Azure Monitor-Protokolle anstelle von Log Analytics aufzunehmen. Protokolldaten werden immer noch in einem Log Analytics-Arbeitsbereich gespeichert und weiterhin mit dem gleichen Log Analytics-Dienst erfasst und analysiert. Die Terminologie hat sich geändert, um der Rolle von Protokollen in Azure Monitor besser Rechnung zu tragen. Weitere Informationen finden Sie unter Terminologieänderungen bei Azure Monitor.

Anzeigen des Features für Version 1

Sie können über eine der folgenden Vorgehensweisen auf die aktivierte Funktion zugreifen:

  • Wählen Sie in Ihrem Automation-Konto unter Verwandtes Ressourcen die Option VM starten/beenden aus. Wählen Sie auf der Seite „VM starten/beenden“ unter Lösungen zum Starten/Beenden von VMs verwalten die Option Lösung verwalten aus.

  • Navigieren Sie zu dem Log Analytics-Arbeitsbereich, der mit Ihrem Automation-Konto verknüpft ist. Nachdem Sie den Arbeitsbereich ausgewählt haben, wählen Sie im linken Bereich "Lösungen " aus. Wählen Sie auf der Seite „Lösungen“ in der Liste Start-Stop-VM[Arbeitsbereich] aus.

Nach dem Auswählen der Funktion wird die Seite Start-Stop-VM[Arbeitsbereich] angezeigt. Hier können Sie wichtige Details überprüfen, z. B. die Informationen auf der Kachel StartStopVM. Wie in Ihrem Log Analytics-Arbeitsbereich auch, werden auf dieser Kachel die Anzahl und eine grafische Darstellung der Runbookaufträge für die Funktion angezeigt, die gestartet und erfolgreich abgeschlossen wurden.

Automation Update Management page

Sie können eine weitergehende Analyse der Auftragsdatensätze durchführen, indem Sie auf die Ringkachel klicken. Im Dashboard werden der Auftragsverlauf und vordefinierte Protokollsuchabfragen angezeigt. Wechseln Sie zum erweiterten Log Analytics-Portal, um basierend auf Ihren Suchabfragen eine Suche durchzuführen.

Nächste Schritte

Informationen zum Aktivieren der Funktion auf VMs in Ihrer Umgebung finden Sie unter Aktivieren von „VMs außerhalb der Geschäftszeiten starten/beenden“.