Erste Schritte mit serverlosen Anwendungen - AWS Toolkit for VS Code

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.

Erste Schritte mit serverlosen Anwendungen

In den folgenden Abschnitten wird beschrieben, wie Sie mit der Erstellung von Stacks AWS-Serverless-Anwendung aus denAWS Toolkit for Visual Studio Code, using AWS Serverless Application Model (AWS SAM) und AWS CloudFormation Stacks beginnen.

Voraussetzungen

Bevor Sie eine erstellen oder damit arbeiten könnenAWS-Serverless-Anwendung, müssen die folgenden Voraussetzungen erfüllt sein.

Anmerkung

Bei den folgenden Vorgängen müssen Sie VS Code möglicherweise beenden oder neu starten, bevor die Änderungen abgeschlossen sind.

  • Installieren Sie die AWS SAM Befehlszeilenschnittstelle (CLI). Weitere Informationen und Anweisungen zur Installation der AWS SAM CLI finden Sie im Thema Installation der AWS SAM CLI in diesem AWS Serverless Application ModelBenutzerhandbuch.

  • Identifizieren Sie in Ihrer AWS Konfigurationsdatei Ihre AWS Standardregion. Weitere Informationen zu Ihrer Konfigurationsdatei finden Sie unter dem Thema Einstellungen für die Konfiguration und die Anmeldeinformationsdatei im AWS Command Line InterfaceBenutzerhandbuch.

  • Installieren Sie Ihr Sprach-SDK und konfigurieren Sie Ihre Toolchain. Weitere Informationen zur Konfiguration Ihrer Toolchain AWS Toolkit for Visual Studio Code finden Sie im Thema Konfiguration Ihrer Toolchain in diesem Benutzerhandbuch.

  • Installieren Sie die YAML-Sprachunterstützungserweiterung vom VS Code Marketplace. Dies ist erforderlich, damit auf CodeLens AWS SAM Vorlagendateien zugegriffen werden kann. Weitere Informationen zu CodeLens finden Sie im CodeLensAbschnitt der VS Code-Dokumentation

IAM-Berechtigungen für serverlose Anwendungen

Im Toolkit for VS Code benötigen Sie ein Anmeldeinformationsprofil, das die AWS Identity and Access Management (IAM-) Berechtigungen enthält, die für die Bereitstellung und Ausführung serverloser Anwendungen erforderlich sind. Sie benötigen entsprechenden Lese-/Schreibzugriff auf die folgenden Dienste:AWS CloudFormation, IAM, Lambda, Amazon API Gateway, Amazon Simple Storage Service (Amazon S3) und Amazon Elastic Container Registry (Amazon ECR).

Weitere Informationen zur Einrichtung der Authentifizierung, die für die Bereitstellung und Ausführung serverloser Anwendungen erforderlich ist, finden Sie im Developer Guide unter Managing Resource Access and Permissions. AWS Serverless Application Model Informationen zum Einrichten Ihrer Anmeldeinformationen finden Sie AWS IAMReferenzen in diesem Benutzerhandbuch.

Eine neue serverlose Anwendung (lokal) erstellen

