Gestisci automaticamente la ECS capacità di Amazon con la scalabilità automatica del cluster - 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à.

Gestisci automaticamente la ECS capacità di Amazon con la scalabilità automatica del cluster

Amazon ECS può gestire il ridimensionamento delle EC2 istanze Amazon registrate nel tuo cluster. Questa operazione è denominata Amazon ECS Cluster Auto Scaling. Attivi la scalabilità gestita quando crei il provider di capacità di gruppo Amazon ECS Auto Scaling. Quindi, si imposta una percentuale target (latargetCapacity) per l'utilizzo dell'istanza in questo gruppo Auto Scaling. Amazon ECS crea due CloudWatch metriche personalizzate e una politica di scalabilità mirata per il tracciamento degli obiettivi per il tuo gruppo Auto Scaling. Amazon gestisce ECS quindi le azioni di scalabilità verticale e orizzontale in base all'utilizzo delle risorse utilizzato dalle attività.

Per ogni provider di capacità di gruppo Auto Scaling associato a un cluster, Amazon ECS crea e gestisce le seguenti risorse:

  • Un allarme a basso valore metrico CloudWatch

  • Un allarme con valore metrico elevato CloudWatch

  • Una policy di scalabilità di monitoraggio dei target

    Nota

    Amazon ECS crea la politica di scalabilità di tracciamento di Target e la associa al gruppo Auto Scaling. Per aggiornare la policy di scalabilità di monitoraggio delle destinazioni, aggiornare le impostazioni di scalabilità gestita della policy e non aggiornare direttamente la policy di scalabilità.

Quando disattivi la scalabilità gestita o dissocii il fornitore di capacità da un cluster, Amazon ECS rimuove sia i CloudWatch parametri che le risorse della politica di scalabilità di tracciamento di destinazione.

Amazon ECS utilizza le seguenti metriche per determinare le azioni da intraprendere:

CapacityProviderReservation

La percentuale di istanze di container utilizzate per uno specifico fornitore di capacità. Amazon ECS genera questa metrica.

Amazon ECS imposta il CapacityProviderReservation valore su un numero compreso tra 0 e 100. Amazon ECS utilizza la seguente formula per rappresentare il rapporto tra la quantità di capacità rimasta nel gruppo Auto Scaling. Quindi, Amazon ECS pubblica la metrica su. CloudWatch Per ulteriori informazioni su come viene calcolata la metrica, consulta Deep Dive on Amazon ECS Cluster Auto Scaling.

CapacityProviderReservation = (number of instances needed) / (number of running instances) x 100
DesiredCapacity

La quantità di capacità del gruppo con dimensionamento automatico. Questa metrica non è stata pubblicata. CloudWatch

Amazon ECS pubblica la CapacityProviderReservation metrica CloudWatch nel namespace. AWS/ECS/ManagedScaling Il parametro CapacityProviderReservation provoca una delle seguenti operazioni:

Il valore CapacityProviderReservation è uguale a targetCapacity

Il gruppo con dimensionamento automatico non ha bisogno di essere ridimensionato o di impiegare la scalabilità orizzontale. La percentuale di utilizzo prevista è stata raggiunta.

Il valore CapacityProviderReservation è maggiore di targetCapacity

Ci sono più attività che utilizzano una percentuale di capacità più elevata rispetto alla percentuale targetCapacity. L'aumento del valore della CapacityProviderReservation metrica provoca l'attivazione dell'allarme associato. CloudWatch Questo allarme aggiorna il valore di DesiredCapacity per il gruppo Auto Scaling. Il gruppo Auto Scaling utilizza questo valore per avviare EC2 le istanze e quindi registrarle nel cluster.

Se targetCapacity è il valore predefinito del 100%, le nuove attività rimangono nello stato PENDING durante l'impiego della scalabilità orizzontale poiché non c'è capacità disponibile sulle istanze per eseguire le attività. Dopo la registrazione delle nuove istanzeECS, queste attività inizieranno sulle nuove istanze.

Il valore CapacityProviderReservation è inferiore a targetCapacity

Ci sono meno attività che utilizzano una percentuale di capacità inferiore rispetto alla percentuale targetCapacity ed è presente almeno un'istanza che può essere terminata. La diminuzione del valore della CapacityProviderReservation metrica causa l'attivazione dell' CloudWatch allarme associato. Questo allarme aggiorna il valore di DesiredCapacity per il gruppo Auto Scaling. Il gruppo Auto Scaling utilizza questo valore per terminare le istanze dei EC2 container e quindi annullarne la registrazione dal cluster.

