ANALISI APPROFONDITE DI CATEGORIA
Container
Introduzione
Questo sito Web offre un'introduzione su cosa sono i container e perché potresti voler considerare un servizio di container AWS per la tua applicazione o caso d'uso.
Cosa sono i container?
I container forniscono una modalità standard per impacchettare il codice della tua applicazione, le configurazioni e le dipendenze, in un oggetto singolo. I container condividono un sistema operativo installato sul server e operano come processi con risorse isolate, assicurando velocità, affidabilità e distribuzioni coerenti, indipendentemente dall'ambiente.
Perché usare i container?
I container sono un modo potente per gli sviluppatori di confezionare e distribuire le proprie applicazioni. Sono leggeri e offrono un ambiente software omogeneo e portatile per una facile esecuzione e scalabilità delle applicazioni in qualunque posizione. La creazione e la distribuzione di microservizi, l'esecuzione di attività di batch, per applicazioni di machine learning, e lo spostamento di applicazioni esistenti nel cloud sono solo alcuni dei casi d'uso più popolari per i container.
Sicurezza: AWS offre 210 caratteristiche principali relative a sicurezza, conformità e governance, ovvero 40 in più rispetto al principale competitore. AWS fornisce un solido isolamento di sicurezza tra i tuoi container, assicura che siano in esecuzione i più recenti aggiornamenti di sicurezza e ti dà la possibilità di impostare autorizzazioni di accesso granulare per ogni container.
Affidabilità: i servizi di container di AWS vengono eseguiti nella migliore infrastruttura globale con 69 zone di disponibilità in 22 regioni. AWS fornisce 2 volte il numero di regioni con zone di disponibilità multiple rispetto al principale competitor (22 in confronto a 8). Per garantire la massima serenità, sono disponibili SLA per tutti i servizi di container (ECS, EKS e Fargate).
Possibilità di scelta: i servizi di container AWS offrono la massima scelta di servizi da eseguire sui container. Puoi scegliere AWS Fargate se desideri l'elaborazione serverless per i container e Amazon EC2 se ti serve avere il controllo di installazione, configurazione e gestione del tuo ambiente di calcolo. Puoi anche scegliere quale agente di orchestrazione di container utilizzare: Amazon Elastic Container Service (ECS) o Amazon Elastic Kubernetes Service (EKS).
Integrazioni AWS: i servizi di container AWS sono appositamente profondamente integrati con AWS. Ciò consente alle tue applicazioni di container di sfruttare appieno AWS Cloud dalla rete alla sicurezza al monitoraggio. AWS unisce l'agilità dei container all'elasticità della sicurezza del cloud.
Servizi di container
AWS offre la più ampia gamma di servizi per l'archiviazione, la gestione e l'esecuzione di container. Scegli il servizio AWS giusto per il tuo carico di lavoro, dai piccoli esperimenti alle applicazioni di produzione fondamentali.
Se occorre... |
Valuta l'utilizzo di |
Poiché... |
---|---|---|
Memorizzare, crittografare e gestire immagini di container | Amazon ECR |
ECR comprime e crittografa le tue immagini di container, rendendole facili da avviare ed eseguibili ovunque. |
Esecuzione di applicazioni containerizzate o creazione di microservizi | Amazon ECS | Amazon Elastic Container Service (Amazon ECS) è un servizio di orchestrazione di contenitori interamente gestito che offre il metodo più sicuro, affidabile e scalabile di eseguire applicazioni containerizzate. |
Gestione dei container con Kubernetes | Amazon EKS | Amazon Elastic Kubernetes Service (Amazon EKS) è un servizio Kubernetes interamente gestito che offre il metodo più sicuro, affidabile e scalabile di eseguire applicazioni containerizzate usando Kubernetes. |
Esecuzione di container senza dover gestire server |
AWS Fargate | AWS Fargate è un motore di calcolo serverless per container che funziona con Amazon Elastic Container Service (ECS) e Amazon Elastic Kubernetes Service (EKS). Fargate rimuove la necessità di allocare e gestire server, permettendoti di specificare e pagare solo per le risorse utilizzate per ciascuna applicazione, così da migliorare anche la sicurezza isolando l'applicazione in modalità predefinita. |
Esecuzione di container con controllo a livello di server | Amazon EC2 |
Le macchine virtuali EC2 consentono di controllare i cluster di server e offrono un'ampia gamma di opzioni di personalizzazione. |
Principi fondamentali
In questa sezione ci occuperemo dei concetti fondamentali necessari per comprendere i container e decidere qual è il servizio di container giusto per la tua applicazione o caso d'uso.
Docker è una piattaforma software che permette di creare, testare e distribuire applicazioni con la massima rapidità. Docker raccoglie il software in unità standardizzate chiamate container che offrono tutto il necessario per la loro corretta esecuzione, incluse librerie, strumenti di sistema, codice e runtime.

Kubernetes è un sistema di gestione e orchestrazione di container open source. In AWS è possibile scegliere di eseguire e gestire autonomamente l'infrastruttura Kubernetes con Amazon EC2, oppure utilizzando Amazon EKS per un piano di controllo Kubernetes gestito e automaticamente assegnato.

Casi d'uso di container comuni
Microservizi: i container consentono un processo di isolamento che semplifica la divisione e l'esecuzione di applicazioni come componenti indipendenti chiamati microservizi.
Elaborazione in batch: nei container è possibile impacchettare l'elaborazione in batch e operazioni ETL per avviare operazioni in modo rapido e scalarli in modo dinamico a seconda della richiesta.
Machine Learning: utilizza i container per scalare modelli di machine learning in modo rapido per formazione e inferenze e per eseguirli vicini all'origine dati su qualsiasi piattaforma.
Applicazioni ibride: i container permettono di standardizzare il modo in cui il codice viene distribuito, semplificando la realizzazione di flussi di lavoro per applicazioni che operano tra ambienti locali e cloud.
Migrazione di applicazioni nel cloud: i container facilitano l'impacchettamento delle applicazioni per intero e il loro trasferimento su cloud, senza la necessità di effettuare un cambio codice.
Platform as a service: l'utilizzo dei container permette di realizzare piattaforme che esonerano gli sviluppatori dalla gestione di infrastrutture e standardizzano il modo in cui le applicazioni vengono distribuite e gestite.
Creiamo!
I tutorial seguenti ti aiuteranno a iniziare a lavorare con Amazon ECS e Amazon EKS.
Scopri come eseguire un'applicazione di esempio con funzionalità Docker su un cluster Amazon ECS dietro a un sistema di bilanciamento del carico e testa la tua applicazione di esempio.
Scopri come distribuire un'applicazione in container su un cluster Kubernetes utilizzando Amazon Elastic Container Service for Kubernetes (Amazon EKS).
Risorse di apprendimento
Le seguenti risorse esaminano altre configurazioni avanzate e casi d'uso per Amazon ECS, Amazon EKS e AWS App Mesh.
Lancia un servizio front-end e più servizi back-end su AWS ECS ed esplora le possibilità di adottare questo flusso di lavoro nel tuo ambiente.
Esplora più modi di configurare i worker Amazon EKS, VPC, ALB ed EC2 Kubernetes.
Scopri come distribuire un'applicazione Node.js monolitica a un container Docker, quindi disaccoppia l'applicazione in microservizi senza tempi di inattività.
Scopri le funzionalità e l'utilizzo di AWS App Mesh.
Impara a eseguire i container direttamente dagli esperti.
I video seguenti spiegano i principali argomenti sui container per un migliore utilizzo degli stessi.