Introduzione

I container sono una componente chiave dello sviluppo di app moderne. Sono diventati un modo standard per organizzare le risorse di elaborazione e gestire il contenuto delle implementazioni delle applicazioni.

I container forniscono un ambiente di elaborazione discreto e riproducibile. Forniscono inoltre un modo per semplificare la gestione degli imballaggi e delle dipendenze. Sono un ottimo modo per iniziare a creare software da implementare nel cloud, dall'orchestrazione di ambienti multi-cluster di grandi dimensioni alle applicazioni Web, fino al collaudo del proprio lavoro e alla realizzazione di un proof of concept su un notebook.

Questa guida decisionale ti aiuta a iniziare a scegliere il servizio di container AWS giusto per lo sviluppo di app moderne.

Questo estratto di quattro minuti è tratto da una registrazione di 57 minuti di una presentazione di Vikram Venkataraman, principale responsabile tecnico degli account di AWS, tenuta durante il Summit AWS DC 2022. Fornisce una panoramica dei servizi container AWS disponibili.

Tempo di lettura

20 minuti

Scopo

Aiutaci a determinare quale servizio di container AWS è più adatto alla tua organizzazione.

Livello

Principiante

Ultimo aggiornamento

26 aprile 2023

Scopri

I container sono diventati di fatto uno standard per raggruppare il codice delle applicazioni, le configurazioni e le dipendenze in un unico artefatto che può essere implementato in modo coerente in più ambienti.

I container sono un elemento chiave di qualsiasi moderna strategia di sviluppo di applicazioni. Per fornire un contesto per i servizi AWS relativi ai container, l'immagine a destra mostra le opzioni dei container AWS disponibili per livello (spiegate più dettagliatamente in questo video).

Capacità 

La capacità si riferisce all'elaborazione sottostante su cui implementerai il container insieme ai requisiti di CPU e memoria. È l'infrastruttura su cui verrà eseguito il container. Esistono due scelte di capacità per i container su AWS:

  • Amazon Elastic Compute Cloud (AmazonEC2) ti consente di eseguire i container su macchine virtuali che gestisci.
  • AWS Fargate è un motore di elaborazione serverless per container che consente di eseguire container senza gestire l'infrastruttura sottostante. Con Fargate, puoi avviare e dimensionare i container senza preoccuparti delle istanze EC2 sottostanti.

Orchestrazione

Non è raro che un'organizzazione utilizzi migliaia di container. Gestire un ambiente così complesso diventa difficile. I servizi di orchestrazione aiutano a facilitare l'implementazione e la gestione di queste applicazioni. AWS offre tre servizi di orchestrazione:  

  • Amazon Elastic Container Service (Amazon ECS) è un servizio di orchestrazione di container completamente gestito ed è ideale per le organizzazioni che desiderano un modo semplice ed economico per distribuire e gestire applicazioni containerizzate.
  • Amazon Elastic Kubernetes Service (Amazon EKS) completamente gestito che consente di eseguire e gestire cluster Kubernetes su AWS.
  • Il servizio Red Hat OpenShift su AWS (ROSA) è un servizio OpenShift completamente gestito che consente di eseguire e gestire cluster OpenShift su AWS. È una buona opzione per i clienti che utilizzano già OpenShift on premise.

Provisioning

Il provisioning fornisce un'interfaccia per il livello di orchestrazione dei servizi. Ogni orchestratore presenta le sue complessità. I servizi di provisioning nascondono questa complessità e facilitano l'utilizzo del servizio. Nell’ambito di questa categoria, i servizi AWS includono:

  • AWS App Runner è un servizio completamente gestito che crea automaticamente immagini di container dal codice sorgente, implementa i container su un'infrastruttura completamente gestita e li ridimensiona in base alla domanda.
  • AWS Elastic Beanstalk è un servizio completamente gestito che semplifica l’implementazione, la gestione e la scalabilità delle applicazioni Web. Elastic Beanstalk supporta anche i container e fornisce una piattaforma completamente gestita per l'implementazione e la scalabilità di applicazioni containerizzate.
  • Amazon Lightsail è un modo semplice ed economico per avviare e gestire server privati virtuali, ma offre anche supporto per i container, consentendoti di creare e implementare applicazioni containerizzate utilizzando istanze Lightsail.