Il gruppo con dimensionamento automatico utilizza le policy di terminazione, per determinare quali istanze terminare per prime durante gli eventi di ridimensionamento. Inoltre, evita le istanze con l'impostazione di protezione da ridimensionamento delle istanze attivata. Il dimensionamento automatico del cluster può gestire le istanze con l'impostazione di protezione per il ridimensionamento se la protezione da terminazione gestita è attivata. Per ulteriori informazioni sulla protezione da terminazione gestita, consulta Controlla le istanze che Amazon chiude ECS. Per ulteriori informazioni su come i gruppi di Auto Scaling terminano le istanze, consulta Controllare quali istanze di Auto Scaling terminano durante la scalabilità nella Amazon Auto Scaling User Guide. EC2

Quando utilizzi il dimensionamento automatico del cluster, tieni in considerazione i seguenti aspetti:

  • Non modificare o gestire la capacità desiderata per il gruppo Auto Scaling associato a un provider di capacità con politiche di scalabilità diverse da quella gestita da Amazon. ECS

  • Quando Amazon ECS passa da 0 istanze, ne avvia automaticamente 2.

  • Amazon ECS utilizza il IAM ruolo AWSServiceRoleForECS collegato al servizio per le autorizzazioni necessarie per richiamare per tuo AWS Auto Scaling conto. Per ulteriori informazioni, consulta Utilizzo di ruoli collegati ai servizi per Amazon ECS.

  • Quando utilizzi provider di capacità con gruppi con scalabilità automatica, l'utente, il gruppo e il ruolo che crea i provider di capacità richiedono l'autorizzazione autoscaling:CreateOrUpdateTags. Questo perché Amazon ECS aggiunge un tag al gruppo Auto Scaling quando lo associa al fornitore di capacità.

    Importante

    Assicurati che qualsiasi strumento utilizzato non rimuova il tag AmazonECSManaged dal gruppo con scalabilità automatica. Se questo tag viene rimosso, Amazon non è in ECS grado di gestire la scalabilità.

  • La scalabilità automatica del cluster non modifica l'MinimumCapacityor MaximumCapacityper il gruppo. Affinché il gruppo venga scalato orizzontalmente, il valore di MaximumCapacitydeve essere maggiore di zero.

  • Quando è attivata la scalabilità automatica (dimensionamento gestito), un provider di capacità può essere connesso solo a un cluster contemporaneamente. Se per il provider di capacità la scalabilità gestita è disattivata, è possibile associarlo a più cluster.

  • Quando il dimensionamento gestito è disattivato, il provider di capacità non esegue operazioni di dimensionamento con riduzione o aumento orizzontale. In questo caso, è possibile utilizzare una strategia del provider di capacità per bilanciare le attività tra i provider di capacità.

  • La binpack strategia è la strategia più efficiente in termini di capacità.

  • Quando la capacità obiettivo è inferiore al 100%, la strategia di collocamento deve utilizzare la binpack strategia senza che la spread strategia abbia un ordine superiore rispetto alla binpack strategia. Ciò impedisce al provider di capacità di espandersi fino al raggiungimento del limite o fino al raggiungimento di un'istanza dedicata per ciascuna attività.

Attivazione del dimensionamento automatico del cluster

È possibile attivare la scalabilità automatica del cluster utilizzando la Console o il AWS CLI.

Quando crei un cluster per il tipo di EC2 avvio utilizzando la console, Amazon ECS crea un gruppo Auto Scaling per tuo conto e imposta la capacità target. Per ulteriori informazioni, consulta Creazione di un ECS cluster Amazon per il tipo di EC2 lancio Amazon.

È inoltre possibile creare un gruppo Auto Scaling e quindi assegnarlo a un cluster. Per ulteriori informazioni, consulta Aggiornamento di un provider ECS di capacità Amazon.

Quando si utilizza il AWS CLI, dopo aver creato il cluster

  1. Prima di creare il provider di capacità, è necessario creare un gruppo con scalabilità automatica. Per ulteriori informazioni, consulta i gruppi Auto Scaling nella Amazon Auto EC2 Scaling User Guide.

  2. Utilizzare put-cluster-capacity-providers per modificare il provider di capacità del cluster. Per ulteriori informazioni, consulta Attivazione della scalabilità automatica dei ECS cluster Amazon.