All Products
Search
Document Center

CloudOps Orchestration Service:ACS-ECS-BulkyRenewInstances

Last Updated:Dec 23, 2025

Template name

ACS-ECS-BulkyRenewInstances: Renew instances in a batch

Execute Now

Template description

Renews multiple subscription Elastic Compute Service (ECS) instances at a time.

Template type

Automated

Owner

Alibaba Cloud

Input parameters

Parameter

Description

Type

Required

Default value

Limit

targets

Target instance

Json

Yes

regionId

The region ID.

String

No

{{ ACS::RegionId }}

periodUnit

The unit of the subscription duration of the ECS instances after renewal.

String

No

Month

period

The renewal duration of the subscription instance.

Number

No

1

rateControl

Task execution concurrency

Json

No

{'Mode': 'Concurrency', 'MaxErrors': 0, 'Concurrency': 10}

OOSAssumeRole

The Resource Access Management (RAM) role that is assumed by CloudOps Orchestration Service (OOS).

String

No

""

Output parameters

None

Permission policy that is required to execute the template

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs:DescribeInstances",
                "ecs:RenewInstance"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "oos:GetApplicationGroup"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

Details

ACS-ECS-BulkyRenewInstances: Details

Template content

FormatVersion: OOS-2019-06-01
Description:
  en: Batch renews subscription ECS instances.
  name-en: Batch Renew Instances
  categories:
    - instance_manage
    - application_manage
Parameters:
  regionId:
    Type: String
    Label:
      en: Region ID
    AssociationProperty: RegionId
    Default: '{{ ACS::RegionId }}'
  targets:
    Type: Json
    Label:
      en: Target Instances
    AssociationProperty: Targets
    AssociationPropertyMetadata:
      ResourceType: 'ALIYUN::ECS::Instance'
      RegionId: regionId
  periodUnit:
    Description:
      en: 'The unit of the renewal period. Valid values when set to Week: 1 to 4. Valid values when set to Month: 1 to 12, 24, 36, 48, and 60.'
    Label:
      en: Period Unit
    Type: String
    AssociationPropertyMetadata:
      LocaleKey: PricingCycle
    AllowedValues:
      - Week
      - Month
    Default: Month
  period:
    Label:
      en: Renewal Period
    Type: Number
    Default: 1
    MinValue: 1
    MaxValue: 60
  rateControl:
    Label:
      en: Rate Control
    Type: Json
    AssociationProperty: RateControl
    Default:
      Mode: Concurrency
      MaxErrors: 0
      Concurrency: 10
  OOSAssumeRole:
    Label:
      en: OOS Assume Role
    Type: String
    Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
  - Name: getInstance
    Description:
      en: Gets the specified ECS instances.
    Action: 'ACS::SelectTargets'
    Properties:
      ResourceType: 'ALIYUN::ECS::Instance'
      Filters:
        - '{{ targets }}'
  - Name: renewInstance
    Action: 'ACS::ExecuteAPI'
    Description:
      en: Renews an ECS instance based on its instance ID.
    Properties:
      Service: ECS
      API: RenewInstance
      Parameters:
        RegionId: '{{regionId}}'
        InstanceId: '{{ ACS::TaskLoopItem }}'
        Period: '{{ period }}'
        PeriodUnit: '{{ periodUnit }}'
    Loop:
      RateControl: '{{ rateControl }}'
      Items: '{{ getInstance.Instances.Instance[].InstanceId }}'
Metadata:
  ALIYUN::OOS::Interface:
    ParameterGroups:
      - Parameters:
          - periodUnit
          - period
        Label:
          default:
            en: Configure Parameters
      - Parameters:
          - regionId
          - targets
        Label:
          default:
            en: Select ECS Instances
      - Parameters:
          - rateControl
          - OOSAssumeRole
        Label:
          default:
            en: Advanced Options