Aktivieren von Azure Automation State Configuration

Hinweis

Azure Automation State Configuration wird am 30. September 2027 eingestellt, bitte wechseln Sie zu Azure Computerkonfiguration bis zu diesem Datum. Weitere Informationen finden Sie im Blogbeitrag. Der Azure Computerkonfigurationsdienst kombiniert Features der DSC-Erweiterung, Azure Automation State Configuration und die am häufigsten angeforderten Features aus Kundenfeedback. Azure Computerkonfiguration umfasst auch hybride Computerunterstützung über Arc-fähige Server.

Wichtig

Die Navigationslinks Hinzufügen, Konfiguration zusammenstellen und Katalog werden am 31. März 2025 aus dem Portal entfernt.

Achtung

Azure Automation DSC für Linux wurde am 30. September 2023 eingestellt. Weitere Informationen finden Sie in der Ankündigung.

In diesem Artikel wird beschrieben, wie Sie Ihre Computer für die Verwaltung mit Azure Automation State Configuration einrichten können. Ausführliche Informationen zu diesem Dienst finden Sie unter Azure Automation State Configuration Overview.

Aktivieren Azure VMs

mit Azure Automation State Configuration können Sie problemlos Azure VMs für die Konfigurationsverwaltung aktivieren, indem Sie das Azure Portal, Azure Resource Manager Vorlagen oder PowerShell verwenden. Die Azure VM Desired State Configuration Erweiterung registriert den virtuellen Computer automatisch mit Azure Automation State Configuration. Da die Azure-Erweiterung asynchron ausgeführt wird, werden Schritte zum Nachverfolgen des Fortschritts in Check status of VM setup bereitgestellt.

Hinweis

Beim Bereitstellen von DSC für einen Linux-Knoten wird der Ordner /tmp verwendet. Module wie nxautomation werden temporär zur Überprüfung heruntergeladen, bevor Sie an den entsprechenden Speicherorten installiert werden. Um sicherzustellen, dass Module ordnungsgemäß installiert werden, benötigt der Log Analytics Agent für Linux Lese-/Schreibberechtigungen für den Ordner /tmp. Der Log Analytics-Agent für Linux wird als omsagent-Benutzer ausgeführt. Um dem >-Benutzer Schreibberechtigung zu erteilen, führen Sie den Befehl omsagent aus.

Aktivieren eines virtuellen Computers mithilfe Azure Portals

So aktivieren Sie eine Azure-VM für die State Configuration über das Azure-Portal.

  1. Navigieren Sie zum Azure Automation Konto, in dem VMs aktiviert werden sollen.
  2. Wählen Sie auf der Seite State Configuration die Registerkarte Nodes und dann Add aus.
  3. Wählen Sie einen virtuellen Computer zur Aktivierung aus.
  4. Wenn auf dem Computer nicht die PowerShell-Erweiterung für DSC installiert ist und der Energiezustand ausgeführt wird, wählen Sie Verbinden aus.
  5. Geben Sie unter Registration die werte PowerShell DSC Local Konfigurations-Manager values ein, die für Ihren Anwendungsfall erforderlich sind. Optional können Sie eine Knotenkonfiguration eingeben, die dem virtuellen Computer zugewiesen werden soll.

Aktivieren der VM

Aktivieren eines virtuellen Computers mithilfe von Azure Resource Manager-Vorlagen

Sie können einen virtuellen Computer für State Configuration mithilfe von Azure Resource Manager Vorlagen installieren und aktivieren. Eine Beispielvorlage, die eine vorhandene VM für State Configuration ermöglicht, finden Sie unter Server, der von Desired State Configuration Dienst verwaltet wird. Wenn Sie einen Skalierungssatz für virtuelle Computer verwalten, lesen Sie die Beispielvorlage in Virtual machine scale set configuration managed by Azure Automation.

Aktivieren von Computern mit PowerShell

Sie können das Cmdlet Register-AzAutomationDscNode in PowerShell verwenden, um VMs für State Configuration zu aktivieren.

Hinweis

Das Cmdlet Register-AzAutomationDscNode wird derzeit nur für Computer implementiert, auf denen Windows ausgeführt wird, da es nur die Windows Erweiterung auslöst.

