全部产品
Search
文档中心

CloudOps Orchestration Service:ACS-CS-AttachInstancesToClusterByRunAttachScript

更新时间:Dec 21, 2025

Nama Template

ACS-CS-AttachInstancesToClusterByRunAttachScript: Menambahkan node ECS yang sudah ada ke dalam kluster

Jalankan Sekarang

Deskripsi Template

Menambahkan instance Elastic Compute Service (ECS) yang sudah ada sebagai node ke dalam kluster.

Tipe Template

Otomatis

Pemilik

Alibaba Cloud

Parameter Input

Parameter

Deskripsi

Tipe

Diperlukan

Nilai Default

Batasan

targets

Instance tujuan.

Json

Ya

clusterId

ID kluster.

String

Ya

regionId

ID wilayah.

String

Tidak

{{ ACS::RegionId }}

rateControl

Laju konkurensi eksekusi tugas

Json

Tidak

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

OOSAssumeRole

Peran RAM yang diasumsikan oleh CloudOps Orchestration Service (OOS).

String

Tidak

""

Parameter Output

Parameter

Deskripsi

Tipe

commandOutputs

List

Kebijakan Izin yang Diperlukan untuk Menjalankan Template

{
    "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"
        }
    ]
}

Detail

Untuk informasi lebih lanjut, lihat ACS-CS-AttachInstancesToClusterByRunAttachScript.yml di GitHub.

Isi Templat

FormatVersion: OOS-2019-06-01
Description:
  en: Attach ECS instances to a cluster.
  name-en: ACS-CS-AttachInstancesToClusterByRunAttachScript
  categories:
    - ACK_manage
Parameters:
  regionId:
    Type: String
    Label:
      en: RegionId
    AssociationProperty: RegionId
    Default: '{{ ACS::RegionId }}'
  targets:
    Label:
      en: TargetInstance
    Type: Json
    AssociationProperty: Targets
    AssociationPropertyMetadata:
      ResourceType: 'ALIYUN::ECS::Instance'
      RegionId: regionId
  clusterId:
    Label:
      en: ClusterId
    Type: String
  rateControl:
    Label:
      en: RateControl
    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: Views the ECS instances.
    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: Gets the command content for attaching an instance to the cluster.
    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: Executes a Cloud Assistant command.
    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: Configure Parameters
      - Parameters:
          - regionId
          - targets
        Label:
          default:
            en: Select Instances
      - Parameters:
          - rateControl
          - OOSAssumeRole
        Label:
          default:
            en: Control Options