Configurazione dei provider di ECS capacità di Amazon per chiudere le istanze in modo sicuro - 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à.

Configurazione dei provider di ECS capacità di Amazon per chiudere le istanze in modo sicuro

Puoi attivare il drenaggio delle istanze gestite quando crei o aggiorni i tuoi provider di capacità di gruppo Auto Scaling utilizzando la console ECS Amazon e. AWS CLI

Nota

Il drenaggio gestito delle istanze è attivo per impostazione predefinita quando crei un provider di capacità.

Di seguito sono riportati alcuni esempi di utilizzo di AWS CLI per creare un provider di capacità con il drenaggio gestito delle istanze abilitate e di abilitazione del drenaggio gestito delle istanze per il provider di capacità esistente di un cluster.

Creazione di un provider di capacità con il drenaggio gestito delle istanze abilitato

Per creare un provider di capacità con il drenaggio gestito delle istanze abilitate, usa il create-capacity-provider comando. Imposta il parametro managedDraining su ENABLED.

aws ecs create-capacity-provider \ --name capacity-provider \ --auto-scaling-group-provider '{ "autoScalingGroupArn": "asg-arn", "managedScaling": { "status": "ENABLED", "targetCapacity": 100, "minimumScalingStepSize": 1, "maximumScalingStepSize": 1 }, "managedDraining": "ENABLED", "managedTerminationProtection": "ENABLED", }'

Risposta:

{ "capacityProvider": { "capacityProviderArn": "capacity-provider-arn", "name": "capacity-provider", "status": "ACTIVE", "autoScalingGroupProvider": { "autoScalingGroupArn": "asg-arn", "managedScaling": { "status": "ENABLED", "targetCapacity": 100, "minimumScalingStepSize": 1, "maximumScalingStepSize": 1 }, "managedTerminationProtection": "ENABLED" "managedDraining": "ENABLED" } } }
Abilita il drenaggio gestito delle istanze per il provider di capacità esistente di un cluster

Abilita il drenaggio gestito delle istanze per il provider di capacità esistente di un cluster utilizza il update-capacity-provider comando. Vedete che managedDraining attualmente dice DISABLED e updateStatus diceUPDATE_IN_PROGRESS.

aws ecs update-capacity-provider \ --name cp-draining \ --auto-scaling-group-provider '{ "managedDraining": "ENABLED" }

Risposta:

{ "capacityProvider": { "capacityProviderArn": "cp-draining-arn", "name": "cp-draining", "status": "ACTIVE", "autoScalingGroupProvider": { "autoScalingGroupArn": "asg-draining-arn", "managedScaling": { "status": "ENABLED", "targetCapacity": 100, "minimumScalingStepSize": 1, "maximumScalingStepSize": 1, "instanceWarmupPeriod": 300 }, "managedTerminationProtection": "DISABLED", "managedDraining": "DISABLED" // before update }, "updateStatus": "UPDATE_IN_PROGRESS", // in progress and need describe again to find out the result "tags": [ ] } }

Usa il describe-clusters comando e includiATTACHMENTS. L'allegato status di drenaggio dell'istanza gestita èPRECREATED, e il complesso attachmentsStatus èUPDATING.

aws ecs describe-clusters --clusters cluster-name --include ATTACHMENTS

Risposta:

{ "clusters": [ { ... "capacityProviders": [ "cp-draining" ], "defaultCapacityProviderStrategy": [], "attachments": [ # new precreated managed draining attachment { "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "type": "managed_draining", "status": "PRECREATED", "details": [ { "name": "capacityProviderName", "value": "cp-draining" }, { "name": "autoScalingLifecycleHookName", "value": "ecs-managed-draining-termination-hook" } ] }, ... ], "attachmentsStatus": "UPDATING" } ], "failures": [] }

Quando l'aggiornamento è terminatodescribe-capacity-providers, usa e lo vedi managedDraining oraENABLED.

aws ecs describe-capacity-providers --capacity-providers cp-draining

Risposta:

{ "capacityProviders": [ { "capacityProviderArn": "cp-draining-arn", "name": "cp-draining", "status": "ACTIVE", "autoScalingGroupProvider": { "autoScalingGroupArn": "asg-draning-arn", "managedScaling": { "status": "ENABLED", "targetCapacity": 100, "minimumScalingStepSize": 1, "maximumScalingStepSize": 1, "instanceWarmupPeriod": 300 }, "managedTerminationProtection": "DISABLED", "managedDraining": "ENABLED" // successfully update }, "updateStatus": "UPDATE_COMPLETE", "tags": [] } ] }