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à.
Bilanciamento di un servizio Amazon ECS tra le zone di disponibilità
Per aiutare le tue applicazioni a raggiungere un'elevata disponibilità, ti consigliamo di configurare i tuoi servizi multi-task in modo che vengano eseguiti su più zone di disponibilità. Per i servizi che prevedono come prima strategia di collocamento la distribuzione in zone di disponibilità, AWS si adopera al massimo per distribuire in modo uniforme le attività di servizio tra le zone di disponibilità disponibili. Tuttavia, a volte il numero di attività in esecuzione in una zona di disponibilità potrebbe non essere lo stesso di quello in altre zone di disponibilità, ad esempio dopo un'interruzione della zona di disponibilità. Per risolvere questo squilibrio tra le attività, è possibile abilitare la funzionalità di ribilanciamento delle zone di disponibilità. Con il ribilanciamento delle zone di disponibilità, Amazon ECS monitora continuamente la distribuzione delle attività tra le zone di disponibilità per ciascuno dei tuoi servizi. Quando Amazon ECS rileva una distribuzione irregolare delle attività, interviene automaticamente per riequilibrare il carico di lavoro tra le zone di disponibilità. Ciò comporta l'avvio di nuove attività nelle zone di disponibilità con il minor numero di attività e l'interruzione delle attività nelle zone di disponibilità sovraccariche. Questa ridistribuzione garantisce che nessuna singola zona di disponibilità diventi un punto di errore, contribuendo a mantenere la disponibilità complessiva delle applicazioni containerizzate. Il processo di ribilanciamento automatizzato elimina la necessità di un intervento manuale, accelerando i tempi di ripristino dopo un evento.
Di seguito è riportata una panoramica del processo di ribilanciamento della zona di disponibilità:
-
Amazon ECS inizia a monitorare un servizio dopo che ha raggiunto lo stato stazionario e analizza il numero di attività in esecuzione in ciascuna zona di disponibilità.
-
Amazon ECS esegue le seguenti operazioni quando rileva uno squilibrio nel numero di attività in esecuzione in ciascuna zona di disponibilità:
-
Invia un evento di servizio che indica che il ribilanciamento della zona di disponibilità è in corso.
-
Avvia le attività nelle zone di disponibilità con il minor numero di attività in esecuzione
-
Interrompe le attività nelle zone di disponibilità con il maggior numero di attività in esecuzione.
-
Lo scheduler attende che le attività appena avviate siano terminate
HEALTHY
eRUNNING
prima di interromperle nella zona di disponibilità sovradimensionata. -
Invia un evento di servizio con l'esito del ribilanciamento della zona di disponibilità.
-
In che modo Amazon ECS rileva la distribuzione irregolare delle attività
Amazon ECS determina uno squilibrio nel numero di attività in esecuzione in ciascuna zona di disponibilità dividendo il numero di attività desiderato dal servizio per il numero di zone di disponibilità configurate. Se il numero di attività desiderato non è suddiviso in modo uniforme, Amazon ECS distribuisce il resto delle attività in modo uniforme tra le zone di disponibilità configurate. Ogni zona di disponibilità deve avere almeno un'attività.
Ad esempio, considera un servizio Amazon ECS con un numero desiderato di due attività configurate per due zone di disponibilità. In questo scenario, il numero di attività desiderato si divide in modo uniforme. Una distribuzione bilanciata corrisponderebbe a un'attività per zona di disponibilità. Se ci sono due attività nella Zona di disponibilità 1 e zero attività nella Zona di disponibilità 2, Amazon ECS avvierà il ribilanciamento avviando un'attività nella Zona di disponibilità 2 prima di interrompere un'attività nella Zona di disponibilità 1.
Ora, prendi in considerazione un servizio Amazon ECS con un numero desiderato di tre attività configurate per due zone di disponibilità. In questo scenario, il numero di attività desiderato non viene suddiviso in modo uniforme. Una distribuzione bilanciata sarebbe costituita da un'attività nella Zona di disponibilità 1 e due attività nella Zona di disponibilità 2, poiché ogni zona di disponibilità ha almeno un'attività e l'attività rimanente viene collocata nella Zona di disponibilità 2.
Prendi in considerazione un servizio Amazon ECS con un numero desiderato di cinque attività configurate per tre zone di disponibilità. In questo scenario, il numero di attività desiderato non viene suddiviso in modo uniforme. Una distribuzione bilanciata sarebbe costituita da un'attività nella Zona di disponibilità 1 e due attività ciascuna nelle Zone di disponibilità 2 e 3. Dopo aver contabilizzato ogni zona di disponibilità con un'attività ciascuna, le due attività rimanenti vengono distribuite equamente tra le zone di disponibilità.
Considerazioni sulla configurazione del ribilanciamento delle zone di disponibilità
Considerate quanto segue quando desiderate configurare il ribilanciamento della zona di disponibilità:
Il ribilanciamento della zona di disponibilità supporta i tipi Fargate e Launch. EC2 Per Fargate, Amazon ECS ridistribuirà automaticamente le attività tra le zone di disponibilità disponibili per mantenere l'equilibrio. Per il tipo di EC2 lancio, Amazon ECS ribilancia le attività tra le istanze di container esistenti nel miglior modo possibile, rispettando le strategie e i vincoli di posizionamento definiti. Tuttavia, Amazon ECS non può lanciare nuove istanze in zone di disponibilità sottoutilizzate come parte del processo di ribilanciamento, limitando il ribilanciamento alle istanze di container esistenti.
-
Il ribilanciamento delle zone di disponibilità funziona nelle seguenti configurazioni:
-
Servizi che utilizzano la strategia
Replica
-
I servizi che specificano la zona di disponibilità si diffondono come prima strategia di collocamento delle attività oppure non specificano una strategia di posizionamento.
-
-
Non è possibile utilizzare il ribilanciamento della zona di disponibilità con servizi che soddisfano uno dei seguenti criteri:
-
Utilizza la strategia
Daemon
-
Utilizza il tipo di
EXTERNAL
avvio (ECS Anywhere) -
Utilizza il 100% per il valore
maximumPercent
-
Utilizza un Classic Load Balancer
-
Utilizza
attribute:ecs.availability-zone
come vincolo di posizionamento delle attività
-
Strategie di posizionamento e vincoli di posizionamento con il ribilanciamento delle zone di disponibilità
Le strategie di posizionamento determinano il modo in cui Amazon ECS seleziona le istanze di container e le zone di disponibilità per la cessazione del posizionamento delle attività. I vincoli di posizionamento delle attività sono regole che determinano se un'attività può essere eseguita su una specifica istanza del contenitore. Per il tipo di EC2 avvio, è possibile utilizzare strategie di posizionamento e vincoli di posizionamento insieme al ribilanciamento della zona di disponibilità. Tuttavia, affinché il ribilanciamento delle zone di disponibilità funzioni, la strategia di posizionamento degli spread nelle zone di disponibilità deve essere la prima strategia specificata. Il ribilanciamento delle zone di disponibilità è compatibile con varie combinazioni di strategie di posizionamento. Ad esempio, è possibile creare una strategia che distribuisca prima le attività in modo uniforme tra le zone di disponibilità e quindi comprime le attività in base alla memoria all'interno di ciascuna zona di disponibilità. In questo caso, il ribilanciamento delle zone di disponibilità funziona perché la strategia di diffusione delle zone di disponibilità viene specificata per prima. È importante notare che il ribilanciamento delle zone di disponibilità non funzionerà se la prima strategia nell'array della strategia di posizionamento non è un componente di diffusione delle zone di disponibilità. Questo requisito garantisce che l'obiettivo principale della distribuzione delle attività sia il mantenimento dell'equilibrio tra le zone di disponibilità, fondamentale per un'elevata disponibilità. Per ulteriori informazioni sulle strategie e sui vincoli di collocamento delle attività, vedere. In che modo Amazon ECS colloca le attività sulle istanze di container
Per processi con tipo di avvio Fargate, le strategie e i vincoli di posizionamento dei processi non sono supportati. Fargate farà del suo meglio per distribuire le attività tra zone di disponibilità accessibili. Se il provider di capacità include sia Fargate che Fargate Spot, il comportamento di distribuzione sarà indipendente per ogni provider.
La strategia di esempio seguente distribuisce le attività in modo uniforme tra le zone di disponibilità, quindi raggruppa le attività in base alla memoria all'interno di ciascuna zona di disponibilità. Il ribilanciamento delle zone di disponibilità è compatibile con il servizio perché la spread
strategia è la prima.
"placementStrategy": [ { "field": "attribute:ecs.availability-zone", "type": "spread" }, { "field": "memory", "type": "binpack" } ]
Attiva il ribilanciamento della zona di disponibilità
È necessario abilitare il ribilanciamento della zona di disponibilità per i servizi nuovi ed esistenti.
È possibile abilitare e disabilitare il ribilanciamento della zona di disponibilità utilizzando la console o il APIs. AWS CLI
Tipo di servizio | API | Console | CLI |
---|---|---|---|
Esistente | UpdateService | Aggiornamento di un servizio Amazon ECS | servizio di aggiornamento |
Novità | CreateService | Creazione di un servizio Amazon ECS utilizzando la console | create-service |