OOS は、複数の ECS インスタンスを一括でリリースするためのパブリックテンプレートを提供します。インスタンス ID を指定することで、プロセスを自動化できます。
前提条件
[従量課金] または [サブスクリプション] の ECS インスタンスのみリリースできます。
操作手順
-
OOS コンソールにログインします。
-
左側のナビゲーションペインで [Public Templates] をクリックします。
-
課金方式に一致するテンプレート (従量課金インスタンスの場合は
ACS-ECS-BulkyDeleteInstancesなど) を検索し、[Create Execution] をクリックします。ACS-ECS-BulkyDeleteInstances

-
[Next: Set Parameters] をクリックします。

-
[Set Parameters] ページで次のパラメータを設定します。

パラメータ
説明
例
targets
リリースする ECS インスタンスのタグまたはインスタンス ID。
test:oos / i-bp10jvphtux8ad******
force
実行中のインスタンスを強制的にリリースするかどうか。
true/false
rateControl
実行レート制御方式。
同時実行数制御
同時実行数
10
エラーしきい値
10
[権限]
オプション。
-
[Use Existing Permissions of Current Account] (デフォルト):現在のアカウントのアクセス許可を使用します。お使いのアカウントで、必要なすべての ECS API 操作を呼び出せることを確認してください。
-
[Specify RAM Role]:OOS が指定された RAM ロールを引き受けてタスクを実行します。
[現在のアカウントの既存権限を使用する]

-
-
[Next: Review] をクリックして設定を確認し、[Create] をクリックします。

-
[Task Execution Management] ページで実行状況を確認します。ステータスが [Running] の場合、インスタンスがリリース中であることを示します。

-
実行ステータスが [Succeeded] に変わると、指定されたすべてのインスタンスがリリースされます。
-
インスタンスがリリースされたことを確認します。

パブリックテンプレート
-
従量課金インスタンスの一括リリース (ACS-ECS-BulkyDeleteInstances)
FormatVersion: OOS-2019-06-01
Description:
en: Deletes multiple pay-as-you-go ECS instances.
zh-cn: 批量删除ECS按量付费实例。
ja: 複数の従量課金 ECS インスタンスをリリースします。
name-en: ACS-ECS-BulkyDeleteInstances
name-zh-cn: 批量删除ECS实例
name-ja: ECS インスタンスの一括リリース
categories:
- instance_manage
Parameters:
targets:
Type: Json
AssociationProperty: Targets
AssociationPropertyMetadata:
ResourceType: 'ALIYUN::ECS::Instance'
force:
Description:
en: Specifies whether to forcibly release a running instance.
zh-cn: 是否强制释放正在运行的实例。
ja: 実行中のインスタンスを強制的にリリースするかどうかを指定します。
Type: Boolean
Default: false
rateControl:
Description:
en: Configures the rate control for the task.
zh-cn: 任务执行的并发比率。
ja: タスクのレート制御を設定します。
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
OOSAssumeRole:
Description:
en: The RAM role that OOS assumes to perform the task.
zh-cn: OOS扮演的RAM角色。
ja: OOS がタスクの実行時に引き受ける RAM ロール。
Type: String
Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstance
Description:
en: Gets the specified ECS instances.
zh-cn: 获取ECS实例。
ja: 指定された 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: Deletes the ECS instance with the specified instance ID.
zh-cn: 通过指定实例ID删除实例。
ja: 指定されたインスタンス ID を持つ ECS インスタンスをリリースします。
Properties:
Service: ECS
API: DeleteInstance
Parameters:
InstanceId: '{{ ACS::TaskLoopItem }}'
Force: '{{ force }}'
Loop:
RateControl: '{{ rateControl }}'
Items: '{{ getInstance.instanceIds }}'
このテンプレートの処理内容:
-
ID またはタグでターゲットインスタンスを取得します。
-
インスタンスを一括でリリースします。
-
サブスクリプションインスタンスの一括リリース (ACS-ECS-BulkyDeletePrepaidInstances)
FormatVersion: OOS-2019-06-01
Description:
en: >-
Deletes multiple subscription instances. The instances must be in the
Stopped state.
zh-cn: 批量删除ECS预付费实例。指定的ECS实例必须处于已停止状态。
ja: 複数のサブスクリプションインスタンスをリリースします。インスタンスは停止状態である必要があります。
name-en: ACS-ECS-BulkyDeletePrepaidInstances
name-zh-cn: 批量删除ECS预付费实例
name-ja: ECS サブスクリプションインスタンスの一括リリース
categories:
- instance_manage
Parameters:
targets:
Type: Json
AssociationProperty: Targets
AssociationPropertyMetadata:
ResourceType: 'ALIYUN::ECS::Instance'
rateControl:
Description:
en: Configures the rate control for the task.
zh-cn: 任务执行的并发比率。
ja: タスクのレート制御を設定します。
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
OOSAssumeRole:
Description:
en: The RAM role that OOS assumes to perform the task.
zh-cn: OOS扮演的RAM角色。
ja: OOS がタスクの実行時に引き受ける RAM ロール。
Type: String
Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstance
Description:
en: Gets the specified ECS instances.
zh-cn: 获取ECS实例。
ja: 指定された 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: Changes the billing method of the subscription instances to pay-as-you-go.
zh-cn: 修改预付费实例付费方式为按量付费。
ja: サブスクリプションインスタンスの課金方法を従量課金に変更します。
Properties:
Service: ECS
API: ModifyInstanceChargeType
Parameters:
InstanceIds: '{{ getInstance.instanceIds }}'
InstanceChargeType: PostPaid
- Name: deleteInstance
Action: 'ACS::ECS::DeleteInstance'
Description:
en: Deletes the ECS instance by instance ID.
zh-cn: 通过实例ID删除实例。
ja: インスタンス ID によって ECS インスタンスをリリースします。
Properties:
instanceId: '{{ ACS::TaskLoopItem }}'
Loop:
RateControl: '{{ rateControl }}'
Items: '{{ getInstance.instanceIds }}'
このテンプレートの処理内容:
-
ID またはタグでターゲットインスタンスを取得します。
-
サブスクリプションインスタンスを従量課金に変更します。
-
インスタンスを一括でリリースします。