Guida introduttiva alle applicazioni serverless - AWS Toolkit per VS Code

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Guida introduttiva alle applicazioni serverless

Le sezioni seguenti descrivono come iniziare a creare un file Applicazione Serverless AWS daAWS Toolkit for Visual Studio Code, using AWS Serverless Application Model (AWS SAM) e AWS CloudFormation stack.

Prerequisiti

Prima di poter creare o lavorare con unApplicazione Serverless AWS, è necessario completare i seguenti prerequisiti.

Nota

Le seguenti operazioni potrebbero richiedere l'uscita o il riavvio di VS Code prima del completamento delle modifiche.

  • Installa l'interfaccia AWS SAM a riga di comando (CLI). Per ulteriori informazioni e istruzioni su come installare la AWS SAM CLI, consultate l'argomento Installazione della AWS SAM CLI in questa Guida per l'utente. AWS Serverless Application Model

  • Dal tuo file di AWS configurazione, identifica la tua regione predefinita. AWS Per ulteriori informazioni sul file di configurazione, consulta l'argomento Configurazione e impostazioni dei file di credenziali nella Guida per l'AWS Command Line Interfaceutente.

  • Installa l'SDK della tua lingua e configura la tua toolchain. Per ulteriori informazioni su come configurare la toolchain, AWS Toolkit for Visual Studio Code consulta l'argomento Configurazione della toolchain in questa Guida per l'utente.

  • Installa l'estensione per il supporto del linguaggio YAML dal marketplace VS Code. Ciò è necessario per la CodeLens funzionalità di accessibilità dei file AWS SAM modello. Per ulteriori informazioni in merito CodeLens, consulta la CodeLenssezione della documentazione di VS Code

Autorizzazioni IAM per applicazioni serverless

Nel Toolkit for VS Code è necessario disporre di un profilo di credenziali che contenga AWS Identity and Access Management le autorizzazioni (IAM) necessarie per distribuire ed eseguire applicazioni serverless. È necessario disporre di un accesso adeguato in lettura/scrittura ai seguenti servizi:AWS CloudFormation, IAM, Lambda, Amazon API Gateway, Amazon Simple Storage Service (Amazon S3) e Amazon Elastic Container Registry (Amazon ECR) Elastic Container Registry (Amazon ECR).

Per ulteriori informazioni sulla configurazione dell'autenticazione necessaria per distribuire ed eseguire applicazioni serverless, consulta la sezione Gestione dell'accesso e delle autorizzazioni alle risorse nella Guida per gli sviluppatori. AWS Serverless Application Model Per informazioni su come configurare le credenziali, consulta la sezione contenuta AWS IAMcredenziali in questa Guida per l'utente.

Creazione di una nuova applicazione serverless (locale)

Questa procedura mostra come creare un'applicazione serverless con Toolkit for VS Code utilizzando. AWS SAM L'output di questa procedura è una directory locale sull'host di sviluppo contenente un'applicazione serverless di esempio, che è possibile creare, testare localmente, modificare e distribuire sul cloud. AWS

  1. Per aprire la palette dei comandi, scegliete Visualizza, Command Palette, quindi immettete. AWS

  2. Scegli AWSToolkit Create Lambda SAM Application.

    Finestra di dialogo della tavolozza dei comandi.
    Nota

    Se la AWS SAM CLI non è installata, viene visualizzato un errore nell'angolo in basso a destra dell'editor VS Code. In tal caso, verifica di aver soddisfatto tutti i presupposti e i prerequisiti.

  3. Scegliete il runtime per la vostra AWS SAM applicazione.

    Nota

    Se selezioni uno dei tempi di esecuzione con "(Image)", l'applicazione è di tipo pacchetto Image. Se selezioni uno dei tempi di esecuzione senza "(Image)", l'applicazione è di tipo Zip. Per ulteriori informazioni sulla differenza tra tipi di pacchetto Image e Zip, consulta Pacchetti di implementazione Lambda nella Guida per gli sviluppatori di AWS Lambda.

  4. A seconda del runtime selezionato, è possibile che venga richiesto di selezionare un gestore delle dipendenze e un'architettura di runtime per l'applicazione SAM.

    Dependency Manager

    Scegli tra Gradle o Maven.

    Nota

    Questa scelta di strumenti di automazione delle build è disponibile solo per i runtime Java.

    Architecture

    Scegli tra x86_64 o arm64.

    L'opzione per eseguire l'applicazione serverless in un ambiente emulato basato su ARM64 anziché nell'ambiente predefinito basato su x86_64 è disponibile per i seguenti runtime:

    • nodejs12.x (ZIP e immagine)

    • nodejs14.x (ZIP e immagine)

    • python3.8 (ZIP e immagine)

    • python3.9 (ZIP e immagine)

    • python3.10 (ZIP e immagine)

    • python3.11 (ZIP e immagine)

    • python3.12 (ZIP e immagine)

    • java8.al2 con Gradle (ZIP e immagine)

    • java8.al2 con Maven (solo ZIP)

    • java11 con Gradle (ZIP e immagine)

    • java11 con Maven (solo ZIP)

    Importante

    È necessario installare la AWS CLI versione 1.33.0 o successiva per consentire l'esecuzione delle applicazioni in ambienti basati su ARM64. Per ulteriori informazioni, consulta Prerequisiti.

  5. Scegliere una località per il nuovo progetto. È possibile utilizzare una cartella dell'area di lavoro esistente se è aperta, selezionare una cartella diversa già esistente o creare una nuova cartella e selezionarla. Per questo esempio, scegliere There are no workspace folders open (Non sono aperte cartelle dell'area di lavoro) per creare una cartella denominata MY-SAM-APP.

  6. Inserire un nome per il nuovo progetto. Per questo esempio, utilizzare my-sam-app-nodejs. Dopo aver premuto Invio, il Toolkit for VS Code Code impiega alcuni minuti per creare il progetto.

