Best practice per i parametri del servizio 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à.

Best practice per i parametri del servizio Amazon ECS

Per garantire che non si verifichino tempi di inattività delle applicazioni, il processo di distribuzione è il seguente:

  1. Avvia i nuovi contenitori di applicazioni mantenendo attivi i contenitori esistenti.

  2. Verifica che i nuovi contenitori siano integri.

  3. Fermate i vecchi contenitori.

A seconda della configurazione di distribuzione e della quantità di spazio libero e non riservato nel cluster, potrebbero essere necessari più cicli per completare la procedura, sostituire tutte le vecchie attività con nuove attività.

Esistono due opzioni di configurazione del servizio ECS che è possibile utilizzare per modificare il numero:

  • minimumHealthyPercent: 100% (impostazione predefinita)

    Il limite inferiore al numero di attività del servizio che devono rimanere RUNNING invariate durante una distribuzione. Si tratta di una percentuale dell'desiredCountarrotondato al numero intero più vicino. Questo parametro consente di eseguire la distribuzione senza utilizzare capacità aggiuntiva del cluster.

  • maximumPercent: 200% (impostazione predefinita)

    Il limite massimo al numero di attività del servizio consentite PENDING nello stato RUNNING o durante una distribuzione. Si tratta di una percentuale del numero desiredCount arrotondato per difetto al numero intero più vicino.

Prendiamo in considerazione il seguente servizio con sei task tan, distribuito in un cluster che può ospitare otto attività in totale. Le opzioni di configurazione del servizio Amazon ECS predefinite non consentono alla distribuzione di superare il 100% delle sei attività desiderate.

Diagramma che mostra sei attività in un cluster che può ospitare otto attività.

Il processo di distribuzione è il seguente:

  1. L'obiettivo è sostituire le attività abbronzate con le attività blu.

  2. L'utilità di pianificazione avvia due nuove attività blu perché le impostazioni predefinite richiedono che vi siano sei attività in esecuzione.

  3. Lo scheduler interrompe due delle attività di colore marrone chiaro perché ci saranno un totale di sei attività (quattro marrone chiaro e due blu).

  4. Lo scheduler avvia due attività blu aggiuntive.

  5. Lo scheduler interrompe due delle seguenti attività.

  6. Lo scheduler avvia due attività blu aggiuntive.

  7. Lo scheduler chiude le ultime due attività abbronzate.

Nell'esempio precedente, se si utilizzano i valori predefiniti per le opzioni, c'è un'attesa di 2,5 minuti per ogni nuova attività che inizia. Inoltre, il sistema di bilanciamento del carico potrebbe dover attendere 5 minuti prima che la vecchia attività si interrompa.

È possibile velocizzare l'implementazione impostando il minimumHealthyPercent valore al 50%.

Prendiamo in considerazione il seguente servizio con sei task tan, distribuito in un cluster che può ospitare otto attività in totale.

Diagramma che mostra sei attività in un cluster che può ospitare otto attività con un minimumHealthyPercent valore del 50%.

Il processo di distribuzione è il seguente:

  1. L'obiettivo è sostituire le attività abbronzate con le attività blu.

  2. Lo scheduler interrompe tre delle attività tan. Sono ancora in esecuzione tre attività tan che soddisfano il minimumHealthyPercent valore.

  3. Lo scheduler avvia cinque attività blu.

  4. Lo scheduler interrompe le restanti tre attività abbronzate.

  5. Lo scheduler avvia le ultime attività blu.

Puoi anche aggiungere altro spazio libero in modo da poter eseguire attività aggiuntive.

Diagramma che mostra sei attività in un cluster che può ospitare otto attività.

Il processo di distribuzione è il seguente:

  1. L'obiettivo è sostituire le attività abbronzate con le attività blu.

  2. Lo scheduler interrompe tre delle attività tan

  3. Lo scheduler avvia sei attività blu

  4. Lo scheduler interrompe le tre attività tan.

Utilizza i seguenti valori per le opzioni di configurazione del servizio Amazon ECS quando le attività sono inattive da qualche tempo e non hanno un tasso di utilizzo elevato.

  • minimumHealthyPercent: 50%

  • maximumPercent: 200%