Menghapus satu atau beberapa instans dari grup penskalaan. Jika grup penskalaan Anda berstatus aktif dan tidak memiliki aktivitas penskalaan yang sedang berlangsung, Anda dapat memanggil operasi RemoveInstances untuk menghapus instans yang tidak lagi diperlukan dari grup tersebut.
Catatan penggunaan
Sebelum memanggil operasi ini, pastikan persyaratan berikut terpenuhi:
Grup penskalaan berada dalam status Active.
Grup penskalaan tidak memiliki aktivitas penskalaan yang sedang berlangsung.
Anda tetap dapat memanggil operasi ini meskipun berada dalam periode cooldown, selama tidak terdapat aktivitas penskalaan yang sedang berlangsung.
Jika Instance Elastic Compute Service (ECS) dibuat secara otomatis oleh Auto Scaling atau ditambahkan secara manual ke grup penskalaan dan dikelola oleh grup tersebut, Instance ECS akan masuk ke Economical Mode atau dilepas (release) saat dihapus dari grup penskalaan.
Jika Instance ECS ditambahkan secara manual ke grup penskalaan namun tidak dikelola oleh grup tersebut, Instance ECS tidak akan dihentikan atau dilepas saat dihapus dari grup penskalaan.
Jika selisih antara jumlah Instance ECS yang ada (sebagaimana ditentukan oleh TotalCapacity) dan jumlah Instance ECS yang ingin dihapus lebih kecil daripada nilai MinSize, pemanggilan akan gagal.
Pemanggilan yang berhasil hanya menunjukkan bahwa Auto Scaling telah menerima permintaan tersebut, bukan menjamin keberhasilan aktivitas penskalaan. Anda dapat memeriksa status aktivitas penskalaan berdasarkan nilai ScalingActivityId dalam respons.
Debugging
Parameter permintaan
Parameter | Type | Required | Example | Description |
Action | String | Yes | RemoveInstances | Operasi yang ingin Anda lakukan. Tetapkan nilainya ke RemoveInstances. |
ScalingGroupId | String | Yes | asg-bp18p2yfxow2dloq**** | ID grup penskalaan. |
RemovePolicy | String | No | release | Aksi yang ingin dilakukan oleh Auto Scaling setelah Instance ECS dihapus dari grup penskalaan. Nilai yang valid:
Nilai default: release. |
DecreaseDesiredCapacity | Boolean | No | true | Menentukan apakah jumlah Instance ECS yang diharapkan dalam grup penskalaan perlu diubah. Nilai yang valid:
Nilai default: true. |
IgnoreInvalidInstance | Boolean | No | false | Menentukan apakah instans tidak valid harus diabaikan saat sejumlah instans dihapus dari grup penskalaan. Nilai yang valid:
Nilai default: false. |
InstanceId.N | String | No | i-28wt4**** | ID Instance ECS N yang ingin Anda hapus. Nilai N yang valid: 1 hingga 20. |
RegionId | String | No | cn-qingdao | ID wilayah tempat grup penskalaan berada. |
ClientToken | String | No | 123e4567-e89b-12d3-a456-42665544**** | Token client yang digunakan untuk memastikan idempotensi permintaan. Anda dapat membuat token ini di sisi client, tetapi harus memastikan token tersebut unik di antara permintaan yang berbeda. Token hanya boleh berisi karakter ASCII dan panjangnya tidak boleh melebihi 64 karakter. Untuk informasi selengkapnya, lihat Ensure idempotence. |
StopInstanceTimeout | Integer | No | 60 | Periode waktu yang diperlukan oleh setiap Instance ECS untuk memasuki status Stopped selama proses skala-masuk. Satuan: detik. Nilai yang valid: 30 hingga 240. Catatan
|
LifecycleHookContext | Object | No | Konteks kait siklus hidup (lifecycle hook). | |
DisableLifecycleHook | Boolean | No | false | Menentukan apakah fitur kait siklus hidup (lifecycle hook) dinonaktifkan. Nilai yang valid:
|
IgnoredLifecycleHookIds | Array of String | No | ash-bp14zolna43z266bq*** | ID kait siklus hidup (lifecycle hook) yang ingin Anda nonaktifkan. |
Parameter respons
Parameter | Type | Example | Description |
ScalingActivityId | String | asa-bp175o6f6ego3r2j**** | ID aktivitas penskalaan. |
RequestId | String | 473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** | ID permintaan. |
Contoh
Contoh permintaan
http(s)://ess.aliyuncs.com/?Action=RemoveInstances
&ScalingGroupId=asg-bp18p2yfxow2dloq****
&RemovePolicy=release
&DecreaseDesiredCapacity=true
&IgnoreInvalidInstance=false
&InstanceId=["i-28wt4****"]
&RegionId=cn-qingdao
&ClientToken=123e4567-e89b-12d3-a456-42665544****
&<Common request parameters>Contoh respons sukses
XML format
HTTP/1.1 200 OK
Content-Type:application/xml
<RemoveInstancesResponse>
<ScalingActivityId>asa-bp175o6f6ego3r2j****</ScalingActivityId>
<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3****</RequestId>
</RemoveInstancesResponse>JSON format
HTTP/1.1 200 OK
Content-Type:application/json
{
"ScalingActivityId" : "asa-bp175o6f6ego3r2j****",
"RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}Kode kesalahan
Untuk daftar kode kesalahan, lihat Service error codes.
Kode status HTTP | Kode kesalahan | Pesan kesalahan | Deskripsi |
404 | InvalidScalingGroupId.NotFound | The specified scaling group does not exist. | Grup penskalaan yang ditentukan tidak ada dalam Akun Alibaba Cloud. |
404 | InvalidInstanceId.NotFound | Instance "XXX" does not exist. | Instance ECS yang ditentukan tidak ada dalam grup penskalaan. |
400 | InvalidParameter | The specified group does not support the specified RemovePolicy. | Grup penskalaan yang ditentukan tidak mendukung pengaturan RemovePolicy. |
403 | Forbidden.Unauthorized | A required authorization for the specified action is not supplied. | Auto Scaling tidak memiliki otorisasi untuk memanggil operasi ini. |
400 | IncorrectScalingGroupStatus | The current status of the specified scaling group does not support this action. | Grup penskalaan tidak berada dalam status Active. |
400 | ScalingActivityInProgress | You cannot delete a scaling group or launch a new scaling activity while there is a scaling activity in progress for the specified scaling group. | Grup penskalaan memiliki aktivitas penskalaan yang sedang berlangsung. |
400 | IncorrectLoadBalancerStatus | The current status of the specified load balancer does not support this action. | Instans Server Load Balancer (SLB) dari grup penskalaan tempat aturan penskalaan yang ditentukan berada tidak dalam status Active. |
400 | IncorrectDBInstanceStatus | The current status of DB instance "XXX" does not support this action. | Instans ApsaraDB RDS dari grup penskalaan tempat aturan penskalaan yang ditentukan berada tidak dalam status Running. |
400 | IncorrectCapacity.MinSize | To remove the instances, the total capacity will be lesser than the MinSize. | Selisih antara jumlah Instance ECS yang ada (sebagaimana ditentukan oleh TotalCapacity) dan jumlah Instance ECS yang Anda tentukan untuk dihapus lebih kecil daripada nilai MinSize. |