Carichi di lavoro .NET su AWS App Runner

MODULO 2

Modulo 2: nozioni di base su AWS App Runner

 MODULO DI APPRENDIMENTO

Obiettivi formativi

In questo modulo completerai le seguenti operazioni:

  • Scoprirai le nozioni di base di AWS App Runner, inclusi i vantaggi, i casi d'uso, le funzionalità e il modello di prezzo.
  • Scoprirai dove trovare documentazione e altre risorse.
  • Imparerai a conoscere AWS App Runner nella console di gestione AWS e scoprirai come creare, gestire ed eliminare un servizio.

AWS App Runner è un servizio completamente gestito che facilita agli sviluppatori la distribuzione e la containerizzazione rapide delle applicazioni Web e delle API su larga scala e senza che sia necessaria alcuna esperienza infrastrutturale acquisita. Inizia con il codice sorgente o con l'immagine di container. App Runner crea e implementa l'applicazione Web automaticamente, bilancia il carico del traffico con la crittografia, effettua il dimensionamento per soddisfare le esigenze del traffico e permette ai servizi di comunicare più facilmente con altri servizi e applicazioni AWS in esecuzione su un Amazon VPC privato. Con App Runner, anziché pensare ai server o al dimensionamento, hai più tempo per concentrati sulle applicazioni. 

 Tempo richiesto per il completamento

60 minuti 

Introduzione ad AWS App Runner

AWS App Runner (di seguito "App Runner") è un servizio completamente gestito che facilita agli sviluppatori la distribuzione e la containerizzazione rapide delle applicazioni Web e delle API su larga scala e senza che sia necessaria alcuna esperienza infrastrutturale acquisita. Se disponi di un'applicazione Web o di un servizio Web, ad esempio un sito Web, un'API o un microservizio, questo è idoneo per App Runner.

App Runner è un servizio di limousine per app web containerizzate. Quando AWS descrive App Runner come "completamente gestito", non scherza: se vuoi che ogni dettaglio sia gestito per conto tuo, App Runner è il servizio che fa per te. Come AWS Lambda, non dovrai far altro che fornire il codice. Come AWS Lambda, non avrai (né avrai bisogno di) visibilità sulle istanze e sull'infrastruttura EC2 sottostanti su cui viene eseguito il tuo servizio.

Se non sei esperto di container, non c'è nulla di cui preoccuparsi: il processo di implementazione può creare automaticamente un container per il tuo codice. Se utilizzi già i container, puoi trasferire quelli esistenti. App Runner farà tutto il resto, gestendo per te TLS, un sistema di bilanciamento del carico, controlli dell'integrità e dimensionamento automatico. App Runner gestisce dietro le quinte il tuo container con AWS Fargate su Amazon ECS, ma tu non interagirai mai direttamente con questi servizi.

Vantaggi

App Runner è facile da usare, dimensiona automaticamente, consente di risparmiare tempo e fornisce un ambiente conforme.

Facile da utilizzare

Con AWS App Runner, è possibile creare ed eseguire applicazioni sicure su scala web in pochi clic. Non è necessaria esperienza con container, infrastruttura, configurazione dei server, rete, bilanciamento del carico o pipeline di implementazione.

Dimensionamento in base al traffico

App Runner aumenta e riduce senza problemi le risorse in risposta al traffico web. È possibile configurare un numero minimo di istanze di container per eliminare gli avviamenti a freddo e garantire una bassa latenza.

Risparmio di tempo

Non dovrai perdere tempo ad assegnare, configurare o gestire risorse e infrastrutture con App Runner. Le risorse e i componenti delle infrastrutture App Runner sono completamente gestiti da AWS e beneficiano delle nostre best practice di sicurezza e funzionamento. Potrai concentrarti esclusivamente sulla tua applicazione

Assicura un ambiente conforme

La tua applicazione App Runner può connettersi ai servizi AWS, come database, cache e servizi di coda di messaggi, tramite Amazon VPC. Non sono necessarie sottoreti pubbliche per proteggere le risorse.

Casi d'uso

I casi d'uso per AWS App Runner includono applicazioni Web front-end e back-end, microservizi, API Web e implementazione rapida.

Applicazioni Web front-end e back-end

In App Runner, potrai sfruttare un host per siti Web, servizi Web e API.

Microservizi e API

