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à.
Ottimizza la scalabilità automatica dei cluster Amazon ECS
I clienti che eseguono Amazon ECS su Amazon EC2 possono sfruttare la scalabilità automatica del cluster per gestire la scalabilità dei gruppi Amazon Auto Scaling EC2 . Con Cluster Auto Scaling, puoi configurare Amazon ECS per scalare automaticamente il tuo gruppo Auto Scaling e concentrarti solo sull'esecuzione delle tue attività. Amazon ECS garantisce la scalabilità interna e orizzontale del gruppo Auto Scaling secondo necessità senza ulteriori interventi. I provider di capacità di Amazon ECS vengono utilizzati per gestire l'infrastruttura del cluster assicurando che ci siano abbastanza istanze di container per soddisfare le esigenze dell'applicazione. Per scoprire come funziona la scalabilità automatica dei cluster, consulta Deep Dive on Amazon ECS Cluster Auto Scaling
La scalabilità automatica del cluster si basa su un'integrazione CloudWatch basata con il gruppo Auto Scaling per la regolazione della capacità del cluster. Pertanto ha una latenza intrinseca associata a
-
Pubblicazione delle metriche, CloudWatch
-
Il tempo impiegato dalla metrica per
CapacityProviderReservation
violare gli CloudWatch allarmi (sia alti che bassi) -
Il tempo impiegato da un' EC2 istanza Amazon appena lanciata per il riscaldamento. È possibile intraprendere le seguenti azioni per rendere la scalabilità automatica del cluster più reattiva per implementazioni più rapide:
Dimensioni di scalabilità graduale del provider di capacità
I fornitori di capacità di Amazon ECS sceglieranno grow/shrink le istanze di container per soddisfare le esigenze della tua applicazione. Il numero minimo di istanze che Amazon ECS avvierà è impostato su 1 per impostazione predefinita. Ciò può aggiungere ulteriore tempo alle distribuzioni, se sono necessarie più istanze per collocare le attività in sospeso. Puoi aumentarlo minimumScalingStepSize
tramite l'API Amazon ECS per aumentare il numero minimo di istanze scalabili da Amazon ECS alla volta. Un maximumScalingStepSize
valore troppo basso può limitare il numero di istanze di container scalabili contemporaneamente, il che può rallentare le implementazioni.
Nota
Questa configurazione è attualmente disponibile solo tramite o. CreateCapacityProvider
UpdateCapacityProvider
APIs
Periodo di riscaldamento dell'istanza
Il periodo di riscaldamento dell'istanza è il periodo di tempo dopo il quale un' EC2istanza Amazon appena lanciata può contribuire ai CloudWatch parametri per il gruppo Auto Scaling. Dopo la scadenza del periodo di riscaldamento specificato, l'istanza viene conteggiata nelle metriche aggregate del gruppo Auto Scaling e l'autoscaling del cluster procede con la successiva iterazione di calcoli per stimare il numero di istanze richieste.
Il valore predefinito per instanceWarmupPeriod
è 300 secondi, che è possibile configurare su un valore inferiore tramite o per un ridimensionamento più reattivo. CreateCapacityProvider
UpdateCapacityProvider
APIs Si consiglia di impostare il valore su un valore superiore a 60 secondi in modo da evitare un eccesso di provisioning.
Capacità inutilizzata
Se il tuo provider di capacità non dispone di istanze di container per l'inserimento delle attività, deve aumentare (scalare) la capacità del cluster avviando EC2 immediatamente le istanze Amazon e attendere che si avviino prima di poter avviare contenitori su di esse. Ciò può ridurre in modo significativo la frequenza di avvio delle attività. Hai due opzioni qui.
In questo caso, disporre di EC2 capacità Amazon di riserva già avviata e pronta per l'esecuzione delle attività aumenterà la percentuale effettiva di avvio delle attività. Puoi utilizzare la Target
Capacity
configurazione per indicare che desideri mantenere la capacità inutilizzata nei tuoi cluster. Ad esempio, Target Capacity
impostando l'80%, si indica che il cluster necessita sempre del 20% di capacità di riserva. Questa capacità di riserva può consentire l'avvio immediato di qualsiasi attività autonoma, assicurando che l'avvio delle attività non venga limitato. Il compromesso di questo approccio è il potenziale aumento dei costi legati al mantenimento della capacità di riserva del cluster.
Un approccio alternativo che puoi prendere in considerazione è quello di aggiungere spazio di crescita al tuo servizio, non al fornitore di capacità. Ciò significa che invece di ridurre la Target
Capacity
configurazione per avviare la capacità di riserva, è possibile aumentare il numero di repliche nel servizio modificando la metrica di tracciamento della scalabilità di destinazione o le soglie di scalabilità per fasi del servizio auto scaling. Tieni presente che questo approccio sarà utile solo per i carichi di lavoro con picchi di lavoro, ma non avrà alcun effetto quando distribuisci nuovi servizi e passi da 0 a N attività per la prima volta. Per ulteriori informazioni sulle politiche di scalabilità correlate, consulta Target Tracking Scaling Policies o Step Scaling Policies nella Amazon Elastic Container Service Developer Guide.