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

CloudOps Orchestration Service:インスタンスから Elastic IP アドレス (EIP) を解放する

最終更新日:Jan 17, 2025

テンプレート名

ACS-ESS-LifeCycleReleaseEipAddressFromInstance

今すぐ実行

テンプレートの説明

ライフサイクルフックを使用して、Elastic Compute Service (ECS) インスタンスの Elastic IP アドレス (EIP) を解放します。 このテンプレートは、スケールインイベントのみをサポートします。

テンプレートタイプ

自動

所有者

Alibaba Cloud

入力パラメーター

パラメーター

説明

タイプ

必須

デフォルト値

制限

regionId

リージョン ID。

String

いいえ

${regionId}

instanceIds

ECS インスタンスの ID。

List

いいえ

['${instanceIds}']

lifecycleHookId

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

String

いいえ

${lifecycleHookId}

lifecycleActionToken

インスタンスに関連付けられている特定のスケーリングアクティビティのトークン。

String

いいえ

${lifecycleActionToken}

rateControl

レート制御設定。

Json

いいえ

{'Mode': 'Concurrency', 'MaxErrors': 0, 'Concurrency': 5}

OOSAssumeRole

CloudOps Orchestration Service (OOS) によってアシュームされる Resource Access Management (RAM) ロール。

String

いいえ

OOSServiceRole

出力パラメーター

なし

テンプレートを実行するために必要なポリシー

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs:DescribeEipAddresses",
                "ecs:DescribeInstances",
                "ecs:ReleaseEipAddress",
                "ecs:UnassociateEipAddress"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ess:CompleteLifecycleAction"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

参照

ACS-ESS-LifeCycleReleaseEipAddressFromInstance

テンプレートコンテンツ

FormatVersion: OOS-2019-06-01
Description:
  en: Use lifecyclehook to uninstall and release the eip on instances in batches (only supports elastic contraction activities)
  zh-cn: 使用生命周期挂钩批量释放实例上的弹性公网IP(仅支持弹性收缩活动)
  name-en: ACS-ESS-LifeCycleReleaseEipAddressFromInstance
  name-zh-cn: 使用生命周期挂钩释放インスタンス上の弾性公網 IP
  categories:
    - elastic_manage
Parameters:
  regionId:
    Label:
      en: RegionId
      zh-cn: 地域 ID
    Description:
      en: The ID of region
      zh-cn: 地域 ID。 弾性伸縮システムのデフォルト値 ${regionId} を使用してください。
    Type: String
    Default: '${regionId}'
  instanceIds:
    Label:
      en: InstanceIds
      zh-cn: ECS インスタンス ID リスト
    Description:
      en: The ID list of the ECS instance
      zh-cn: ECS インスタンス ID リスト。 弾性伸縮システムのデフォルト値 ["${instanceId}"] を使用してください。
    Type: List
    Default:
      - '${instanceIds}'
  lifecycleHookId:
    Label:
      en: LifecycleHookId
      zh-cn: ライフサイクルフック ID
    Description:
      en: The ID of the lifecycle hook
      zh-cn: ライフサイクルフック ID。 弾性伸縮システムのデフォルト値 ${lifecycleHookId} を使用してください。
    Type: String
    Default: '${lifecycleHookId}'
  lifecycleActionToken:
    Label:
      en: LifecycleActionToken
      zh-cn: インスタンスに関連付けられた特定のスケーリングアクティビティのトークン
    Description:
      en: The token that indicates a specific scaling activity associated with an instance
      zh-cn: インスタンスに関連付けられた特定のスケーリングアクティビティのトークン。 弾性伸縮システムのデフォルト値 ${lifecycleActionToken} を使用してください。
    Type: String
    Default: '${lifecycleActionToken}'
  rateControl:
    Label:
      en: RateControl
      zh-cn: レート制御
    Type: Json
    AssociationProperty: RateControl
    Default:
      Mode: Concurrency
      MaxErrors: 0
      Concurrency: 5
  OOSAssumeRole:
    Label:
      en: OOSAssumeRole
      zh-cn: OOS がアシュームする RAM ロール
    Type: String
    Default: OOSServiceRole
RamRole: '{{ OOSAssumeRole }}'
Tasks:
  - Name: detachNetWorkInterfaceAndEipAndAttachFromInstance
    Action: 'ACS::ECS::ReleaseEipAddress'
    OnSuccess: CompleteLifecycleActionForContinue
    OnError: CompleteLifecycleActionForAbandon
    Description:
      en: Detach and delete the network interface and eip from the instance
      zh-cn: インスタンスからネットワークインターフェースと EIP をデタッチして削除します
    Properties:
      regionId: '{{ regionId }}'
      instanceId: '{{ ACS::TaskLoopItem }}'
    Loop:
      RateControl: '{{ rateControl }}'
      Items: '{{ instanceIds }}'
  - Name: CompleteLifecycleActionForContinue
    Action: 'ACS::ExecuteAPI'
    Description:
      en: Modify lifecycle action for continue
      zh-cn: ライフサイクル操作を続行に変更します
    OnSuccess: 'ACS::END'
    Properties:
      Service: ESS
      API: CompleteLifecycleAction
      Parameters:
        RegionId: '{{ regionId }}'
        LifecycleHookId: '{{ lifecycleHookId }}'
        LifecycleActionToken: '{{ lifecycleActionToken }}'
        LifecycleActionResult: CONTINUE
  - Name: CompleteLifecycleActionForAbandon
    Action: 'ACS::ExecuteAPI'
    Description:
      en: Complete lifecycle action for Abandon
      zh-cn: ライフサイクル操作を破棄として完了します
    Properties:
      Service: ESS
      API: CompleteLifecycleAction
      Parameters:
        RegionId: '{{ regionId }}'
        LifecycleHookId: '{{ lifecycleHookId }}'
        LifecycleActionToken: '{{ lifecycleActionToken }}'
        LifecycleActionResult: ABANDON