全部產品
Search
文件中心

Resource Orchestration Service:ALIYUN::CS::ClusterNodePool

更新時間:Nov 04, 2025

ALIYUN::CS::ClusterNodePool類型用於為叢集建立節點池。

文法

{
  "Type": "ALIYUN::CS::ClusterNodePool",
  "Properties": {
    "TeeConfig": Map,
    "ClusterId": String,
    "NodePoolInfo": Map,
    "KubernetesConfig": Map,
    "Count": Integer,
    "Management": Map,
    "AutoScaling": Map,
    "ScalingGroup": Map
  }
}

屬性

屬性名稱

類型

必須

允許更新

描述

約束

ClusterId

String

叢集ID。

您可以通過調用DescribeClustersV1查詢叢集ID。

ScalingGroup

Map

節點池擴容組配置。

您可以通過調用DescribeClusterNodePools查詢節點池擴容組配置。

更多資訊,請參見ScalingGroup文法ScalingGroup屬性

AutoScaling

Map

自動調整配置。

更多資訊,請參見AutoScaling文法AutoScaling屬性

Count

Integer

節點池節點數量。

KubernetesConfig

Map

叢集相關配置。

更多資訊,請參見KubernetesConfig文法KubernetesConfig屬性

Management

Map

託管節點池配置。

更多資訊,請參見Management文法Management屬性

NodePoolInfo

Map

節點池配置。

更多資訊,請參見NodePoolInfo文法NodePoolInfo屬性

TeeConfig

Map

加密計算叢集配置。

更多資訊,請參見TeeConfig文法TeeConfig屬性

TeeConfig文法

"TeeConfig": {
  "TeeEnable": Boolean
}

TeeConfig屬性

屬性名稱

類型

必須

允許更新

描述

約束

TeeEnable

Boolean

是否開啟加密計算叢集。

取值:

  • true:開啟加密計算叢集。

  • false(預設值):不開啟加密計算叢集。

NodePoolInfo文法

"NodePoolInfo": {
  "ResourceGroupId": String,
  "Name": String
}

NodePoolInfo屬性

屬性名稱

類型

必須

允許更新

描述

約束

Name

String

節點池名稱。

ResourceGroupId

String

節點池所屬的資源群組ID。

KubernetesConfig文法

"KubernetesConfig": {
  "CpuPolicy": String,
  "Runtime": String,
  "CmsEnabled": Boolean,
  "UserData": String,
  "NodeNameMode": String,
  "RuntimeVersion": String,
  "Labels": List,
  "Unschedulable": Boolean,
  "Taints": List
}

KubernetesConfig屬性

屬性名稱

類型

必須

允許更新

描述

約束

Runtime

String

容器運行時的名稱。

RuntimeVersion

String

容器運行時版本。

CpuPolicy

String

節點CPU管理原則。

當叢集版本在1.12.6及以上時,支援以下兩種策略:

  • static:此策略允許向節點上具有特定資源特徵的POD授予增強CPU親和力和獨佔性。

  • none(預設值):表示啟用現有的預設CPU親和性方案。

CmsEnabled

Boolean

是否在ECS節點上安裝CloudMonitor。

安裝CloudMonitor後,可以在CloudMonitor控制台查看所建立ECS執行個體的監控資訊。推薦開啟。

取值:

  • true:在ECS節點上安裝CloudMonitor。

  • false(預設值):不在ECS節點上安裝CloudMonitor。

NodeNameMode

String

自訂節點名。

節點名稱由三部分組成:首碼+節點IP地址子串+尾碼。

  • 首碼和尾碼均可由半形句號(.)分隔的一個或多個部分組成,每個部分可以使用小寫英文字母、數字和短劃線(-),節點名稱首尾必須為小寫英文字母和數字。

  • IP位址區段長度指截取節點IP地址末尾的位元,取值範圍為5~12。

Labels

List

節點標籤,為Kubernetes叢集節點添加標籤。

更多資訊,請參見Labels文法Labels屬性

UserData

String

節點自訂資料。

Unschedulable

Boolean

是否調度新添加的節點。

取值:

  • true:調度新節點。若想開啟調度選項,可以在節點列表中開啟。

  • false(預設值):節點擴容後設定為不可調度。

Taints

List

汙點配置。

更多資訊,請參見Taints文法Taints屬性

Labels文法

"Labels": [
  {
    "Value": String,
    "Key": String
  }
]