Prendi in esame

È importante scegliere una soluzione di container che si allinei ai requisiti applicativi e alle preferenze operative. La sezione seguente illustra alcuni dei criteri chiave da considerare nella scelta di un servizio di container, nonché gli strumenti e i servizi di supporto.

  • Le organizzazioni possono scegliere il cloud per ridurre i costi operativi standardizzando servizi gestiti che trasferiscono l'onere operativo su AWS. Livelli di astrazione più elevati consentono agli sviluppatori e agli operatori di concentrarsi sulle proprie attività a valore aggiunto uniche, anziché su attività indifferenziate.

    La creazione di container su AWS utilizza servizi con livelli di astrazione più elevati per trasferire il sovraccarico operativo della manutenzione dell'infrastruttura su AWS.

  • Le scelte sull’architettura saranno più semplici se comprendi i modelli del tuo carico di lavoro. Possono includere applicazioni Web, microservizi basati su API, applicazioni basate su eventi, streaming e messaggistica, pipeline di dati, automazioni IT e altro ancora. Alcuni carichi di lavoro avranno prestazioni migliori o saranno più convenienti in un ambiente di elaborazione rispetto a un altro tipo.

  • Molti clienti vogliono assicurarsi che le loro applicazioni possano essere eseguite - oltre che facilmente migrate o spostate - in un ambiente diverso. È importante per loro poter scegliere o essere in grado di eseguire un'applicazione sia on-premise che nel cloud.

    Ti consigliamo di acquisire competenze nelle architetture software e creare pacchetti che consentano di trasferire più facilmente la logica aziendale differenziata tra i servizi di elaborazione.

    Le applicazioni create utilizzando alcune tecnologie possono funzionare in modo più efficace su alcuni servizi di elaborazione rispetto ad altri.

  • Le competenze della tua organizzazione sono un fattore importante per decidere quali servizi container utilizzare. L’approccio da te adottato richiederà un investimento nei team DevOps e Site Reliability Engineer (SRE). Creare una pipeline automatizzata per l’implementazione delle applicazioni è un passaggio comune per la maggior parte dello sviluppo di applicazioni moderne.

    Alcune scelte aumentano la quantità di gestione. Ad esempio, alcune organizzazioni dispongono delle competenze e delle risorse per eseguire e gestire un'implementazione Kubernetes, poiché investono in forti team SRE per gestire i cluster Kubernetes. Questi team gestiscono gli aggiornamenti frequenti dei cluster (ad esempio, Kubernetes rilascia tre release principali all'anno e le vecchie versioni sono obsolete).

    Le dimensioni dell'organizzazione sono un fattore chiave, poiché le startup più piccole dispongono forse di un piccolo staff IT composto da persone che ricoprono più ruoli, mentre le aziende più grandi possono essere in grado di supportare centinaia di carichi di lavoro in produzione contemporaneamente.  

  • Diversi servizi di container AWS soddisfano esigenze specifiche in termini di complessità di implementazione. Ecco come ogni servizio è ottimizzato per il proprio ruolo:

    • AWS AppRunner offre il percorso più semplice, che consente di implementare l'applicazione sulla rete Internet pubblica senza gestire o personalizzare l'infrastruttura sottostante.
    • Amazon ECS è una buona scelta se si ha bisogno di un maggiore controllo sulla rete e sulle configurazioni di sicurezza senza sacrificare scalabilità o funzionalità.
    • Amazon EKS ti consente di avere la flessibilità e il controllo sull’implementazione e l'orchestrazione delle applicazioni forniti dalla tecnologia Kubernetes.

Scegli

Ora che conosci i criteri in base ai quali valutare le opzioni dei tuoi container, sei pronto a scegliere quali servizi di container AWS possono essere più adatti alle tue esigenze organizzative.