Su App Runner, puoi eseguire simultaneamente migliaia di microservizi. Ciò consente un collegamento flessibile e ogni microservizio può essere dimensionato in modo indipendente. 

Implementazione rapida

App Runner sfrutta le best practice e le tecnologie AWS per implementare ed eseguire container su larga scala. Ciò riduce il time-to-market per nuove applicazioni e funzionalità.

Funzionalità

Esaminiamo le funzionalità del servizio AWS App Runner:

Connettore VPC

I servizi App Runner possono comunicare con altri servizi AWS in esecuzione in un cloud privato virtuale (VPC) Amazon tramite connettori VPC. Ciò consente di aggiungere il supporto per altri servizi sotto il controllo di un Amazon VPC.

Dimensionamento automatico

App Runner dimensiona automaticamente le istanze di container, aumentandole o riducendole per soddisfare il traffico, in base ai limite da te configurati.

Implementazioni automatiche

App Runner può creare e distribuire automaticamente l'applicazione quando viene modificata. È possibile connettere App Runner al tuo repository di codice o a un registro di immagini di container come ECR. 

Gestione dei certificati

App Runner include automaticamente Transport Layer Security (TLS). Non è richiesta alcuna configurazione e i certificati vengono rinnovati automaticamente.

Gestione dei costi

Puoi controllare i costi sospendendo o riprendendo facilmente le applicazioni tramite la console di gestione AWS, AWS CLI o l'SDK AWS.

Bilanciamento del carico

App Runner bilancia il carico di traffico automaticamente, fornendo affidabilità e alta disponibilità.

Log e parametri

Per consentire il monitoraggio e l'ottimizzazione delle applicazioni containerizzate, App Runner fornisce log dettagliati di sviluppo, implementazione e runtime. Un set completo di parametri di calcolo viene fornito anche tramite l'integrazione con Amazon CloudWatch.

Limitazioni

App Runner è disponibile solo in regioni selezionate, che è possibile controllare nella pagina endpoint e quote di AWS App Runner. Se intendi utilizzare App Runner con altri servizi AWS, ad esempio un database o un servizio di archiviazione, consigliamo di utilizzare regioni che supportano tutti i tuoi servizi target in modo che possano essere co-localizzati per garantire l'efficienza. Dovresti anche prendere in considerazione i consigli di AWS per la scelta di una regione, come la conformità alle normative locali e la vicinanza alla sede della tua base di utenti.

Non disponibile in tutte le regioni

AWS App Runner non è disponibile in tutte le regioni AWS. Puoi trovare le regioni attualmente supportate nella pagina degli endpoint e delle quote di AWS App Runner.

Un container per servizio

In App Runner, un servizio è associato a uno e uno solo container. Puoi eseguire più istanze di quel container in base al traffico, ma non c'è modo di comporre un servizio da più container, come puoi fare, invece, con ECS o EKS.

Quote regionali

Per impostazione predefinita, puoi creare un massimo di 10 configurazioni di dimensionamento automatico, 10 connessioni a risorse di terze parti, 10 configurazioni di osservabilità, 10 servizi e 10 connettori VPC per regione. Tutte queste quote possono essere modificate. Puoi richiedere un aumento della quota del servizio utilizzando Service Quotas AWS e il centro di Supporto AWS.

Modello di prezzo

App Runner addebita i costi per le risorse di calcolo e di memoria. Inoltre, se scegli di utilizzare tali funzionalità, possono essere addebitati costi per l'implementazione e la creazione automatizzate a partire dal codice sorgente. Nota: le tariffe e gli esempi di prezzi qui descritti si basano sulle tariffe statunitensi a maggio 2022. Assicurati di controllare la pagina dei prezzi per confermare le tariffe e altri dettagli del modello di prezzo. Nota: le tariffe possono variare a seconda della regione.

Quando crei la tua applicazione in App Runner, configuri la quantità di memoria e la CPU virtuale richieste. Una CPU virtuale (vCPU) è un'unità di CPU pari a un thread di un core della CPU. È inoltre necessario specificare la simultaneità, che determina il numero massimo di richieste simultanee che le istanze di container attive devono supportare. Quando l'applicazione è inattiva, paghi solo per la memoria dell'istanza di container fornita, che mantiene l'applicazione pronta a rispondere rapidamente alla richiesta successiva. Quando arrivano le richieste, paghi per la vCPU e la memoria consumate dalle istanze di container attive mentre l'applicazione elabora le richieste. La fatturazione viene effettuata solo quando l'applicazione è in esecuzione e puoi mettere in pausa e riprendere l'applicazione tramite la console AWS. 