Dieses Verfahren zeigt, wie Sie eine serverlose Anwendung mit dem Toolkit for VS Code erstellen, indem Sie AWS SAM Die Ausgabe dieses Verfahrens ist ein lokales Verzeichnis auf Ihrem Entwicklungshost, das eine serverlose Beispielanwendung enthält, die Sie erstellen, lokal testen, ändern und in der Cloud bereitstellen können. AWS

  1. Um die Befehlspalette zu öffnen, wählen Sie Ansicht, Befehlspalette und geben Sie dann die Eingabetaste ein AWS.

  2. Wählen Sie AWSToolkit Create Lambda SAM Application aus.

    Dialogfeld „Befehlspalette“.
    Anmerkung

    Wenn die AWS SAM CLI nicht installiert ist, wird in der unteren rechten Ecke des VS Code-Editors eine Fehlermeldung angezeigt. Stellen Sie in diesem Fall sicher, dass Sie alle Annahmen und Voraussetzungen erfüllt haben.

  3. Wählen Sie die Laufzeit für Ihre AWS SAM Anwendung.

    Anmerkung

    Wenn Sie eine der Laufzeiten mit „(Image)“ auswählen, ist Ihre Anwendung Pakettyp Image. Wenn Sie eine der Laufzeiten ohne „(Image)“ auswählen, ist Ihre Anwendung der Typ Zip. Für weitere Informationen zu den Unterschieden zwischen Image und Zip Pakettypen finden Sie unter Lambda-Bereitstellungspakete im AWS Lambda Entwicklerhandbuch.

  4. Abhängig von der ausgewählten Laufzeit werden Sie möglicherweise aufgefordert, einen Abhängigkeitsmanager und eine Laufzeitarchitektur für Ihre SAM-Anwendung auszuwählen.

    Dependency Manager

    Wählen Sie zwischen Gradle oder Maven.

    Anmerkung

    Diese Auswahl an Tools zur Build-Automatisierung ist nur für Java-Laufzeiten verfügbar.

    Architecture

    Wählen Sie zwischen x86_64 oder arm64.

    Die Option, Ihre serverlose Anwendung in einer ARM64-basierten emulierten Umgebung anstelle der standardmäßigen x86_64-basierten Umgebung auszuführen, ist für die folgenden Laufzeiten verfügbar:

    • nodejs12.x (ZIP und Bild)

    • nodejs14.x (ZIP und Bild)

    • python3.8 (ZIP und Bild)

    • python3.9 (ZIP und Bild)

    • python3.10 (ZIP und Bild)

    • python3.11 (ZIP und Bild)

    • python3.12 (ZIP und Bild)

    • java8.al2 mit Gradle (ZIP und Bild)

    • java8.al2 mit Maven (nur ZIP)

    • java11 mit Gradle (ZIP und Bild)

    • java11 mit Maven (nur ZIP)

    Wichtig

    Sie müssen AWS CLI Version 1.33.0 oder höher installieren, damit Anwendungen in ARM64-basierten Umgebungen ausgeführt werden können. Weitere Informationen finden Sie unter Voraussetzungen.

  5. Wählen Sie einen Speicherort für Ihr neues Projekt aus. Sie können einen vorhandenen Arbeitsbereichordner verwenden, wenn einer geöffnet ist, mit Select a different folder (Einen anderen Ordner wählen) einen bereits vorhandenen Ordner auswählen oder einen neuen Ordner erstellen und auswählen. Wählen Sie in diesem Beispiel die Option There are no workspace folders open (Es sind keine Arbeitsbereichsordner geöffnet), um einen Ordner mit dem Namen MY-SAM-APP zu erstellen.

  6. Geben Sie einen Namen für Ihr neues Projekt ein. Wählen Sie für dieses Beispiel my-sam-app-nodejs. Nachdem Sie die Eingabetaste gedrückt haben, benötigt das Toolkit for VS Code einen Moment, um das Projekt zu erstellen.

Wenn das Projekt erstellt wird, wird Ihre Anwendung Ihrem aktuellen Arbeitsbereich hinzugefügt. Sie sollten es im Explorer-Fenster sehen.

Öffnen einer serverlosen Anwendung (lokal)

Um eine serverlose Anwendung auf Ihrem lokalen Entwicklungshost zu öffnen, öffnen Sie den Ordner, der die Vorlagendatei der Anwendung enthält.

  1. Wählen Sie in der Datei die Option Ordner öffnen... .

  2. Navigieren Sie im Dialogfeld „Ordner öffnen“ zu dem serverlosen Anwendungsordner, den Sie öffnen möchten.

  3. Wählen Sie die Schaltfläche „Ordner auswählen“.

Wenn Sie den Ordner einer Anwendung öffnen, wird er dem Explorer-Fenster hinzugefügt.

Eine serverlose Anwendung über eine Vorlage ausführen und debuggen (lokal)

Sie können das Toolkit for VS Code verwenden, um zu konfigurieren, wie serverlose Anwendungen debuggt und lokal in Ihrer Entwicklungsumgebung ausgeführt werden.

Sie beginnen mit der Konfiguration des Debug-Verhaltens, indem Sie die VS CodeLensCode-Funktion verwenden, um eine geeignete Lambda-Funktion zu identifizieren. CodeLens ermöglicht inhaltsorientierte Interaktionen mit Ihrem Quellcode. Informationen dazu, wie Sie sicherstellen können, dass Sie auf die CodeLens Funktion zugreifen können, finden Sie im Voraussetzungen Abschnitt weiter oben in diesem Thema.

Anmerkung