Registrieren von virtuellen Computern über Azure Abonnements hinweg

Die beste Möglichkeit zum Registrieren von VMs aus anderen Azure-Abonnements besteht darin, die DSC-Erweiterung in einer Azure Resource Manager Bereitstellungsvorlage zu verwenden. Beispiele werden in Desired State Configuration Erweiterung mit Azure Resource Manager Vorlagen bereitgestellt.

Verwenden der DSC-Metakonfiguration zum Registrieren von Hybridcomputern

Sie können Computer über die DSC-Metakonfiguration sicher für ein Azure Automation Konto aktivieren. Die in DSC implementierten Protokolle verwenden Informationen aus der Metakonfiguration, um sich bei Azure Automation State Configuration zu authentifizieren. Der Knoten wird beim Dienst mit der Registrierungs-URL registriert und mit einem Registrierungsschlüssel authentifiziert. Während der Registrierung handeln der DSC-Knoten und der DSC-Dienst ein eindeutiges Zertifikat für den Knoten aus, das nach der Registrierung zur Authentifizierung beim Server verwendet wird. Durch diesen Prozess wird verhindert, dass aktivierte Knoten die Identität eines anderen Knotens annehmen, wenn z. B. ein Knoten kompromittiert wurde und böswillige Absichten verfolgt. Nach der Registrierung wird der Registrierungsschlüssel nicht wieder für die Authentifizierung verwendet und vom Knoten gelöscht.

Sie können die für das State Configuration Registrierungsprotokoll erforderlichen Informationen aus Keys unter Account Settings im Azure Portal abrufen.

Azure Automatisierungsschlüssel und URL

  • Die Registrierungs-URL finden Sie unter dem Feld „URL“ auf der Seite „Schlüssel“.
  • Beim Registrierungsschlüssel handelt es sich um den Wert des Felds Primärer Zugriffsschlüssel oder Sekundärer Zugriffsschlüssel auf der Seite „Schlüssel“. Beide Schlüssel können verwendet werden.

Sie können den primären und den sekundären Zugriffsschlüssel eines Automation-Kontos jederzeit auf der Seite „Schlüssel“ erneut generieren, was für zusätzliche Sicherheit sorgt. Durch die Neugenerierung der Schlüssel wird verhindert, dass bei zukünftigen Knotenregistrierungen vorherige Schlüssel verwendet werden.

Generieren von DSC-Metakonfigurationen

Um einen beliebigen Computer für State Configuration zu aktivieren, können Sie eine DSC-Metakonfiguration generieren. Diese Konfiguration weist den DSC-Agent an, Konfigurationen von Azure Automation State Configuration herunterzuladen und/oder Berichte an dieses System zu senden. Sie können eine DSC-Metakonfiguration für Azure Automation State Configuration entweder mithilfe einer PowerShell-DSC-Konfiguration oder der Azure Automation PowerShell-Cmdlets generieren.

Hinweis

DSC-Metakonfigurationen enthalten die notwendigen Geheimnisse, um einen Computer in einem Automation-Konto für die Verwaltung zu aktivieren. Stellen Sie den ordnungsgemäßen Schutz aller von Ihnen generierten DSC-Metakonfigurationen sicher oder löschen Sie diese nach der Verwendung.

Die Local Konfigurations-Manager (LCM) steuert die Proxyunterstützung für Metakonfigurationen. Der LCM wird auf allen Zielknoten ausgeführt und ist zuständig für das Aufrufen der Konfigurationsressourcen, die in einem DSC-Metakonfigurationsskript enthalten sind. Sie können die Proxy-Unterstützung in eine Metakonfiguration einschließen, indem Sie Definitionen der Eigenschaften ProxyURL und ProxyCredential wie erforderlich in die Blöcke ConfigurationRepositoryWeb, ResourceRepositoryWeb und ReportServerWeb einbeziehen. Ein Beispiel für die URL-Einstellung ist ProxyURL = "http://172.16.3.6:3128";. Die eigenschaft ProxyCredential wird auf ein PSCredential-Objekt festgelegt, wie in Manage-Anmeldeinformationen in Azure Automation beschrieben.

