View a markdown version of this page

Schritt 3: Erstellen Sie eine benutzerdefinierte AWS AppConfig extension - AWS AppConfig

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.

Schritt 3: Erstellen Sie eine benutzerdefinierte AWS AppConfig extension

Eine Erweiterung definiert eine oder mehrere Aktionen, die sie während eines AWS AppConfig Workflows ausführt. Die AWS erstellte AWS AppConfig deployment events to Amazon SNS Erweiterung beinhaltet beispielsweise eine Aktion zum Senden einer Benachrichtigung zu einem Amazon SNS-Thema. Jede Aktion wird entweder aufgerufen, wenn Sie mit Ihnen interagieren AWS AppConfig oder wenn AWS AppConfig Sie einen Prozess in Ihrem Namen ausführen. Diese werden Aktionspunkte genannt. AWS AppConfig Erweiterungen unterstützen die folgenden Aktionspunkte:

PRE_*-Aktionspunkte: Auf PRE_* Aktionspunkten konfigurierte Erweiterungsaktionen werden nach der Überprüfung der Anfrage angewendet, jedoch bevor die Aktivität AWS AppConfig ausgeführt wird, die dem Namen des Aktionspunkts entspricht. Diese Aktionsaufrufe werden gleichzeitig mit einer Anforderung verarbeitet. Wenn mehr als eine Anforderung gestellt wird, werden Aktionsaufrufe sequentiell ausgeführt. Beachten Sie auch, dass PRE_* Aktionspunkte den Inhalt einer Konfiguration empfangen und ändern können. PRE_*Aktionspunkte können auch auf einen Fehler reagieren und verhindern, dass eine Aktion ausgeführt wird.

  • PRE_CREATE_HOSTED_CONFIGURATION_VERSION

  • PRE_START_DEPLOYMENT

ON_*-Aktionspunkte: Eine Erweiterung kann mithilfe eines ON_* Aktionspunkts auch parallel zu einem AWS AppConfig Workflow ausgeführt werden. ON_*Aktionspunkte werden asynchron aufgerufen. ON_*Aktionspunkte erhalten nicht den Inhalt einer Konfiguration. Wenn bei einer Erweiterung während eines ON_* Aktionspunkts ein Fehler auftritt, ignoriert der Dienst den Fehler und setzt den Workflow fort.

  • ON_DEPLOYMENT_START

  • ON_DEPLOYMENT_STEP

  • ON_DEPLOYMENT_BAKING

  • ON_DEPLOYMENT_COMPLETE

  • ON_DEPLOYMENT_ROLLED_BACK

AT_*-Aktionspunkte: Auf AT_* Aktionspunkten konfigurierte Erweiterungsaktionen werden synchron und parallel zu einem Workflow aufgerufen. AWS AppConfig Wenn bei einer Erweiterung während eines AT_* Aktionspunkts ein Fehler auftritt, stoppt der Dienst den Workflow und führt ein Rollback der Bereitstellung durch.

  • AT_DEPLOYMENT_TICK

Der AT_DEPLOYMENT_TICK Aktionspunkt unterstützt die Integration der Überwachung durch Dritte. AT_DEPLOYMENT_TICKwird während der Orchestrierung der Konfiguration, Bereitstellung, Verarbeitung aufgerufen. Wenn Sie eine Überwachungslösung eines Drittanbieters verwenden (z. B. Datadog oder New Relic), können Sie eine AWS AppConfig Erweiterung erstellen, die am AT_DEPLOYMENT_TICK Aktionspunkt nach Alarmen sucht und als Sicherheitsmaßnahme die Bereitstellung rückgängig macht, wenn sie einen Alarm ausgelöst hat.

Wenn Sie eine Überwachungslösung eines Drittanbieters wie Datadog oder New Relic verwenden, können Sie eine AWS AppConfig Erweiterung erstellen, die am AT_DEPLOYMENT_TICK Aktionspunkt nach Alarmen sucht und als Sicherheitsleitplanke die Bereitstellung rückgängig macht, wenn sie einen Alarm ausgelöst hat. Weitere Informationen finden Sie in den folgenden Integrationsbeispielen für Datadog und New Relic unter: GitHub