Istanze di container allocate

Una volta implementata un'applicazione, viene addebitato il costo della memoria allocata in ogni istanza di container. Mantenendo la memoria allocata anche in assenza di traffico, App Runner garantisce di poter rispondere alla richiesta successiva con bassa latenza.

Al momento della stesura di questo documento, il costo delle istanze di container allocate è di 0,007 USD/ora nelle regioni statunitensi ed europee.

Esempio di prezzo: immagina di aver implementato un'istanza di container allocata che richiede 2 GB di memoria e che non dispone ancora di traffico. L'istanza di container allocata da 2 GB costa 1 x 2 GB x 0,007 USD = 0,34 USD al giorno.

Istanze di container attive

Quando l'applicazione elabora le richieste, i costi passano dalle istanze di container allocate alle istanze di container attive. Le istanze di container attive addebitano i costi delle risorse di calcolo e qualsiasi memoria oltre a quella coperta dalle istanze di container allocate.

Le istanze di container attive vengono addebitate alla tariffa di 0,064 USD per vCPU/ora. I costi delle istanze di container vengono fatturati al secondo, con un minimo di un minuto per le risorse vCPU una volta che l'istanza di container allocata inizia a elaborare le richieste.

Implementazioni automatiche

Se accetti le implementazioni automatiche, le modifiche al codice sorgente di un ramo di implementazione creano immagini di container e attivano una implementazione. Le implementazioni automatiche vengono fatturate al costo di 1 USD per applicazione al mese.

Tariffa di creazione

Quando App Runner crea l'applicazione dal codice sorgente, è prevista una tariffa di creazione. La tariffa è di 0,005 USD/minuto di creazione.

Esempio di prezzo 1: test dell'app

Stai testando la tua applicazione per 2 ore al giorno. Mentre è attiva, l'app riceve 2 richieste al secondo per un periodo di 2 ore. La tua app richiede 2 GB di memoria per istanza di container. Sospendi il servizio per 22 ore al giorno.

La tariffa giornaliera per l'istanza di container allocata è di 2 ore x 1 istanza di container allocata (2 GB x 0,007 USD/GB all'ora) o 0,03 USD. Vengono addebitate solo 2 ore al giorno perché sospendi l'app per altre 22 ore, ogni giorno.

La tariffa giornaliera per le istanze di container attive è di 2 ore x 1 istanza di container attiva x [(1 vCPU x 0,064 USD per vCPU/ora)] — 2 ore x 1 istanza di container allocata x (2 GB x 0,007 USD) = 0,13 USD. Il costo giornaliero totale è di 0,16 USD o 4,80 USD al mese.

Esempio di prezzo 2: API leggera

Hai implementato un'API web leggera e sensibile alla latenza su 1 istanza di container allocata con 2 GB di memoria. Ogni giorno ricevi 80 richieste sporadiche nell'arco di 8 ore.

App Runner mantiene l'istanza di container allocata (memoria) 24 ore al giorno, con un costo di 2 GB x 0,007 USD/GB all'ora o 0,34 USD al giorno.

App Runner prevede il dimensionamento fino a 1 istanza di container attiva per 8 ore al giorno quando arrivano le richieste. Viene addebitato il costo delle istanze di container attive relativo all'elaborazione e alla memoria, meno i costi di memoria delle istanze di container allocate. La formula è riportata di seguito e risulta pari a 0,51 USD al giorno.

8 ore × 1 istanza di container attiva × [(1 vCPU × 0,064 USD per vCPU/ora) + (2 GB × 0,007 USD per GB/ora)] - 8 ore x 1 istanza di container assegnata x (2 GB × 0,007 USD per GB/ora) = 0,51 USD

Le spese giornaliere totali sono 0,51 USD (istanze di container attive) + 0,34 USD (istanze di container allocate) = 0,85 USD o, in alternativa 25,50 USD al mese.

Esempio di prezzo 3: Produzione ad alto volume

