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

CloudOps Orchestration Service:ACS-CS-AttachInstancesToClusterByRunAttachScript

最終更新日:Dec 21, 2025

テンプレート名

ACS-CS-AttachInstancesToClusterByRunAttachScript:既存の ECS ノードをクラスターに追加します

今すぐ実行

テンプレートの説明

既存の Elastic Compute Service (ECS) インスタンスをクラスターにノードとして追加します。

テンプレートの種類

自動化

所有者

Alibaba Cloud

入力パラメーター

パラメーター

説明

種類

必須

デフォルト値

制限

targets

宛先インスタンス。

Json

はい

clusterId

クラスター ID。

String

はい

regionId

リージョン ID。

String

いいえ

{{ ACS::RegionId }}

rateControl

タスク実行の同時実行率

Json

いいえ

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

OOSAssumeRole

CloudOps Orchestration Service (OOS) によって引き受けられる RAM ロール。

String

いいえ

""

出力パラメーター

パラメーター

説明

種類

commandOutputs

List

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

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "ecs:DescribeInstances",
                "ecs:DescribeInvocationResults",
                "ecs:DescribeInvocations",
                "ecs:RunCommand"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "oos:GetApplicationGroup"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "cs:DescribeClusterAttachScripts"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

詳細

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

テンプレートコンテンツ

FormatVersion: OOS-2019-06-01
Description:
  en: ECS インスタンスをクラスターにアタッチします。
  name-en: ACS-CS-AttachInstancesToClusterByRunAttachScript
  categories:
    - ACK_manage
Parameters:
  regionId:
    Type: String
    Label:
      en: リージョン ID
    AssociationProperty: RegionId
    Default: '{{ ACS::RegionId }}'
  targets:
    Label:
      en: ターゲットインスタンス
    Type: Json
    AssociationProperty: Targets
    AssociationPropertyMetadata:
      ResourceType: 'ALIYUN::ECS::Instance'
      RegionId: regionId
  clusterId:
    Label:
      en: クラスター ID
    Type: String
  rateControl:
    Label:
      en: レート制御
    Type: Json
    AssociationProperty: RateControl
    Default:
      Mode: Concurrency
      MaxErrors: 0
      Concurrency: 10
  OOSAssumeRole:
    Label:
      en: OOSAssumeRole
    Type: String
    Default: ''
RamRole: '{{ OOSAssumeRole }}'
Tasks:
  - Name: getInstance
    Description:
      en: ECS インスタンスを表示します。
    Action: 'ACS::SelectTargets'
    Properties:
      ResourceType: 'ALIYUN::ECS::Instance'
      RegionId: '{{ regionId }}'
      Filters:
        - '{{ targets }}'
    Outputs:
      instanceIds:
        Type: List
        ValueSelector: 'Instances.Instance[].InstanceId'
  - Name: getAttachScript
    Action: 'ACS::ExecuteApi'
    Description:
      en: インスタンスをクラスターにアタッチするためのコマンド内容を取得します。
    Properties:
      Service: CS
      API: DescribeClusterAttachScripts
      Method: POST
      Headers: {}
      URI: '/clusters/{{clusterId}}/attachscript'
      Parameters: {}
      Body: '{ }'
    Outputs:
      attachScript:
        Type: String
        ValueSelector: .data
  - Name: runCommand
    Action: 'ACS::ECS::RunCommand'
    Description:
      en: クラウドアシスタントのコマンドを実行します。
    Properties:
      regionId: '{{ regionId }}'
      commandContent: '{{ getAttachScript.attachScript }}'
      instanceId: '{{ ACS::TaskLoopItem }}'
      commandType: RunShellScript
    Loop:
      RateControl: '{{ rateControl }}'
      Items: '{{ getInstance.instanceIds }}'
      Outputs:
        commandOutputs:
          AggregateType: 'Fn::ListJoin'
          AggregateField: commandOutput
    Outputs:
      commandOutput:
        Type: String
        ValueSelector: invocationOutput
Outputs:
  commandOutputs:
    Type: List
    Value: '{{ runCommand.commandOutputs }}'
Metadata:
  ALIYUN::OOS::Interface:
    ParameterGroups:
      - Parameters:
          - clusterId
        Label:
          default:
            en: パラメーターの設定
      - Parameters:
          - regionId
          - targets
        Label:
          default:
            en: インスタンスの選択
      - Parameters:
          - rateControl
          - OOSAssumeRole
        Label:
          default:
            en: 制御オプション