Che cos'è Amazon Elastic Container Service? - Amazon Elastic Container Service

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

Che cos'è Amazon Elastic Container Service?

Amazon Elastic Container Service(Amazon ECS) è un servizio rapido e altamente scalabile di gestione dei container che consente di eseguire, arrestare e gestire container in un cluster. I contenitori sono definiti in una definizione di attività utilizzata per eseguire singole attività o attività all'interno di un servizio. In questo contesto, un servizio è una configurazione che consente di eseguire e mantenere simultaneamente un numero specificato di attività in un cluster. Puoi eseguire attività e servizi su un'infrastruttura serverless gestita daAWS Fargate. In alternativa, per un maggiore controllo sull'infrastruttura, è possibile eseguire attività e servizi in un cluster diAmazon EC2che si gestiscono.

Amazon ECSconsente di avviare e arrestare le applicazioni basate su container utilizzando semplici chiamate API. È inoltre possibile recuperare lo stato del cluster da un servizio centralizzato e avere accesso a moltiAmazon EC2Caratteristiche di funzionalità.

Puoi pianificare il posizionamento dei container nel cluster in base alle tue esigenze in termini di risorse, policy di isolamento e ai requisiti di disponibilità. conAmazon ECSNon dovrai più utilizzare i tuoi sistemi di gestione del cluster e della configurazione né preoccuparti di dimensionare l'infrastruttura di gestione.

Amazon ECSpuò essere utilizzato per creare un'esperienza di compilazione e distribuzione coerenti, per gestire e dimensionare carichi di lavoro ETL (Extractor Transform Load) e in batch e, infine, per costruire sofisticate architetture applicative applicative su un modello con microservizi. Per ulteriori informazioni su casi d'uso e scenari di Amazon ECS, consulta la sezione relativa ai casi d'uso per i container.

Il team di servizi container AWS mantiene una roadmap pubblica su GitHub. La roadmap contiene informazioni sulle attività su cui stanno lavorando i team e abilita l'utilizzo diAWSclienti per fornire un feedback diretto. Per ulteriori informazioni, consulta Roadmap dei container AWS.

Caratteristiche di Amazon ECS

Amazon ECSè un servizio regionale che semplifica l'esecuzione di container in modo altamente disponibile in più zone di disponibilità all'interno di una stessa regione. È possibile creare cluster Amazon ECS all'interno di un VPC nuovo o esistente. Dopo l'avvio e l'esecuzione di un cluster, è possibile creare definizioni di attività che definiscono quali container vengono eseguite nei cluster. Le definizioni delle attività vengono utilizzate per eseguire attività o creare servizi. Le immagini di container vengono archiviate in ed estratte da registri container, ad esempio il container.Amazon Elastic Container Registry.

Il diagramma seguente illustra l'architettura di un ambienteAmazon ECSambiente eseguito suAWS Fargate.


                Diagramma che mostra l'architettura diAmazon ECSUtilizzando l'ambiente diFargate.

I singoli elementi dell'architettura Amazon ECS verranno ulteriormente approfonditi nelle sezioni seguenti.

Container e immagini

Perché le applicazioni possano essere distribuite su Amazon ECS, i relativi componenti devono essere programmati per l'esecuzione in container. Un container è un'unità di sviluppo software standardizzata che contiene tutto ciò che l'applicazione software deve eseguire, inclusi codice pertinente, runtime, strumenti di sistema e librerie di sistema. I container vengono creati da un modello di sola lettura denominato immagine.

In genere le immagini vengono create da un Dockerfile, ovvero un file di testo normale che specifica tutti i componenti inclusi nel container. Dopo essere state costruite, queste immagini vengono archiviate in un fileRegistroIn cui possono quindi essere scaricati ed eseguiti sul cluster. Per ulteriori informazioni sulla tecnologia dei container, consulta Nozioni di base su Docker per Amazon ECS.


                    Diagramma che mostra la creazione e la registrazione delle immagini Docker in unAmazon ECSUn ambiente.

Definizioni attività