Quando il progetto viene creato, l'applicazione viene aggiunta all'area di lavoro corrente. Dovrebbe essere visualizzabile nella finestra Explorer.

Apertura di un'applicazione serverless (locale)

Per aprire un'applicazione serverless sull'host di sviluppo locale, aprite la cartella che contiene il file modello dell'applicazione.

  1. Dal File, scegli Apri cartella... .

  2. Nella finestra di dialogo Apri cartella, accedete alla cartella dell'applicazione serverless che desiderate aprire.

  3. Scegliete il pulsante Seleziona cartella.

Quando si apre la cartella di un'applicazione, questa viene aggiunta alla finestra Explorer.

Esecuzione e debug di un'applicazione serverless dal modello (locale)

Puoi usare Toolkit for VS Code per configurare come eseguire il debug di applicazioni serverless ed eseguirle localmente nel tuo ambiente di sviluppo.

Si inizia a configurare il comportamento di debug utilizzando la funzionalità VS Code per identificare una CodeLensfunzione Lambda idonea. CodeLens abilita interazioni basate sul contenuto con il codice sorgente. Per informazioni su come garantire l'accesso alla CodeLens funzionalità, consulta la Prerequisiti sezione precedente di questo argomento.

Nota

In questo esempio, si esegue il debug di un'applicazione che utilizza JavaScript. Tuttavia, puoi utilizzare le funzionalità di debug di Toolkit for VS Code con i seguenti linguaggi e runtime:

  • 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

  • Giava — 8, 8.al2, 11

  • Vai — 1.x

La scelta della lingua influisce anche sul modo in cui CodeLens vengono rilevati i gestori Lambda idonei. Per ulteriori informazioni, consulta Esecuzione e debug di funzioni Lambda direttamente dal codice.

In questa procedura, si utilizza l'applicazione di esempio creata nella Creazione di una nuova applicazione serverless (locale) sezione precedente di questo argomento.

  1. Per visualizzare i file dell'applicazione in File Explorer di VS Code, scegliete Visualizza, Esplora.

  2. Dalla cartella dell'applicazione (ad esempio, my-sample-app), apri il template.yaml file.

    Nota

    Se utilizzate un modello con un nome diverso datemplate.yaml, l' CodeLens indicatore non è automaticamente disponibile nel file YAML. Ciò significa che è necessario aggiungere manualmente una configurazione di debug.

  3. Nell'editor ditemplate.yaml, vai alla Resources sezione del modello che definisce le risorse serverless. In questo caso, si tratta del tipo AWS::Serverless::Function di HelloWorldFunction risorsa.

    Nell' CodeLens indicatore di questa risorsa, scegli Aggiungi configurazione di debug.

    Utilizzo dell' CodeLens indicatore nel template.yaml file per aggiungere una configurazione di debug.
  4. Nella palette dei comandi, selezionate il runtime in cui verrà eseguita l'AWS SAMapplicazione.

  5. Nell'editor del file launch.json, modifica o conferma i valori per le seguenti proprietà di configurazione:

    • "name": inserisci un nome facilmente leggibile da visualizzare nel campo a discesa Configuration (Configurazione) nella vista Run (Esegui).

    • "target"— Assicuratevi che il valore sia "template" tale che il AWS SAM modello sia il punto di ingresso per la sessione di debug.

    • "templatePath": inserisci un percorso relativo o assoluto per il file template.yaml.

    • "logicalId"— Assicuratevi che il nome corrisponda a quello specificato nella sezione Risorse del AWS SAM modello. In questo caso, è la HelloWorldFunction di tipo AWS::Serverless::Function.

    Configurazione del launch.json file per il debug basato su modelli.

    Per ulteriori informazioni su questa e altre voci nel file launch.json, consulta Opzioni di configurazione per il debug di applicazioni serverless.

  6. Se la configurazione di debug ti soddisfa, salva launch.json. Quindi, per avviare il debug, scegli il pulsante verde «play» nella vista RUN.

    Quando vengono avviate le sessioni di debug, il pannello DEBUG CONSOLE (CONSOLE DI DEBUG) mostra l'output di debug e visualizza tutti i valori restituiti dalla funzione Lambda. (Durante il debug AWS SAM delle applicazioni, il AWSToolkit viene selezionato come canale di output nel pannello Output).

