Nome do modelo
ACS-ESS-ECILifeCycleModifyAnalyticDBIPWhitelist: usa um lifecycle hook para configurar a lista de permissões de endereços IP de uma instância do AnalyticDB para Elastic Container Instance (ECI).
Descrição do modelo
Adiciona ou remove endereços IP de elastic container instances da lista de permissões de endereços IP de um cluster do AnalyticDB for MySQL usando um lifecycle hook.
Tipo de modelo
Automatizado
Proprietário
Alibaba Cloud
Parâmetros de entrada
|
Parâmetro |
Descrição |
Tipo |
Obrigatório |
Valor padrão |
Limite |
|
dbClusterId |
ID do cluster do AnalyticDB for MySQL. |
String |
Sim |
||
|
modifyMode |
Método de modificação da lista de permissões de endereços IP. |
String |
Sim |
||
|
regionId |
ID da região. |
String |
Não |
${regionId} |
|
|
instanceIds |
IDs das instâncias ECI. |
List |
Não |
['${instanceIds}'] |
|
|
lifecycleHookId |
ID do lifecycle hook. |
String |
Não |
${lifecycleHookId} |
|
|
lifecycleActionToken |
Token da atividade de dimensionamento específica associada às instâncias. |
String |
Não |
${lifecycleActionToken} |
|
|
OOSAssumeRole |
Função RAM assumida pelo CloudOps Orchestration Service (OOS). |
String |
Não |
OOSServiceRole |
Parâmetros de saída
|
Parâmetro |
Descrição |
Tipo |
|
ipAddresses |
List |
Política necessária para executar o modelo
{
"Version": "1",
"Statement": [
{
"Action": [
"eci:DescribeContainerGroups"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"adb:ModifyDBClusterAccessWhiteList"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"ess:CompleteLifecycleAction"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
Detalhes
ACS-ESS-ECILifeCycleModifyAnalyticDBIPWhitelist
Conteúdo do modelo
FormatVersion: OOS-2019-06-01
Description:
en: Uses a lifecycle hook to modify the IP whitelist of an AnalyticDB instance.
zh-cn: Uses a lifecycle hook to set the IP whitelist for an AnalyticDB instance.
name-en: ACS-ESS-ECILifeCycleModifyAnalyticDBIPWhitelist
name-zh-cn: Uses a lifecycle hook to set the IP whitelist for an AnalyticDB instance.
categories:
- elastic_manage
Parameters:
dbClusterId:
Label:
en: DBClusterId
zh-cn: AnalyticDB cluster ID
Type: String
modifyMode:
Label:
en: ModifyMode
zh-cn: Modification mode
Description:
en: The method used to modify the IP address whitelist. Use Append for scale-out activities and Delete for scale-in activities.
zh-cn: The method used to modify the IP address whitelist. Use Append for scale-out activities and Delete for scale-in activities.
Type: String
AllowedValues:
- Append
- Delete
regionId:
Label:
en: RegionId
zh-cn: Region ID
Description:
en: The ID of the region. Use the default value ${regionId} provided by Auto Scaling.
zh-cn: The ID of the region. Use the default value ${regionId} provided by Auto Scaling.
Type: String
Default: '${regionId}'
instanceIds:
Label:
en: InstanceIds
zh-cn: ECI instance ID list
Description:
en: The list of ECI instance IDs. Use the default value ["${instanceIds}"] provided by Auto Scaling.
zh-cn: The list of ECI instance IDs. Use the default value ["${instanceIds}"] provided by Auto Scaling.
Type: List
Default:
- '${instanceIds}'
lifecycleHookId:
Label:
en: LifecycleHookId
zh-cn: Lifecycle hook ID
Description:
en: The ID of the lifecycle hook. Use the default value ${lifecycleHookId} provided by Auto Scaling.
zh-cn: The ID of the lifecycle hook. Use the default value ${lifecycleHookId} provided by Auto Scaling.
Type: String
Default: '${lifecycleHookId}'
lifecycleActionToken:
Label:
en: LifecycleActionToken
zh-cn: Token for the specific scaling activity
Description:
en: The token for the specific scaling activity that is associated with an instance. Use the default value ${lifecycleActionToken} provided by Auto Scaling.
zh-cn: The token for the specific scaling activity that is associated with an instance. Use the default value ${lifecycleActionToken} provided by Auto Scaling.
Type: String
Default: '${lifecycleActionToken}'
OOSAssumeRole:
Label:
en: OOSAssumeRole
zh-cn: RAM role assumed by OOS
Type: String
Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstanceIpAddress
Action: 'ACS::ExecuteAPI'
Description:
en: Gets the IP addresses of the ECI instances.
zh-cn: Gets the IP addresses of the ECI instances.
OnError: CompleteLifecycleActionForAbandon
Properties:
Service: ECI
API: DescribeContainerGroups
Parameters:
RegionId: '{{ regionId }}'
ContainerGroupIds: '{{ instanceIds }}'
Outputs:
Ips:
Type: List
ValueSelector: '.ContainerGroups[].IntranetIp'
- Name: modifySecurityIps
Action: 'ACS::ExecuteAPI'
Description:
en: Modifies the whitelist.
zh-cn: Modifies the whitelist.
OnError: CompleteLifecycleActionForAbandon
OnSuccess: CompleteLifecycleActionForContinue
Properties:
Service: ADB
API: ModifyDBClusterAccessWhiteList
Parameters:
RegionId: '{{ regionId }}'
ModifyMode: '{{ modifyMode }}'
DBClusterId: '{{ dbClusterId }}'
SecurityIps:
'Fn::Join':
- ','
- '{{ getInstanceIpAddress.Ips }}'
- Name: CompleteLifecycleActionForContinue
Action: 'ACS::ExecuteAPI'
Description:
en: Changes the state of the scaling activity to Continue.
zh-cn: Changes the state of the scaling activity to Continue.
OnSuccess: 'ACS::END'
Properties:
Service: ESS
API: CompleteLifecycleAction
Parameters:
RegionId: '{{ regionId }}'
LifecycleHookId: '{{ lifecycleHookId }}'
LifecycleActionToken: '{{ lifecycleActionToken }}'
LifecycleActionResult: CONTINUE
- Name: CompleteLifecycleActionForAbandon
Action: 'ACS::ExecuteAPI'
Description:
en: Changes the state of the scaling activity to Abandon.
zh-cn: Changes the state of the scaling activity to Abandon.
Properties:
Service: ESS
API: CompleteLifecycleAction
Parameters:
RegionId: '{{ regionId }}'
LifecycleHookId: '{{ lifecycleHookId }}'
LifecycleActionToken: '{{ lifecycleActionToken }}'
LifecycleActionResult: ABANDON
Outputs:
ipAddresses:
Type: List
Value: '{{ getInstanceIpAddress.Ips }}'