Hai un'applicazione web in produzione. Ogni istanza di container richiede 2 GB di memoria e può elaborare 80 richieste al secondo. Il sito è occupato durante il giorno con un picco di 800 richieste al secondo per 3 ore. Durante le 12 ore non di punta, ci sono 60 richieste al secondo. App Runner dimensiona l'app a 10 istanze di container attive per le ore di punta e fino a 1 istanza di container attiva per le ore non di punta. La memoria allocata per le istanze di container prevede un addebito 24 ore al giorno.

L'istanza di container allocata (memoria) viene addebitata 24 ore al giorno a 2 GB x 0,007 USD per GB/ora o 0,34 USD al giorno.

Nelle ore di punta, sono necessarie 10 istanze di container attive per soddisfare 800 richieste al secondo per 3 ore. Pertanto, 10 istanze di container attive × 3 ore x [(1 vCPU × 0,064 USD per vCPU/ora) + (2 GB × 0,007 USD per GB/ora)] - 1 istanza di container allocata x 3 ore (2 GB × 0,007 USD per GB/ora) = 2,30 USD.

Durante le ore non di picco (12 ore), 1 istanza di container attiva gestisce le 60 richieste al secondo. Pertanto, 12 ore × 1 istanza di container attiva × [(1 vCPU × 0,064 USD per vCPU/ora) + (2 GB × 0,007 USD per GB/ora)] - 12 ore x 1 istanza di container allocata x (2 GB × 0,007 USD per GB/ora) = 0,77 USD.

Mettendo insieme tutto, 2,30 USD (istanze di container attive nelle ore di punta) + 0,77 USD (istanze di container attive nelle ore non di punta) + 0,45 USD (istanze di container fornite quotidianamente) = 3,40 USD/giorno o, in alternativa, 102 USD/mese.

Riferimento: AWS App Runner | Prezzi, CPU virtuale EC2

Flusso di lavoro degli sviluppatori

In questa sezione, scoprirai il modo in cui gli sviluppatori lavorano con App Runner. Segui il flusso mostrato di seguito per creare un servizio App Runner per la tua applicazione.

1. Aggiungi un'origine

In questa fase, si esegue la connessione a un'immagine di container o al tuo codice sorgente e si selezionano le impostazioni di implementazione. Quando crei un servizio App Runner, esegui la connessione a un'origine. L'origine può essere un'immagine di container o un repository di codice sorgente (mostrato sotto). Per un repository di codice sorgente, come un repository GitHub, dovrai fornire i dettagli della connessione.

Anche se l'applicazione non è containerizzata, App Runner supporta la creazione automatica di un'immagine di container. Quando associ il repository di codice sorgente esistente e fornisci facoltativamente ad App Runner i comandi di creazione e avvio runtime, App Runner containerizza automaticamente l'applicazione web e fornisce un'applicazione web in esecuzione. La containerizzazione automatica è disponibile per piattaforme App Runner curate che contengono runtime e framework supportati.

Riferimento: AWS App Runner | Domande frequenti

Nelle impostazioni di implementazione, puoi scegliere di attivare le implementazioni degli aggiornamenti dell'applicazione in modo manuale o automatico. Se abiliti l'implementazione automatica, App Runner creerà e implementerà automaticamente la tua applicazione ogni volta che aggiorni il codice sorgente o l'immagine di container.

2. Configurazione delle impostazioni di creazione e di servizio

In questa fase, si esegue la configurazione della vCPU e della memoria del container e si selezionano le opzioni di dimensionamento automatico e controllo dell'integrità. Se scegli di eseguire l'implementazione da un repository di codice sorgente anziché da un registro di container, configurerai anche le impostazioni di creazione. Sebbene App Runner configuri automaticamente queste impostazioni, consigliamo di comprenderle e conoscere le opzioni per personalizzare la configurazione.

Puoi scegliere di configurare le impostazioni nella console o fornire un file di configurazione YAML nel tuo repository del codice sorgente.

Nelle impostazioni del servizio, assegnerai un nome al servizio e imposterai la dimensione della CPU e della memoria del container. Queste impostazioni influiscono sui costi. Puoi anche impostare tutte le variabili di ambiente necessarie alla tua applicazione qui.

È possibile configurare il dimensionamento automatico. L'impostazione predefinita prevede solo un'istanza di container. App Runner può dimensionare il servizio a più istanze quando riceve più di 80 richieste simultanee. È possibile configurare il numero massimo di istanze, in modo da avere il controllo dei costi.

