Bereitstellen von Lambda-Funktionen als ZIP-Dateiarchive - 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.

Bereitstellen von Lambda-Funktionen als ZIP-Dateiarchive

Wenn Sie eine Lambda-Funktion erstellen, verpacken Sie Ihren Funktionscode in einem Bereitstellungspaket. Lambda unterstützt zwei Arten von Bereitstellungspaketen: Container-Images und .zip-Archive. Der Workflow zum Erstellen einer Funktion hängt vom Typ des Bereitstellungspakets ab. Zur Konfiguration einer Funktion, die als Container-Image definiert ist, siehe Erstellen Sie eine Lambda-Funktion mit einem Container-Image.

Sie können die Lambda-Konsole und die Lambda-API verwenden, um eine mit einem ZIP-Dateiarchiv definierte Funktion zu erstellen. Sie können auch eine aktualisierte ZIP-Datei uploaden, um den Funktionscode zu ändern.

Anmerkung

Sie können den Bereitstellungspakettyp (ZIP- oder Container-Image) für eine vorhandene Funktion nicht ändern. Beispielsweise können Sie eine Container-Image-Funktion nicht konvertieren, um ein ZIP-Dateiarchiv zu verwenden. Sie müssen eine neue Funktion erstellen.

Erstellen der Funktion

Wenn Sie eine Funktion erstellen, die mit einem ZIP-Dateiarchiv definiert ist, wählen Sie eine Codevorlage, die Sprachversion und die Ausführungsrolle für die Funktion aus. Sie fügen Ihren Funktionscode hinzu, nachdem Lambda die Funktion erstellt hat.

So erstellen Sie die Funktion
  1. Öffnen Sie die Seite Funktionen der Lambda-Konsole.

  2. Wählen Sie Funktion erstellen.

  3. Wählen Sie Von Grund auf neu erstellen oder Vorlage verwenden, um Ihre Funktion zu erstellen.

  4. Führen Sie unter Basic information (Grundlegende Informationen) die folgenden Schritte aus:

    1. Geben Sie für Funktionsname den Funktionsnamen ein. Funktionsnamen sind auf eine Länge von 64 Zeichen beschränkt.

    2. Wählen Sie für Laufzeit die Sprachversion aus, die für Ihre Funktion verwendet werden soll.

    3. (Optional) Für-Architekturwählen Sie die Befehlssatz-Architektur aus, die für Ihre Funktion verwendet werden soll. Die Standardarchitektur ist x86_64. Stellen Sie beim Erstellen des Bereitstellungspakets für Ihre Funktion sicher, dass es damit kompatibel istBefehlssatz-Architekturaus.

  5. (Optional) Erweitern Sie unter Berechtigungen die Option Standardausführungsrolle ändern. Sie können eine neue Ausführungsrolle erstellen oder eine vorhandene Rolle verwenden.

  6. (Optional) Erweitern Sie den Abschnitt Advanced Settings (Erweiterte Einstellungen). Sie können eine Codesignatur-Konfiguration für die Funktion wählen. Sie können auch eine (Amazon VPC) für die Funktion konfigurieren, auf die zugegriffen werden soll.

  7. Wählen Sie Funktion erstellen.

Lambda erstellt die neue Funktion. Sie können nun die Konsole verwenden, um den Funktionscode hinzuzufügen und andere Funktionsparameter und -funktionen zu konfigurieren. Anweisungen zur Codebereitstellung finden Sie auf der Handler-Seite für die Laufzeit, die Ihre Funktion verwendet.

Node.js

Bereitstellen von Node.js Lambda-Funktionen mit ZIP-Dateiarchiven

Python

Arbeiten mit ZIP-Dateiarchiven und Python-Lambda-Funktionen

Ruby

Arbeiten mit ZIP-Dateiarchiven für Ruby-Lambda-Funktionen

Java

Bereitstellen von Java-Lambda-Funktionen mit ZIP- oder JAR-Dateiarchiven

Go

Bereitstellen von Lambda-Go-Funktionen mit ZIP-Dateiarchiven

C#

Erstellen und Bereitstellen von C#-Lambda-Funktionen mit ZIP-Dateiarchiven

PowerShell

Bereitstellen von PowerShell Lambda-Funktionen mit ZIP-Dateiarchiven

Verwenden des Konsolencode-Editors

Die Konsole erstellt eine Lambda-Funktion mit einer einzigen Quelldatei. Bei Skriptsprachen können Sie diese Datei bearbeiten und mit dem integrierten Code-Editor weitere Dateien hinzufügen. Klicken Sie auf Save (Speichern), um die Änderungen zu speichern. Um Ihren Code auszuführen, wählen Sie Test.

Anmerkung

Die Lambda-Konsole verwendet AWS Cloud9 , um eine integrierte Entwicklungsumgebung im Browser bereitzustellen. Sie können auch verwenden AWS Cloud9 , um Lambda-Funktionen in Ihrer eigenen Umgebung zu entwickeln. Weitere Informationen finden Sie unter Arbeiten mit - AWS Lambda Funktionen mithilfe der AWS Toolkit im AWS Cloud9 -Benutzerhandbuch.

Wenn Sie Ihren Funktionscode speichern, erstellt die Lambda-Konsole ein Bereitstellungspaket für das ZIP-Dateiarchiv. Wenn Sie Ihren Funktionscode außerhalb der Konsole (mit einer IDE) entwickeln, müssen Sie ein Bereitstellungspaket erstellen, um Ihren Code in die Lambda-Funktion hochzuladen.

Aktualisieren des Funktionscodes