In diesem Beispiel debuggen Sie eine Anwendung, die verwendet JavaScript. Sie können jedoch die Debugging-Funktionen von Toolkit for VS Code mit den folgenden Sprachen und Laufzeiten verwenden:

  • C# — .NET Core 2.1, 3.1; .NET 5.0

  • JavaScript/TypeScript — Node.js 12. x, 14. x

  • Python — 3.6, 3.7, 3.8, 3.9, 3.10, 3.11, 3.12

  • Java — 8, 8.al2, 11

  • Gehe — 1.x

Ihre Sprachauswahl wirkt sich auch darauf aus, wie geeignete Lambda-Handler CodeLens erkannt werden. Weitere Informationen finden Sie unter Lambda-Funktionen direkt aus dem Code ausführen und debuggen.

In diesem Verfahren verwenden Sie die Beispielanwendung, die im Eine neue serverlose Anwendung (lokal) erstellen Abschnitt weiter oben in diesem Thema erstellt wurde.

  1. Um Ihre Anwendungsdateien im Datei-Explorer von VS Code anzuzeigen, wählen Sie Ansicht, Explorer.

  2. Öffnen Sie die template.yaml Datei im Anwendungsordner (z. B. my-sample-app).

    Anmerkung

    Wenn Sie eine Vorlage mit einem anderen Namen als verwendentemplate.yaml, ist der CodeLens Indikator nicht automatisch in der YAML-Datei verfügbar. Das bedeutet, dass Sie manuell eine Debug-Konfiguration hinzufügen müssen.

  3. Gehen Sie im Editor für template.yaml zu dem Resources Abschnitt der Vorlage, der serverlose Ressourcen definiert. In diesem Fall ist dies die HelloWorldFunction Ressource vom TypAWS::Serverless::Function.

    Wählen Sie im CodeLens Indikator für diese Ressource die Option Debug-Konfiguration hinzufügen aus.

    Verwenden Sie den CodeLens Indikator in der template.yaml Datei, um eine Debug-Konfiguration hinzuzufügen.
  4. Wählen Sie in der Befehlspalette die Laufzeit aus, in der Ihre AWS SAM Anwendung ausgeführt werden soll.

  5. Klicken Sie im Editor für die Datei launch.json, bearbeiten oder bestätigen Sie Werte für die folgenden Konfigurationseigenschaften:

    • "name"— Geben Sie einen leserfreundlichen Namen ein, der in der Konfiguration im Dropdownfeld Ausführen angezeigt wird.

    • "target"— Stellen Sie sicher, dass der Wert "template" so ist, dass die AWS SAM Vorlage der Einstiegspunkt für die Debug-Sitzung ist.

    • "templatePath"— Geben Sie einen relativen oder absoluten Pfad für die Datei template.yaml an.

    • "logicalId"— Stellen Sie sicher, dass der Name mit dem Namen übereinstimmt, der im Abschnitt Ressourcen der AWS SAM Vorlage angegeben ist. In diesem Fall handelt es sich um den HelloWorldFunction vom Typ AWS::Serverless::Function.

    Konfiguration der launch.json Datei für das vorlagenbasierte Debugging.

    Weitere Informationen zu diesen und anderen Einträgen in launch.json finden Sie in Konfigurationsoptionen für das Debuggen von serverless Anwendungen.

  6. Wenn Sie mit Ihrer Debug-Konfiguration zufrieden sind, speichern Sie launch.json. Um dann mit dem Debuggen zu beginnen, wählen Sie in der RUN-Ansicht die grüne Schaltfläche „Abspielen“.

    Wenn die Debugging-Sitzungen gestartet werden, wird die DEBUGKONSOLE zeigt die Debugging-Ausgabe an und zeigt alle von der Lambda Funktion zurückgegebenen Werte an. (Beim Debuggen von AWS SAM Anwendungen wird das AWSToolkit im Bedienfeld „Ausgabe“ als Ausgabekanal ausgewählt.)

Anwendungen werden synchronisiert AWS SAM

Das AWS Toolkit for Visual Studio Code führt den AWS SAM CLI-Befehl aussam sync, um Ihre serverlosen Anwendungen auf dem AWS Cloud bereitzustellen. Weitere Informationen zur AWS SAM Synchronisierung finden Sie im Referenzthema AWS SAM CLI Command im AWS Serverless Application ModelDeveloper Guide

