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à.
Implementa i servizi Amazon ECS sostituendo le attività
Quando crei un servizio che utilizza il tipo di distribuzione rolling update (ECS
), lo scheduler del servizio Amazon ECS sostituisce le attività attualmente in esecuzione con nuove attività. Il numero di attività che Amazon ECS aggiunge o rimuove durante un aggiornamento in sequenza è controllato dalla configurazione dell'implementazione del servizio.
Amazon ECS utilizza i seguenti parametri per determinare il numero di attività:
-
La
minimumHealthyPercent
rappresenta il limite inferiore del numero di processi che devono essere in esecuzione per un servizio durante un'implementazione o quando un'istanza di container è in fase di svuotamento, come percentuale del numero desiderato di processi per il servizio. Questo valore viene arrotondato per eccesso. Ad esempio, se la percentuale minima di integrità è50
, il numero di processi desiderato è quattro, il pianificatore può interrompere due processi esistenti prima di avviare due nuovi processi. Allo stesso modo, se la percentuale di integrità minima è 75% e il numero di processi desiderato è due, il pianificatore non può interrompere alcun processo a causa del valore risultante che è anche due.Se le attività non funzionano correttamente, lo strumento di pianificazione dei servizi Amazon ECS avvierà prima le attività sostitutive e le manterrà finché
minimumHealthyPercent
le attività sostitutive non saranno integre. Man mano che le attività sostitutive vengono avviate e diventano corrette, quelle non sane verranno gradualmente interrotte. -
La
maximumPercent
rappresenta il limite superiore del numero di processi che devono essere in esecuzione per un servizio durante un'implementazione o quando un'istanza di container è in fase di svuotamento, come percentuale del numero desiderato di processi per il servizio. Questo valore viene arrotondato per difetto. Ad esempio, se la percentuale massima è200
e il numero di processi desiderato è quattro, il pianificatore può avviare quattro nuovi processi prima di avviare arrestare i quattro processi esistenti. Allo stesso modo, se la percentuale di integrità massima è125
e il numero di processi desiderato è tre, il pianificatore non può interrompere alcun processo a causa del valore risultante che è esso stesso tre.
Importante
Quando si imposta una percentuale di integrità minima o massima, è necessario assicurarsi che lo scheduler possa arrestare o avviare almeno un'attività quando viene attivata un'implementazione. Se il servizio dispone di un'implementazione bloccata a causa di una configurazione di distribuzione non valida, verrà inviato un messaggio di evento del servizio. Per ulteriori informazioni, consulta service (service-name) non è stato in grado di interrompere o avviare le attività durante una distribuzione a causa della configurazione della distribuzione del servizio. Aggiorna il valore minimumHealthyPercent o MaximumPercent e riprova..
Le distribuzioni in sequenza hanno due metodi che consentono di identificare rapidamente quando l'implementazione di un servizio non è riuscita:
I metodi possono essere utilizzati separatamente o insieme. Quando vengono utilizzati entrambi i metodi, la distribuzione viene impostata come non riuscita non appena vengono soddisfatti i criteri di errore per entrambi i metodi di errore.
Utilizza le seguenti linee guida per determinare quale metodo usare:
-
Interruttore: utilizza questo metodo quando desideri interrompere un'implementazione quando le attività non possono essere avviate.
-
CloudWatch allarmi: utilizzate questo metodo quando desiderate interrompere una distribuzione in base ai parametri dell'applicazione.
Entrambi i metodi supportano il rollback alla versione precedente del servizio.
Risoluzione dell'immagine del contenitore
Per impostazione predefinita, Amazon ECS risolve i tag di immagine del contenitore specificati nella definizione dell'attività in digest di immagini del contenitore. Se crei un servizio che esegue e gestisce una singola attività, tale attività viene utilizzata per stabilire digest di immagini per i contenitori inclusi nell'attività. Se si crea un servizio che esegue e gestisce più attività, la prima attività avviata dal service scheduler durante la distribuzione viene utilizzata per stabilire i digest di immagini per i contenitori delle attività.
Se tre o più tentativi di stabilire gli image digest del contenitore falliscono, la distribuzione continua senza la risoluzione dell'image digest. Se l'interruttore automatico di distribuzione è abilitato, la distribuzione viene inoltre fallita e ripristinata.
Dopo aver stabilito i digest delle immagini del contenitore, Amazon ECS li utilizza per avviare qualsiasi altra attività desiderata e per eventuali futuri aggiornamenti del servizio. Ciò comporta che tutte le attività di un servizio eseguano sempre immagini di container identiche, con conseguente coerenza delle versioni del software.
È possibile configurare questo comportamento per ogni contenitore dell'attività utilizzando il versionConsistency
parametro nella definizione del contenitore. Per ulteriori informazioni, consulta versionConsistency.
Nota
-
Le versioni di Amazon ECS Agent precedenti a
1.31.0
non supportano la risoluzione Image Digest. Versioni Agent1.31.0
che1.69.0
supportano la risoluzione Image Digest solo per le immagini inviate ai repository Amazon ECR. Le versioni Agent1.70.0
o successive supportano la risoluzione Image Digest per tutte le immagini. -
La versione minima della piattaforma Fargate Linux per la risoluzione dell'image digest è.
1.3.0
La versione minima della piattaforma Fargate Windows per la risoluzione di Image Digest è.1.0.0
-
Amazon ECS non acquisisce digest di container sidecar gestiti da Amazon ECS, come l'agente di GuardDuty sicurezza Amazon o il proxy Service Connect.
-
Per ridurre la potenziale latenza associata alla risoluzione delle immagini dei container nei servizi con più attività, esegui la versione dell'agente Amazon ECS
1.83.0
o superiore sulle istanze di EC2 container. Per evitare una potenziale latenza, specifica i digest delle immagini del contenitore nella definizione dell'attività. -
Se crei un servizio con un numero di attività desiderato pari a zero, Amazon ECS non può stabilire i container digest finché non attivi un'altra distribuzione del servizio con un numero di attività desiderato maggiore di zero.
-
Per stabilire digest di immagini aggiornati, puoi forzare una nuova distribuzione. I digest aggiornati verranno utilizzati per avviare nuove attività e non influiranno sulle attività già in esecuzione. Per ulteriori informazioni su come forzare nuove distribuzioni, consulta il riferimento alle forceNewDeploymentAPI di Amazon ECS.