すべてのプロダクト
Search
ドキュメントセンター

CloudOps Orchestration Service:ACS-ESS-ECILifeCycleModifyPolarDBIPWhitelist

最終更新日:Jun 04, 2026

テンプレート名

ACS-ESS-ECILifeCycleModifyPolarDBIPWhitelist

今すぐ実行

テンプレートの説明

ライフサイクルフックを使用して、PolarDB クラスターの IP ホワイトリストに Elastic Container Instance (ECI) の IP アドレスを追加、または削除します。

テンプレートタイプ

自動

所有者

Alibaba Cloud

入力パラメーター

パラメーター

説明

タイプ

必須

デフォルト値

制限

dbClusterId

PolarDB クラスターの ID。

String

はい

modifyMode

IP ホワイトリストの変更方法。

String

はい

regionId

リージョン ID。

String

いいえ

${regionId}

instanceIds

ECI インスタンスの ID リスト。

List

いいえ

['${instanceIds}']

lifecycleHookId

ライフサイクルフック ID。

String

いいえ

${lifecycleHookId}

lifecycleActionToken

インスタンスに関連付けられたスケーリングアクティビティのトークン。

String

いいえ

${lifecycleActionToken}

OOSAssumeRole

OOS が引き受ける Resource Access Management (RAM) ロール。

String

いいえ

OOSServiceRole

出力パラメーター

パラメーター

説明

タイプ

ipAddresses

List

必要なポリシー

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "eci:DescribeContainerGroups"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "polardb:DescribeDBClusterAccessWhitelist",
                "polardb:ModifyDBClusterAccessWhitelist"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ess:CompleteLifecycleAction"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

関連ドキュメント

ACS-ESS-ECILifeCycleModifyPolarDBIPWhitelist

テンプレートの内容

FormatVersion: OOS-2019-06-01
Description:
  ja: ライフサイクルフックを使用して、PolarDB インスタンスの IP ホワイトリストを変更します。
  name-ja: ACS-ESS-ECILifeCycleModifyPolarDBIPWhitelist
  categories:
    - elastic_manage
Parameters:
  dbClusterId:
    Label:
      ja: PolarDB クラスター ID
    Type: String
  modifyMode:
    Label:
      ja: 変更モード
    Description:
      ja: IP ホワイトリストを変更する方法です。Append は弾性拡張アクティビティに、Delete は弾性収縮アクティビティに使用されます。
    Type: String
    AllowedValues:
      - Append
      - Delete
  regionId:
    Label:
      ja: リージョン ID
    Description:
      ja: リージョン ID。Elastic Scaling Service (ESS) のシステムデフォルト値 ${regionId} を使用することを推奨します。
    Type: String
    Default: '${regionId}'
  instanceIds:
    Label:
      ja: インスタンス ID リスト
    Description:
      ja: ECI インスタンスの ID リスト。ESS のシステムデフォルト値 ['${instanceIds}'] を使用することを推奨します。
    Type: List
    Default:
      - '${instanceIds}'
  lifecycleHookId:
    Label:
      ja: ライフサイクルフック ID
    Description:
      ja: ライフサイクルフックの ID。ESS のシステムデフォルト値 ${lifecycleHookId} を使用することを推奨します。
    Type: String
    Default: '${lifecycleHookId}'
  lifecycleActionToken:
    Label:
      ja: ライフサイクルアクショントークン
    Description:
      ja: インスタンスに関連付けられた特定のスケーリングアクティビティを示すトークン。ESS のシステムデフォルト値 ${lifecycleActionToken} を使用することを推奨します。
    Type: String
    Default: '${lifecycleActionToken}'
  OOSAssumeRole:
    Label:
      ja: OOSAssumeRole
    Type: String
    Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
  - Name: getInstanceIpAddress
    Action: 'ACS::ExecuteAPI'
    Description:
      ja: ECI インスタンスの IP アドレスを取得します。
    OnError: CompleteLifecycleActionForAbandon
    Properties:
      Service: ECI
      API: DescribeContainerGroups
      Parameters:
        RegionId: '{{ regionId }}'
        ContainerGroupIds: '{{ instanceIds }}'
    Outputs:
      ipAddress:
        Type: List
        ValueSelector: '.ContainerGroups[].IntranetIp'
  - Name: modifyPolarDBIPWhitelist
    Action: 'ACS::ESS::ModifyPolarDBIPWhitelist'
    Description:
      ja: IP ホワイトリストを変更します。
    OnError: CompleteLifecycleActionForAbandon
    OnSuccess: CompleteLifecycleActionForContinue
    Properties:
      regionId: '{{ regionId }}'
      dbClusterId: '{{ dbClusterId }}'
      modifyMode: '{{ modifyMode }}'
      securityIp: '{{ ACS::TaskLoopItem }}'
    Loop:
      Items: '{{ getInstanceIpAddress.ipAddress }}'
  - Name: CompleteLifecycleActionForContinue
    Action: 'ACS::ExecuteAPI'
    Description:
      ja: ライフサイクルアクションを「続行」で完了します。
    OnSuccess: 'ACS::END'
    Properties:
      Service: ESS
      API: CompleteLifecycleAction
      Parameters:
        RegionId: '{{ regionId }}'
        LifecycleHookId: '{{ lifecycleHookId }}'
        LifecycleActionToken: '{{ lifecycleActionToken }}'
        LifecycleActionResult: CONTINUE
  - Name: CompleteLifecycleActionForAbandon
    Action: 'ACS::ExecuteAPI'
    Description:
      ja: ライフサイクルアクションを「破棄」で完了します。
    Properties:
      Service: ESS
      API: CompleteLifecycleAction
      Parameters:
        RegionId: '{{ regionId }}'
        LifecycleHookId: '{{ lifecycleHookId }}'
        LifecycleActionToken: '{{ lifecycleActionToken }}'
        LifecycleActionResult: ABANDON
Outputs:
  ipAddresses:
    Type: List
    Value: '{{ getInstanceIpAddress.ipAddress}}'