Fortlaufende Bereitstellungen für Lambda-Funktionen - AWS Lambda

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.

Fortlaufende Bereitstellungen für Lambda-Funktionen

Verwenden Sie fortlaufende Bereitstellungen, um die Risiken zu kontrollieren, die mit der Einführung neuer Versionen Ihrer Lambda-Funktion verbunden sind. In einer fortlaufenden Bereitstellung stellt das System automatisch die neue Version der Funktion bereit und sendet schrittweise eine zunehmende Menge an Datenverkehr an die neue Version. Der Datenverkehr und die Erhöhungsrate sind Parameter, die Sie konfigurieren können.

Sie konfigurieren eine fortlaufende Bereitstellung mithilfe von AWS CodeDeploy und AWS SAM. CodeDeploy ist ein Service, der Anwendungsbereitstellungen auf Amazon-Computing-Plattformen wie Amazon EC2 und automatisiertAWS Lambda. Weitere Informationen finden Sie unter Was ist CodeDeploy?. Durch die Verwendung von CodeDeploy zur Bereitstellung Ihrer Lambda-Funktion können Sie den Status der Bereitstellung einfach überwachen und ein Rollback initiieren, wenn Sie Probleme erkennen.

AWS SAM ist ein Open-Source-Framework für die Erstellung von Serverless-Anwendungen. Sie erstellen eine AWS SAM-Vorlage (im YAML-Format), um die Konfiguration der Komponenten anzugeben, die für die fortlaufende Bereitstellung erforderlich sind. AWS SAM verwendet die Vorlage, um die Komponenten zu erstellen und zu konfigurieren. Weitere Informationen finden Sie unter Was ist AWS SAM?

In einer fortlaufenden Bereitstellung führt AWS SAM die folgenden Aufgaben aus:

  • Es konfiguriert Ihre Lambda-Funktion und erstellt einen Alias.

    Die Alias-Weiterleitungskonfiguration ist die zugrunde liegende Funktion, die die fortlaufende Bereitstellung implementiert.

  • Es erstellt eine CodeDeploy Anwendung und eine Bereitstellungsgruppe.

    Die Bereitstellungsgruppe verwaltet die fortlaufende Bereitstellung und das Rollback (falls erforderlich).

  • Sie erkennt, wenn Sie eine neue Version Ihrer Lambda-Funktion erstellen.

  • Es wird ausgelöst CodeDeploy , um die Bereitstellung der neuen Version zu starten.

Beispiel der AWS SAM-Lambda-Vorlage

Das folgende Beispiel zeigt eine AWS SAM-Vorlage für eine einfache fortlaufende Bereitstellung.

AWSTemplateFormatVersion : '2010-09-09' Transform: AWS::Serverless-2016-10-31 Description: A sample SAM template for deploying Lambda functions. Resources: # Details about the myDateTimeFunction Lambda function myDateTimeFunction: Type: AWS::Serverless::Function Properties: Handler: myDateTimeFunction.handler Runtime: nodejs18.x # Creates an alias named "live" for the function, and automatically publishes when you update the function. AutoPublishAlias: live DeploymentPreference: # Specifies the deployment configuration Type: Linear10PercentEvery2Minutes

Diese Vorlage definiert eine Lambda-Funktion mit der Bezeichnung myDateTimeFunction und den folgenden Eigenschaften.

AutoPublishAlias

Die AutoPublishAlias-Eigenschaft erstellt einen Alias mit der Bezeichnung live. Darüber hinaus erkennt das AWS SAM-Framework automatisch, wenn Sie neuen Code für die Funktion speichern. Das Framework veröffentlicht dann eine neue Funktionsversion und aktualisiert den live-Alias so, dass er auf die neue Version verweist.

DeploymentPreference

Die -DeploymentPreferenceEigenschaft bestimmt die Geschwindigkeit, mit der die CodeDeploy Anwendung den Datenverkehr von der ursprünglichen Version der Lambda-Funktion auf die neue Version verschiebt. Der Wert Linear10PercentEvery2Minutes verschiebt alle zwei Minuten weitere zehn Prozent des Datenverkehrs zur neuen Version.

Eine Liste der vordefinierten Bereitstellungskonfigurationen finden Sie unter Bereitstellungskonfigurationen.

Ein ausführliches Tutorial zur Verwendung CodeDeploy von mit Lambda-Funktionen finden Sie unter Bereitstellen einer aktualisierten Lambda-Funktion mit CodeDeploy.