Esecuzione di un "Hello, World!" serverless con AWS Lambda

TUTORIAL

Panoramica

Questo tutorial illustra le nozioni di base per eseguire codice in AWS Lambda senza dover effettuare il provisioning o gestire alcun server. Mostreremo come creare una funzione "Hello World" in Lambda utilizzando la console di AWS Lambda. Spiegheremo inoltre come richiamare manualmente la funzione Lambda utilizzando dati di eventi di esempio e come interpretare i parametri in uscita.

Tutte le operazioni mostrate in questo tutorial possono essere eseguite nell'ambito del piano gratuito.

 Esperienza AWS

Principiante

 Tempo per il completamento

10 minuti

 Costo richiesto per il completamento

Piano gratuito

 Requisiti

  • Account AWS
  • Browser consigliato: l'ultima versione di Chrome o Firefox

[**]Gli account creati nelle ultime 24 ore potrebbero non avere ancora accesso a tutti i servizi richiesti per questo tutorial.

 Servizi utilizzati

 Ultimo aggiornamento

27 settembre 2023

Implementazione

Accedi alla console di Lambda
Facendo clic qui, la Console di gestione AWS si aprirà in una nuova finestra del browser in modo da poter mantenere aperta questa guida dettagliata. Nella barra di navigazione in alto, cerca Lambda e apri la console AWS Lambda.
Seleziona un blueprint Lambda e configuralo

I blueprint forniscono codice di esempio per eseguire piccole operazioni di elaborazione. La maggior parte degli schemi elabora gli eventi da eventi sorgente specifici, ad esempio Amazon S3, Amazon DynamoDB o applicazioni personalizzate.

a.  Nella console AWS Lambda, scegli Crea funzione.

Nota: la console visualizza la pagina soltanto se non hai creato alcuna funzione Lambda. Se hai già creato delle funzioni, viene visualizzata la pagina Lambda > Funzioni. Nella pagina dell'elenco, scegli Crea una funzione per accedere alla pagina Crea funzione.

Una funzione Lambda è composta da codice, dipendenze associate e configurazione. Le informazioni di configurazione fornite includono le risorse di elaborazione che desideri allocare (ad esempio in termini di memoria), il timeout di esecuzione e un ruolo IAM che possa essere interpretato da AWS Lambda come esecutore della funzione Lambda.

Informazioni di base:

  • Nome: immetti qui il nome della funzione Lambda. Per questo tutorial, useremo hello-world-python.
  • Ruolo: sarà necessario creare un ruolo IAM (definito anche ruolo di esecuzione) con le autorizzazioni necessarie su cui AWS Lambda può fare affidamento per invocare la funzione Lambda per tuo conto. 
  • Nome ruolo: lambda_basic_execution.

Codice della funzione Lambda:

In questa sezione è possibile riesaminare il codice di esempio scritto in Python.

Per continuare a sviluppare la tua funzione:

b.  Seleziona usa uno schema.
c.  Nella casella Nome blueprint, assicurati che la funzione Hello world con il blueprint python 3.10 sia selezionata.
d.  Nella casella Nome funzione, inserisci hello-world-python.
e.  Per Ruolo di esecuzione, seleziona Crea un nuovo ruolo dai modelli di policy AWS.
f.  Nella casella Nome ruolo, inserisci lambda_basic_execution.
g. Premi il pulsante Crea funzione.

Rivedi le impostazioni Lambda

Dopo aver creato la funzione, rivedi le altre impostazioni.

  • Runtime: attualmente, puoi creare il codice della funzione Lambda in Java, Node.js, C#, Go o Python. Per questo tutorial, usiamo Python 3.10 come runtime.
  • Handler: è possibile specificare un handler (un metodo o una funzione nel codice) in cui AWS Lambda possa avviare l'esecuzione del codice. AWS Lambda fornisce dati relativi ad eventi come input per l'handler, che elaborerà gli eventi.

In questo esempio, Lambda identifica l'evento dal codice di esempio, perciò il campo sarà compilato con lambda_function.lambda_handler.

Richiama la funzione Lambda e verificane i risultati

La console mostra la funzione Lambda hello-world-python. È ora possibile testare la funzione, verificare i risultati e rivedere i log.

a.  Seleziona Configura evento di test nel menu a discesa denominato Test.

b.  L'editor a comparsa viene visualizzato per consentire l'inserimento di un evento e testare la funzione.  

  • Seleziona Crea nuovo evento.
  • Inserisci il nome dell'evento, ad esempio HelloWorldEvent.
  • Mantieni l'impostazione predefinita di Privato per le impostazioni di condivisione degli eventi.
  • Scegli hello-world dall'elenco dei modelli.
  • È possibile modificare i valori nel JSON di esempio; non modificare invece la struttura dell'evento. Per questo tutorial, sostituisci value1 con hello, world!.

Seleziona Crea.

c. Scegli Esegui il test.

d. Quando viene completata l'esecuzione, consulta i risultati nella console:

  • La sezione Risultati esecuzione documenta la corretta esecuzione della funzione.
  • La sezione Log della funzione mostrerà i log generati dall'esecuzione della funzione Lambda e le principali informazioni riportate nell'output del log.
Monitora i parametri

AWS Lambda monitora le funzioni e genera report sui parametri automaticamente tramite Amazon CloudWatch. Per semplificare il monitoraggio del codice durante l'esecuzione, Lambda tiene traccia in modo automatico del numero di richieste, della latenza per richiesta e del numero di richieste con errore, pubblicandone i parametri associati. 

a. Richiama la funzione Lambda più di una volta premendo ripetutamente il pulsante Esegui test. In questo modo verranno generati i parametri da visualizzare nella fase successiva.

b. Seleziona la scheda Monitoraggio per visualizzare i risultati.

c. Scorri verso il basso per visualizzare i parametri della funzione Lambda.  I parametri di Lambda vengono segnalati tramite Amazon CloudWatch. I parametri possono essere sfruttati per impostare allarmi personalizzati. Per ulteriori informazioni su CloudWatch, consulta la Guida per gli sviluppatori di Amazon CloudWatch.

La scheda Monitoraggio mostrerà sette parametri di CloudWatch: chiamate, durata, numero di errori e percentuale di successo (%), limitazioni, errori di distribuzione asincroni, IteratorAge ed esecuzioni simultanee.

I prezzi di AWS Lambda sono calcolati in base all'uso effettivo. Quando viene superato il limite previsto dal piano gratuito di AWS Lambda, la tariffazione è basata sul numero di richieste per le funzioni (numero di richieste) e sulla durata di esecuzione del codice (durata delle chiamate).  Per ulteriori informazioni, consulta la sezione dei Prezzi di AWS Lambda.

Elimina la funzione Lambda

Anche se mantenere la funzione Lambda non determina alcun costo aggiuntivo, eliminarla tramite la console AWS Lambda è un'operazione molto semplice.  

a.  Seleziona il pulsante Operazioni e seleziona Elimina funzione.

b.  Ti verrà chiesto di confermare l'arresto; seleziona Elimina.

Conclusioni

Congratulazioni! Hai creato la tua prima funzione AWS Lambda. È il primo passo verso l'esecuzione di applicazioni senza provisioning o gestione di server. Lambda ridimensiona le risorse delle applicazioni in modo automatico eseguendo il codice in risposta a determinati eventi, ricalibrandole esattamente in base ai carichi di lavoro.

Questa pagina è stata utile?

Fasi successive