Labels屬性

屬性名稱

類型

必須

允許更新

描述

約束

Value

String

標籤值。

Key

String

標籤鍵。

Taints文法

"Taints": [
  {
    "Value": String,
    "Effect": String,
    "Key": String
  }
]

Taints屬性

屬性名稱

類型

必須

允許更新

描述

約束

Value

String

汙點值。

Key

String

汙點名稱。

Effect

String

調度策略。

取值:

  • NoSchedule(預設值):不能容忍,但僅影響調度過程,已被調度的Pod不受影響,僅對新增加的Pod生效。

  • NoExecute:不能容忍,當汙點變動時,Pod對象會被驅逐。

  • PreferNoSchedule:柔性約束,節點現存Pod不受影響。

Management文法

"Management": {
  "UpgradeConfig": Map,
  "AutoRepair": Boolean,
  "Enable": Boolean
}

Management屬性

屬性名稱

類型

必須

允許更新

描述

約束

Enable

Boolean

是否啟用託管節點池。

取值:

  • true:啟用託管節點池。

  • false(預設值):禁用託管節點池。

AutoRepair

Boolean

是否啟用自動修複。

此參數僅在Enable取值為true時生效。

取值:

  • true:啟用自動修複。

  • false(預設值):禁用自動修複。

UpgradeConfig

Map

自動升級的配置。

該屬性僅在Enable取值為true時生效。

更多資訊,請參見UpgradeConfig文法UpgradeConfig屬性

UpgradeConfig文法

"UpgradeConfig": {
  "AutoUpgrade": Boolean,
  "SurgePercentage": Integer,
  "Surge": Integer,
  "MaxUnavailable": Integer
}

UpgradeConfig屬性

屬性名稱

類型

必須

允許更新

描述

約束

AutoUpgrade

Boolean

是否啟用自動升級。

取值:

  • true:啟用自動升級。

  • false(預設值):禁用自動升級。

SurgePercentage

Integer

額外節點比例。

SurgePercentage和Surge只能指定其中一個。

Surge

Integer

額外節點數量。

SurgePercentage和Surge只能指定其中一個。

MaxUnavailable

Integer

最大不可用節點數量。

取值範圍:1~1000。預設值:1。

AutoScaling文法

"AutoScaling": {
  "EipBandwidth": Integer,
  "Type": String,
  "IsBondEip": Boolean,
  "MinInstances": Integer,
  "Enable": Boolean,
  "MaxInstances": Integer,
  "EipInternetChargeType": String
}

AutoScaling屬性

屬性名稱

類型

必須

允許更新

描述

約束

Enable

Boolean

是否啟用自動調整。

取值:

  • true:開啟節點池自動調整功能。

  • false(預設值):不開啟自動調整。當取值為false時,其他AutoScaling配置參數將不生效。

EipBandwidth

Integer

EIP頻寬峰值。

EipInternetChargeType

String

EIP計費類型。

取值:

  • PayByBandwidth(預設值):按固定頻寬計費。

  • PayByTraffic:按使用流量計費。

IsBondEip

Boolean

是否綁定EIP。

取值:

  • true:綁定EIP。

  • false(預設值):不綁定EIP。

MinInstances

Integer

自動調整組最小執行個體數。

MaxInstances

Integer

自動調整組最大執行個體數。

Type

String

自動調整類型。

取值(按照自動調整執行個體類型):

  • cpu(預設值):普通執行個體型。

  • gpu:GPU執行個體型。

  • gpushare:GPU共用型。

  • spot:搶佔式執行個體型。

ScalingGroup文法

"ScalingGroup": {
  "SpotInstanceRemedy": Boolean,
  "Platform": String,
  "DataDisks": List,
  "SystemDiskSize": Integer,
  "CompensateWithOnDemand": Boolean,
  "InstanceChargeType": String,
  "OnDemandPercentageAboveBaseCapacity": Integer,
  "AutoRenew": Boolean,
  "OnDemandBaseCapacity": Integer,
  "SystemDiskPerformanceLevel": String,
  "ImageId": String,
  "SpotPriceLimit": List,
  "InstanceTypes": List,
  "Tags": List,
  "SpotStrategy": String,
  "LoginPassword": String,
  "MultiAzPolicy": String,
  "AutoRenewPeriod": Integer,
  "ScalingPolicy": String,
  "KeyPair": String,
  "VSwitchIds": List,
  "SecurityGroupId": String,
  "SpotInstancePools": Integer,
  "Period": Integer,
  "InternetChargeType": String,
  "SystemDiskCategory": String,
  "InternetMaxBandwidthOut": Integer,
  "RdsInstances": List,
  "PeriodUnit": String,
  "ZoneIds": List,
  "SocEnabled": Boolean,
  "ImageType": String,
  "InstancePatterns": List,
  "SecurityHardeningOs": Boolean
}

