Progetta la tua applicazione per Amazon ECS - 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à.

Progetta la tua applicazione per Amazon ECS

L'applicazione viene progettata creando una definizione di attività per l'applicazione. La definizione dell'attività contiene i parametri che definiscono le informazioni sull'applicazione, tra cui:

  • Il tipo di avvio da utilizzare, che determina l'infrastruttura su cui sono ospitate le attività.

    Quando usi il tipo di EC2 avvio, scegli anche il tipo di istanza. Per alcuni tipi di istanza, come la GPU, è necessario impostare parametri aggiuntivi. Per ulteriori informazioni, consulta Casi d'uso per la definizione delle attività di Amazon ECS.

  • L'immagine del contenitore, che contiene il codice dell'applicazione e tutte le dipendenze necessarie per l'esecuzione del codice dell'applicazione.

  • La modalità di rete da utilizzare per i contenitori coinvolti nell'attività.

    La modalità di rete determina il modo in cui l'attività comunica sulla rete.

    Per le attività eseguite su EC2 istanze, sono disponibili diverse opzioni, ma è consigliabile utilizzare la modalità di awsvpc rete. La modalità awsvpc di rete semplifica il networking dei container offrendo un maggiore controllo sul modo in cui le applicazioni comunicano tra loro e con gli altri servizi all'interno dell'azienda. VPCs

    Per le attività eseguite su Fargate, è necessario utilizzare la modalità di awsvpc rete.

  • La configurazione di registrazione da utilizzare per le tue attività.

  • Qualsiasi volume di dati utilizzato con i contenitori dell'attività.

Per un elenco completo dei parametri per la definizione di attività, consulta Parametri di definizione delle attività di Amazon ECS per il tipo di lancio Fargate.

Utilizza le linee guida seguenti per creare le definizioni di attività:

  • Utilizza ogni famiglia di definizioni delle attività per un solo scopo aziendale.

    Se raggruppi più tipi di contenitori di applicazioni nella stessa definizione di attività, non puoi scalare in modo indipendente tali contenitori. Ad esempio, un sito Web e un'API richiedono in genere modelli di ridimensionamento diversi. Con l'aumento del traffico, potrebbe essere necessario un numero diverso di contenitori Web rispetto ai contenitori API. Se questi due contenitori vengono distribuiti nella stessa definizione di attività, ogni attività esegue lo stesso numero di contenitori Web e contenitori API.

  • Associa ogni versione dell'applicazione a una revisione della definizione di attività all'interno di una famiglia di definizioni delle attività.

    All'interno di una famiglia di definizioni di attività, ogni revisione della definizione di attività rappresenta un' point-in-timeistantanea delle impostazioni per una particolare immagine del contenitore. È simile al modo in cui il contenitore è un'istantanea di tutti i componenti necessari per eseguire una particolare versione del codice dell'applicazione.

    Crea una one-to-one mappatura tra una versione del codice dell'applicazione, un tag di immagine del contenitore e una revisione della definizione dell'attività. Un tipico processo di rilascio prevede un commit git che viene trasformato in un'immagine di container con il tag SHA del commit git. Quindi, il tag dell'immagine di container riceve la propria revisione della definizione di attività di Amazon ECS. Infine, il servizio Amazon ECS viene aggiornato per implementare la nuova revisione della definizione delle attività.

  • Utilizza ruoli IAM diversi per ogni famiglia di definizione delle attività.

    Definisci ogni definizione delle attività con il proprio ruolo IAM. Implementa questa pratica oltre a fornire a ciascun componente aziendale la propria famiglia di definizioni delle attività. Implementando entrambe queste best practice, puoi limitare l'accesso di ciascun servizio alle risorse del tuo AWS account. Ad esempio, puoi concedere al servizio di autenticazione l'accesso per connettersi al database delle password. Allo stesso tempo, puoi assicurarti che solo il tuo servizio ordini abbia accesso alle informazioni di pagamento con carta di credito.