Nama template
Template ACS-ECS-BulkyDeleteInstancesWithApproval menghapus instance Elastic Compute Service (ECS) secara batch setelah mendapat persetujuan.
Deskripsi template
Menghapus beberapa instance Elastic Compute Service (ECS) dengan sistem bayar sesuai pemakaian sekaligus setelah persetujuan.
Tipe template
Otomatis
Pemilik
Alibaba Cloud
Parameter input
Parameter | Deskripsi | Tipe | Diperlukan | Nilai default | Batasan |
targets | Instance ECS yang akan dilepaskan. | Json | Ya | ||
accessToken | Token keamanan yang digunakan untuk mengirim notifikasi ke DingTalk. | String | Ya | Ekspresi reguler untuk verifikasi string: [A-Za-z0-9]* | |
regionId | ID wilayah. | String | Tidak | {{ ACS::RegionId }} | |
rateControl | Konkurensi eksekusi tugas | Json | Tidak | {'Mode': 'Concurrency', 'MaxErrors': 0, 'Concurrency': 10} | |
OOSAssumeRole | Peran Resource Access Management (RAM) yang diasumsikan oleh CloudOps Orchestration Service (OOS). | String | Tidak | "" |
Parameter Keluaran
Tidak ada
Kebijakan izin yang diperlukan untuk mengeksekusi template
{
"Version": "1",
"Statement": [
{
"Action": [
"ecs:DeleteInstance",
"ecs:DescribeInstances"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"oos:GetApplicationGroup"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
Detail
Untuk informasi lebih lanjut, lihat ACS-ECS-BulkyDeleteInstancesWithApproval.yml di GitHub.
Konten Template
FormatVersion: OOS-2019-06-01
Description:
en: Deletes pay-as-you-go ECS instances after approval.
zh-cn: Deletes pay-as-you-go ECS instances after approval.
name-en: Batch Delete ECS Instances with Approval
name-zh-cn: Batch Delete ECS Instances with Approval
categories:
- cost_manage
Parameters:
regionId:
Type: String
Label:
en: Region ID
zh-cn: Region ID
AssociationProperty: RegionId
Default: '{{ ACS::RegionId }}'
targets:
Type: Json
Label:
en: Target Instances
zh-cn: Target Instances
AssociationProperty: Targets
AssociationPropertyMetadata:
ResourceType: ALIYUN::ECS::Instance
RegionId: regionId
accessToken:
Label:
en: DingTalk Access Token for Notifications
zh-cn: DingTalk Access Token for Notifications
Type: String
AllowedPattern: '[A-Za-z0-9]*'
rateControl:
Label:
en: Concurrency Rate for Task Execution
zh-cn: Concurrency Rate for Task Execution
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
OOSAssumeRole:
Label:
en: RAM Role for OOS to Assume
zh-cn: RAM Role for OOS to Assume
Type: String
Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstance
Description:
en: Retrieves the specified ECS instances
zh-cn: Retrieves the specified ECS instances
Action: ACS::SelectTargets
Properties:
ResourceType: ALIYUN::ECS::Instance
RegionId: '{{ regionId }}'
Filters:
- '{{ targets }}'
Outputs:
instanceIds:
Type: List
ValueSelector: Instances.Instance[].InstanceId
- Name: approvalForDeleteInstances
Action: ACS::Approve
Description:
en: Requests approval to delete the ECS instances
zh-cn: Requests approval to delete the ECS instances
Properties:
NotifyType: WebHook
WebHook:
URI: https://oapi.dingtalk.com/robot/send?access_token={{ accessToken }}
Headers:
Content-Type: application/json
Content:
msgtype: text
text:
content: The ECS instances({{ getInstance.instanceIds }}) will be deleted.
- Name: deleteInstance
Action: ACS::ECS::DeleteInstance
Description:
en: Deletes the ECS instances
zh-cn: Deletes the ECS instances
Properties:
regionId: '{{ regionId }}'
instanceId: '{{ ACS::TaskLoopItem }}'
Loop:
RateControl: '{{ rateControl }}'
Items: '{{ getInstance.instanceIds }}'
Metadata:
ALIYUN::OOS::Interface:
ParameterGroups:
- Parameters:
- accessToken
Label:
default:
zh-cn: Configure Parameters
en: Configure Parameters
- Parameters:
- regionId
- targets
Label:
default:
zh-cn: Select Instances
en: Select Instances
- Parameters:
- rateControl
- OOSAssumeRole
Label:
default:
zh-cn: Advanced Options
en: Advanced Options