Generieren von DSC-Metakonfigurationen mithilfe einer DSC-Konfiguration

  1. Öffnen Sie einen Text-Editor, z. B. Visual Studio Code (VS Code), als Administrator auf einem Computer in Ihrer lokalen Umgebung. Auf dem Computer muss die neueste Version von WMF 5 installiert sein.

  2. Kopieren Sie das folgende Skript in Ihre lokale Umgebung. Dieses Skript enthält eine PowerShell DSC-Konfiguration zum Erstellen von Metakonfigurationen und einen Befehl zum Starten der Metakonfigurationserstellung.

    Hinweis

    Die Statuskonfigurationsnamen für Knoten berücksichtigen die Groß- und Kleinschreibung im Azure-Portal. Wenn der Fall nicht übereinstimmend ist, wird der Knoten nicht unter der Registerkarte "Knoten" angezeigt. Dieser Vorgang richtet sich an VMs, die nicht Azure. Die Registrierung eines Azure virtuellen Computers als Hybridknoten führt zu DSC-Gebühren.

    # The DSC configuration that will generate metaconfigurations
    [DscLocalConfigurationManager()]
    Configuration DscMetaConfigs
    {
         param
         (
             [Parameter(Mandatory=$True)]
             [String]$RegistrationUrl,
    
             [Parameter(Mandatory=$True)]
             [String]$RegistrationKey,
    
             [Parameter(Mandatory=$True)]
             [String[]]$ComputerName,
    
             [Int]$RefreshFrequencyMins = 30,
    
             [Int]$ConfigurationModeFrequencyMins = 15,
    
             [String]$ConfigurationMode = 'ApplyAndMonitor',
    
             [String]$NodeConfigurationName,
    
             [Boolean]$RebootNodeIfNeeded= $False,
    
             [String]$ActionAfterReboot = 'ContinueConfiguration',
    
             [Boolean]$AllowModuleOverwrite = $False,
    
             [Boolean]$ReportOnly
         )
    
         if(!$NodeConfigurationName -or $NodeConfigurationName -eq '')
         {
             $ConfigurationNames = $null
         }
         else
         {
             $ConfigurationNames = @($NodeConfigurationName)
         }
    
         if($ReportOnly)
         {
             $RefreshMode = 'PUSH'
         }
         else
         {
             $RefreshMode = 'PULL'
         }
    
         Node $ComputerName
         {
             Settings
             {
                 RefreshFrequencyMins           = $RefreshFrequencyMins
                 RefreshMode                    = $RefreshMode
                 ConfigurationMode              = $ConfigurationMode
                 AllowModuleOverwrite           = $AllowModuleOverwrite
                 RebootNodeIfNeeded             = $RebootNodeIfNeeded
                 ActionAfterReboot              = $ActionAfterReboot
                 ConfigurationModeFrequencyMins = $ConfigurationModeFrequencyMins
             }
    
             if(!$ReportOnly)
             {
             ConfigurationRepositoryWeb AzureAutomationStateConfiguration
                 {
                     ServerUrl          = $RegistrationUrl
                     RegistrationKey    = $RegistrationKey
                     ConfigurationNames = $ConfigurationNames
                 }
    
                 ResourceRepositoryWeb AzureAutomationStateConfiguration
                 {
                     ServerUrl       = $RegistrationUrl
                     RegistrationKey = $RegistrationKey
                 }
             }
    
             ReportServerWeb AzureAutomationStateConfiguration
             {
                 ServerUrl       = $RegistrationUrl
                 RegistrationKey = $RegistrationKey
             }
         }
    }
    
    # Create the metaconfigurations
    # NOTE: DSC Node Configuration names are case sensitive in the portal.
    # TODO: edit the below as needed for your use case
    $Params = @{
         RegistrationUrl = '<fill me in>';
         RegistrationKey = '<fill me in>';
         ComputerName = @('<some VM to onboard>', '<some other VM to onboard>');
         NodeConfigurationName = 'SimpleConfig.webserver';
         RefreshFrequencyMins = 30;
         ConfigurationModeFrequencyMins = 15;
         RebootNodeIfNeeded = $False;
         AllowModuleOverwrite = $False;
         ConfigurationMode = 'ApplyAndMonitor';
         ActionAfterReboot = 'ContinueConfiguration';
         ReportOnly = $False;  # Set to $True to have machines only report to AA DSC but not pull from it
    }
    
    # Use PowerShell splatting to pass parameters to the DSC configuration being invoked
    # For more info about splatting, run: Get-Help -Name about_Splatting
    DscMetaConfigs @Params
    
  3. Geben Sie den Registrierungsschlüssel und die URL für Ihr Automation-Konto und die Namen der Computer ein, die aktiviert werden sollen. Alle anderen Parameter sind optional. Informationen zum Ermitteln des Registrierungsschlüssels und der Registrierungs-URL für Ihr Automation-Konto finden Sie unter Verwenden der DSC-Metakonfiguration zum Registrieren von Hybridcomputern.

  4. Wenn die Computer DSC-Statusinformationen an Azure Automation State Configuration melden, aber keine Konfiguration oder PowerShell-Module abrufen sollen, legen Sie den Parameter ReportOnly auf "true" fest.

  5. Wenn ReportOnly nicht festgelegt ist, melden die Computer DSC-Statusinformationen an Azure Automation State Configuration und Pullkonfiguration oder PowerShell-Module. Legen Sie die Parameter in den Blöcken ConfigurationRepositoryWeb, ResourceRepositoryWeb und ReportServerWeb entsprechend fest.

  6. Führen Sie das Skript aus. Ihr Arbeitsverzeichnis sollte nun einen Ordner namens DscMetaConfigs mit den PowerShell DSC-Metakonfigurationen der (als Administrator) zu aktivierenden Computer enthalten.

    Set-DscLocalConfigurationManager -Path ./DscMetaConfigs
    

