Utilizzo di Lambda con l'infrastructure as code (IaC) - AWS Lambda

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à.

Utilizzo di Lambda con l'infrastructure as code (IaC)

Le funzioni Lambda raramente vengono eseguite in modo isolato. Spesso fanno invece parte di un'applicazione serverless con altre risorse come database, code e spazio di archiviazione. Con l'infrastructure as code (IaC), è possibile automatizzare i processi di implementazione per implementare e aggiornare in modo rapido e ripetibile intere applicazioni serverless che coinvolgono molte risorse AWS separate. Questo approccio accelera il ciclo di sviluppo, semplifica la gestione della configurazione e garantisce che le risorse vengano implementate sempre allo stesso modo.

Strumenti di IaC per Lambda

CloudFormation

CloudFormation è il servizio IaC fondamentale di AWS. Puoi utilizzare i modelli YAML o JSON per modellare ed eseguire il provisioning dell'intera infrastruttura AWS, comprese le funzioni Lambda. CloudFormation gestisce le complessità legate alla creazione, all'aggiornamento e all'eliminazione delle risorse AWS.

AWS Serverless Application Model (AWS SAM)

AWS SAM è un framework open source basato su CloudFormation. Fornisce una sintassi semplificata per definire applicazioni serverless. Usa i modelli AWS SAM per effettuare rapidamente il provisioning di funzioni Lambda, API, database e origini eventi con poche righe di YAML.

AWS Cloud Development Kit (AWS CDK)

Il CDK è un approccio basato sul codice a IaC. Puoi definire la tua architettura basata su Lambda utilizzando TypeScript, JavaScript, Python, Java, C#/.NET o Go. Scegli il tuo linguaggio preferito e utilizza elementi di programmazione come parametri, condizionali, cicli, composizione ed ereditarietà per definire il risultato desiderato della tua infrastruttura. Il CDK genera quindi i modelli CloudFormation sottostanti per l'implementazione. Per un esempio di come utilizzare Lambda con CDK, consulta Implementazione delle funzioni Lambda con AWS CDK.

Diagramma che mostra come AWS SAM e AWS CDK implementano risorse AWS e codice utilizzando CloudFormation

Inoltre, AWS fornisce un servizio chiamato AWS Infrastructure Composer per sviluppare modelli di IaC utilizzando una semplice interfaccia grafica. Con Infrastructure Composer, è possibile progettare un'architettura di applicazioni trascinando, raggruppando e connettendo i Servizi AWS in un canvas visivo. Infrastructure Composer crea quindi un modello AWS SAM oppure un modello CloudFormation a partire dal tuo progetto che puoi utilizzare per implementare l'applicazione.

Nella sezione Utilizzo delle funzioni Lambda in AWS SAM e Infrastructure Composer seguente, Infrastructure Composer viene utilizzato per sviluppare un modello per un'applicazione serverless basata su una funzione Lambda esistente.