Le impostazioni di controllo dell'integrità consentono di identificare un percorso Web in cui App Runner può inviare richieste di controllo dell'integrità. Per impostazione predefinita, se il controllo dell'integrità fallisce per cinque volte consecutive, l'istanza viene considerata non integra e verrà sostituita da App Runner. Puoi configurare il numero di controlli dell'integrità che devono fallire prima che App Runner decida che il servizio non è integro, da 1 a 20.

Le impostazioni di sicurezza consentono di scegliere un ruolo IAM utilizzato dall'istanza. Se la tua applicazione deve comunicare con un altro servizio AWS, potrai fornire l'autorizzazione nel ruolo IAM. Queste impostazioni consentono inoltre di fornire in modo facoltativo una chiave gestita dal cliente (CMK) per crittografare il codice sorgente. 

3.Revisione e creazione

In questa fase, viene eseguita la revisione e la verifica di tutte le impostazioni. Dopo aver fatto clic su Crea e Implementa, App Runner crea il tuo servizio e implementa la tua applicazione.

4. Ricezione di un URL sicuro

Infine, riceverai un URL sicuro del tuo servizio pronto per la produzione in esecuzione da AWS App Runner. HTTPS viene configurato automaticamente.

Infine, puoi associare la tua applicazione a un dominio personalizzato, se ne hai uno. Verrai guidato nel processo di dimostrazione della titolarità del dominio.

Gestione dei servizi App Runner

Puoi creare, implementare e gestire un servizio App Runner in diversi modi.

Console di gestione AWS

Dalla console di gestione AWS, puoi creare, implementare, configurare, monitorare e interrompere i servizi App Runner. Accedi alla console AWS App Runner per eseguire queste operazioni.

Una volta creato e implementato un servizio, puoi selezionarlo e visualizzarne i dettagli nelle seguenti aree:

Panoramica servizio

Nella sezione Panoramica del servizio, puoi visualizzare lo stato dell'app (ad esempio In esecuzione), l'URL di dominio predefinito, il nome della risorsa Amazon (ARN) del servizio e un URL di "Origine". Quest'ultimo indirizza al container su Amazon Elastic Container Registry (ECR) o al repository del codice sorgente.

Log

Questa scheda mostra i log di implementazione e il log di esecuzione dell'applicazione. App Runner raccoglie l'output delle tue applicazioni e lo trasmette ai file di log CloudWatch. Puoi includere qualsiasi output che ritieni utile, ad esempio i dettagli delle richieste a un servizio web.

Attività

La scheda Attività mostra la cronologia del servizio. Per tenere traccia dell'attività nel servizio App Runner, quest'ultimo utilizza un elenco di operazioni. Un'operazione rappresenta una chiamata asincrona a un'azione API, come la creazione di un servizio, l'aggiornamento di una configurazione e l'implementazione di un servizio.

Parametri

La scheda Parametri mostra i parametri del servizio, tra cui richieste, risposte, latenza e numero di istanze attive.

Configurazione

La scheda Configurazione mostra i dettagli relativi alla configurazione di servizio, tra cui il numero di CPU e memoria virtuali, il dimensionamento automatico, il controllo dell'integrità e la sicurezza. Fai clic su Modifica per modificare la configurazione. Se necessario, puoi esercitare il controllo sul numero di CPU e memoria virtuali per istanza, impostare variabili di ambiente, personalizzare il dimensionamento automatico, configurare i controlli dell'integrità, utilizzare un ruolo IAM personalizzato o utilizzare una chiave di crittografia personalizzata.

Monitoraggio e registrazione di log

Il monitoraggio dell'applicazione App Runner è essenziale per mantenere l'affidabilità, la disponibilità e le prestazioni. La raccolta di dati di monitoraggio da tutte le componenti della soluzione AWS semplifica il debug di un errore. App Runner raccoglie i log delle applicazioni dal tuo codice. Si integra inoltre con diversi servizi AWS per il monitoraggio e la risposta agli incidenti di servizio.

Allarmi di Amazon CloudWatch