Generieren von DSC-Metakonfigurationen mithilfe von Azure Automation-Cmdlets

Sie können die DSC-Metakonfigurationen mit den Azure Automation Cmdlets unter den folgenden Bedingungen generieren:

  • Die LCM-Standardeinstellungen entsprechen Ihrem Anwendungsfall
  • Sie möchten Maschinen so konfigurieren, dass sie sowohl von Azure Automation State Configuration abrufen als auch an sie berichten.

Führen Sie die folgenden Schritte aus, um die Metakonfigurationen zu generieren:

  1. Öffnen Sie die PowerShell-Konsole oder VS Code als Administrator auf einem Computer in Ihrer lokalen Umgebung.

  2. Stellen Sie eine Verbindung mit Azure Resource Manager mithilfe von Connect-AzAccount her.

  3. Laden Sie von dem Automation-Konto, in dem Sie Knoten einrichten möchten, die PowerShell DSC-Metakonfigurationen für die Computer herunter, die Sie aktivieren möchten.

    # Define the parameters for Get-AzAutomationDscOnboardingMetaconfig using PowerShell Splatting
    $Params = @{
        ResourceGroupName = 'ContosoResources' # The Resource Group that contains your Azure Automation account
        AutomationAccountName = 'ContosoAutomation'; # The Azure Automation account where you want to onboard the node
        ComputerName = @('web01', 'web02', 'sql01'); # The computers to generate the metaconfigurations for
        OutputFolder = "$env:UserProfile\Desktop\";
    }
    # Use PowerShell splatting to pass parameters to the Azure Automation cmdlet being invoked
    # For more info about splatting, run: Get-Help -Name about_Splatting
    Get-AzAutomationDscOnboardingMetaconfig @Params
    
  4. Ihr Arbeitsverzeichnis sollte nun einen Ordner namens DscMetaConfigs mit den PowerShell DSC-Metakonfigurationen der (als administrierende Person) zu aktivierenden Computer enthalten.

    Set-DscLocalConfigurationManager -Path $env:UserProfile\Desktop\DscMetaConfigs
    

Aktivieren von physischen/virtuellen Windows Computern

