Cloudressourcen mit AWS Config überwachen (3)
Laufen Anwendungen bei AWS, basieren diese in der Regel auf entsprechenden Cloudressourcen. Bei wachsender Nachfrage nach einer bestimmten Applikation steigt auch die Notwendigkeit, das Fundament im Blick zu behalten. Mit AWS Config lässt sich die Konfiguration von AWS-Ressourcen untersuchen, prüfen und beurteilen. Compliance-Checks, Sicherheitsanalysen, das Änderungsmanagement sowie die betriebliche Fehlerbehebung gestalten sich damit deutlich einfacher. Im dritten und letzten Teil gehen wir darauf ein, wie Sie nicht konforme Konfigurationen automatisch beheben, wie dies auch über mehrere AWS-Konten und -Regionen funktioniert und wie Sie dabei auch die Kosten im Auge behalten.
Zusätzlich zur Erkennung von nichtkonformen Ressourcen können Sie AWS Config auch nutzen, um nichtkonforme Ressourcen manuell oder automatisch zu korrigieren. Der Dienst nutzt dazu Automatisierungsdokumente aus AWS Systems Manager. Diese Dokumente definieren Aktionen, die bei nichtkonformen AWS-Ressourcen zum Einsatz kommen.
Um Korrekturen für nicht konforme Ressourcen zu definieren, ordnen Sie zunächst die gewünschte Korrekturmaßnahme einer von Ihnen erstellten Regel zu. AWS Config bietet eine Reihe von verwalteten Automatisierungsdokumenten mit Korrekturmaßnahmen, die Sie aus einer Liste auswählen können. Mit diesen Dokumenten erstellen Sie zum Beispiel automatisiert Jira-Tickets oder fahren EC2-Instanzen herunter. Alternativ erzeugen Sie eigene, benutzerdefinierte Automatisierungsdokumente und verknüpfen sie mit der entsprechenden AWS-Config-Regel. Für jede Regel wählen Sie außerdem, ob diese Korrektur automatisch Anwendung findet oder ob Sie die Korrektur manuell anstoßen möchten.
Wollen Sie mehrere Regeln und Korrekturmaßnahmen als Einheit zusammenfassen, können Sie dazu Conformance Packs nutzen. Dabei handelt es sich um Sammlungen von Regeln und Korrekturmaßnahmen für AWS Config, die im Gesamten in einem Konto und einer Region oder organisationsweit in AWS Organizations bereitgestellt werden.
Sie erstellen Conformance Packs, indem Sie die Liste der enthaltenen Regeln und Korrekturmaßnahmen als YAML-Vorlage definieren. Die Packs können sowohl von AWS bereitgestellte als auch benutzerdefinierte Regeln enthalten. Für einen schnellen Einstieg nutzen Sie die Beispielvorlagen für Conformance Packs. Alternativ erzeugen Sie eine von Grund auf neue YAML-Datei für Ihr eigenes Conformance Pack. Bereitstellen können Sie die Vorlage mithilfe der AWS-Config-Konsole oder mittels CLI.
Einsatz in mehreren AWS-Konten und Regionen
Die meisten Unternehmen nutzen für Ihre Cloudumgebung ein sogenanntes "Multi-Account-Konzept". Dieses teilt Applikationen und Ressourcen auf verschiedene AWS-Konten auf, um zum Beispiel die Wartung der Systeme zu vereinfachen und die Zugriffsberechtigungen auf Kontoebene vergeben zu können.
Um Daten aus mehreren AWS-Konten und/oder Regionen in AWS Config zu nutzen, müssen Sie in einem AWS-Konto einen sogenannten Aggregator erstellen. Dieser sammelt AWS-Config-Daten aus mehreren Ursprungskonten und -regionen. Wichtig ist dabei, dass Aggregatoren nur Lesezugriff auf die Ursprungskonten und -regionen bieten, für die der Aggregator berechtigt ist. Aggregatoren ermöglichen keinen Zugriff auf das Ursprungskonto oder die Ursprungsregion. Das bedeutet beispielsweise, dass Sie keine Regeln über einen Aggregator bereitstellen oder Konfigurations-Snapshots aus dem Ursprungskonto oder der Ursprungsregion über einen Aggregator abrufen können.
Das Dashboard zeigt auf der Seite "Aggregatoren" die Konfigurationsdaten der AWS-Ressourcen an und bietet einen Überblick über aktivierte Regeln und Conformance Packs sowie deren Konformitätsstatus. Zusätzlich entnehmen Sie der Seite die Gesamtmenge der AWS-Ressourcen sowie die Anzahl der konformen und nicht konformen Regeln und Conformance Packs. Die verschiedenen Widgets lassen sich über CloudWatch in personalisierten Dashboards anpassen, um konten- und regionsübergreifend eine zielgerichtete und detaillierte Übersicht zu den Ressourceninformationen bereitzustellen.
Nach der Einrichtung beginnt AWS Config damit, Daten aus den angegebenen Ursprungkonten in einem Aggregator zusammenzufassen. Es kann einige Minuten dauern, bis der Konformitätsstatus der Regeln erscheint.
Kosten im Auge behalten
Bei der Verwendung von AWS Config zahlen Sie nur für die tatsächlich genutzte Rechenleistung – ohne vertragliche Bindung und Vorauszahlungen. Die Gebühren ergeben sich basierend auf der Anzahl der aufgezeichneten Konfigurationselemente, der Anzahl der aktiven AWS-Config-Regelbewertungen und der Anzahl der Conformance-Pack-Bewertungen in Ihrem Konto.
Gemäß dem in der Cloud üblichen Preismodell "Pay-as-you-go" bezahlen Sie also pro genutzter beziehungsweise in diesem Fall aufgezeichneter Ressource. Überlegen Sie sich deshalb gerade bei Applikationen und Umgebungen, die mehrere Regionen oder AWS-Konten umfassen, ganz genau, welche Ressourcen Sie mit AWS Config überwachen wollen. Deutlich wird dies an den IAM-Ressourcen, die global, also in jeder Region verfügbar sind. Nutzen Sie den Dienst in einem Account in mehreren Regionen, sollten Sie dementsprechend nur in einer Region die Überwachung der globalen Ressourcen aktivieren, um nicht mehrfach für eine Ressource bezahlen zu müssen.
Angenommen, Sie haben in einem bestimmten Monat die folgende Nutzung in der Region Frankfurt.
- 1000 aufgezeichnete Konfigurationselemente für diverse Ressourcentypen
- 5000 Config-Regelbewertungen für alle im Konto vorhandenen einzelnen Config-Regeln
Daraus ergeben sich als Kosten für die Konfigurationselemente 3 US-Dollar (1000 * 0,003 US-Dollar) und als Gebühren für die Config-Regeln 5 US-Dollar (die ersten 100.000 Bewertungen zu je 0,001 US-Dollar, also 5000 * 0,001 US-Dollar) – insgesamt beträgt die monatliche Config-Rechnung demnach also 8 US-Dollar.
Zusätzlich gilt für das Speichern Ihrer Konfigurations-Verlaufsdateien und -Snapshots im S3-Bucket Ihrer Wahl der Standardtarif für Amazon S3. Nutzen Sie Benachrichtigungen zu Konfigurationsänderungen über Amazon Simple Notification Service und/oder benutzerdefinierte Lambda-Regeln, finden die Standardtarife für Amazon SNS beziehungsweise AWS Lambda Anwendung.
Fazit
In diesem Artikel haben wir uns die Funktionsweise von AWS Config näher angesehen und erfahren, wie wir den Service zur Analyse von Cloudressourcen nutzen und mithilfe von Regeln Ressourcen auf vordefinierte Konfigurationen überwachen. Bei Verstößen gegen die Sollkonfiguration lassen sich automatisiert Benachrichtigungen versenden oder direkt die betroffene Ressource korrigieren oder auch löschen. Erzeugen Sie neue Ressourcen wie zum Beispiel EC2-Instanzen, werden diese automatisch in das Konfigurationsmanagement übernommen und auf die vordefinierten Sollzustände geprüft.
ln/Simon Philipp und Dominik Richter
Im ersten Teil des Workshops schilderten wir die Funktionsweise von AWS Config und haben erklärt, wie Sie das Werkzeug korrekt einrichten. Im zweiten Teil haben wir einen Blick auf die Nutzung des Dashboards geworfen und gezeigt, wie Sie mit mehr als 300 verwalteten Regeln Cloudressourcen überwachen und dabei auch eigene Regelsätze schaffen.