Mengonfigurasi penyedia ECS kapasitas Amazon untuk mematikan instans dengan aman - Amazon Elastic Container Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengonfigurasi penyedia ECS kapasitas Amazon untuk mematikan instans dengan aman

Anda dapat mengaktifkan pengurasan instans terkelola saat membuat atau memperbarui penyedia kapasitas grup Auto Scaling menggunakan konsol ECS Amazon dan. AWS CLI

catatan

Pengurasan instans terkelola aktif secara default saat Anda membuat penyedia kapasitas.

Berikut ini adalah contoh penggunaan AWS CLI untuk membuat penyedia kapasitas dengan pengeringan instans terkelola diaktifkan dan memungkinkan pengeringan instans terkelola untuk penyedia kapasitas kluster yang ada.

Buat penyedia kapasitas dengan pengurasan instans terkelola diaktifkan

Untuk membuat penyedia kapasitas dengan pengurasan instans terkelola diaktifkan, gunakan create-capacity-provider perintah. Atur parameter managedDraining ke 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", }'

Respons:

{ "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" } } }
Aktifkan pengeringan instans terkelola untuk penyedia kapasitas kluster yang ada

Aktifkan pengeringan instans terkelola untuk penyedia kapasitas kluster yang ada menggunakan update-capacity-provider perintah. Anda melihat bahwa managedDraining saat ini mengatakan DISABLED dan updateStatus berkataUPDATE_IN_PROGRESS.

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

Respons:

{ "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": [ ] } }

Gunakan describe-clusters perintah dan sertakanATTACHMENTS. statusLampiran pengeringan instance terkelola adalahPRECREATED, dan keseluruhannya attachmentsStatus adalahUPDATING.

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

Respons:

{ "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": [] }

Ketika pembaruan selesai, gunakandescribe-capacity-providers, dan Anda lihat managedDraining sekarangENABLED.

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

Respons:

{ "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": [] } ] }