Nom du modèle
ACS-ECS-ApproveBulkyRunCommand : exécute des commandes par lot après approbation
Description du modèle
Exécute une commande sur plusieurs instances Elastic Compute Service (ECS) simultanément, après approbation.
Type de modèle
Automatisé
Propriétaire
Alibaba Cloud
Paramètres d'entrée
|**Paramètre**
|
**Description**
|
**Type**
|
**Obligatoire**
|
**Valeur par défaut**
|
**Limite**
| | --- | --- | --- | --- | --- | --- | |
targets
|
Instances cibles.
|
Json
|
Oui
| | | |
commandContent
|
Commande Cloud Assistant à exécuter sur les instances ECS.
|
String
|
Oui
| | | |
webHookUrl
|
URL du webhook du robot DingTalk.
|
String
|
Oui
| | | |
atMobiles
|
Membres du groupe DingTalk recevant les notifications d'approbation.
|
List
|
Oui
| | | |
approvers
|
Utilisateurs autorisés à approuver ou rejeter la tâche O&M.
|
List
|
Oui
| | | |
regionId
|
ID de la région.
|
String
|
Non
|
{{ ACS::RegionId }}
| | |
commandType
|
Type de commande Cloud Assistant.
|
String
|
Non
|
RunShellScript
| | |
rateControl
|
Taux de concurrence pour l'exécution des tâches.
|
Json
|
Non
|
{'Mode': 'Concurrency', 'MaxErrors': 0, 'Concurrency': 10}
| | |
atAll
|
Indique s'il faut notifier tous les membres du groupe lors de l'envoi d'une notification d'approbation au groupe DingTalk.
|
String
|
Non
|
false
| | |
minRequiredApprovals
|
Nombre minimum d'approbations requises pour la tâche O&M.
|
Number
|
Non
|
1
| | |
OOSAssumeRole
|
Rôle RAM endossé par le service CloudOps Orchestration Service (OOS).
|
String
|
Non
|
""
| |
Paramètres de sortie
|**Paramètre**
|
**Description**
|
**Type**
| | --- | --- | --- | |
commandOutputs
| |
List
|
Stratégie d'autorisation requise pour exécuter le modèle
{
"Version": "1",
"Statement": [
{
"Action": [
"ecs:DescribeInstances",
"ecs:DescribeInvocationResults",
"ecs:DescribeInvocations",
"ecs:DescribeManagedInstances",
"ecs:RunCommand"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"oos:GetApplicationGroup"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
Détails
Pour plus d'informations, consultez le fichier ACS-ECS-ApproveBulkyRunCommand.yml sur GitHub.
Contenu du modèle
FormatVersion: OOS-2019-06-01
Description:
en: Approve Bulky RunCommand
zh-cn: Run commands in batches after approval
name-en: ACS-ECS-ApproveBulkyRunCommand
name-zh-cn: Run commands in batches after approval
categories:
- instance_manage
Parameters:
regionId:
Type: String
Label:
en: RegionId
zh-cn: Region ID
AssociationProperty: RegionId
Default: '{{ ACS::RegionId }}'
targets:
Label:
en: TargetInstance
zh-cn: Target Instances
Type: Json
AssociationProperty: Targets
AssociationPropertyMetadata:
ResourceType: 'ALIYUN::ECS::Instance'
RegionId: regionId
commandType:
Label:
en: CommandType
zh-cn: Cloud Assistant Command Type
Type: String
AllowedValues:
- RunBatScript
- RunPowerShellScript
- RunShellScript
Default: RunShellScript
commandContent:
Label:
en: CommandContent
zh-cn: The Cloud Assistant command to run on the ECS instances
Type: String
AssociationProperty: Code
rateControl:
Label:
en: RateControl
zh-cn: Concurrency rate for task execution
Type: Json
AssociationProperty: RateControl
Default:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
webHookUrl:
Label:
en: WebHookUrl
zh-cn: The webhook URL for the DingTalk group assistant
Description:
en: >-
e.g.https://oapi.dingtalk.com/robot/send?access_token=1234zxcvaksdq31414,acquiring DingTalk webhook please refer to second appendix in https://www.alibabacloud.com/help/document_detail/144679.html.
zh-cn: >-
For example: https://oapi.dingtalk.com/robot/send?access_token=1234zxcvaksdq31414. For more information about how to obtain a DingTalk webhook, see https://www.alibabacloud.com/help/document_detail/144679.html#h2--2-webhook-5.
Type: String
atMobiles:
Label:
en: AtMobiles
zh-cn: The DingTalk mobile phone numbers of group members to be @mentioned in the approval notification
Type: List
atAll:
Label:
en: AtAll
zh-cn: Specifies whether to @ all members when the group assistant sends an approval notification to the DingTalk group
Type: String
Default: 'false'
approvers:
Label:
en: Approvers
zh-cn: Users who can approve the task
Description:
en: The name to fill is the front part of @ in the RAM user name,if RAM user is user001@companyAlias.onaliyun.com, then fill user001 in list.
zh-cn: >-
The username is the part of the RAM user's name that precedes the at sign (@). For example, if the RAM user is user001@companyAlias.onaliyun.com, enter user001 in the list.
Type: List
AssociationProperty: ALIYUN::RAM::User
minRequiredApprovals:
Label:
en: MinRequiredApprovals
zh-cn: The minimum number of required approvals
Type: Number
Default: 1
OOSAssumeRole:
Label:
en: OOSAssumeRole
zh-cn: The RAM role to be assumed by OOS
Type: String
Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: approveBulkyRuncommand
Action: 'ACS::Approve'
Description:
en: Approve operation task runcommand
zh-cn: Approve the O&M task
Properties:
Approvers: '{{approvers}}'
MinRequiredApprovals: '{{minRequiredApprovals}}'
NotifyType: WebHook
WebHook:
URI: '{{webhookUrl}}'
Headers:
Content-Type: application/json
Content:
msgtype: text
text:
content: >-
Notify: Please approve the task execution to create ECS instance sent by
{{ACS::RegionId}} oos {{ACS::ExecutionId}} .
at:
atMobiles: '{{atMobiles}}'
isAtAll: '{{atAll}}'
- Name: bulkyRunCommand
Action: ACS::Template
Description:
en: Execute cloud assistant command
zh-cn: Execute the Cloud Assistant command
Properties:
TemplateName: ACS-ECS-BulkyRunCommand
Parameters:
regionId: '{{ regionId }}'
commandContent: '{{ commandContent }}'
commandType: '{{ commandType }}'
targets: '{{ targets }}'
rateControl: '{{ rateControl }}'
Outputs:
commandOutputs:
Type: List
ValueSelector: commandOutputs
Outputs:
commandOutputs:
Type: List
Value: '{{ bulkyRunCommand.commandOutputs }}'
Metadata:
ALIYUN::OOS::Interface:
ParameterGroups:
- Parameters:
- webHookUrl
- atMobiles
- atAll
- approvers
- minRequiredApprovals
Label:
default:
zh-cn: Configure Approval
en: Configure Approval
- Parameters:
- commandType
- commandContent
Label:
default:
zh-cn: Configure Command
en: Configure Command
- Parameters:
- regionId
- targets
Label:
default:
zh-cn: Select Instances
en: Select Instances
- Parameters:
- rateControl
- OOSAssumeRole
Label:
default:
zh-cn: Advanced Options
en: Control Options