ScalingGroup屬性

屬性名稱

類型

必須

允許更新

描述

約束

InstanceTypes

List

搶佔式執行個體規格。

SystemDiskSize

Integer

節點的系統磁碟大小。

單位:GiB。取值範圍:40~500。

VSwitchIds

List

交換器ID。

AutoRenew

Boolean

節點池節點是否開啟自動續約。

當InstanceChargeType取值為PrePaid時生效。

取值:

  • true(預設):自動續約。

  • false:不自動續約。

AutoRenewPeriod

Integer

節點池節點自動續約周期。

當InstanceChargeType取值為PrePaid,且AutoRenew取值為true時,AutoRenewPeriod生效且為必選值。

當PeriodUnit取值為Month時,取值:

  • 1(預設值)

  • 2

  • 3

  • 6

  • 12

CompensateWithOnDemand

Boolean

當MultiAzPolicy取值為COST_OPTIMIZED時,如果因價格、庫存等原因無法建立足夠的搶佔式執行個體,是否允許自動嘗試建立按量執行個體滿足ECS執行個體數量要求。

取值:

  • true(預設值):允許自動嘗試建立按量執行個體滿足ECS執行個體數量要求。

  • false:不允許自動嘗試建立按量執行個體滿足ECS執行個體數量要求。

DataDisks

List

節點池節點資料盤配置。

更多資訊,請參見DataDisks文法DataDisks屬性

InstanceChargeType

String

節點池節點付費類型。

取值:

  • PrePaid:預付費。

  • PostPaid(預設值):隨用隨付。

ImageId

String

自訂鏡像ID。

預設使用系統提供的鏡像。

OnDemandPercentageAboveBaseCapacity

Integer

伸縮組滿足OnDemandBaseCapacity要求後,超出的執行個體中按量執行個體應占的比例。

取值範圍:0~100。

OnDemandBaseCapacity

Integer

伸縮組所需要按量執行個體個數的最小值。

取值範圍:0~1000。當按量執行個體個數少於該值時,將優先建立按量執行個體。

Platform

String

作業系統。

取值:

  • CentOS

  • AliyunLinux(預設值)

  • Windows

  • WindowsCore

Period

Integer

節點池節點自動續約周期,當選擇預付費和自動續約時才生效,且為必選值。

當PeriodUnit取值為Month時,取值:

  • 1(預設值)

  • 2

  • 3

  • 6

  • 12

PeriodUnit

String

節點池節點付費周期。

當InstanceChargeType取值為PrePaid的時候需要指定周期。

取值:

  • Month:月。

  • Year:年。

LoginPassword

String

SSH登入密碼。

KeyPair和LoginPassword僅能指定其中一個。