La tabella seguente evidenzia quali servizi sono ottimizzati per quali circostanze. Utilizza la tabella per determinare il servizio di container più adatto alla tua organizzazione e al tuo caso d'uso.

Container
Quando lo useresti?
Per cosa è ottimizzato?
Servizi o strumenti relativi ai container
Chiudi

Opzioni di capacità

La capacità si riferisce all'elaborazione sottostante su cui implementerai il container insieme ai requisiti di CPU e memoria. È l'infrastruttura su cui verrà eseguito il container.

Usala quando desideri eseguire i tuoi container su macchine virtuali AWS autogestite o elaborazione gestita da AWS.
Ottimizzata per l'esecuzione dei container su risorse di calcolo AWS.
Chiudi

Amazon EC2

Amazon EC2 è un servizio Web che fornisce capacità di elaborazione ridimensionabile (con server all'interno dei data center di Amazon) per creare e ospitare i tuoi sistemi software.

Chiudi

AWS Fargate

AWS Fargate è una tecnologia che puoi usare con Amazon ECS per eseguire container senza dover gestire server o cluster di istanze Amazon EC2. Con AWS Fargate non devi più effettuare il provisioning, la configurazione o il dimensionamento di cluster di macchine virtuali per eseguire i container.

Chiudi

Orchestrazione dei container

I servizi di orchestrazione dei container gestiscono quando e dove vengono eseguiti i container.

Usali quando devi essere in grado di implementare e gestire fino a migliaia di container.
Ottimizzati per l’implementazione, la gestione e la scalabilità di applicazioni containerizzate su AWS.
Chiudi

Servizio Red Hat OpenShift su AWS (ROSA)

Il servizio Red Hat OpenShift Service su AWS (ROSA) semplifica la creazione e la gestione dei cluster Red Hat OpenShift su AWS. Per le applicazioni già containerizzate in locale su OpenShift Container Platform, ROSA fornisce una superficie API familiare e mantiene invariata la toolchain di implementazione, in modo che tu possa concentrarti sulla rifattorizzazione del modello di dati e non dell'intero stack di applicazioni.

Chiudi

Amazon Elastic Kubernetes Service

Amazon EKS consente di avviare, eseguire e ridimensiona le applicazioni Kubernetes nel cloud AWS o on-premise.

Chiudi

Amazon ECS

Amazon ECS è un servizio di orchestrazione di container completamente gestito per implementare, gestire e dimensionare le applicazioni containerizzate.

Chiudi

Provisioning

La categoria di servizi di provisioning fornisce un'interfaccia per il livello di orchestrazione dei servizi. Ogni orchestratore presenta le sue complessità. I servizi di fornitura nascondono questa complessità e facilitano l'utilizzo del servizio da parte dei clienti.

Da usare quando tu o il tuo team non avete molta esperienza con i container o l'infrastruttura.
Ottimizzato per la facilità d'uso.
Chiudi

AWS Elastic Beanstalk

Con Elastic Beanstalk, puoi implementare e gestire rapidamente le applicazioni nel cloud AWS senza dover apprendere nozioni sull'infrastruttura che esegue tali applicazioni. Elastic Beanstalk riduce la complessità della gestione senza limitare le scelte o il controllo.

Chiudi

AWS App Runner

AWS App Runner consente di creare ed eseguire applicazioni containerizzate su un servizio completamente gestito; è sufficiente una conoscenza minima dell'infrastruttura.

Chiudi

Amazon Lightsail

Lightsail offre istanze di server privato virtuale (VPS), container, archiviazione, database e altro ancora, facili da usare e a un prezzo mensile conveniente.

Chiudi

Strumenti

Strumenti per fornire un registro dei container e per containerizzare e migrare le applicazioni esistenti.

Usali quando hai bisogno di strumenti per fornire un registro dei container e per containerizzare e migrare le applicazioni esistenti.
Ottimizzati per supportare le operazioni dei container.
Chiudi

Amazon Elastic Container Registry

Amazon ECR è un registro del container completamente gestito che offre hosting ad alte prestazioni, in modo da poter implementare in modo affidabile immagini e artefatti di applicazioni ovunque.

Chiudi

On-premise

Consente di eseguire un piano di controllo familiare per garantire un'esperienza coerente indipendentemente dal luogo in cui sono eseguite le applicazioni basate su container.

Da usare quando è necessario utilizzare un piano di controllo familiare per garantire un'esperienza coerente indipendentemente dal luogo in cui sono eseguite le applicazioni basate su container.
Ottimizzato per poter eseguire le applicazioni basate su container in un luogo flessibile.
Chiudi

Amazon Elastic Container Service (ECS) Anywhere

Amazon ECS Anywhere è una funzionalità di Amazon ECS che consente di eseguire e gestire i carichi di lavoro dei container nella tua infrastruttura.

Chiudi

Amazon EKS Anywhere

Amazon EKS Anywhere ti consente di creare e gestire cluster Kubernetes sulla tua infrastruttura.

Chiudi

Amazon EKS Distro

Amazon EKS utilizza Amazon EKS Distro, una distribuzione Kubernetes sviluppata e mantenuta da AWS. Amazon EKS Distro semplifica la creazione di cluster affidabili e sicuri.

Utilizzo

Ora dovresti avere una chiara idea di ogni servizio di container AWS (e degli strumenti e servizi AWS di supporto) e di quale potrebbe essere il più adatto alla tua organizzazione e al tuo caso d'uso.

Per scoprire come utilizzare e saperne di più su ciascuno dei servizi di container AWS disponibili, abbiamo creato un percorso dove puoi esplorare il funzionamento di ciascuno dei servizi. La sezione seguente fornisce collegamenti a documentazione approfondita, tutorial pratici e risorse per iniziare.

  • Amazon EC2
  • Amazon Aurora

    Guida introduttiva su Amazon EC2

    Accesso al set completo di documentazione tecnica di Amazon EC2, comprese le guide alle istanze Linux e Windows.

    Esplora le guide »

    Amazon Aurora

    Guida per l'utente su Import/Export VM

    Scopri come importare immagini di macchine virtuali (VM) dal tuo ambiente di virtualizzazione esistente in Amazon EC2 e quindi esportarle nuovamente.

    Esplora la guida »

    Amazon Aurora

    Dimensionamento automatico Amazon EC2 con istanze spot EC2

    Scopri come creare un carico di lavoro senza stato e tollerante agli errori utilizzando il dimensionamento automatico Amazon EC2 con modelli di avvio per richiedere istanze spot Amazon EC2.

    Inizia a guardare il tutorial »

    Amazon Aurora

    Implementa un'applicazione Web su Amazon EC2

    Ti accompagneremo nella creazione di un'istanza Amazon EC2 usando AWS CDK e nell'implementazione di un'applicazione Web su di essa.

    Esplora la guida »

  • Amazon ECR
  • Amazon DynamoDB

    Cos'è Amazon Elastic Container Registry (ECR)?

     
    Una guida per conoscere e iniziare a usare ECR.
     
     
    Amazon DynamoDB

    Amazon ECR in architetture multiaccount e multiregionali
     

    Esplora le considerazioni chiave sulle architetture Amazon ECR che si estendono su account AWS e regioni AWS e le architetture relative a casi d'uso ipotetici da parte dei clienti.

    Leggi il post del blog »

    Amazon DynamoDB

    Guida introduttiva su Amazon ECR Public
     

    Inizia a utilizzare gli archivi pubblici di Amazon ECR: crea il tuo primo archivio pubblico e configura le impostazioni del registro pubblico nella console Amazon ECR.

    Esplora la guida »

    Amazon DynamoDB

    Crea una pipeline con una fonte Amazon ECR e un’implementazione ECS-to-CodeDeploy
     

    Configura una pipeline in AWS CodePipeline che implementi applicazioni container utilizzando un’implementazione blu/verde che supporti le immagini Docker.

    Inizia a guardare il tutorial »

  • Amazon ECS
  • AWS Database Migration Service

    Nozioni di base su Amazon ECS

    Questa guida fornisce una presentazione degli strumenti disponibili per accedere ad Amazon ECS e procedure introduttive dettagliate per eseguire i container.

    Esplora la guida »

    AWS Database Migration Service

    Tutorial per Amazon ECS

    Più di dodici tutorial su come eseguire attività comuni, inclusa la creazione di cluster e VPC, quando si utilizza Amazon ECS.

    Inizia con i tutorial »

    AWS Database Migration Service

    Cosa c'è di nuovo e cosa promette il futuro con Amazon ECS

    Scopri cosa c’è di nuovo dal lancio di Amazon ECS Anywhere, le nuove funzionalità di AWS Fargate e dai uno sguardo al futuro per scoprire gli entusiasmanti miglioramenti di Amazon ECS.

    Guarda la storia completa in questo video »

    AWS Database Migration Service

    Implementazione di Amazon Elastic Container Service (ECS)

    Questa guida offre una panoramica delle opzioni di implementazione di Amazon ECS su AWS e mostra come può essere utilizzato per gestire una semplice applicazione containerizzata.


    Esplora la guida »

    AWS Database Migration Service

    Workshop su Amazon ECS

    Questo workshop è progettato per istruire coloro che potrebbero non conoscere AWS Fargate, Amazon ECS ed eventualmente anche il flusso di lavoro dei container Docker.

    Esplora il workshop »

    AWS Database Migration Service

    Implementa container Docker su Amazon ECS

    Scopri come creare un'applicazione di esempio compatibile con Docker in un cluster Amazon ECS con un sistema di bilanciamento del carico, per poi testare l'app ed eliminare le risorse per evitare costi.

    Usa il tutorial »

  • Amazon EKS
  • AWS Database Migration Service

    Guida introduttiva su Amazon EKS
     

    Scopri di più su Amazon Elastic Kubernetes Service (Amazon EKS), un servizio gestito che puoi utilizzare per eseguire Kubernetes su AWS senza dover installare, gestire e mantenere il tuo piano di controllo o i tuoi nodi Kubernetes.

    Esplora la guida »

    AWS Database Migration Service

    Implementazione di Amazon Elastic Kubernetes Service (EKS)
     

    Esplora le opzioni di implementazione di Amazon EKS su AWS e scopri come può essere utilizzato per gestire un'applicazione containerizzata generica.

    Esplora la guida »

    AWS Database Migration Service

    Implementazione di riferimento Amazon EKS Quick Start

    Con una guida di riferimento per l’implementazione di Quick Start forniamo istruzioni dettagliate per l’implementazione dei cluster Amazon Elastic Kubernetes Service (Amazon EKS).


    Esplora la guida »

    AWS Database Migration Service

    Implementa un'applicazione Kubernetes
     

    Questo tutorial illustra come implementare un'applicazione in container su un cluster Kubernetes utilizzando Amazon Elastic Container Service for Kubernetes (Amazon EKS).

    Usa il tutorial »

    AWS Database Migration Service

    Workshop su Amazon EKS
     

    Esercizi pratici per conoscere Amazon Elastic Kubernetes Service.


    Visita il workshop »

  • Amazon Lightsail
  • AWS Database Migration Service

    Creazione, invio e implementazione di immagini di container
    con Amazon Lightsail

    Questo tutorial mostra come creare un'immagine del container sul tuo computer locale utilizzando un Dockerfile. Dopo aver creato l'immagine puoi inviarla al servizio di container di Lightsail per implementarla.

    Inizia a guardare il tutorial »

    AWS Database Migration Service

    Centro risorse Amazon Lightsail


    Esplora i tutorial, i video e i link alla documentazione concettuale di base di Lightsail.



    Visita il centro risorse»

    AWS Database Migration Service

    Avvia una macchina virtuale Linux con Amazon Lightsail

    In questo tutorial, crei un'istanza Amazon Linux in Amazon Lightsail. Dopo che l'istanza è in esecuzione, ci si connette tramite SSH all'interno della console Lightsail utilizzando il terminale SSH basato su browser.

    Inizia con il tutorial »

  • AWS App Runner
  • AWS Database Migration Service

    Guida introduttiva su AWS App Runner


    Questo tutorial illustra la configurazione del codice sorgente e dell’implementazione, la creazione e il runtime del servizio per implementare l'applicazione sul servizio App Runner. Inoltre, mostra come implementare una versione del codice, apportare una modifica alla configurazione e visualizzare i registri.

    Usa il tutorial»

    AWS Database Migration Service

    AWS App Runner: da un codice a un'applicazione web scalabile e sicura in pochi minuti

    Scopri come AWS App Runner è stato progettato per semplificare l’implementazione di app Web e API nel cloud, indipendentemente dalla lingua in cui sono scritte, anche per team che non hanno esperienza precedente nell’implementazione e nella gestione di container o infrastrutture.

    Leggi il blog »

    AWS Database Migration Service

    Implementa un'app Web utilizzando AWS App Runner


    Segui queste istruzioni dettagliate per implementare un'app Web containerizzata utilizzando AWS App Runner. Inizia con il codice sorgente o con l’immagine di container. App Runner crea e implementa automaticamente l’applicazione web e bilancia il carico del traffico mediante la crittografia.

    Implementa la tua app web »

  • AWS Elastic Beanstalk
  • AWS Database Migration Service

    Guida introduttiva su Elastic Beanstalk


    Questa guida spiega come svolgere i passaggi di creazione, esplorazione, aggiornamento ed eliminazione di un'applicazione Elastic Beanstalk.

    Esplora la guida»

    AWS Database Migration Service

    Opzioni di implementazione su AWS Elastic Beanstalk


    Questa guida spiega come utilizzare AWS Elastic Beanstalk per implementare, gestire e dimensionare le applicazioni senza dover gestire l'infrastruttura.

    Esplora la guida »

    AWS Database Migration Service

    Tutorial ed esempi intermedi di AWS Electric Beanstalk

    Questi tutorial sono rivolti a utenti intermedi e potrebbero non contenere istruzioni per passaggi di base come la registrazione ad AWS.

    Inizia con i tutorial »

  • AWS Fargate
  • Amazon Aurora

    Guida introduttiva su AWS Fargate

    Questa guida spiega le basi di AWS Fargate, una tecnologia che puoi usare con Amazon ECS per eseguire container senza dover gestire server o cluster di istanze Amazon EC2.

    Esplora la guida »

    Amazon Aurora

    Guida introduttiva sulla console utilizzando i container Linux su AWS Fargate

    Inizia a usare Amazon ECS su AWS Fargate utilizzando il tipo di avvio Fargate per le tue attività nelle regioni in cui Amazon ECS supporta AWS Fargate.

    Esplora la guida »

    Amazon Aurora

    Creazione di un cluster con un'attività Fargate Linux utilizzando l'interfaccia a riga di comando di AWS

    Configura un cluster, registra una definizione di attività, esegui un'attività Linux ed esegui altri scenari comuni in Amazon ECS con l'interfaccia a riga di comando di AWS.  

    Esplora la guida »

  • ROSA
  • AWS Database Migration Service

    Guida introduttiva su Red Hat OpenShift Service su AWS

    Questa guida ti aiuterà a iniziare a usare Red Hat OpenShift Service su AWS (ROSA).

    Esplora la guida »

    AWS Database Migration Service

    Perché dovresti usare ROSA?

    Questo video analizza quando è possibile utilizzare Red Hat OpenShift rispetto a Kubernetes standard ed esplora in modo approfondito ROSA su AWS.

    Guarda il video »

Esplora

Diagrammi di architettura

Esplora i diagrammi dell'architettura di riferimento per i container su AWS.


Esplora i diagrammi di architettura »

Whitepaper

Esplora i whitepaper per iniziare e apprendere le best practice.

Esplora i whitepaper »

Soluzioni AWS

Esplora soluzioni verificate e linee guida architettoniche per i casi d'uso più comuni per i container.

Esplora le soluzioni »

Questa pagina è stata utile?