EC2 Instances beim Start auf obligatorische Tags überprüfen - AWS Prescriptive Guidance

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

EC2 Instances beim Start auf obligatorische Tags überprüfen

Susanne Kangnoh und Architekt Mathur, Amazon Web Services

Übersicht

Amazon Elastic Compute Cloud (Amazon EC2) bietet skalierbare Rechenkapazität in der Amazon Web Services (AWS) Cloud. EC2 Durch die Nutzung von Amazon müssen Sie nicht im Voraus in Hardware investieren, sodass Sie Anwendungen schneller entwickeln und bereitstellen können.

Sie können Tagging verwenden, um Ihre AWS-Ressourcen auf unterschiedliche Weise zu kategorisieren. EC2 Instance-Tagging ist nützlich, wenn Sie viele Ressourcen in Ihrem Konto haben und Sie anhand der Tags schnell eine bestimmte Ressource identifizieren möchten. Mithilfe von Tags können Sie Ihren EC2 Instanzen benutzerdefinierte Metadaten zuweisen. Ein Tag besteht aus einem benutzerdefinierten Schlüssel und Wert. Wir empfehlen Ihnen, einen konsistenten Satz von Stichwörtern zu erstellen, um die Anforderungen Ihrer Organisation zu erfüllen. 

Dieses Muster bietet eine CloudFormation AWS-Vorlage, mit der Sie EC2 Instances auf bestimmte Tags überwachen können. Die Vorlage erstellt ein Amazon CloudWatch Events-Ereignis, das nach AWS CloudTrail TagResourceoder UntagResourceEreignissen Ausschau hält, um zu erkennen, ob neue EC2 Instances markiert oder Tags entfernt wurden. Wenn ein vordefiniertes Tag fehlt, ruft es eine AWS-Lambda-Funktion auf, die mithilfe von Amazon Simple Notification Service (Amazon SNS) eine Meldung über einen Verstoß an eine von Ihnen angegebene E-Mail-Adresse sendet. 

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Ein aktives AWS-Konto.

  • Ein Amazon Simple Storage Service (Amazon S3) -Bucket zum Hochladen des bereitgestellten Lambda-Codes.

  • Eine E-Mail-Adresse, an die Sie Benachrichtigungen über Verstöße erhalten möchten.

Einschränkungen

  • Diese Lösung unterstützt CloudTrail TagResourceunsere UntagResourceEreignisse. Es werden keine Benachrichtigungen für andere Ereignisse erstellt.

  • Diese Lösung sucht nur nach Tag-Schlüsseln. Schlüsselwerte werden nicht überwacht.

Architektur

Workflow-Architektur

Workflow diagram showing AWS-Services interaction for EC2 instance monitoring and notification.

Automatisierung und Skalierung

  • Sie können die CloudFormation AWS-Vorlage mehrfach für verschiedene AWS-Regionen und Konten verwenden. Sie müssen die Vorlage in jeder Region oder jedem Konto nur einmal ausführen.

Tools

AWS-Services

  • Amazon EC2 — Amazon Elastic Compute Cloud (Amazon EC2) ist ein Webservice, der sichere, anpassbare Rechenkapazität in der Cloud bietet. Er wurde entwickelt, um Entwicklern Cloud-Computing im Web-Scale-Maßstab zu erleichtern.

  • AWS CloudTrail — CloudTrail ist ein AWS-Service, der Sie bei der Steuerung, Einhaltung von Vorschriften sowie der Betriebs- und Risikoprüfung Ihres AWS-Kontos unterstützt. Aktionen, die von einem Benutzer, einer Rolle oder einem AWS-Service ausgeführt werden, werden als Ereignisse in aufgezeichnet CloudTrail. 

  • Amazon CloudWatch Events — Amazon CloudWatch Events bietet einen Stream von Systemereignissen, die Änderungen an AWS-Ressourcen beschreiben, nahezu in Echtzeit. CloudWatch Events wird sofort auf betriebliche Änderungen aufmerksam und ergreift bei Bedarf Korrekturmaßnahmen, indem es Nachrichten sendet, um auf die Umgebung zu reagieren, Funktionen aktiviert, Änderungen vornimmt und Statusinformationen erfasst. 

  • AWS Lambda — Lambda ist ein Rechenservice, der die Ausführung von Code unterstützt, ohne dass Server bereitgestellt oder verwaltet werden müssen. Lambda führt Ihren Code nur bei Bedarf aus und skaliert automatisch – von einigen Anforderungen pro Tag bis zu Tausenden pro Sekunde. 

  • Amazon S3 — Amazon Simple Storage Service (Amazon S3) ist ein hoch skalierbarer Objektspeicherservice, der für eine Vielzahl von Speicherlösungen verwendet werden kann, darunter Websites, mobile Anwendungen, Backups und Data Lakes.

  • Amazon SNS — Amazon Simple Notification Service (Amazon SNS) ist ein Webservice, der es Anwendungen, Endbenutzern und Geräten ermöglicht, sofort Benachrichtigungen aus der Cloud zu senden und zu empfangen.