Puoi utilizzare gli allarmi di Amazon CloudWatch per monitorare un parametro di servizio e ricevere una notifica se le condizioni specificate sono soddisfatte. È possibile monitorare un parametro del servizio per un periodo di tempo e impostare una soglia per ricevere una notifica, nel caso in cui il parametro superi la soglia per un determinato numero di intervalli di tempo. Ad esempio, potresti ricevere un avviso quando l'utilizzo della CPU supera il 60%.

Riferimento: Visualizzazione dei parametri del servizio App Runner segnalati a CloudWatch

Log delle applicazioni

App Runner raccoglie l'output del codice dell'applicazione e lo trasmette ai file di log Amazon CloudWatch. Sta a te decidere cosa registrare sulla tua applicazione, ad esempio le informazioni relative alle richieste effettuate a un servizio web. Puoi visualizzare questi log nella console App Runner. Se utilizzi Visual Studio, è possibile visualizzare i file di log CloudWatch dall'ambiente di sviluppo integrato (IDE) se hai installato il Kit di strumenti AWS per Visual Studio. 

Log delle azioni di AWS CloudTrail

AWS CloudTrail registra le chiamate API verso i servizi AWS e ne tiene traccia sotto forma di eventi. È possibile visualizzare gli eventi nella console AWS e, in modo facoltativo, configurare gli eventi in modo che vengano scritti continuamente in un bucket Amazon S3.

Riferimento: File di log CloudWatch, Parametri CloudWatch, Azioni API CloudTrail

Strumento di implementazione AWS per .NET

 Lo strumento di implementazione AWS per .NET è uno strumento interattivo per la CLI .NET e il Kit di strumenti AWS per Visual Studio che aiuta a implementare applicazioni .NET con una conoscenza minima di AWS e con il minor numero di clic o comandi. Lo strumento ti guiderà nel processo di implementazione. Puoi creare e pubblicare applicazioni web .NET su AWS App Runner utilizzando questo strumento con un solo comando, dotnet aws deploy.

Se utilizzi Visual Studio come IDE e hai installato il Kit di strumenti AWS per Visual Studio, puoi ottenere la stessa funzionalità di implementazione guidata in Visual Studio. In Esplora soluzioni, fai clic con il pulsante destro del mouse sul progetto e seleziona Pubblica su AWS. Le pagine della procedura guidata ti guideranno nell'implementazione

AWS Copilot

AWS Copilot è un'interfaccia a riga di comando (CLI) open source che può essere distribuita su AWS App Runner, Amazon ECS e AWS Fargate con pipeline di sviluppo gestite. Copilot utilizza Amazon CloudFormation. È possibile utilizzare Copilot con applicazioni .NET, Python e Node.js. 

In qualità di sviluppatore .NET, molto probabilmente preferirai utilizzare la CLI dell'implementazione AWS per .NET per eseguire l'implementazione su AWS App Runner dalla riga di comando. Tuttavia, se disponi anche di applicazioni non .NET da distribuire, potresti scegliere AWS Copilot.

Ecco come appare quando si implementa App Runner utilizzando Copilot:

AWS CLI

L'interfaccia a riga di comando AWS contiene comandi per la visualizzazione e la gestione dei servizi AWS App Runner. Puoi creare, elencare e descrivere servizi e artefatti correlati come connettori VPC e domini personalizzati. È possibile visualizzare e configurare le impostazioni di configurazione. Puoi iniziare le implementazioni. È possibile interrompere o riprendere le applicazioni. Puoi eliminare i servizi.

Connessione ad altri servizi AWS

Per impostazione predefinita, un servizio App Runner può inviare messaggi solo a endpoint pubblici, come siti Web e servizi Web pubblici. Se la tua applicazione ha bisogno dell'integrazione con altri servizi AWS senza accedere a Internet, come un database Amazon RDS, un database Amazon DynamoDB o Amazon ElastiCache, puoi utilizzare un connettore VPC. Sebbene in genere non sia necessario conoscere l'infrastruttura AWS per utilizzare App Runner, per utilizzare i connettori VPC è richiesta una conoscenza di alto livello del cloud privato virtuale Amazon (VPC), delle sottoreti e della sicurezza. Puoi ottenere una conoscenza di base dei termini leggendo Cos'è Amazon VPC? e Come funziona Amazon VPC.

Connettori VPC

