Versionen der Lambda-Funktion - 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.

Versionen der Lambda-Funktion

Sie können Versionen verwenden, um die Bereitstellung Ihrer Funktionen zu verwalten. Beispielsweise können Sie eine neue Version einer Funktion für Beta-Tests veröffentlichen, ohne dass Benutzer der stabilen Produktionsversion betroffen sind. Lambda erstellt jedes Mal, wenn Sie die Funktion veröffentlichen, eine neue Version Ihrer Funktion. Die neue Version ist eine Kopie der unveröffentlichten Version der Funktion. Die unveröffentlichte Version heißt $LATEST.

Anmerkung

Um eine neue Version Ihrer Funktion zu erstellen, müssen Sie zunächst Änderungen an der unveröffentlichten Version ($LATEST) vornehmen. Diese Änderungen können das Aktualisieren des Codes oder das Ändern der Konfigurationseinstellungen beinhalten. Wenn $LATEST mit einer zuvor veröffentlichten Version identisch ist, können Sie keine neue Version erstellen, bis Sie Änderungen an $LATEST bereitstellen.

Nachdem Sie eine Funktionsversion veröffentlicht haben, sind der Code, die Laufzeit, die Architektur, der Arbeitsspeicher, die Ebenen und die meisten anderen Konfigurationseinstellungen unveränderlich. Das bedeutet, dass Sie diese Einstellungen nicht ändern können, ohne eine neue Version von $LATEST zu veröffentlichen. Sie können die folgenden Elemente für eine veröffentlichte Funktionsversion konfigurieren:

Anmerkung

Bei Verwendung von Laufzeitverwaltungskontrollen im Auto-Modus wird die von der Funktionsversion verwendete Laufzeitversion automatisch aktualisiert. Bei Verwendung des Modus Function update (Funktionsaktualisierung) oder Manual (Manuell) wird die Laufzeitversion nicht aktualisiert. Weitere Informationen finden Sie unter Lambda-Laufzeitaktualisierungen.

Erstellen von Funktionsversionen

Sie können den Funktionscode und die Einstellungen nur in der nicht veröffentlichten Version einer Funktion ändern. Wenn Sie eine Version veröffentlichen, sperrt Lambda den Code und die meisten Einstellungen, um eine konsistente Erfahrung für Benutzer dieser Version zu gewährleisten.

Sie können eine Funktionsversion mit der Lambda-Konsole erstellen.

So erstellen Sie eine neue Funktionsversion
  1. Öffnen Sie die Seite Funktionen der Lambda-Konsole.

  2. Wählen Sie eine Funktion aus und dann Versionen.

  3. Wählen Sie auf der Versionskonfigurationsseite die Option Neue Version veröffentlichen aus.

  4. (Optional) Geben Sie eine Versionsbeschreibung ein.

  5. Wählen Sie Publish.

Alternativ können Sie eine Version einer Funktion mithilfe der PublishVersion -API-Operation veröffentlichen.

Der folgende AWS CLI Befehl veröffentlicht eine neue Version einer Funktion. In der Antwort werden die Konfigurationsinformationen der neuen Version zurückgegeben, einschließlich der Versionsnummer und des Funktion-ARN mit dem Versionssuffix.

aws lambda publish-version --function-name my-function

Die Ausgabe sollte folgendermaßen aussehen:

{ "FunctionName": "my-function", "FunctionArn": "arn:aws:lambda:us-east-2:123456789012:function:my-function:1", "Version": "1", "Role": "arn:aws:iam::123456789012:role/lambda-role", "Handler": "function.handler", "Runtime": "nodejs20.x", ... }
Anmerkung

Lambda weist monoton steigende Sequenznummern für die Versionsverwaltung zu. Lambda verwendet niemals Versionsnummern wieder, auch nicht nachdem Sie eine Funktion gelöscht und neu erstellt haben.

Verwenden von Versionen

Sie können Ihre Lambda-Funktion entweder mit einem qualifizierten ARN oder einem nicht qualifizierten ARN referenzieren.

  • Qualifizierter ARN – Hierbei handelt es sich um den ARN der Funktion mit einem Versionssuffix. Das folgende Beispiel bezieht sich auf Version 42 der Funktion helloworld.

    arn:aws:lambda:aws-region:acct-id:function:helloworld:42
  • Unqualifizierter ARN – Hierbei handelt es sich um den ARN der Funktion ohne ein Versionssuffix.

    arn:aws:lambda:aws-region:acct-id:function:helloworld

Sie können in allen relevanten API-Operationen einen qualifizierten oder einen nicht qualifizierten ARN verwenden. Sie können jedoch keinen unqualifizierten ARN verwenden, um einen Alias zu erstellen.

Wenn Sie sich entscheiden, Funktionsversionen nicht zu veröffentlichen, können Sie entweder den qualifizierten oder den nicht qualifizierten ARN in Ihrer Ereignisquellen-Zuweisung verwenden, um die Funktion aufzurufen. Wenn Sie eine Funktion mit einem unqualifizierten ARN aufrufen, ruft Lambda implizit $LATEST auf.

Lambda veröffentlicht eine neue Funktionsversion nur, wenn der Code noch nie veröffentlicht wurde oder wenn sich der Code gegenüber der zuletzt veröffentlichten Version geändert hat. Wenn keine Änderung vorliegt, bleibt die Funktionsversion die zuletzt veröffentlichte Version.

Der qualifizierte ARN für jede Lambda-Funktionsversion ist eindeutig. Nachdem Sie eine Version veröffentlicht haben, können Sie den ARN oder den Funktionscode nicht ändern.

Gewähren von Berechtigungen

Sie können eine ressourcenbasierte Richtlinie oder eine identitätsbasierte Richtlinie verwenden, um Zugriff auf Ihre Funktion zu gewähren. Der Umfang der Berechtigung hängt davon ab, ob Sie die Richtlinie auf eine Funktion oder auf eine Version einer Funktion anwenden. Weitere Hinweise zu Funktionsressourcennamen in Richtlinien finden Sie unter Ressourcen und Bedingungen für Lambda-Aktionen.

Sie können die Verwaltung von Ereignisquellen und AWS Identity and Access Management (IAM)-Richtlinien mithilfe von Funktionsaliasnamen vereinfachen. Weitere Informationen finden Sie unter Lambda-Funktionsaliase.