Code

Dieses Muster beinhaltet einen Anhang mit zwei Dateien:

  • index.zipist eine komprimierte Datei, die den Lambda-Code für dieses Muster enthält.

  • ec2-require-tags.yamlist eine CloudFormation Vorlage, die den Lambda-Code bereitstellt.

Informationen zur Verwendung dieser Dateien finden Sie im Abschnitt Epics.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten
Laden Sie den Code in einen S3-Bucket hoch.

Erstellen Sie einen neuen S3-Bucket oder verwenden Sie einen vorhandenen S3-Bucket, um die angehängte index.zip Datei hochzuladen (Lambda-Code). Dieser Bucket muss sich in derselben AWS-Region befinden wie die Ressourcen (EC2 Instances), die Sie überwachen möchten.

Cloud-Architekt
Stellen Sie die CloudFormation Vorlage bereit.

Öffnen Sie die Cloudformation-Konsole in derselben AWS-Region wie der S3-Bucket und stellen Sie die ec2-require-tags.yaml Datei bereit, die im Anhang bereitgestellt wird. Geben Sie im nächsten Epic Werte für die Vorlagenparameter an.  

Cloud-Architekt
AufgabeBeschreibungErforderliche Fähigkeiten
Geben Sie den S3-Bucket-Namen an.

Geben Sie den Namen des S3-Buckets ein, den Sie im ersten Epic erstellt oder ausgewählt haben. Dieser S3-Bucket enthält die ZIP-Datei für den Lambda-Code und muss sich in derselben AWS-Region befinden wie die CloudFormation Vorlage und die EC2 Instances, die Sie überwachen möchten.

Cloud-Architekt
Geben Sie den S3-Schlüssel an.

Geben Sie den Speicherort der Lambda-Code-ZIP-Datei in Ihrem S3-Bucket an, ohne vorangestellte Schrägstriche (z. B. index.zip oder). controls/index.zip

Cloud-Architekt
Geben Sie eine E-Mail-Adresse an.

Geben Sie eine aktive E-Mail-Adresse an, unter der Sie Benachrichtigungen über Verstöße erhalten möchten.

Cloud-Architekt
Definieren Sie eine Protokollierungsebene.

Geben Sie die Protokollierungsebene und die Ausführlichkeit an. Infobezeichnet detaillierte Informationsmeldungen über den Fortschritt der Anwendung und sollte nur zum Debuggen verwendet werden. Errorbezeichnet Fehlerereignisse, die es der Anwendung dennoch ermöglichen könnten, weiter zu laufen. Warningbezeichnet potenziell schädliche Situationen.

Cloud-Architekt
Geben Sie die erforderlichen Tag-Schlüssel ein.

Geben Sie die Tag-Schlüssel ein, nach denen Sie suchen möchten. Wenn Sie mehrere Schlüssel angeben möchten, trennen Sie sie durch Kommas ohne Leerzeichen. (ApplicationId,CreatedBy,Environment,OrganizationSucht beispielsweise nach vier Schlüsseln.) Das Ereignis CloudWatch Ereignisse sucht nach diesen Tag-Schlüsseln und sendet eine Benachrichtigung, wenn sie nicht gefunden werden.

Cloud-Architekt
AufgabeBeschreibungErforderliche Fähigkeiten
Bestätigen Sie das E-Mail-Abonnement.

Wenn die CloudFormation Vorlage erfolgreich bereitgestellt wurde, sendet sie eine Abonnement-E-Mail-Nachricht an die von Ihnen angegebene E-Mail-Adresse. Um Benachrichtigungen zu erhalten, müssen Sie dieses E-Mail-Abonnement bestätigen.  

Cloud-Architekt

Anlagen

Um auf zusätzliche Inhalte zuzugreifen, die mit diesem Dokument verknüpft sind, entpacken Sie die folgende Datei: attachment.zip