Sie können Windows-Server, die lokal oder in anderen Cloudumgebungen (einschließlich AWS EC2-Instanzen) ausgeführt werden, für die Azure Automation State Configuration aktivieren. Die Server müssen über outbound-Zugriff auf Azure verfügen.

  1. Stellen Sie sicher, dass die neueste Version von WMF 5 auf den Computern installiert ist, um State Configuration zu aktivieren. Außerdem muss WMF 5 auf dem Computer installiert sein, den Sie zum Aktivieren der Computer verwenden.

  2. Befolgen Sie die Anweisungen im Abschnitt Generieren von DSC-Metakonfigurationen, um einen Ordner mit den erforderlichen DSC-Metakonfigurationen zu erstellen.

  3. Verwenden Sie das folgende Cmdlet, um die PowerShell DSC-Metakonfigurationen remote auf die Computer anzuwenden, die Sie aktivieren möchten.

    Set-DscLocalConfigurationManager -Path C:\Users\joe\Desktop\DscMetaConfigs -ComputerName MyServer1, MyServer2
    
  4. Wenn Sie die PowerShell DSC-Metakonfigurationen nicht remote anwenden können, kopieren Sie den Ordner metaconfigurations auf die Computer, die Sie aktivieren möchten. Fügen Sie dann Code zum Aufrufen von Set-DscLocalConfigurationManager lokal auf den Computern hinzu.

  5. Überprüfen Sie mithilfe des Azure Portals oder Cmdlets, ob die Computer als State Configuration Knoten angezeigt werden, die in Ihrem Azure Automation-Konto registriert sind.

Aktivieren physischer/virtueller Linux-Computer

Sie können Linux-Server aktivieren, die lokal oder in anderen Cloudumgebungen für State Configuration ausgeführt werden. Die Server müssen über outbound-Zugriff auf Azure verfügen.

  1. Stellen Sie sicher, dass die neueste Version von PowerShell-Desired State Configuration für Linux auf den Computern installiert ist, um State Configuration zu aktivieren.

  2. Wenn die PowerShell DSC Local Konfigurations-Manager Standardwerte Ihrem Anwendungsfall entsprechen und Sie Computer so aktivieren möchten, dass sie sowohl von State Configuration abrufen als auch an diese melden:

    • Verwenden Sie auf jedem Linux-Computer Register.py, um den Computer mit den Standardeinstellungen des lokalen PowerShell DSC Konfigurations-Manager zu aktivieren.

      /opt/microsoft/dsc/Scripts/Register.py <Automation account registration key> <Automation account registration URL>

    • Informationen zum Ermitteln des Registrierungsschlüssels und der Registrierungs-URL für Ihr Automation-Konto finden Sie unter Verwenden der DSC-Metakonfiguration zum Registrieren von Hybridcomputern.

  3. Wenn die Standardwerte des PowerShell DSC Local Konfigurations-Manager (LCM) nicht den Anforderungen Ihres Anwendungsfalls entsprechen oder Sie Computer aktivieren möchten, die nur an die Azure Automation State Configuration berichten, führen Sie die Schritte 4-7 aus. Fahren Sie andernfalls direkt mit Schritt 7 fort.

  4. Befolgen Sie die Anweisungen im Abschnitt Generieren von DSC-Metakonfigurationen, um einen Ordner mit den erforderlichen DSC-Metakonfigurationen zu erstellen.

  5. Stellen Sie sicher, dass die neueste Version von WMF 5 auf dem Computer installiert ist, der verwendet wird, um Ihre Computer für State Configuration zu aktivieren.

  6. Fügen Sie Code wie den folgenden hinzu, um die PowerShell DSC-Metakonfigurationen remote auf die zu aktivierenden Computer anzuwenden.

    $SecurePass = ConvertTo-SecureString -String '<root password>' -AsPlainText -Force
    $Cred = New-Object System.Management.Automation.PSCredential 'root', $SecurePass
    $Opt = New-CimSessionOption -UseSsl -SkipCACheck -SkipCNCheck -SkipRevocationCheck
    # need a CimSession for each Linux machine to onboard
    $Session = New-CimSession -Credential $Cred -ComputerName <your Linux machine> -Port 5986 -Authentication basic -SessionOption $Opt
    Set-DscLocalConfigurationManager -CimSession $Session -Path C:\Users\joe\Desktop\DscMetaConfigs
    
  7. Wenn Sie die PowerShell DSC-Metakonfigurationen nicht remote anwenden können, kopieren Sie die Metakonfigurationen für die Remotecomputer aus dem in Schritt 4 beschriebenen Ordner auf die Linux-Computer.

  8. Fügen Sie Code hinzu, um Set-DscLocalConfigurationManager.py lokal auf jedem Linux-Computer aufzurufen, um State Configuration zu aktivieren.

    /opt/microsoft/dsc/Scripts/SetDscLocalConfigurationManager.py -configurationmof <path to metaconfiguration file>

  9. Stellen Sie sicher, dass die Computer als DSC-Knoten angezeigt werden, die in Ihrem Azure Automation-Konto registriert sind. Sie können das Azure Portal oder die Cmdlets verwenden.

