Activez la protection contre la suppression pour plusieurs instances Tair (compatibles avec OSS Redis) afin d'éviter les suppressions accidentelles.
Nom du modèle
ACS-Redis-BulkyEnableReleaseProtection : Activer la protection contre la suppression pour les instances Redis
Description du modèle
Active la fonctionnalité de protection contre la suppression pour les instances Tair (compatibles avec OSS Redis).
Type de modèle
Automatisé
Propriétaire
Alibaba Cloud
Paramètres d'entrée
|
Paramètre |
Description |
Type de données |
Obligatoire |
Valeur par défaut |
Limite |
|
OOSAssumeRole |
Le rôle RAM endossé par Operation Orchestration Service (OOS). |
String |
Oui |
||
|
regionId |
L'ID de la région. |
String |
Non |
{{ ACS::RegionId }} |
|
|
targets |
Les instances cibles. |
JSON |
Non |
{"Type": "ResourceIds", "ResourceIds": [], "RegionId": "{{ regionId }}"} |
|
|
instanceIds |
Les ID des instances Redis. |
List |
Non |
[] |
|
|
rateControl |
Le taux de concurrence pour l'exécution des tâches. |
JSON |
Non |
{"Mode": "Concurrency", "MaxErrors": 0, "Concurrency": 10} |
Paramètres de sortie
S.O.
Politique d'autorisation requise pour exécuter le modèle
{
"Version": "1",
"Statement": [
{
"Action": [
"kvstore:DescribeInstances",
"kvstore:ModifyInstanceAttribute"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"oos:GetApplicationGroup"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
Détails
ACS-Redis-BulkyEnableReleaseProtection
Contenu du modèle
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