Un connettore VPC associa il tuo servizio App Runner a un VPC. Il connettore VPC rappresenta solo metà della connessione. Per accedere a un altro servizio AWS, anche quest'ultimo deve disporre di una connessione al VPC. È possibile ottenerla con un endpoint VPC, una connessione privata che non richiede l'accesso a Internet. Ad esempio, il diagramma seguente mostra una connessione tra un servizio App Runner e un database DynamoDB. Un connettore VPC per App Runner e un endpoint VPC per DynamoDB sono i due collegamenti al VPC che consentono la comunicazione. 

Puoi configurare un connettore VPC quando crei un servizio App Runner. Per configurare un connettore VPC, è necessario specificare quanto segue:

  1. Il VPC a cui desideri connetterti, ad esempio il tuo VPC predefinito
  2. .Le sottoreti da selezionare. Per un'elevata disponibilità, è necessario selezionare le sottoreti in almeno 3 zone di disponibilità.
  3. Il tuo gruppo di sicurezza predefinito.

Si consiglia di consultare l'esperto di sicurezza dell'azienda quando configuri i connettori VPC o gli endpoint VPC.

Endpoint VPC

Un endpoint VPC ti consente di connettere privatamente il tuo VPC ai servizi AWS supportati senza richiedere un gateway Internet, un dispositivo NAT o una connessione VPN. Per comunicare con le risorse del servizio, le istanze del tuo VPC non hanno bisogno indirizzi IP pubblici. Il traffico tra il tuo VPC e l'altro servizio non esce dalla rete Amazon.

Puoi ulteriori informazioni sugli endpoint VPC nella guida Framework AWS Well-Architected e nelle Nozioni di base su AWS PrivateLink.

Puoi creare un endpoint VPC nella console AWS accedendo a VPC > Endpoint e facendo clic su Crea endpoint. Per creare un endpoint per un servizio AWS, seleziona la categoria dei servizi AWS, cerca e seleziona il servizio a cui desideri connetterti.

Documentazione e risorse

Salva queste risorse, da utilizzare come riferimento e base per l'apprendimento:

Le pagine relative ai prodotti AWS App Runner forniscono una panoramica del servizio, informazioni sulle funzionalità, i prezzi, le risorse e le domande frequenti.

La pagina relativa alla Documentazione di AWS App Runner contiene collegamenti a risorse per sviluppatori tra cui la guida per sviluppatori App Runner, riferimenti ad AWS CLI, tutorial, video e blog.

La Guida per sviluppatori AWS App Runner descrive l'architettura, l'implementazione e l'osservabilità.

Riferimento al comando apprunner di AWS CLI. Da AWS CLI, puoi creare servizi, eseguire implementazioni manuali ed elencare gli stati del servizio.

Il workshop Creazione e implementazione di un'applicazione API Web Microsoft .NET Core su AWS App Runner utilizzando CloudFormation mostra come creare un'applicazione API Web Microsoft .NET utilizzando il database Amazon Aurora con App Runner.

Il video del webinar Approfondimento su AWS App Runner è una presentazione e dimostrazione tecnica.

AWS App Runner: da codice a scalabile, applicazioni web sicure in pochi minuti è un blog dettagliato a cura di Martin Beeby.

Punti chiave

Ora dovresti essere in grado di ricordare i vantaggi, i casi d'uso, le funzionalità e il modello di prezzo di AWS App Runner.

Hai imparato le quattro fasi del flusso di lavoro degli sviluppatori.

Hai imparato a gestire le istanze di App Runner nella console AWS, le opzioni di monitoraggio e registrazione e vari strumenti a riga di comando.

Hai imparato come i connettori VPC e gli endpoint VPC interagiscono per connettere AWS App Runner con altri servizi AWS.

Per i carichi di lavoro .NET, il modo più semplice per utilizzare App Runner è utilizzare le immagini di container come origine. Quando si utilizzano le origini del repository di codice, è necessario un lavoro aggiuntivo per installare .NET sulle istanze.

Conclusioni

In questo modulo, hai appreso i fondamenti di AWS App Runner. Nell'introduzione al servizio hai esaminato i vantaggi, i casi d'uso, le funzionalità, le limitazioni e il modello di prezzo di App Runner. Hai imparato a conoscere il flusso di lavoro degli sviluppatori e cosa è possibile configurare. Hai imparato a gestire un servizio App Runner dalla console di gestione AWS e da una varietà di strumenti.

Questa pagina è stata utile?

Laboratorio pratico