Bei Skriptsprachen (Node.js, Python und Ruby) können Sie Ihren Funktionscode im eingebetteten Code-Editor bearbeiten. Wenn der Code größer als 3 MB ist, oder wenn Sie Bibliotheken hinzufügen müssen, oder für Sprachen, die der Editor nicht unterstützt (Java, Go, C#), müssen Sie Ihren Funktionscode als .zip-Archiv uploaden. Wenn das ZIP-Dateiarchiv kleiner als 50 MB ist, können Sie das ZIP-Dateiarchiv von Ihrem lokalen Computer uploaden. Wenn die Datei größer als 50 MB ist, müssen Sie die Datei aus einem Amazon S3-Bucket in die Funktion uploaden.

So können Sie den Funktionscode als .zip-Archiv uploaden
  1. Öffnen Sie die Seite Funktionen der Lambda-Konsole.

  2. Wählen Sie die zu aktualisierende Funktion aus und wählen Sie die Code-Registerkarte.

  3. Wählen Sie unter Codequelle die Option Upload von aus.

  4. Wählen Sie .zip-Datei und dann Hochladen.

    1. Wählen Sie in der Dateiauswahl die neue Image-Version aus, wählen Sie Öffnen und dann Speichern.

  5. (Alternative zu Schritt 4) Wählen Sie den Amazon-S3-Standort.

    1. Geben Sie in das Textfeld die S3-Link-URL des ZIP-Dateiarchivs ein und wählen Sie dann Speichern.

Ändern der Laufzeit

Wenn Sie die Funktionskonfiguration aktualisieren, um eine neue Laufzeit zu verwenden, müssen Sie möglicherweise den Funktionscode aktualisieren, damit dieser mit der neuen Laufzeit kompatibel ist. Wenn Sie die Funktionskonfiguration aktualisieren, um eine andere Laufzeit zu verwenden,mussstellen Sie neuen Funktionscode bereit, der mit Laufzeit und Architektur kompatibel ist. Anweisungen zum Erstellen eines Bereitstellungspakets für den Funktionscode finden Sie auf der Handler-Seite für die Laufzeit, die die Funktion verwendet.

So ändern Sie die Laufzeit
  1. Öffnen Sie die Seite Funktionen der Lambda-Konsole.

  2. Wählen Sie die zu aktualisierende Funktion aus und wählen Sie die Code-Registerkarte.

  3. Blättern Sie nach unten bis zum Abschnitt Laufzeiteinstellungen, der sich unter dem Code-Editor befindet.

  4. Wählen Sie Bearbeiten aus.

    1. Wählen Sie für Runtime (Laufzeit) die Laufzeit-ID aus.

    2. Geben Sie im Feld Handler den Dateinamen und en Handler für die Funktion ein.

    3. Für-Architekturwählen Sie die Befehlssatz-Architektur aus, die für Ihre Funktion verwendet werden soll.

  5. Wählen Sie Speichern.

Ändern der Architektur

Bevor Sie die Befehlssatzarchitektur ändern können, müssen Sie sicherstellen, dass der Code Ihrer Funktion mit der Zielarchitektur kompatibel ist.

Wenn Sie Node.js, Python oder Ruby verwenden und Ihren Funktionscode im eingebettetenEditorkann der vorhandene Code ohne Änderung ausgeführt werden.

Wenn Sie jedoch Ihren Funktionscode mithilfe eines Bereitstellungspakets im ZIP-Dateiarchiv angeben, müssen Sie ein neues ZIP-Dateiarchiv vorbereiten, das korrekt für die Ziel-Laufzeit- und Anleitungssatz-Architektur kompiliert und erstellt wird. Anweisungen dazu finden Sie auf der Handler-Seite für Ihre Funktions-Laufzeit.

So ändern Sie die Befehlssatz-Architektur
  1. Öffnen Sie die Seite Funktionen der Lambda-Konsole.

  2. Wählen Sie die zu aktualisierende Funktion aus und wählen Sie die Code-Registerkarte.

  3. Wählen Sie unter Laufzeiteinstellungen die Option Bearbeiten.

  4. Für-Architekturwählen Sie die Befehlssatz-Architektur aus, die für Ihre Funktion verwendet werden soll.

  5. Wählen Sie Save aus.

Verwenden der Lambda-API

Um eine Funktion zu erstellen und zu konfigurieren, die ein ZIP-Dateiarchiv verwendet, verwenden Sie die folgenden API-Operationen:

AWS CloudFormation

Sie können verwenden AWS CloudFormation , um eine Lambda-Funktion zu erstellen, die ein ZIP-Dateiarchiv verwendet. In Ihrer AWS CloudFormation Vorlage gibt die AWS::Lambda::Function Ressource die Lambda-Funktion an. Beschreibungen der Eigenschaften in der AWS::Lambda::Function Ressource finden Sie unter AWS::Lambda::Function im AWS CloudFormation -Benutzerhandbuch.

Legen Sie in der AWS::Lambda::Function-Ressource die folgenden Eigenschaften fest, um eine Funktion zu erstellen, die als Zip-Datei-Archiv definiert ist:

  • AWS::Lambda::Function

    • PackageType – Setzen Sie auf Zip.

    • Code – Geben Sie den Namen des Amazon-S3-Buckets und den ZIP-Dateinamen in die Textfelder S3Bucket und S3Key. Für Node.js oder Python können Sie Inline-Quellcode Ihrer Lambda-Funktion bereitstellen.

    • Laufzeit – Legt den Laufzeitwert fest.

    • Architektur – Legen Sie den Architekturwert auf festarm64, um den AWS Graviton2-Prozessor zu verwenden. Der Standardwert istx86_64aus.