Nama template
ACS-ESS-LifeCycleModifyAnalyticDBIPWhitelist – Memodifikasi daftar putih alamat IP untuk instans AnalyticDB for MySQL menggunakan kait siklus hidup
Deskripsi template
Menggunakan lifecycle hook untuk mengonfigurasi daftar putih alamat IP pada kluster AnalyticDB for MySQL.
Tipe template
Otomatis
Pemilik
Alibaba Cloud
Parameter input
Parameter | Deskripsi | Tipe | Diperlukan | Nilai default | Batasan |
dbClusterId | ID dari kluster AnalyticDB for MySQL. | String | Ya | ||
modifyMode | Metode yang digunakan untuk memodifikasi daftar putih alamat IP. | String | Ya | ||
regionId | ID wilayah. | String | Tidak | ${regionId} | |
instanceIds | ID dari instance Elastic Compute Service (ECS). | List | Tidak | ['${instanceIds}'] | |
lifecycleHookId | ID lifecycle hook. | String | Tidak | ${lifecycleHookId} | |
lifecycleActionToken | Token aktivitas penskalaan tertentu yang terkait dengan instance. | String | Tidak | ${lifecycleActionToken} | |
OOSAssumeRole | Peran Manajemen Akses Sumber Daya (RAM) yang diasumsikan oleh CloudOps Orchestration Service (OOS). | String | Tidak | OOSServiceRole |
Parameter output
Parameter | Deskripsi | Tipe |
ipAddresses | List |
Kebijakan yang diperlukan untuk mengeksekusi template
{
"Version": "1",
"Statement": [
{
"Action": [
"ecs:DescribeInstances"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"adb:ModifyDBClusterAccessWhiteList"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Action": [
"ess:CompleteLifecycleAction"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
Detail
ACS-ESS-LifeCycleModifyAnalyticDBIPWhitelist
Isi Template
FormatVersion: OOS-2019-06-01
Description:
en: Uses a lifecycle hook to set the IP whitelist for an AnalyticDB instance.
zh-cn: Uses a lifecycle hook to set the IP whitelist for an AnalyticDB instance.
name-en: ACS-ESS-LifeCycleModifyAnalyticDBIPWhitelist
name-zh-cn: Sets the IP whitelist for an AnalyticDB instance using a lifecycle hook.
categories:
- elastic_manage
Parameters:
dbClusterId:
Label:
en: DBClusterId
zh-cn: AnalyticDB Cluster ID
Type: String
modifyMode:
Label:
en: ModifyMode
zh-cn: Metode Modifikasi Daftar Putih IP
Description:
en: The method to modify the IP whitelist. `Append` is for scale-out activities, and `Delete` is for scale-in activities.
zh-cn: The method to modify the IP whitelist. `Append` is for scale-out activities, and `Delete` is for scale-in activities.
Type: String
AllowedValues:
- Append
- Delete
regionId:
Label:
en: RegionId
zh-cn: ID Wilayah
Description:
en: The ID of the region. Use the default value `${regionId}` from Auto Scaling.
zh-cn: The ID of the region. Use the default value `${regionId}` from Auto Scaling.
Type: String
Default: '${regionId}'
instanceIds:
Label:
en: InstanceIds
zh-cn: Daftar ID Instans ECS
Description:
en: The list of ECS instance IDs. Use the default value `['${instanceIds}']` from Auto Scaling.
zh-cn: The list of ECS instance IDs. Use the default value `['${instanceIds}']` from Auto Scaling.
Type: List
Default:
- '${instanceIds}'
lifecycleHookId:
Label:
en: LifecycleHookId
zh-cn: ID Kait Siklus Hidup
Description:
en: The ID of the lifecycle hook. Use the default value `${lifecycleHookId}` from Auto Scaling.
zh-cn: The ID of the lifecycle hook. Use the default value `${lifecycleHookId}` from Auto Scaling.
Type: String
Default: '${lifecycleHookId}'
lifecycleActionToken:
Label:
en: LifecycleActionToken
zh-cn: Token Aktivitas Penskalaan
Description:
en: The token for the scaling activity associated with the instance. Use the default value `${lifecycleActionToken}` from Auto Scaling.
zh-cn: The token for the scaling activity associated with the instance. Use the default value `${lifecycleActionToken}` from Auto Scaling.
Type: String
Default: '${lifecycleActionToken}'
OOSAssumeRole:
Label:
en: OOSAssumeRole
zh-cn: Peran RAM untuk OOS
Type: String
Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstanceIpAddress
Action: 'ACS::ExecuteAPI'
Description:
en: Gets the network type and IP address of the ECS instance.
zh-cn: Gets the network type and IP address of the ECS instance.
OnError: CompleteLifecycleActionForAbandon
Properties:
Service: ECS
API: DescribeInstances
Parameters:
RegionId: '{{ regionId }}'
InstanceIds: '{{ instanceIds }}'
Outputs:
Ips:
Type: List
ValueSelector: >-
.Instances.Instance[]|.VpcAttributes.PrivateIpAddress.IpAddress+.InnerIpAddress.IpAddress|.[
]
- Name: modifySecurityIps
Action: 'ACS::ExecuteAPI'
Description:
en: Modifies the IP whitelist.
zh-cn: Modifies the IP whitelist.
OnError: CompleteLifecycleActionForAbandon
OnSuccess: CompleteLifecycleActionForContinue
Properties:
Service: ADB
API: ModifyDBClusterAccessWhiteList
Parameters:
RegionId: '{{ regionId }}'
ModifyMode: '{{ modifyMode }}'
DBClusterId: '{{ dbClusterId }}'
DBClusterIPArrayName: default
SecurityIps:
'Fn::Join':
- ','
- '{{ getInstanceIpAddress.Ips }}'
- Name: CompleteLifecycleActionForContinue
Action: 'ACS::ExecuteAPI'
Description:
en: Completes the lifecycle action to continue the scaling activity.
zh-cn: Completes the lifecycle action to continue the scaling activity.
OnSuccess: 'ACS::END'
Properties:
Service: ESS
API: CompleteLifecycleAction
Parameters:
RegionId: '{{ regionId }}'
LifecycleHookId: '{{ lifecycleHookId }}'
LifecycleActionToken: '{{ lifecycleActionToken }}'
LifecycleActionResult: CONTINUE
- Name: CompleteLifecycleActionForAbandon
Action: 'ACS::ExecuteAPI'
Description:
en: Completes the lifecycle action to abandon the scaling activity.
zh-cn: Completes the lifecycle action to abandon the scaling activity.
Properties:
Service: ESS
API: CompleteLifecycleAction
Parameters:
RegionId: '{{ regionId }}'
LifecycleHookId: '{{ lifecycleHookId }}'
LifecycleActionToken: '{{ lifecycleActionToken }}'
LifecycleActionResult: ABANDON
Outputs:
ipAddresses:
Type: List
Value: '{{ getInstanceIpAddress.Ips }}'