Erneutes Registrieren eines Knotens

Nachdem Sie einen Computer als DSC-Knoten in Azure Automation State Configuration registriert haben, müssen Sie diesen Knoten möglicherweise in Zukunft erneut registrieren.

  • Zertifikatverlängerung: Bei Versionen von Windows Server vor Windows Server 2019 handelt jeder Knoten automatisch ein eindeutiges Zertifikat für die Authentifizierung aus, das nach einem Jahr abläuft. Wenn ein Zertifikat ohne Verlängerung abläuft, kann der Knoten nicht mit Azure Automation kommunizieren und ist Unresponsive markiert. Gegenwärtig kann das PowerShell DSC-Registrierungsprotokoll Zertifikate nicht automatisch verlängern, wenn sie sich dem Ablaufdatum nähern, weshalb Sie die Knoten nach einem Jahr noch mal registrieren müssen. Stellen Sie vor einer erneuten Registrierung sicher, dass auf jedem Knoten WMF 5 RTM ausgeführt wird.

    Ein neues Zertifikat wird generiert und verwendet, wenn Sie es 90 Tage oder weniger vor dem Ablaufzeitpunkt des Zertifikats oder zu einem beliebigen Zeitpunkt nach dem Ablaufdatum des Zertifikats erneut registrieren. Dieses Problem wurde in Windows Server 2019 und höher behoben.

  • Änderungen an DSC-LCM-Werten: Möglicherweise müssen Sie die Werte des LCM von PowerShell DSC ändern, die Sie während der ersten Registrierung des Knotens festgelegt haben, z. B. ConfigurationMode. Diese DSC-Agent-Werte können Sie derzeit nur über eine erneute Registrierung ändern. Die einzige Ausnahme ist der Node Configuration-Wert. Sie können diesen Wert in Azure Automation DSC direkt ändern.

Sie können einen Knoten auf die gleiche Weise wie bei der ersten Registrierung des Knotens mithilfe einer der in diesem Dokument beschriebenen Methoden erneut registrieren. Sie müssen die Registrierung eines Knotens von Azure Automation State Configuration nicht aufheben, bevor Sie ihn erneut registrieren.

Überprüfen des Status der VM-Einrichtung

mit State Configuration können Sie problemlos Azure Windows VMs für die Konfigurationsverwaltung aktivieren. Unter der Haube wird die Azure VM Desired State Configuration Erweiterung verwendet, um die VM bei Azure Automation State Configuration zu registrieren. Da die Azure VM Desired State Configuration Erweiterung asynchron ausgeführt wird, kann das Nachverfolgen des Fortschritts und die Problembehandlung bei der Ausführung wichtig sein.

Hinweis

Jede Methode zum Aktivieren von Azure Windows VMs für State Configuration, die die Azure VM Desired State Configuration Erweiterung verwendet, kann bis zu einer Stunde dauern, bis Azure Automation VMs als registriert anzeigen. Diese Verzögerung ist auf die Installation von WMF 5 auf dem virtuellen Computer durch die Azure VM Desired State Configuration Erweiterung zurückzuführen, die zum Aktivieren von VMs für State Configuration erforderlich ist.

So zeigen Sie den Status der Erweiterung Azure VM Desired State Configuration an:

  1. Navigieren Sie im Azure-Portal zu dem virtuellen Computer, der aktiviert ist.
  2. Wählen Sie unter Einstellungen die Option Erweiterungen aus.
  3. Wählen Sie dann je nach Betriebssystem DSC oder DSCForLinux aus.
  4. Weitere Details erhalten Sie, wenn Sie Detaillierten Status anzeigen auswählen.

Nächste Schritte