Per preparare l'applicazione all'esecuzione suAmazon ECS, è necessario creare un oggettoDefinizione dell'attività di. La definizione dell'attività è un file di testo (in formato JSON) che descrive uno o più container (fino a un massimo di dieci) che formano l'applicazione. La definizione dell'attività può essere considerata come il piano della tua applicazione. Specifica vari parametri per la tua applicazione. Ad esempio, è possibile utilizzare questi parametri per indicare i container da utilizzare, le porte da aprire per la tua applicazione e i volumi di dati da preferire con i container nell'attività. I parametri specifici disponibili per la definizione dell'attività dipendono dalle esigenze dell'applicazione specifica. Per ulteriori informazioni sulla creazione delle definizioni delle attività, consulta Definizioni delle attività Amazon ECS.

Di seguito è riportato un esempio di una definizione dell'attività che specifica l'utilizzo di Fargate per avviare un singolo container che esegue un server Web NGINX. Per un esempio più ampio che illustri l'uso di più container in una definizione dell'attività, consulta Esempi di definizioni di attività.

{ "family": "webserver", "containerDefinitions": [ { "name": "web", "image": "nginx", "memory": "100", "cpu": "99" }, ], "requiresCompatibilities": [ "FARGATE" ], "networkMode": "awsvpc", "memory": "512", "cpu": "256", }

Attività e programmazione di attività e programmazione

Si definisce attività la creazione dell'istanza relativa a una definizione dell'attività all'interno di un cluster. Dopo aver creato una definizione dell'attività per la tua applicazione all'interno diAmazon ECS, è possibile specificare il numero di attività da eseguire sul cluster.

È il pianificatore di attività Amazon ECS a posizionare le attività all'interno del cluster. Sono disponibili diverse opzioni di programmazione. Ad esempio, è possibile definire un servizio in grado di eseguire e gestire contemporaneamente un determinato numero di attività. Per ulteriori informazioni sulle diverse opzioni di programmazione disponibili, consulta PianificazioneAmazon ECStasks.


                    Diagramma che mostra la pianificazione e il posizionamento delle attività in unAmazon ECSUtilizzando l'ambiente diFargate.

Clusters

Un recordAmazon ECS clusterè un raggruppamento logico di attività o servizi. È possibile registrare uno o piùAmazon EC2(definite anche come istanze definite anche comeIstanze di container) con il cluster per eseguire attività su di essi. In alternativa, è possibile utilizzare l'infrastruttura serverless cheFargateconsente di eseguire attività. Quando le attività vengono eseguite suFargate, le risorse del cluster vengono gestite anche daFargate.

Quando si utilizza per la prima voltaAmazon ECS, viene creato un cluster predefinito. Puoi creare cluster aggiuntivi in un account per mantenere separate le tue risorse.

Per ulteriori informazioni sulla creazione di cluster, consulta Cluster Amazon ECS. Per ulteriori informazioni sull'avvio delle istanze di container e sulla loro registrazione con i cluster, consultaIstanze di container Amazon ECS.

Agente del container

LaAgente del containerviene eseguito su ogni istanza contenitore all'interno di unAmazon ECSdi cluster. L'agente invia informazioni sulle attività della risorsa attualmente in esecuzione e sull'utilizzo delle risorse aAmazon ECS. Avvia e interrompe le attività ogni volta che riceve una richiesta daAmazon ECS. Per ulteriori informazioni, consulta Amazon ECSAgente del container.


                    Diagramma che mostra le attività dell'agente contenitore inAmazon ECSUn ambiente.

Nozioni di base su Amazon ECS

Per saperne di più sugli strumenti di sviluppo disponibili per l'utilizzoAmazon ECS, consultaAmazon ECSStrumenti per sviluppatori.

Se utilizzi Amazon ECS per la prima volta, la AWS Management Console per Amazon ECS fornisce una procedura guidata per il primo utilizzo che ti guiderà nella definizione dell'attività per un server Web, nella configurazione di un servizio e nell'avvio della tua prima attività Fargate. Consigliamo vivamente di utilizzare la procedura guidata della prima esecuzione se hai poca esperienza con l'utilizzo di una procedura guidata di prima esecuzione dell'utilizzo diAmazon ECS. Per ulteriori informazioni, consulta Nozioni di base su Amazon ECS.

