Bearbeiten

Azure Automation State Configuration

Azure-Automatisierung
Azure Monitor
Azure Virtual Machines

Azure Automation State Configuration ist ein Azure-Dienst für die Konfigurationsverwaltung, mit dem Sie den Zustand auf virtuellen oder physischen Computern in einem beliebigen Cloud- oder lokalen Rechenzentrum konfigurieren oder erzwingen können. Sie können Azure Automation State Configuration im Modus „Nur melden“ verwenden, um Konfigurationskonformitätsdaten für einen virtuellen oder physischen Computer anzuzeigen.

Aufbau

Dieses Beispielszenario veranschaulicht die Verwendung von Azure Automation State Configuration für die Installation eines Webservers auf Windows- und Linux-basierten Azure-VMs. Sie können dann Azure Monitor verwenden, um eine Warnung auszulösen, wenn ein System nicht konform ist.

Diagramm, das die Architektur von Azure Automation State Configuration zeigt

Laden Sie eine Visio-Datei dieser Architektur herunter.

Workflow

In dieser Lösung werden die folgenden Dienste und Komponenten verwendet:

  • Azure Automation stellt einen cloudbasierten Automatisierungs- und Konfigurationsdienst bereit, der eine einheitliche Verwaltung Ihrer Azure- und Nicht-Azure-Umgebungen unterstützt.
  • PowerShell Desired State Configuration (DSC): Eine Verwaltungsplattform in PowerShell, die Ihnen das Verwalten Ihrer IT- und Entwicklungsinfrastruktur per Konfiguration in Form von Code ermöglicht.
  • Azure Automation State Configuration: Eine Konfigurationsverwaltungslösung, die mit PowerShell Desired State Configuration erstellt wird. State Configuration funktioniert sowohl mit Azure-VMs als auch mit lokalen Computern und mit Computern in anderen Clouds als Azure. Mithilfe von State Configuration können Sie PowerShell DSC-Ressourcen importieren und von einem zentralen Speicherort aus vielen VMs zuweisen. Nachdem ein Endpunkt den gewünschten Zustand ausgewertet bzw. angewendet hat, wird die Zustandskonformität Azure gemeldet und auf einem integrierten Dashboard angezeigt.
  • Azure Monitor: Azure Monitor erfasst und speichert Metriken und Protokolle, Anwendungstelemetriedaten sowie Plattformmetriken für die Azure-Dienste. Nutzen Sie diese Daten zum Überwachen der Anwendung, Einrichten von Warnungen und Dashboards und Durchführen von Analysen der Grundursache von Fehlern.
  • Azure Virtual Machines ist die Azure IaaS-Lösung zum Ausführen virtueller Computer.

Komponenten

Szenariodetails

Configurations

Sie konfigurieren Windows- und Linux-Systeme über eine DSC-Konfiguration. Diese Konfigurationen werden in den Azure Automation State Configuration-Dienst hochgeladen und zu einer Knotenkonfiguration zusammengestellt. Sie können dann jedem System zugewiesen werden, das von den State Configuration-Diensten verwaltet wird.

Eine Konfiguration kann in einem beliebigen Text-Editor oder mit dem Azure-Portal zusammengestellt werden. Die folgenden Beispiele werden in der enthaltenen Bereitstellung verwendet, um einen Webserver sowohl auf Windows- als auch auf Linux-Systemen zu installieren.

configuration linuxpackage {

    Import-DSCResource -Module nx

    Node "localhost" {

        nxPackage nginx {
            Name = "nginx"
            Ensure = "Present"
        }
    }
}

Weitere Informationen zum Zusammenstellen von Konfigurationen finden Sie unter Zusammenstellen von DSC-Konfigurationen.

Überwachung

Azure Automation State Configuration behält den Knotenstatus 30 Tage lang bei. Sie können die Knotenstatusdaten an Ihren Log Analytics-Arbeitsbereich senden, wenn Sie diese Daten für einen längeren Zeitraum aufbewahren möchten. Azure Monitor-Protokolle bieten eine höhere operative Transparenz für Ihre Automation State Configuration-Daten, sodass schneller auf Incidents reagiert werden kann. Bei der Azure Monitor-Integration kann beispielsweise eine E-Mail-Benachrichtigung ausgelöst werden, wenn ein System als nicht konform festgestellt wird.