Weitere Informationen zu AWS AppConfig Erweiterungen finden Sie in den folgenden Themen:

Beispiel für eine Erweiterung

Die folgende Beispielerweiterung definiert eine Aktion, die den PRE_CREATE_HOSTED_CONFIGURATION_VERSION Aktionspunkt aufruft. In dem Uri Feld gibt die Aktion den Amazon-Ressourcennamen (ARN) der MyS3ConfigurationBackUpExtension Lambda-Funktion an, die zuvor in dieser exemplarischen Vorgehensweise erstellt wurde. Die Aktion gibt auch den ARN an, der die Rolle AWS Identity and Access Management (IAM) annimmt, der weiter oben in dieser exemplarischen Vorgehensweise erstellt wurde.

Beispiel für eine Erweiterung AWS AppConfig

{ "Name": "MySampleExtension", "Description": "A sample extension that backs up configurations to an S3 bucket.", "Actions": { "PRE_CREATE_HOSTED_CONFIGURATION_VERSION": [ { "Name": "PreCreateHostedConfigVersionActionForS3Backup", "Uri": "arn:aws:lambda:aws-region:111122223333:function:MyS3ConfigurationBackUpExtension", "RoleArn": "arn:aws:iam::111122223333:role/ExtensionsTestRole" } ] }, "Parameters" : { "S3_BUCKET": { "Required": false } } }
Anmerkung

Informationen zur Anforderungssyntax und Feldbeschreibungen beim Erstellen einer Erweiterung finden Sie im CreateExtension Thema in der AWS AppConfig API-Referenz.

So erstellen Sie eine Erweiterung (Konsole)
  1. Öffnen Sie die AWS Systems Manager Konsole unter https://console.aws.amazon.com/systems-manager/appconfig/.

  2. Wählen Sie im Navigationsbereich AWS AppConfig aus.

  3. Wählen Sie auf der Registerkarte Erweiterungen die Option Erweiterung erstellen aus.

  4. Geben Sie als Erweiterungsname einen eindeutigen Namen ein. Für die Zwecke dieser exemplarischen Vorgehensweise geben Sie einMyS3ConfigurationBackUpExtension. Geben Sie optional eine Beschreibung ein.

  5. Wählen Sie im Abschnitt Aktionen die Option Neue Aktion hinzufügen aus.

  6. Geben Sie für Aktionsname einen eindeutigen Namen ein. Für die Zwecke dieser exemplarischen Vorgehensweise geben Sie einPreCreateHostedConfigVersionActionForS3Backup. Dieser Name beschreibt den Aktionspunkt, der von der Aktion verwendet wird, und den Zweck der Erweiterung.

  7. Wählen Sie in der Aktionspunktliste PRE_CREATE_HOSTED_CONFIGURATION_VERSION aus.

  8. Wählen Sie für Uri die Lambda-Funktion und dann die Funktion in der Lambda-Funktionsliste aus. Wenn Sie Ihre Funktion nicht sehen, stellen Sie sicher, dass Sie sich an derselben AWS-Region Stelle befinden, an der Sie die Funktion erstellt haben.

  9. Wählen Sie für IAM-Rolle die Rolle aus, die Sie zuvor in dieser exemplarischen Vorgehensweise erstellt haben.

  10. Wählen Sie im Abschnitt Erweiterungsparameter (optional) die Option Neuen Parameter hinzufügen aus.

  11. Geben Sie für Parametername einen Namen ein. Für die Zwecke dieser exemplarischen Vorgehensweise geben Sie einS3_BUCKET.

  12. Wiederholen Sie die Schritte 5—11, um eine zweite Aktion für den PRE_START_DEPLOYMENT Aktionspunkt zu erstellen.

  13. Wählen Sie Erweiterung erstellen aus.