Nom du modèle
ACS-ESS-LifeCycleInstallAAS : installe un serveur d'applications supplémentaire (AAS) dans une instance à l'aide d'un hook de cycle de vie.
Description du modèle
Ce modèle utilise un hook de cycle de vie pour installer un serveur d'applications supplémentaire (AAS) dans une instance ECS.
Type de modèle
Automatisation
Propriétaire
Alibaba Cloud
Paramètres d'entrée
|
Paramètre |
Description |
Type |
Obligatoire |
Valeur par défaut |
Contraintes |
|
PASIP |
Adresse IP privée du serveur d'applications principal (PAS). |
String |
Oui |
||
|
rootPassword |
Mot de passe root du PAS. |
String |
Oui |
||
|
SAPSID |
ID système (SID) du système SAP AS ABAP. |
String |
Oui |
||
|
userName |
Nom d'utilisateur du système SAP. |
String |
Oui |
||
|
userPassword |
Mot de passe de l'utilisateur du système SAP. |
String |
Oui |
||
|
clientNumber |
Numéro client SAP. |
String |
Oui |
||
|
className |
Nom du groupe de connexion SMLG. |
String |
Non |
SPACE |
|
|
instanceIds |
ID des instances ECS. |
List |
Non |
['${instanceIds}'] |
|
|
lifecycleHookId |
ID du hook de cycle de vie. |
String |
Non |
${lifecycleHookId} |
|
|
lifecycleActionToken |
Jeton de l'activité de mise à l'échelle associée à l'instance. |
String |
Non |
${lifecycleActionToken} |
|
|
OOSAssumeRole |
Rôle RAM endossé par le service CloudOps Orchestration Service (OOS). |
String |
Non |
OOSServiceRole |
Paramètres de sortie
|
Paramètre |
Description |
Type |
|
commandOutputs |
List |
Autorisations requises
{
"Version": "1",
"Statement": [
{
"Action": [
"ecs:DescribeInvocationResults",
"ecs:DescribeInvocations",
"ecs:RunCommand"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"ess:CompleteLifecycleAction"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
Détails
Contenu du modèle
FormatVersion: OOS-2019-06-01
Description:
en: Uses a lifecycle hook to install an additional application server (AAS) in an instance created during a scaling activity.
zh-cn: 使用生命周期挂钩在实例中安装AAS(Additional application server)
name-en: Install an AAS in an instance using a lifecycle hook
name-zh-cn: 使用生命周期挂钩在实例中安装AAS
categories:
- elastic_manage
Parameters:
PASIP:
Label:
en: PAS private IP address
zh-cn: PAS私网IP地址
Description:
en: The private IP address of the ECS instance that hosts the primary application server (PAS).
zh-cn: SAP AS ABAP系统PAS所在ECS的私网IP地址
Type: String
rootPassword:
Label:
en: PAS root password
zh-cn: PAS root用户密码
Description:
en: The root password for the PAS.
zh-cn: PAS root用户密码
Type: String
SAPSID:
Label:
en: SAP AS ABAP system ID
zh-cn: SAP AS ABAP系统的SID
Description:
en: The system ID (SID) of the SAP AS ABAP system.
zh-cn: SAP AS ABAP系统的SID
Type: String
userName:
Label:
en: SAP system username
zh-cn: SAP系统用户名
Description:
en: The username to log on to the SAP GUI of the SAP AS ABAP system.
zh-cn: SAP AS ABAP系统SAP GUI的登录用户名
Type: String
userPassword:
Label:
en: SAP system user password
zh-cn: SAP系统用户密码
Description:
en: The password to log on to the SAP GUI of the SAP AS ABAP system.
zh-cn: SAP AS ABAP系统SAP GUI的登录用户密码
Type: String
clientNumber:
Label:
en: SAP client
zh-cn: SAP CLIENT
Description:
en: The client number used to log on to the SAP GUI, such as 800 or 600.
zh-cn: SAP GUI的登录Client,如800、600
Type: String
className:
Label:
en: SMLG logon group name
zh-cn: SMLG登录组名
Description:
en: The name of the SMLG logon group. The system automatically adds the scaled-out AAS to this logon group. If you leave this parameter empty, the system adds the AAS to the default 'SPACE' group.
zh-cn: SMLG登录组名。扩展出来的AAS将自动加入到SMLG登录组中,如果不填写,则会自动加入到默认的'SPACE'组中
Type: String
Default: SPACE
instanceIds:
Label:
en: ECS instance IDs
zh-cn: ECS实例ID列表
Description:
en: The IDs of the ECS instances. We recommend that you use the default value ["${instanceIds}"] provided by Auto Scaling.
zh-cn: ECS实例ID列表,请使用弹性伸缩系统默认值 ["${instanceId}"]
Type: List
Default:
- ${instanceIds}
lifecycleHookId:
Label:
en: Lifecycle hook ID
zh-cn: 生命周期挂钩ID
Description:
en: The ID of the lifecycle hook. We recommend that you use the default value ${lifecycleHookId} provided by Auto Scaling.
zh-cn: 生命周期挂钩ID,请使用弹性伸缩系统默认值 ${lifecycleHookId}
Type: String
Default: ${lifecycleHookId}
lifecycleActionToken:
Label:
en: Lifecycle action token
zh-cn: 实例关联的特定伸缩活动的令牌
Description:
en: The token for the scaling activity associated with the instance. We recommend that you use the default value ${lifecycleActionToken} provided by Auto Scaling.
zh-cn: 实例关联的特定伸缩活动的令牌,请使用弹性伸缩系统默认值 ${lifecycleActionToken}
Type: String
Default: ${lifecycleActionToken}
OOSAssumeRole:
Label:
en: RAM role for OOS
zh-cn: OOS扮演的RAM角色
Type: String
Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: UpdateAliyunAssist
Action: ACS::ECS::RunCommand
OnError: runCommand
Description:
en: Updates Cloud Assistant
zh-cn: 更新云助手
Properties:
regionId: '{{ ACS::RegionId }}'
commandContent: 'rpm -ivh --force "https://aliyun-client-assist-{{ ACS::RegionId }}.oss-{{ ACS::RegionId }}-internal.aliyuncs.com/linux/aliyun_assist_latest.rpm"'
instanceId: '{{ ACS::TaskLoopItem }}'
commandType: RunShellScript
Loop:
RateControl:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
Items: '{{ instanceIds }}'
Outputs:
commandOutputs:
AggregateType: Fn::ListJoin
AggregateField: commandOutput
Outputs:
commandOutput:
Type: String
ValueSelector: invocationOutput
- Name: runCommand
Action: ACS::ECS::RunCommand
OnError: CompleteLifecycleActionForAbandon
OnSuccess: CompleteLifecycleActionForContinue
Description:
en: Executes the installation script
zh-cn: 执行安装脚本
Properties:
regionId: '{{ ACS::RegionId }}'
commandContent: 'mkdir -p /tmp/sap-auto-scaling && cd /tmp/sap-auto-scaling; wget -q https://sh-test-hangzhou.oss-cn-hangzhou.aliyuncs.com/sap-utilities/sap-auto-scaling/sap_auto_scaling.sh -O /tmp/sap-auto-scaling/sap_auto_scaling.sh && bash sap_auto_scaling.sh --UsrsapDiskName vdb --SwapDiskName vdc --PASIP {{ PASIP }} --RootPassword {{ rootPassword }} --SID {{ SAPSID }} --UserName {{ userName }} --UserPassword {{ userPassword }} --ClientNumber {{ clientNumber }} --ClassName {{ className }}'
instanceId: '{{ ACS::TaskLoopItem }}'
commandType: 'RunShellScript'
enableParameter: true
Loop:
RateControl:
Mode: Concurrency
MaxErrors: 0
Concurrency: 10
Items: '{{ instanceIds }}'
Outputs:
commandOutputs:
AggregateType: Fn::ListJoin
AggregateField: commandOutput
Outputs:
commandOutput:
Type: String
ValueSelector: invocationOutput
- Name: CompleteLifecycleActionForContinue
Action: ACS::ExecuteAPI
Description:
en: Sets the lifecycle action result to CONTINUE
zh-cn: 修改伸缩活动的等待状态为继续完成
OnSuccess: ACS::END
Properties:
Service: ESS
API: CompleteLifecycleAction
Parameters:
RegionId: '{{ ACS::RegionId }}'
LifecycleHookId: '{{ lifecycleHookId }}'
LifecycleActionToken: '{{ lifecycleActionToken }}'
LifecycleActionResult: CONTINUE
- Name: CompleteLifecycleActionForAbandon
Action: ACS::ExecuteAPI
Description:
en: Sets the lifecycle action result to ABANDON
zh-cn: 修改伸缩活动的等待状态为弃用
Properties:
Service: ESS
API: CompleteLifecycleAction
Parameters:
RegionId: '{{ ACS::RegionId }}'
LifecycleHookId: '{{ lifecycleHookId }}'
LifecycleActionToken: '{{ lifecycleActionToken }}'
LifecycleActionResult: ABANDON
Outputs:
commandOutputs:
Type: List
Value: '{{ runCommand.commandOutputs }}'