Die Azure Monitor-Integration wird mit der enthaltenen Bereitstellung konfiguriert. Die folgende Azure Monitor-Abfrage wird verwendet, um nicht konforme Systeme zu erkennen und eine Benachrichtigung zu senden, wenn diese erkannt werden.

AzureDiagnostics
| where Category == "DscNodeStatus"
| where ResultType != "Failed"

Weitere Informationen zum Überwachen von Azure Automation State Configuration finden Sie unter Integration in Azure Monitor-Protokolle.

Überlegungen

Diese Überlegungen setzen die Säulen des Azure Well-Architected Framework um, das eine Reihe von Leitprinzipien enthält, die zur Verbesserung der Qualität eines Workloads verwendet werden können. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.

Kostenoptimierung

Bei der Kostenoptimierung geht es um die Suche nach Möglichkeiten, unnötige Ausgaben zu reduzieren und die Betriebseffizienz zu verbessern. Weitere Informationen finden Sie unter Übersicht über die Säule „Kostenoptimierung“.

Die Konfigurationsverwaltung umfasst den Konfigurations-Pulldienst und die Änderungsnachverfolgungsfunktionen. Die Abrechnung basiert auf der Anzahl von Knoten, die beim Dienst registriert sind, und auf der Menge der im Azure Log Analytics-Dienst gespeicherten Protokolldaten.

Die Berechnung der Gebühren für die Konfigurationsverwaltung beginnt, wenn ein Knoten beim Dienst registriert wird, und endet, wenn die Registrierung des Knotens aufgehoben wird. Ein Knoten ist ein beliebiger Computer, dessen Konfiguration von der Konfigurationsverwaltung verwaltet wird. Er kann eine Azure-VM, eine lokale VM, ein physischer Host oder eine VM in einer anderen öffentlichen Cloud sein. Die Abrechnung der Knoten erfolgt anteilig stündlich.

Weitere Informationen finden Sie unter Automation – Preise.

Bereitstellen dieses Szenarios

Diese Bereitstellung umfasst ein Azure Automation-Konto, das Feature Azure Automation State Configuration und einer oder mehrere Windows- und Linux-VMs, die in State Configuration integriert sind. Nach der Bereitstellung wird die Konfiguration auf jeden virtuellen Computer angewendet, auf dem ein Webserver installiert ist.

Führen Sie den folgenden Befehl aus, um eine Ressourcengruppe für die Bereitstellung zu erstellen. Klicken Sie auf die Schaltfläche Jetzt ausprobieren, um eine eingebettete Shell zu verwenden.

az group create --name state-configuration --location eastus

Führen Sie den folgenden Befehl aus, um die ARM-Vorlage bereitzustellen. Geben Sie an der Eingabeaufforderung einen Benutzernamen und ein Kennwort ein. Verwenden Sie diese Werte, um sich bei den virtuellen Computern anzumelden, die Sie erstellen.

az deployment group create --resource-group state-configuration \
    --template-uri https://raw.githubusercontent.com/mspnp/samples/master/solutions/azure-automation-state-configuration/azuredeploy.json

Nachdem die VMs bereitgestellt wurden, wählen Sie im Azure-Portal die Ressource Automation-Konto und dann Desired State Configuration (DSC) aus. Sie werden feststellen, dass alle virtuellen Computer dem System hinzugefügt wurden und konform sind. Auf alle diese Computer wurde die PowerShell DSC-Konfiguration angewendet. Dabei wurde auf jedem Computer ein Webserver installiert.

Screenshot der DSC-Konformitätsergebnisse im Azure-Portal.

Sie können auch die öffentliche IP-Adresse einer beliebigen virtuellen Maschine durchsuchen, um zu überprüfen, ob ein Webserver ausgeführt wird.

Ausführliche Informationen und zusätzliche Bereitstellungsoptionen finden Sie in den ARM-Vorlagen, die für die Bereitstellung dieser Lösung verwendet werden.

Nächste Schritte