Sincronizzazione delle applicazioni AWS SAM

AWS Toolkit for Visual Studio CodeEsegue il comando AWS SAM CLI sam sync per distribuire le applicazioni serverless su. Cloud AWS Per ulteriori informazioni sulla AWS SAM sincronizzazione, consulta l'argomento di riferimento sui comandi AWS SAM CLI nella Guida per gli sviluppatori AWS Serverless Application Model

La procedura seguente descrive come distribuire le applicazioni serverless Cloud AWS con Toolkit for VS sam sync Code.

  1. Dal menu principale di VS Code, apri la palette dei comandi espandendo Visualizza e scegliendo Command Palette.

  2. Dalla Command Palette cerca AWSe scegli Sincronizza l'applicazione SAM per iniziare a configurare la sincronizzazione.

    Comando per sincronizzare un'applicazione serverless.
  3. Scegli la AWS regione con cui sincronizzare l'applicazione serverless.

  4. Scegliere il file template.yaml da utilizzare per la distribuzione.

  5. Seleziona un bucket Amazon S3 esistente o inserisci un nuovo nome di bucket Amazon S3 in cui distribuire l'applicazione.

    Importante

    Il bucket Amazon S3 deve soddisfare i seguenti requisiti:

    • Il bucket deve trovarsi nella regione con cui ti stai sincronizzando.

    • Il nome di un bucket Amazon S3 deve essere univoco tra tutti i nomi di bucket esistenti in Amazon S3.

  6. Se l'applicazione serverless include una funzione con tipo di pacchetto Image, inserisci il nome di un repository Amazon ECR che questa implementazione può utilizzare. Il repository deve trovarsi nella regione a cui esegui l'implementazione.

  7. Seleziona uno stack di distribuzione dall'elenco delle distribuzioni precedenti o crea un nuovo stack di distribuzione inserendo un nuovo nome dello stack. Quindi, procedi con l'avvio del processo di sincronizzazione.

    Nota

    Gli stack utilizzati nelle distribuzioni precedenti vengono richiamati per area di lavoro e regione.

  8. Durante il processo di sincronizzazione, lo stato della distribuzione viene registrato nella scheda Terminale di VS Code. Verifica che la sincronizzazione sia avvenuta correttamente dalla scheda Terminale, se si verifica un errore riceverai una notifica.

    Un messaggio di errore durante la distribuzione di un'applicazione serverless.
    Nota

    Per ulteriori dettagli sulla sincronizzazione, i AWS Toolkit for Visual Studio Code log sono accessibili dalla palette dei comandi.

    Per accedere ai AWS Toolkit for Visual Studio Code log dalla palette dei comandi, espandi Visualizza, scegli Command Palette, quindi AWS: View AWS Toolkits Logs cercala e selezionala quando compare nell'elenco.

Una volta completata la distribuzione, l'applicazione viene visualizzata nell'Explorer. AWS Per ulteriori informazioni su come richiamare la funzione Lambda creata come parte dell'applicazione, consulta l'argomento di questa Guida per Interagire con le funzioni Lambda remote l'utente.

Eliminazione di un'applicazione serverless dal Cloud AWS

L'eliminazione di un'applicazione serverless comporta l'eliminazione della pila AWS CloudFormation implementata precedentemente in AWS Cloud. Nota che questa procedura non elimina la directory dell'applicazione dall'host locale.

  1. Apri la AWS Explorer.

  2. Nella finestra AWSToolkit Explorer, espandi l'area contenente l'applicazione distribuita che desideri eliminare, quindi espandi. AWS CloudFormation

  3. Apri il menu contestuale (fai clic con il pulsante destro del mouse) per il nome AWS CloudFormation dello stack che corrisponde all'applicazione serverless che desideri eliminare, quindi scegli Elimina stack. AWS CloudFormation

  4. Per confermare che desiderate eliminare lo stack selezionato, scegliete Sì.

Se l'eliminazione dello stack ha esito positivo, Toolkit for VS Code rimuove il nome dello stack dall'AWS CloudFormationelenco in Explorer. AWS