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

CloudOps Orchestration Service:ACS-ECS-BulkyStopInstancesWithPublicIp

最終更新日:Jan 17, 2025

テンプレート名

ACS-ECS-BulkyStopInstancesWithPublicIp

今すぐ実行

テンプレートの説明

パブリック IP アドレスを持つ複数の Elastic Compute Service (ECS) インスタンスを一度に停止します。

テンプレートの種類

自動化

所有者

Alibaba Cloud

入力パラメーター

パラメーター

説明

種類

必須

デフォルト値

制限

targets

停止する ECS インスタンス。

Json

はい

regionId

リージョン ID。

String

いいえ

{{ ACS::RegionId }}

stoppedMode

停止モード。

String

いいえ

KeepCharging

rateControl

レート制御設定。

Json

いいえ

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

OOSAssumeRole

CloudOps Orchestration Service (OOS) がアシュームする Resource Access Management (RAM) ロール。

String

いいえ

""

出力パラメーター

パラメーター

説明

種類

instanceIds

List

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

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs:DescribeInstances",
                "ecs:StopInstance"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

参照

詳細については、GitHub の ACS-ECS-BulkyStopInstancesWithPublicIp.yml をご参照ください。

テンプレートの内容

FormatVersion: OOS-2019-06-01
Description:
  en: Bulky stops the ECS instances with public ip
  zh-cn: 批量停止有公网IP的ECS实例
  name-en: ACS-ECS-BulkyStopInstancesWithPublicIp
  name-zh-cn: 批量停止有公网IP的ECS实例
  categories:
    - instance_manage
Parameters:
  regionId:
    Type: String
    Label:
      en: RegionId
      zh-cn: 地域ID
    AssociationProperty: RegionId
    Default: '{{ ACS::RegionId }}'
  targets:
    Type: Json
    Label:
      en: TargetInstance
      zh-cn: 目标实例
    AssociationProperty: Targets
    AssociationPropertyMetadata:
      ResourceType: 'ALIYUN::ECS::Instance'
      RegionId: regionId
  stoppedMode:
    Description:
      en: About StoppedMode details please refer to <a href="https://help.aliyun.com/document_detail/25501.html" target="_blank">document</a>
      zh-cn: 停止按量付费ECS实例后,是否继续计费,有关StoppedMode详情请<a href="https://help.aliyun.com/document_detail/25501.html" target="_blank">参考</a>
    Label:
      en: StoppedMode
      zh-cn: 停止模式
    Type: String
    AllowedValues:
      - StopCharging
      - KeepCharging
    Default: KeepCharging
    AssociationPropertyMetadata:
      LocaleKey: ECSStoppedMode
  rateControl:
    Label:
      en: RateControl
      zh-cn: 任务执行的并发比率
    Type: Json
    AssociationProperty: RateControl
    Default:
      Mode: Concurrency
      MaxErrors: 0
      Concurrency: 10
  OOSAssumeRole:
    Label:
      en: OOSAssumeRole
      zh-cn: OOS扮演的RAM角色
    Type: String
    Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
- Name: getInstance
  Description:
    en: Views the ECS instances
    zh-cn: 获取ECS实例
  Action: ACS::SelectTargets
  Properties:
    ResourceType: ALIYUN::ECS::Instance
    RegionId: '{{ regionId }}'
    Filters:
      - '{{ targets }}'
  Outputs:
    instanceIds:
      Type: List
      ValueSelector: .Instances.Instance | map(select((.EipAddress.IpAddress != "") or (.PublicIpAddress.IpAddress[]|length > 0))) | .[].InstanceId
- Name: stopInstance
  Action: ACS::ECS::StopInstance
  Description:
    en: Stops the ECS instances
    zh-cn: 停止实例
  Properties:
    regionId: '{{ regionId }}'
    stoppedMode: '{{ stoppedMode }}'
    instanceId: '{{ ACS::TaskLoopItem }}'
  Loop:
    RateControl: '{{ rateControl }}'
    Items: '{{ getInstance.instanceIds }}'
Outputs:
  instanceIds:
    Type: List
    Value: '{{ getInstance.instanceIds }}'
Metadata:
  ALIYUN::OOS::Interface:
    ParameterGroups:
      - Parameters:
          - stoppedMode
        Label:
          default:
            zh-cn: 设置参数
            en: Configure Parameters
      - Parameters:
          - regionId
          - targets
        Label:
          default:
            zh-cn: 选择实例
            en: Select Ecs Instances
      - Parameters:
          - rateControl
          - OOSAssumeRole
        Label:
          default:
            zh-cn: 高级选项
            en: Control Options