CloudOps Orchestration Service (OOS) menyediakan template publik untuk melepaskan beberapa instance Elastic Compute Service (ECS) sekaligus. Untuk melepaskan instance ECS secara otomatis, Anda dapat membuat eksekusi berdasarkan template dan menentukan ID instance ECS yang akan dilepaskan.
Prasyarat
Instance ECS yang akan dilepaskan harus berupa instance pay-as-you-go atau subscription.
Prosedur
Masuk ke konsol OOS.
Di panel navigasi sebelah kiri, pilih Automated Task > Public Template.
Di halaman Template Publik, cari template ACS-ECS-BulkyDeleteInstances yang digunakan untuk melepaskan instance ECS pay-as-you-go. Lalu, klik Create Execution.
ACS-ECS-BulkyDeleteInstances

Di halaman Create Task, konfigurasikan parameter di langkah Informasi Dasar. Lalu, klik Next Step: Parameter Settings.

Di langkah Pengaturan Parameter, konfigurasikan parameter untuk mengeksekusi template publik. Dalam contoh ini, template ACS-ECS-BulkyDeleteInstances digunakan.

Parameter
Deskripsi
Contoh
TargetInstance
Instance ECS yang ingin Anda lepaskan. Anda dapat langsung memilih instance, menentukan tag instance, menentukan grup sumber daya instance, atau mengunggah file CSV yang berisi informasi instance.
test:oos / i-bp10jvphtux8ad******
Force
Menentukan apakah akan memaksa melepaskan instance ECS.
true/false
RateControl
Jenis kontrol laju
Kontrol Berbasis Konkurensi
Konkurensi
10
Ambang Kesalahan
10
OOSAssumeRole
Opsional. Izin yang akan digunakan untuk mengeksekusi template. Nilai valid:
Gunakan Izin yang Ada dari Akun Saat Ini: Ini adalah nilai default. Anda memiliki semua izin yang diberikan kepada akun Anda. Pastikan bahwa Anda memiliki izin untuk memanggil operasi API ECS yang digunakan untuk membuat gambar kustom.
Tentukan Peran RAM dan Gunakan Izin yang Diberikan ke Peran Ini: Jika peran Resource Access Management (RAM) ditentukan, OOS mengasumsikan peran RAM untuk melaksanakan tugas O&M.
Use Existing Permissions of Current Account
Klik Next Step: OK. Di langkah OK, klik Create.

Buka halaman Manajemen Eksekusi Tugas untuk melihat eksekusi yang telah dibuat. Jika eksekusi berstatus Running, instance yang ditentukan sedang dilepaskan.

Ketika eksekusi berubah menjadi status Success, semua instance yang ditentukan telah dilepaskan.
Periksa apakah semua instance yang ditentukan telah dilepaskan.

Lampiran 1: Template publik dan logika
ACS-ECS-BulkyDeleteInstances
FormatVersion: OOS-2019-06-01
Description:
en: Bulky delete ECS postpaid instances.
name-en: ACS-ECS-BulkyDeleteInstances
categories:
- instance_manage
Parameters:
targets:
Type: Json
AssociationProperty: Targets
AssociationPropertyMetadata:
ResourceType: 'ALIYUN::ECS::Instance'
force:
Description:
en: Apakah akan memaksa melepaskan instance yang sedang berjalan.
Type: Boolean
Default: false
rateControl:
Description:
en: Rasio konkurensi eksekusi tugas.
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
OOSAssumeRole:
Description:
en: Peran RAM yang akan diasumsikan oleh OOS.
Type: String
Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstance
Description:
en: Melihat instance ECS.
Action: 'ACS::SelectTargets'
Properties:
ResourceType: 'ALIYUN::ECS::Instance'
Filters:
- '{{ targets }}'
Outputs:
instanceIds:
Type: List
ValueSelector: 'Instances.Instance[].InstanceId'
- Name: deleteInstance
Action: 'ACS::ExecuteAPI'
Description:
en: Menghapus instance ECS dengan ID instance tertentu.
Properties:
Service: ECS
API: DeleteInstance
Parameters:
InstanceId: '{{ ACS::TaskLoopItem }}'
Force: '{{ force }}'
Loop:
RateControl: '{{ rateControl }}'
Items: '{{ getInstance.instanceIds }}' Template tersebut mengeksekusi tugas-tugas berikut secara berurutan:
Meminta instance ECS berdasarkan kondisi pencarian yang ditentukan, seperti ID atau tag.
Melepaskan semua instance ECS yang ditentukan sekaligus.
ACS-ECS-BulkyDeletePrepaidInstances
FormatVersion: OOS-2019-06-01
Description:
en: >-
Bulky delete prepaid instances.The specified ECS instances must be in
stopped status.
name-en: ACS-ECS-BulkyDeletePrepaidInstances
categories:
- instance_manage
Parameters:
targets:
Type: Json
AssociationProperty: Targets
AssociationPropertyMetadata:
ResourceType: 'ALIYUN::ECS::Instance'
rateControl:
Description:
en: Rasio konkurensi eksekusi tugas.
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
OOSAssumeRole:
Description:
en: Peran RAM yang akan diasumsikan oleh OOS.
Type: String
Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstance
Description:
en: Melihat instance ECS.
Action: 'ACS::SelectTargets'
Properties:
ResourceType: 'ALIYUN::ECS::Instance'
Filters:
- '{{ targets }}'
Outputs:
instanceIds:
Type: List
ValueSelector: 'Instances.Instance[].InstanceId'
- Name: modifyInstanceChargeType
Action: 'ACS::ExecuteAPI'
Description:
en: Mengubah metode penagihan untuk instance prabayar menjadi pasca-bayar.
Properties:
Service: ECS
API: ModifyInstanceChargeType
Parameters:
InstanceIds: '{{ getInstance.instanceIds }}'
InstanceChargeType: PostPaid
- Name: deleteInstance
Action: 'ACS::ECS::DeleteInstance'
Description:
en: Menghapus instance ECS berdasarkan ID instance.
Properties:
instanceId: '{{ ACS::TaskLoopItem }}'
Loop:
RateControl: '{{ rateControl }}'
Items: '{{ getInstance.instanceIds }}'Template tersebut mengeksekusi tugas-tugas berikut secara berurutan:
Meminta instance ECS berdasarkan kondisi pencarian yang ditentukan, seperti ID atau tag.
Mengubah metode penagihan instance prabayar menjadi pasca-bayar.
Melepaskan semua instance ECS yang ditentukan sekaligus.