In alternativa, per utilizzare Amazon ECS puoi installare l'AWS Command Line Interface (AWS CLI). Per ulteriori informazioni, consulta Configurazione di Amazon ECS.

Amazon ECS può essere utilizzato insieme ai seguenti servizi AWS:

AWS Identity and Access Management

IAM(Identity and Access Management) è un servizio di gestione degli accessi che consente di controllare in modo sicuro l'accesso aAWSrisorse AWS. Puoi utilizzare IAM per controllare chi è autenticato (accesso effettuato) e autorizzato (dispone di autorizzazioni) per visualizzare o eseguire azioni specifiche sulle risorse. Nello statoAmazon ECS, è possibile utilizzareIAMPer controllare l'accesso a livello di istanza del container utilizzandoIAMruoli e a livello di attività utilizzandoIAMRuoli delle attività. Per ulteriori informazioni, consulta Gestione delle identità e degli accessi per Amazon Elastic Container Service.

Amazon EC2 Auto Scaling

Auto Scalingè un servizio che consente di dimensionare automaticamente le tue attività in base a policy definite dall'utente, controlli dello stato di integrità e pianificazioni. Puoi utilizzare Auto Scaling con un'attività Fargate nell'ambito di un servizio da ricalibrare in risposta a una serie di parametri oppure con un'attività EC2 per dimensionare le istanze di container all'interno del cluster. Per ulteriori informazioni, consulta Scalabilità automatica del servizio.

Elastic Load Balancing

LaElastic Load Balancingdistribuisce automaticamente il traffico delle applicazioni in entrata tra le attività del servizioAmazon ECSServizio. Consente di ottenere livelli superiori di tolleranza agli errori nelle applicazioni, fornendo in tutta sicurezza la capacità di bilanciamento del carico necessaria per distribuire il traffico delle applicazioni. Puoi utilizzare Elastic Load Balancing per creare un endpoint che consenta di bilanciare il traffico tra servizi in un cluster. Per ulteriori informazioni, consulta Bilanciamento del carico.

Amazon Elastic Container Registry

Amazon ECR è un servizio di registro Docker AWS gestito, sicuro, scalabile e affidabile. Amazon ECR supporta i repository Docker privati con autorizzazioni basate su risorse tramite IAM per consentire a utenti specifici o ad attività di accedere a repository e immagini. Gli sviluppatori possono utilizzare l'interfaccia a riga di comando di Docker per l'invio, l'estrazione e la gestione delle immagini. Per ulteriori informazioni, consulta Guida per l'utente di Amazon Elastic Container Registry.

AWS CloudFormation

AWS CloudFormationoffre a sviluppatori e amministratori di sistema un modo semplice per creare e gestire una raccolta di correlatiAWSrisorse AWS. Più specificamente, rende il provisioning e l'aggiornamento delle risorse più ordinato e prevedibile. È possibile configurare cluster, definizioni delle attività e servizi come entità in uno script AWS CloudFormation. Per ulteriori informazioni, consultaAWS CloudFormationModello di riferimento.

Pricing

Amazon ECSIl prezzo dipende dal fatto che tu stia utilizzandoAWS FargateoAmazon EC2per ospitare i carichi di lavoro containerizzati. Quando utilizziAmazon ECSAttivatiAWS Outposts, il prezzo segue lo stesso modello di quando usiAmazon EC2. Per ulteriori informazioni, consulta Prezzi di Amazon ECS.

Amazon ECSeFargateOffer anche offertaSavings Plansche forniscono risparmi significativi in base al tuoAWSUtilizzo di. Per ulteriori informazioni, consulta la Guida per l'utente Savings Plans.

Per visualizzare la fattura, vai alla paginaDashboard Gestione Billing and Cost ManagementnellaAWS Billing and Cost Managementconsole. La fattura contiene collegamenti a report di utilizzo che forniscono ulteriori dettagli sulla fattura. Per ulteriori informazioni sulla fatturazione degli account AWS, consulta la pagina relativa alla fatturazione degli account AWS.

Per domande su fatturazione, account ed eventi AWS, contatta il supporto di AWS.

Per una panoramica di Trusted Advisor, un servizio che di permette di ottimizzare costi, sicurezza e prestazioni dell'ambiente AWS consulta AWS Trusted Advisor.