Das folgende Verfahren beschreibt, wie Sie Ihre serverlosen Anwendungen AWS Cloud mithilfe sam sync des Toolkit for VS Code bereitstellen.

  1. Öffnen Sie im Hauptmenü von VS Code die Befehlspalette, indem Sie Ansicht erweitern und Befehlspalette auswählen.

  2. Suchen Sie in der Befehlspalette nach SAM-Anwendung synchronisieren AWSund wählen Sie diese aus, um mit der Einrichtung Ihrer Synchronisierung zu beginnen.

    Befehl zum Synchronisieren einer serverlosen Anwendung.
  3. Wählen Sie die AWS Region aus, mit der Ihre serverlose Anwendung synchronisiert werden soll.

  4. Wählen Sie die template.yaml-Datei aus, die für die Bereitstellung verwendet werden soll.

  5. Wählen Sie einen vorhandenen Amazon S3 S3-Bucket aus oder geben Sie einen neuen Amazon S3 S3-Bucket-Namen ein, in dem Sie Ihre Anwendung bereitstellen möchten.

    Wichtig

    Ihr Amazon S3 S3-Bucket muss die folgenden Anforderungen erfüllen:

    • Der Bucket muss sich in der Region befinden, mit der Sie synchronisieren.

    • Der Amazon-S3-Bucket-Name muss unter den in Amazon S3 vorhandenen Bucket-Namen global eindeutig sein.

  6. Wenn Ihre serverless Anwendung eine Funktion mit dem Pakettyp Image. Geben Sie den Namen eines Amazon ECR-Repositorys ein, das diese Bereitstellung verwenden kann. Der Bucket muss sich in der Region befinden, in der Sie bereitstellen.

  7. Wählen Sie einen Deployment-Stack aus der Liste Ihrer vorherigen Deployments aus oder erstellen Sie einen neuen Deployment-Stack, indem Sie einen neuen Stack-Namen eingeben. Fahren Sie dann fort, um den Synchronisierungsvorgang zu starten.

    Anmerkung

    Stacks, die in früheren Bereitstellungen verwendet wurden, werden pro Workspace und Region zurückgerufen.

  8. Während des Synchronisierungsvorgangs wird der Status Ihrer Bereitstellung auf der Registerkarte Terminal von VS Code erfasst. Stellen Sie auf der Registerkarte Terminal sicher, dass Ihre Synchronisierung erfolgreich war. Wenn ein Fehler auftritt, erhalten Sie eine Benachrichtigung.

    Bei der Bereitstellung einer serverlosen Anwendung wird ein Fehler-Popup angezeigt.
    Anmerkung

    Weitere Informationen zu Ihrer Synchronisierung finden Sie in den AWS Toolkit for Visual Studio Code Protokollen über die Befehlspalette.

    Um über die Befehlspalette auf Ihre AWS Toolkit for Visual Studio Code Protokolle zuzugreifen, erweitern Sie Ansicht, wählen Sie BefehlspaletteAWS: View AWS Toolkits Logs, suchen Sie danach und wählen Sie sie aus, wenn sie in der Liste angezeigt wird.

Wenn die Bereitstellung abgeschlossen ist, wird Ihre Anwendung im AWSExplorer aufgeführt. Weitere Informationen zum Aufrufen der Lambda-Funktion, die als Teil der Anwendung erstellt wurde, finden Sie im Interaktion mit Remote-Lambda-Funktionen Thema in diesem Benutzerhandbuch.

Löschen einer serverlosen Anwendung aus dem AWS Cloud

Beim Löschen einer serverless Anwendung wird der AWS CloudFormation-Stack gelöscjt, den Sie zuvor für die AWS Cloud bereitgestellt haben. Beachten Sie, dass dieses Verfahren Ihr Anwendungsverzeichnis nicht von Ihrem lokalen Host löscht.

  1. Öffnen Sie die AWS Entdecker.

  2. Erweitern Sie im AWSToolkit-Explorer-Fenster die Region, die die bereitgestellte Anwendung enthält, die Sie löschen möchten, und erweitern Sie dann. AWS CloudFormation

  3. Öffnen Sie das Kontextmenü (Rechtsklick) für den Namen des AWS CloudFormation Stacks, der der serverlosen Anwendung entspricht, die Sie löschen möchten, und wählen Sie dann Stack löschen AWS CloudFormation aus.

  4. Um zu bestätigen, dass Sie den ausgewählten Stack löschen möchten, wählen Sie Ja.

Wenn das Löschen des Stacks erfolgreich ist, entfernt das Toolkit for VS Code den Stacknamen aus der AWS CloudFormation Liste im AWS Explorer.