All Products
Search
Document Center

CloudOps Orchestration Service:ACS-Redis-BulkyEnableReleaseProtection

Last Updated:Dec 20, 2025

Template name

ACS-Redis-BulkyEnableReleaseProtection: Enable release protection for Redis instances

Execute Now

Template description

Enables the release protection feature for Tair (Redis OSS-compatible) instances.

Template type

Automated

Owner

Alibaba Cloud

Input parameters

Parameter

Description

Data type

Required

Default value

Limit

OOSAssumeRole

The RAM role that Operation Orchestration Service (OOS) assumes.

String

Yes

regionId

The ID of the region.

String

No

{{ ACS::RegionId }}

targets

The target instances.

JSON

No

{"Type": "ResourceIds", "ResourceIds": [], "RegionId": "{{ regionId }}"}

instanceIds

The list of Redis instance IDs.

List

No

[]

rateControl

The concurrency rate for the task execution.

JSON

No

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

Output parameters

N/A.

Permission policy that is required to execute the template

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

Details

ACS-Redis-BulkyEnableReleaseProtection

Template content

FormatVersion: OOS-2019-06-01
Description:
  en: Enable release protection
  zh-cn: Enables release protection for Redis instances.
  name-en: ACS-Redis-BulkyEnableReleaseProtection
  name-zh-cn: Enable release protection for Redis instances
  categories:
    - security
    - tair
Parameters:
  regionId:
    Label:
      en: RegionId
      zh-cn: Region ID
    Type: String
    AssociationProperty: RegionId
    Default: '{{ ACS::RegionId }}'
  targets:
    Type: Json
    Label:
      en: TargetInstance
      zh-cn: Target Instances
    AssociationProperty: Targets
    AssociationPropertyMetadata:
      ResourceType: ALIYUN::Redis::Instance
      RegionId: regionId
    Default:
      Type: ResourceIds
      ResourceIds: []
      RegionId: '{{ regionId }}'
  instanceIds:
    Label:
      en: The Ids of redis instances
      zh-cn: List of Redis instance IDs
    Type: List
    Default: []
    AssociationPropertyMetadata:
      Visible:
        Condition:
          Fn::Equals:
            - ${targets}
            - {}
  rateControl:
    Label:
      en: RateControl
      zh-cn: Concurrency rate for task execution
    Type: Json
    AssociationProperty: RateControl
    Default:
      Mode: Concurrency
      MaxErrors: 0
      Concurrency: 10
  OOSAssumeRole:
    Label:
      en: OOSAssumeRole
      zh-cn: The RAM role that OOS assumes
    Type: String
RamRole: '{{ OOSAssumeRole }}'
Conditions:
  instanceId:
    Fn::Equals:
      - '{{ instanceIds }}'
      - []
Tasks:
  - Name: getInstance
    When: instanceId
    Description:
      en: Get the Redis instances
      zh-cn: Gets the Redis instances.
    Action: ACS::SelectTargets
    Properties:
      ResourceType: ALIYUN::Redis::Instance
      RegionId: '{{regionId}}'
      Filters:
        - '{{ targets }}'
    Outputs:
      instanceIds:
        Type: List
        ValueSelector: Instances.Instance[].InstanceId
  - Name: ModifyInstanceMaintainTime
    Action: ACS::ExecuteAPI
    Description:
      en: Enable release protection
      zh-cn: Enables release protection for the Redis instances.
    Properties:
      Service: R-KVSTORE
      API: ModifyInstanceAttribute
      Parameters:
        RegionId: '{{ regionId }}'
        InstanceId: '{{ ACS::TaskLoopItem }}'
        InstanceReleaseProtection: true
    Loop:
      RateControl: '{{ rateControl }}'
      Items:
        Fn::If:
          - Fn::Equals:
              - '{{instanceIds}}'
              - []
          - '{{ getInstance.instanceIds }}'
          - '{{ instanceIds}}'
Metadata:
  ALIYUN::OOS::Interface:
    ParameterGroups:
      - Parameters:
          - regionId
          - instanceIds
          - targets
        Label:
          default:
            zh-cn: Select Instances
            en: Select Instances
      - Parameters:
          - rateControl
          - OOSAssumeRole
        Label:
          default:
            zh-cn: Advanced Options
            en: Advanced Options