密碼規則為8~30個字元,且至少包含英文字母、數字和特殊符號( ) ` ~ ! @ # $ % ^ & * - _ + = | { } [ ] : ; ' < > , . ? /中的三項。

MultiAzPolicy

String

多可用性區域伸縮組ECS執行個體擴容和縮容策略。

取值:

  • PRIORITY(預設值):根據您定義的交換器進行擴容或者縮容。當優先順序較高的交換器所在可用性區域無法建立ECS執行個體時,自動使用下一優先順序的交換器建立ECS執行個體。

  • COST_OPTIMIZED:按vCPU單價從低到高進行嘗試建立。當伸縮配置設定了搶佔式計費方式的多執行個體規格時,優先建立搶佔式執行個體。您可以繼續通過CompensateWithOnDemand指定當搶佔式執行個體由於庫存等原因無法建立時,是否自動嘗試以隨用隨付的方式建立。

    說明

    COST_OPTIMIZED僅在伸縮配置設定了多執行個體規格或者選用了搶佔式執行個體的情況下生效。

  • BALANCE:在伸縮組指定的多可用性區域之間均勻分配ECS執行個體。如果由於庫存不足等原因使可用性區域之間變得不平衡,您可以通過APIRebalanceInstances重新平衡多可用性區域伸縮組內ECS執行個體的分布。

KeyPair

String

免密登入金鑰組名稱。

KeyPair和LoginPassword僅能指定其中一個。

說明

如果建立託管節點池,則只支援KeyPair。

SecurityGroupId

String

安全性群組ID。

SpotInstanceRemedy

Boolean

是否使用搶佔式執行個體。

取值:

  • true(預設值):使用搶佔式執行個體。當收到搶佔式執行個體將被回收的系統訊息時,伸縮組將嘗試建立新的執行個體,替換掉將被回收的搶佔式執行個體。

  • false:不使用搶佔式執行個體。

更多資訊,請參見使用搶佔式執行個體

SystemDiskPerformanceLevel

String

設定雲端硬碟的效能等級。

取值:

  • PL1:單盤最高隨機讀寫IOPS 5萬。

  • PL2:單盤最高隨機讀寫IOPS 10萬。

  • PL3:單盤最高隨機讀寫IOPS 100萬。

更多資訊,請參見ESSD雲端硬碟

SpotStrategy

String

搶佔式執行個體類型。

取值:

  • NoSpot:非搶佔式執行個體。

  • SpotWithPriceLimit:設定搶佔執行個體價格上限。

  • SpotAsPriceGo:系統自動出價,跟隨當前市場實際價格。

更多資訊,請參見使用搶佔式執行個體

SpotPriceLimit

List

設定執行個體的每小時最高價格。

最大支援3位小數,SpotStrategy取值為SpotWithPriceLimit時生效。

更多資訊,請參見SpotPriceLimit文法SpotPriceLimit屬性

SpotInstancePools

Integer

指定可用執行個體規格的個數,伸縮組將按成本最低的多個規格均衡建立搶佔式執行個體。

取值範圍:1~10。

ScalingPolicy

String

伸縮組模式。

取值:

  • release(預設值):標準模式,根據申請資源值的使用量,通過建立、釋放ECS的方式進行伸縮。

  • recycle:極速模式,通過建立、停機、啟動的方式進行伸縮,提高再次伸縮的速度(停機時計算資源不收費,只收取儲存費用,本地碟機型除外)。

SystemDiskCategory

String

節點系統硬碟類型。

取值:

  • cloud_efficiency(預設值):高效雲端硬碟。

  • cloud_ssd:SSD雲端硬碟。

  • cloud_essd:ESSD雲端硬碟。

InternetChargeType

String

公網計費類型。

取值:

  • PayByBandwidth(預設值):按固定頻寬計費。

  • PayByTraffic:按使用流量計費。

InternetMaxBandwidthOut

Integer

公網出頻寬最大值。

單位:Mbit/s。

取值範圍:1 Mbit/s~100 Mbit/s。

RdsInstances

List

RDS執行個體ID。

Tags

List

僅為ECS執行個體添加標籤。

標籤鍵不可以重複,最大長度為128個字元;標籤鍵和標籤值都不能以aliyunacs:開頭,或包含https://http://

更多資訊,請參見Tags文法Tags屬性

ZoneIds

List

可用性區域ID列表。

SocEnabled

Boolean

指定是否啟用 MLPS 安全強化。

ImageType

String

作業系統鏡像的類型。

您必須指定此參數或Platform參數。

InstancePatterns

List

執行個體屬性配置。

更多資訊,請參考InstancePatterns屬性

SecurityHardeningOs

Boolean

阿里雲 OS 安全強化。

取值:

  • true:開啟阿里雲 OS 安全強化。

  • false:不開啟阿里雲 OS 安全強化。

預設值:false

InstancePatterns文法

"InstancePatterns": [
  {
    "CpuArchitectures": List,
    "MaxCpuCores": Integer,
    "MinMemorySize": Integer,
    "Memory": Integer,
    "InstanceFamilyLevel": String,
    "MinCpuCores": Integer,
    "Cores": Integer,
    "InstanceTypeFamilies": List,
    "InstanceCategories": List,
    "ExcludedInstanceTypes": List,
    "MaxMemorySize": Integer
  }
]

InstancePatterns屬性

屬性名稱

類型

必須

允許更新

描述

約束

CpuArchitectures

List

執行個體的 CPU 架構。

取值:

  • X86

  • ARM

MaxCpuCores

Integer

執行個體規格的最大 vCPU 核心數目

MinMemorySize

Integer

執行個體規格的最小記憶體。

單位:GiB。

Memory

Integer

執行個體規格的記憶體大小。

單位為 GiB。

InstanceFamilyLevel

String

執行個體規格類型系列層級。

MinCpuCores

Integer

執行個體規格的最小 vCPU 核心數目。

Cores

Integer

執行個體規格的 vCPU 核心數目。

InstanceTypeFamilies

List

指定執行個體規格類型系列。

InstanceCategories

List

執行個體分類。

ExcludedInstanceTypes

List

需要排除的執行個體規格。

MaxMemorySize

Integer

執行個體規格的最大記憶體。

單位:GiB。

DataDisks文法

"DataDisks": [
  {
    "Category": String,
    "Encrypted": Boolean,
    "PerformanceLevel": String,
    "Size": Integer,
    "AutoSnapshotPolicyId": String,
    "Categories": List
  }
]

DataDisks屬性

屬性名稱

類型

必須

允許更新

描述

約束

AutoSnapshotPolicyId

String

選擇自動快照策略ID,雲端硬碟會按照快照策略自動備份。

預設值為空白,表示不自動備份。

Category

String

資料盤類型。

取值:

  • cloud_efficiency(預設值):高效雲端硬碟。

  • cloud_ssd:SSD雲端硬碟。

  • cloud_essd:ESSD雲端硬碟。

Encrypted

Boolean

是否對資料盤加密。

取值:

  • true:對資料盤加密。

  • false(預設值):不對資料盤加密。

PerformanceLevel

String

設定雲端硬碟的效能等級。

取值:

  • PL1:單盤最高隨機讀寫IOPS 5萬。

  • PL2:單盤最高隨機讀寫IOPS 10萬。

  • PL3:單盤最高隨機讀寫IOPS 100萬。

更多資訊,請參見ESSD雲端硬碟

Size

Integer

資料盤大小。

取值範圍:40~32768。

預設值:120。

單位:GiB。

Categories

List

資料磁碟類型的列表。

SpotPriceLimit文法

"SpotPriceLimit": [
  {
    "PriceLimit": Number,
    "InstanceType": String
  }
]

SpotPriceLimit屬性

屬性名稱

類型

必須

允許更新

描述

約束

PriceLimit

Number

可搶佔執行個體的價格限制。

InstanceType

String

可搶佔執行個體的執行個體類型。

Tags文法

"Tags": [
  {
    "Value": String,
    "Key": String
  }
]

Tags屬性

屬性名稱

類型

必須

允許更新

描述

約束

Value

String

標籤值。

Key

String

標籤鍵。

傳回值

Fn::GetAtt

NodePoolId:叢集節點池ID。

樣本

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  TeeConfig:
    Type: Json
    Description: The configurations of confidential computing.
    Default: |-
      {
        "TeeEnable": true
      }
  ClusterId:
    Type: String
    Description: Cluster ID.
    Default: c64ca201b0a4b49agfd****
  NodePoolInfo:
    Type: Json
    Description: The configurations of the node pool.
    Default: |-
      {
        "Name": "test"
      }
  KubernetesConfig:
    Type: Json
    Description: The configurations of the ACK cluster.
    Default: |-
      {
        "CpuPolicy": "static",
        "Runtime": "containerd",
        "CmsEnabled": true,
        "UserData": "echo 'hello'",
        "NodeNameMode": "customized,aliyun.com,5,test",
        "RuntimeVersion": "1.4.8",
        "Unschedulable": false
      }
  Count:
    Type: Number
    Description: The number of nodes in the node pool.
    Default: 1
  Management:
    Type: Json
    Description: The configurations of the managed node pool.
    Default: |-
      {
        "UpgradeConfig": {
          "AutoUpgrade": true,
          "Surge": 1,
          "MaxUnavailable": 1
        },
        "AutoRepair": true,
        "Enable": true
      }
  ScalingGroup:
    Type: Json
    Description: The configurations of the scaling group used by the node pool.
    Default: |-
      {
        "SpotInstanceRemedy": true,
        "Platform": "AliyunLinux",
        "SystemDiskSize": 120,
        "InstanceChargeType": "PostPaid",
        "SystemDiskPerformanceLevel": "PL1",
        "ImageId": "aliyun_2_1903_x64_20G_alibase_20210726.vhd",
        "InstanceTypes": [
          "ecs.ebmhfc6.20xlarge"
        ],
        "LoginPassword": "test****",
        "MultiAzPolicy": "BALANCE",
        "VSwitchIds": [
          "vsw-*****"
        ],
        "SystemDiskCategory": "cloud_essd",
        "InternetMaxBandwidthOut": 0
      }
Resources:
  ClusterNodePool:
    Type: ALIYUN::CS::ClusterNodePool
    Properties:
      TeeConfig:
        Ref: TeeConfig
      ClusterId:
        Ref: ClusterId
      NodePoolInfo:
        Ref: NodePoolInfo
      KubernetesConfig:
        Ref: KubernetesConfig
      Count:
        Ref: Count
      Management:
        Ref: Management
      ScalingGroup:
        Ref: ScalingGroup
Outputs:
  NodePoolId:
    Description: Cluster node pool ID.
    Value:
      Fn::GetAtt:
        - ClusterNodePool
        - NodePoolId
                    
{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "TeeConfig": {
      "Type": "Json",
      "Description": "The configurations of confidential computing.",
      "Default": "{\n  \"TeeEnable\": true\n}"
    },
    "ClusterId": {
      "Type": "String",
      "Description": "Cluster ID.",
      "Default": "c64ca201b0a4b49agfd****"
    },
    "NodePoolInfo": {
      "Type": "Json",
      "Description": "The configurations of the node pool.",
      "Default": "{\n  \"Name\": \"test\"\n}"
    },
    "KubernetesConfig": {
      "Type": "Json",
      "Description": "The configurations of the ACK cluster.",
      "Default": "{\n  \"CpuPolicy\": \"static\",\n  \"Runtime\": \"containerd\",\n  \"CmsEnabled\": true,\n  \"UserData\": \"echo 'hello'\",\n  \"NodeNameMode\": \"customized,aliyun.com,5,test\",\n  \"RuntimeVersion\": \"1.4.8\",\n  \"Unschedulable\": false\n}"
    },
    "Count": {
      "Type": "Number",
      "Description": "The number of nodes in the node pool.",
      "Default": 1
    },
    "Management": {
      "Type": "Json",
      "Description": "The configurations of the managed node pool.",
      "Default": "{\n  \"UpgradeConfig\": {\n    \"AutoUpgrade\": true,\n    \"Surge\": 1,\n    \"MaxUnavailable\": 1\n  },\n  \"AutoRepair\": true,\n  \"Enable\": true\n}"
    },
    "ScalingGroup": {
      "Type": "Json",
      "Description": "The configurations of the scaling group used by the node pool.",
      "Default": "{\n  \"SpotInstanceRemedy\": true,\n  \"Platform\": \"AliyunLinux\",\n  \"SystemDiskSize\": 120,\n  \"InstanceChargeType\": \"PostPaid\",\n  \"SystemDiskPerformanceLevel\": \"PL1\",\n  \"ImageId\": \"aliyun_2_1903_x64_20G_alibase_20210726.vhd\",\n  \"InstanceTypes\": [\n    \"ecs.ebmhfc6.20xlarge\"\n  ],\n  \"LoginPassword\": \"test****\",\n  \"MultiAzPolicy\": \"BALANCE\",\n  \"VSwitchIds\": [\n    \"vsw-*****\"\n  ],\n  \"SystemDiskCategory\": \"cloud_essd\",\n  \"InternetMaxBandwidthOut\": 0\n}"
    }
  },
  "Resources": {
    "ClusterNodePool": {
      "Type": "ALIYUN::CS::ClusterNodePool",
      "Properties": {
        "TeeConfig": {
          "Ref": "TeeConfig"
        },
        "ClusterId": {
          "Ref": "ClusterId"
        },
        "NodePoolInfo": {
          "Ref": "NodePoolInfo"
        },
        "KubernetesConfig": {
          "Ref": "KubernetesConfig"
        },
        "Count": {
          "Ref": "Count"
        },
        "Management": {
          "Ref": "Management"
        },
        "ScalingGroup": {
          "Ref": "ScalingGroup"
        }
      }
    }
  },
  "Outputs": {
    "NodePoolId": {
      "Description": "Cluster node pool ID.",
      "Value": {
        "Fn::GetAtt": [
          "ClusterNodePool",
          "NodePoolId"
        ]
      }
    }
  }
}