Lambda-Funktionsversionen verwalten - 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.

Lambda-Funktionsversionen verwalten

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 ist benannt. $LATEST

Anmerkung

Um eine neue Version Ihrer Funktion zu erstellen, müssen Sie zuerst Änderungen an der unveröffentlichten Version () $LATEST vornehmen. Zu diesen Änderungen können die Aktualisierung des Codes oder die Änderung der Konfigurationseinstellungen gehören. Wenn $LATEST es mit einer zuvor veröffentlichten Version identisch ist, können Sie keine neue Version erstellen, bis Sie Änderungen an bereitgestellt haben$LATEST.

Nachdem Sie eine Funktionsversion veröffentlicht haben, sind Code, Laufzeit, Architektur, Speicher, 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

Wenn Sie Runtime Management Controls im Auto-Modus verwenden, wird die von der Funktionsversion verwendete Runtime-Version automatisch aktualisiert. Bei Verwendung des Modus Function update (Funktionsaktualisierung) oder Manual (Manuell) wird die Laufzeitversion nicht aktualisiert. Weitere Informationen finden Sie unter Verstehen, wie Lambda Runtime-Versionsupdates verwaltet.

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 mithilfe der PublishVersionAPIOperation eine Version einer Funktion veröffentlichen.

Der folgende AWS CLI Befehl veröffentlicht eine neue Version einer Funktion. Die Antwort gibt Konfigurationsinformationen über die neue Version zurück, einschließlich der Versionsnummer und der 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 auf Ihre Lambda-Funktion entweder mit einem qualifizierten ARN oder einem ARN unqualifizierten Wert verweisen.

  • Qualifiziert ARN — Die Funktion ARN mit einem Versionssuffix. Das folgende Beispiel bezieht sich auf Version 42 der Funktion helloworld.

    arn:aws:lambda:aws-region:acct-id:function:helloworld:42
  • Unqualifiziert ARN — Die Funktion ARN ohne Versionssuffix.

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

Sie können in allen relevanten Vorgängen ein qualifiziertes oder ein unqualifiziertes ARN Zeichen verwenden. API Sie können jedoch kein unqualifiziertes Alias verwenden, um einen ARN Alias zu erstellen.

Wenn Sie sich dafür entscheiden, keine Funktionsversionen zu veröffentlichen, können Sie die Funktion entweder mit den Werten „qualifiziert“ oder „unqualifiziert“ ARN in Ihrer Ereignisquellenzuordnung aufrufen. Wenn Sie eine Funktion mit einem unqualifizierten aufrufenARN, ruft Lambda implizit auf. $LATEST

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

Die ARN für jede Lambda-Funktion qualifizierte Version ist einzigartig. Nachdem Sie eine Version veröffentlicht haben, können Sie weder den noch den ARN Funktionscode ä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 Feinabstimmung der Abschnitte „Ressourcen“ und „Bedingungen“ der Richtlinien.

Sie können die Verwaltung von Ereignisquellen und AWS Identity and Access Management (IAM) -Richtlinien vereinfachen, indem Sie Funktionsaliase verwenden. Weitere Informationen finden Sie unter Erstellen Sie einen Alias für eine Lambda-Funktion.