ALIYUN::CS::KubernetesCluster類型用於建立Kubernetes專有版叢集。
文法
{
"Type": "ALIYUN::CS::KubernetesCluster",
"Properties": {
"CloudMonitorFlags": Boolean,
"ProxyMode": String,
"MasterInstanceTypes": List,
"SnatEntry": Boolean,
"WorkerSystemDiskCategory": String,
"WorkerVSwitchIds": List,
"VpcId": String,
"Tags": List,
"CpuPolicy": String,
"WorkerInstanceTypes": List,
"WorkerDataDisks": List,
"LoginPassword": String,
"ContainerCidr": String,
"NumOfNodes": Number,
"Name": String,
"WorkerSystemDiskSize": Number,
"NodePortRange": String,
"SshFlags": Boolean,
"Taint": List,
"MasterDataDisk": Boolean,
"MasterSystemDiskCategory": String,
"WorkerDataDisk": Boolean,
"Addons": List,
"DisableRollback": Boolean,
"ServiceCidr": String,
"KubernetesVersion": String,
"SecurityGroupId": String,
"KeyPair": String,
"MasterVSwitchIds": List,
"EndpointPublicAccess": Boolean,
"MasterSystemDiskSize": Number,
"MasterDataDisks": List,
"MasterCount": Number,
"TimeoutMins": Number,
"PodVswitchIds": List,
"Runtime": Map,
"ResourceGroupId": String,
"AutoRenewPeriod": Number,
"MasterSystemDiskSnapshotPolicyId": String,
"FormatDisk": Boolean,
"WorkerSystemDiskSnapshotPolicyId": String,
"KeepInstanceName": Boolean,
"DeletionProtection": Boolean,
"OsType": String,
"LoadBalancerSpec": String,
"AutoRenew": Boolean,
"ChargeType": String,
"NodeCidrMask": String,
"UserData": String,
"UserCa": String,
"IsEnterpriseSecurityGroup": Boolean,
"Period": Number,
"MasterSystemDiskPerformanceLevel": String,
"SocEnabled": Boolean,
"TimeZone": String,
"Platform": String,
"PeriodUnit": String,
"MasterZoneIds": List,
"WorkerZoneIds": List,
"NodePools": List,
"NodeNameMode": String,
"SecurityHardeningOs": Boolean,
"DeleteOptions": List
}
}
屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Runtime | Map | 否 | 否 | 容器運行時。 | Runtime包括以下2個資訊:
樣本:
說明 關於容器運行時的選擇,請參見如何選擇Docker運行時、containerd運行時、或者安全沙箱運行時?。更多資訊,請參見Runtime屬性。 |
CloudMonitorFlags | Boolean | 否 | 否 | 是否安裝CloudMonitor外掛程式。 | 取值:
|
ProxyMode | String | 否 | 否 | kube-proxy代理模式。 | 取值:
|
MasterInstanceTypes | List | 是 | 否 | Master節點ECS執行個體規格。 | 必須填寫3個ECS執行個體規格,ECS執行個體規格可以重複。 更多資訊,請參見執行個體規格類型系列。 |
SnatEntry | Boolean | 否 | 否 | 是否為網路設定SNAT。 | 取值:
|
WorkerSystemDiskCategory | String | 否 | 否 | Worker節點系統硬碟類型。 | 取值:
|
WorkerVSwitchIds | List | 是 | 否 | Worker節點的交換器ID。 | 最多支援設定5個交換器ID。 |
VpcId | String | 是 | 否 | 專用網路ID。 | 如果不設定,系統會自動建立專用網路,系統建立的專用網路網段為192.168.0.0/16。 VpcId和MasterVSwitchIds只能同時為空白或者同時指定。 |
Tags | List | 否 | 是 | 叢集標籤。 | 最多可以設定20組標籤。 更多資訊,請參見Tags屬性。 |
PodVswitchIds | List | 否 | 否 | Pod交換器列表。 | 您需要為每一個節點交換器指定至少一個相同可用性區域的Pod交換器,該Pod交換器不能跟節點交換器重複。 建議您選擇網段掩碼不大於19的交換器。 說明 當叢集列表(Addons)取值為網路組件,且採用Terway網路類型時,必須為叢集指定PodVswitchIds。 |
CpuPolicy | String | 否 | 否 | CPU策略。 | 當叢集版本為1.12.6及以上版本時該參數有效。取值:
|
WorkerInstanceTypes | List | 否 | 否 | Worker節點ECS執行個體規格。 | 更多資訊,請參見執行個體規格類型系列。 |
WorkerDataDisks | List | 否 | 否 | Worker資料盤類型、大小等配置。 | 只有在掛載Worker節點資料盤時有效。 更多資訊,請參見WorkerDataDisks屬性。 |
LoginPassword | String | 否 | 否 | SSH登入密碼。 | 長度為8~30個字元,必須同時包含英文字母、數字和特殊字元,支援的特殊字元為: 說明 LoginPassword和KeyPair只能指定其中一個參數。 |
ContainerCidr | String | 否 | 否 | Pod網路位址區段。 | 當建立Flannel網路類型的叢集時,ContainerCidr為必填。ContainerCidr必須是有效私人網段,即以下網段及其子網:
不能與專用網路及專用網路內已有Kubernetes叢集使用的網段重複,且建立成功後不能修改。 關於叢集網路規劃,請參見Kubernetes叢集網路規劃。 |
SecurityHardeningOs | Boolean | 否 | 否 | 阿里雲作業系統安全強化。 | 取值:
預設值:false。 |
NumOfNodes | Number | 否 | 否 | Worker節點數。 | 取值範圍:0~300。 預設值:3。 |
Name | String | 是 | 否 | 叢集名稱。 | 長度為1~63個字元。可包含寫英文字母、漢字、數字和短劃線(-)。 |
WorkerSystemDiskSize | Number | 否 | 否 | Worker節點系統硬碟大小。 | 預設值:120。 單位:GiB。 |
NodePortRange | String | 否 | 否 | 節點服務連接埠。 | 取值範圍:30,000~65,535中的兩個值,以短劃線(-)分隔。 預設值:30,000-65,535。 |
SshFlags | Boolean | 否 | 否 | 是否開放公網SSH登入。 | 取值:
|
Taint | List | 否 | 否 | 給節點做汙點標記,通常用於Pods的調度策略。 | 若Pods上有相對應的容忍(tolerance)標記,則可以將容忍節點上的汙點調度到該節點。 |
MasterDataDisk | Boolean | 否 | 否 | Master節點是否掛載資料盤。 | 取值:
|
MasterSystemDiskCategory | String | 否 | 否 | Master節點系統硬碟類型。 | 取值:
|
WorkerDataDisk | Boolean | 否 | 否 | Worker節點是否掛載資料盤。 | 取值:
|
Addons | List | 否 | 否 | Kubernetes叢集安裝的組件列表。 | 取值:
更多資訊,請參見Addons屬性。 |
DisableRollback | Boolean | 否 | 否 | 失敗是否復原。 | 取值:
|
ServiceCidr | String | 否 | 否 | 服務網段。 | 不能和專用網路網段以及容器網段衝突。 當選擇系統自動建立專用網路時,預設使用172.19.0.0/20網段。 |
KubernetesVersion | String | 否 | 是 | 叢集版本,與Kubernetes社區基準版本保持一致。建議選擇最新版本。 | 目前您可以建立兩種最新版本的叢集。關於ACK支援的Kubernetes版本,請參見【已下線】Kubernetes版本發布概覽。 |
SecurityGroupId | String | 否 | 否 | 叢集ECS執行個體所屬於的安全性群組ID。 | 無 |
KeyPair | String | 否 | 否 | 金鑰組名稱。 | KeyPair和LoginPassword只能指定其中一個參數。 |
MasterVSwitchIds | List | 是 | 否 | Master節點交換器ID。 | 必須指定3個交換器ID,交換器ID可以重複。為確保叢集的高可用性,推薦您選擇3個交換器。 |
EndpointPublicAccess | Boolean | 否 | 否 | 是否開啟公網APIServer。 | 取值:
|
MasterSystemDiskSize | Number | 否 | 否 | Master節點系統硬碟大小。 | 預設值:120。 單位:GiB。 |
MasterDataDisks | List | 否 | 否 | Master資料盤類型、大小等配置。 | 只有在掛載Master節點資料盤時有效。 更多資訊,請參見MasterDataDisks屬性。 |
MasterCount | Number | 否 | 否 | Master執行個體個數。 | 取值:
|
TimeoutMins | Number | 否 | 否 | 叢集資源棧建立逾時時間。 | 預設值:60。 單位:分鐘。 |
ResourceGroupId | String | 否 | 是 | 資源群組ID。 | 無 |
AutoRenewPeriod | Number | 否 | 否 | 自動續借周期。 | 當ChargeType取值為PrePaid,且AutoRenew取值為true時,該參數有效。取值:
預設值:1。 |
MasterSystemDiskSnapshotPolicyId | String | 否 | 否 | 備份主節點資料盤的策略ID。 | 無 |
FormatDisk | Boolean | 否 | 否 | 是否將資料磁碟掛載到已建立的節點上,在已有的ECS執行個體中建立。 | 取值:
|
WorkerSystemDiskSnapshotPolicyId | String | 否 | 否 | 用於備份工作節點資料盤的策略ID。 | 無 |
KeepInstanceName | Boolean | 否 | 否 | 是否保留叢集中使用的現有ECS執行個體的名稱。 | 取值:
|
DeletionProtection | Boolean | 否 | 否 | 是否啟用刪除保護功能。 | 啟用刪除保護後,叢集不能被直接刪除。 取值:
|
OsType | String | 否 | 否 | 作業系統的類型。 | 取值:
|
LoadBalancerSpec | String | 否 | 否 | Server Load Balancer執行個體規格。 | 取值:
|
AutoRenew | Boolean | 否 | 否 | 是否自動續約。 | 當ChargeType取值為PrePaid時該參數有效。 取值:
|
ChargeType | String | 否 | 否 | 付費類型。 | 取值:
|
NodeCidrMask | String | 否 | 否 | 可分配給節點的最大IP地址數量。 | 數量由指定的pod CIDR決定。該參數僅在叢集使用Flannel外掛程式時生效。 預設值:25。 |
UserData | String | 否 | 否 | 建立ECS執行個體時傳遞的使用者資料。 | 內容需要限制在16 KB以內。無需使用Base64轉碼,特殊字元需要使用轉義符。 |
UserCa | String | 否 | 否 | 叢集的CA。 | 如果選中自訂叢集CA,可以將CA認證添加到Kubernetes叢集中,加強服務端和用戶端之間資訊互動的安全性。 |
IsEnterpriseSecurityGroup | Boolean | 否 | 否 | 是否建立進階安全性群組。 | 當SecurityGroupId為空白時,該參數生效。取值:
|
Period | Number | 否 | 否 | 購買資源的時間長度。 | 當ChargeType為PrePaid時,該參數生效且為必選參數。取值:
預設值:1。 |
MasterSystemDiskPerformanceLevel | String | 否 | 否 | 主節點使用的增強型SSD硬碟的效能層級。 | 取值:
|
SocEnabled | Boolean | 否 | 否 | 是否啟用基於分級保護的加固。 | 取值:
|
MasterZoneIds | List | 否 | 否 | Master節點的交換器可用性區域資訊。 | 無 |
WorkerZoneIds | List | 否 | 否 | Worker節點的交換器可用性區域資訊。 | 無 |
TimeZone | String | 否 | 否 | 叢集的時區。 | 無 |
Platform | String | 否 | 否 | 作業系統的發布版本。 | 取值:
|
PeriodUnit | String | 否 | 否 | 購買資源的時間長度。 | 當ChargeType為PrePaid時該參數有效。取值:
|
NodePools | List | 否 | 否 | 節點池資訊。 | 更多資訊,請參見NodePools屬性。 |
NodeNameMode | String | 否 | 否 | 自訂節點名。 | 節點名稱由三部分組成:首碼+節點IP地址子串+尾碼。
|
DeleteOptions | List | 否 | 是 | 叢集關聯資源的刪除選項。 | 更多資訊,請參見DeleteOptions屬性。 |
NodePools文法
"NodePools": [
{
"ScalingGroup": Map,
"KubernetesConfig": Map,
"NodePoolInfo": Map,
"Count": Integer
}
]
NodePools屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
ScalingGroup | Map | 是 | 否 | 節點池擴容組配置。 | 更多資訊,請參見ScalingGroup屬性。 |
KubernetesConfig | Map | 否 | 否 | 叢集相關配置。 | 更多資訊,請參見KubernetesConfig屬性。 |
NodePoolInfo | Map | 否 | 否 | 節點池配置。 | 更多資訊,請參見NodePoolInfo屬性。 |
Count | Integer | 否 | 否 | 節點池節點數量。 | 無 |
ScalingGroup文法
"ScalingGroup": {
"RdsInstances": List,
"IsEnterpriseSecurityGroup": Boolean,
"VSwitchIds": List,
"InternetMaxBandwidthOut": Integer,
"DataDisks": List,
"Period": Integer,
"InternetChargeType": String,
"KeyPair": String,
"SystemDiskPerformanceLevel": String,
"ImageId": String,
"Platform": String,
"InstanceTypes": List,
"SystemDiskCategory": String,
"PeriodUnit": String,
"LoginPassword": String,
"InstanceChargeType": String,
"SystemDiskSize": Integer,
"Tags": List,
"ZoneIds": List
}
ScalingGroup屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
RdsInstances | List | 否 | 否 | RDS執行個體ID。 | 無 |
IsEnterpriseSecurityGroup | Boolean | 否 | 否 | 自動建立企業級安全性群組。 | 取值:
|
VSwitchIds | List | 是 | 否 | 虛擬交換器ID列表。 | 無 |
InternetMaxBandwidthOut | Integer | 否 | 否 | 節點公網IP出頻寬最大值。 | 單位:Mbps。 取值範圍:1~100。 |
DataDisks | List | 否 | 否 | 節點池節點資料盤配置。 | 更多資訊,請參見DataDisks屬性。 |
Period | Integer | 否 | 否 | 節點池節點訂用帳戶時間長度。 |
|
InternetChargeType | String | 否 | 否 | 公網IP收費類型。 | 取值:
|
KeyPair | String | 否 | 否 | 免密登入金鑰組名稱。 | KeyPair和LoginPassword只能選擇其中之一。 |
SystemDiskPerformanceLevel | String | 否 | 否 | 節點系統硬碟磁碟效能。 | 只對ESSD磁碟生效。 |
ImageId | String | 否 | 否 | 自訂鏡像ID。 | 預設使用系統提供的鏡像。 |
Platform | String | 否 | 否 | 作業系統發行版。 | 取值:
|
InstanceTypes | List | 是 | 否 | 執行個體規格。 | 無 |
SystemDiskCategory | String | 否 | 否 | 節點系統硬碟類型。 | 取值:
|
PeriodUnit | String | 否 | 否 | 節點池節點付費周期。 |
|
LoginPassword | String | 否 | 否 | SSH登入密碼。 | KeyPair和LoginPassword只能選擇其中之一。 密碼規則為8~30個字元,且至少同時包含大小寫字母、數字和特殊符號。 |
InstanceChargeType | String | 否 | 否 | 節點池節點付費類型。 | 取值:
|
SystemDiskSize | Integer | 是 | 否 | 節點系統硬碟大小。 | 單位:GiB。 取值範圍:40~500。 |
Tags | List | 否 | 否 | 僅為ECS執行個體添加標籤。 | 更多資訊,請參見Tags屬性。 |
ZoneIds | List | 否 | 否 | 可用性區域列表。 | 無 |
DataDisks文法
"DataDisks": [
{
"AutoSnapshotPolicyId": String,
"Encrypted": Boolean,
"Size": Integer,
"Category": String,
"PerformanceLevel": String
}
]
DataDisks屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
AutoSnapshotPolicyId | String | 否 | 否 | 選擇自動快照策略ID。 | 雲端硬碟會按照快照策略自動備份。 |
Encrypted | Boolean | 否 | 否 | 是否對資料盤加密。 | 取值:
|
Size | Integer | 否 | 否 | 資料盤大小。 | 單位:GiB。 取值範圍:40~32768。 預設值:120。 |
Category | String | 否 | 否 | 資料盤類型。 | 取值:
|
PerformanceLevel | String | 否 | 否 | 節點資料盤磁碟效能等級。 | 僅對ESSD磁碟生效,磁碟效能等級和磁碟大小有關。 更多資訊,請參見ESSD雲端硬碟。 |
KubernetesConfig文法
"KubernetesConfig": {
"Runtime": String,
"RuntimeVersion": String,
"CpuPolicy": String,
"Labels": List,
"NodeNameMode": String,
"Taints": List
}
KubernetesConfig屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Runtime | String | 是 | 否 | 容器運行時。 | 無 |
RuntimeVersion | String | 是 | 否 | 容器運行時版本。 | 無 |
CpuPolicy | String | 否 | 否 | 節點CPU管理原則。 | 當叢集版本在1.12.6及以上時支援以下兩種策略:
|
Labels | List | 否 | 否 | 節點標籤。 | 為Kubernetes叢集節點添加標籤。 更多資訊,請參見Labels屬性。 |
NodeNameMode | String | 否 | 否 | 自訂節點名。 | 節點名稱由三部分組成:首碼+節點IP地址子串+尾碼。
|
Taints | List | 否 | 否 | 汙點配置。 | 更多資訊,請參見Taints屬性。 |
Labels文法
"Labels": {
"Value": String,
"Key": String
}
Labels屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Value | String | 是 | 否 | 標籤值。 | 無 |
Key | String | 是 | 否 | 標籤鍵。 | 無 |
Taints文法
"Taints": [{
"Value": String,
"Effect": String,
"Key": String
}]
Taints屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Value | String | 是 | 否 | 汙點值。 | 無 |
Effect | String | 否 | 否 | 調度策略。 | 取值:
|
Key | String | 是 | 否 | 汙點名稱。 | 無 |
NodePoolInfo文法
"NodePoolInfo": {
"Name": String,
"Type": String,
"ResourceGroupId": String
}
NodePoolInfo屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Name | String | 是 | 否 | 節點池名稱。 | 無 |
Type | String | 否 | 否 | 節點池類型。 | 取值:
|
ResourceGroupId | String | 否 | 是 | 節點池所屬資源群組。 | 無 |
Tags文法
"Tags": [
{
"Key": String,
"Value": String
}
]
Tags屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Key | String | 是 | 否 | 標籤鍵。 | 長度為1~64個字元,不能以 |
Value | String | 是 | 否 | 標籤值。 | 長度為0~128個字元,不能以 |
MasterDataDisks文法
"MasterDataDisks": [
{
"Category": String,
"Size": Number
}
]
MasterDataDisks屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Category | String | 是 | 否 | Master節點資料盤類型。 | 取值:
|
Size | Number | 是 | 否 | Master節點資料盤大小。 | 取值範圍:40~32,768。 單位:GiB。 |
WorkerDataDisks文法
"WorkerDataDisks": [
{
"Category": String,
"Size": Number
}
]
WorkerDataDisks屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Category | String | 是 | 否 | Worker節點資料盤類型。 | 取值:
|
Size | Number | 是 | 否 | 資料盤大小。 | 取值範圍:40~32,768。 單位:GiB。 |
Addons文法
"Addons": [
{
"Disabled": Boolean,
"Config": String,
"Name": String
}
]
Addons屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Disabled | Boolean | 否 | 否 | 是否禁止預設安裝。 | 取值:
|
Config | String | 否 | 否 | 外掛程式的配置。 | 無 |
Name | String | 是 | 否 | 外掛程式的名稱。 | 無 |
Runtime文法
"Runtime": {
"Name": String,
"Version": String
}
Runtime屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
Name | String | 是 | 否 | 容器運行時名稱。 | 取值:
|
Version | String | 否 | 否 | 容器運行時版本。 | 取值:
|
DeleteOptions文法
"DeleteOptions": [{
"DeleteMode": String,
"ResourceType": String
}]
DeleteOptions屬性
屬性名稱 | 類型 | 必須 | 允許更新 | 描述 | 約束 |
DeleteMode | String | 否 | 是 | 該類型資源的刪除策略。 | 可取值:
|
ResourceType | String | 否 | 是 | 資源類型。 | 可取值:
|
傳回值
Fn::GetAtt
ClusterId:叢集ID。
TaskId:任務ID。系統自動分配,使用者查詢任務狀態。
WorkerRamRoleName:Worker節點RAM角色名稱。
ScalingGroupId:伸縮組ID。
DefaultUserKubeConfig:使用者預設的Kubernetes配置,用於配置叢集憑據。
Nodes:叢集節點列表。
ScalingRuleId:伸縮規則ID。
PrivateUserKubConfig:使用者專有的Kubernetes配置,用於配置叢集憑據。
ScalingConfigurationId:伸縮配置ID。
APIServerSLBId:API伺服器負載平衡ID。
IngressSLBId:Ingress負載平衡ID。
樣本
YAML
ROSTemplateFormatVersion: '2015-09-01'
Description: Test Create KubernetesCluster
Parameters:
SystemDiskCategory:
Type: String
Description: Category of system disk. Default is cloud_efficiency. support cloud|cloud_efficiency|cloud_ssd|cloud_essd|ephemeral_ssd.Old instances will not be changed.
AllowedValues:
- cloud
- cloud_efficiency
- cloud_ssd
- cloud_essd
- ephemeral_ssd
Default: cloud_essd
LoginPassword:
Type: String
Default: Text****
Resources:
Vpc:
Type: ALIYUN::ECS::VPC
Properties:
VpcName: mytest
CidrBlock: 192.168.XX.XX/16
VSwitch1:
Type: ALIYUN::ECS::VSwitch
Properties:
VSwitchName: mytest
VpcId:
Ref: Vpc
ZoneId:
Fn::Select:
- '0'
- Fn::GetAZs:
Ref: ALIYUN::Region
CidrBlock: 192.168.XX.XX/24
VSwitch2:
Type: ALIYUN::ECS::VSwitch
Properties:
VSwitchName: mytest
VpcId:
Ref: Vpc
ZoneId:
Fn::Select:
- '0'
- Fn::GetAZs:
Ref: ALIYUN::Region
CidrBlock: 192.168.XX.XX/24
VSwitch3:
Type: ALIYUN::ECS::VSwitch
Properties:
VSwitchName: mytest
VpcId:
Ref: Vpc
ZoneId:
Fn::Select:
- '0'
- Fn::GetAZs:
Ref: ALIYUN::Region
CidrBlock: 192.168.XX.XX/24
KubernetesCluster:
Type: ALIYUN::CS::KubernetesCluster
Properties:
MasterInstanceTypes:
- ecs.g6e.large
- ecs.g6e.large
- ecs.g6e.large
MasterSystemDiskCategory:
Ref: SystemDiskCategory
WorkerSystemDiskCategory:
Ref: SystemDiskCategory
WorkerVSwitchIds:
- Ref: VSwitch1
VpcId:
Ref: Vpc
WorkerInstanceTypes:
- ecs.g6e.large
Name: TestKubernetesCluster
MasterVSwitchIds:
- Ref: VSwitch1
- Ref: VSwitch2
- Ref: VSwitch3
LoginPassword:
Ref: LoginPassword
Outputs:
ClusterId:
Value:
Fn::GetAtt:
- KubernetesCluster
- ClusterId
TaskId:
Value:
Fn::GetAtt:
- KubernetesCluster
- TaskId
JSON
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "Test Create KubernetesCluster",
"Parameters": {
"SystemDiskCategory": {
"Type": "String",
"Description": "Category of system disk. Default is cloud_efficiency. support cloud|cloud_efficiency|cloud_ssd|cloud_essd|ephemeral_ssd.Old instances will not be changed.",
"AllowedValues": [
"cloud",
"cloud_efficiency",
"cloud_ssd",
"cloud_essd",
"ephemeral_ssd"
],
"Default": "cloud_essd"
},
"LoginPassword": {
"Type": "String",
"Default": "Text****"
}
},
"Resources": {
"Vpc": {
"Type": "ALIYUN::ECS::VPC",
"Properties": {
"VpcName": "mytest",
"CidrBlock": "192.168.XX.XX/16"
}
},
"VSwitch1": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"VSwitchName": "mytest",
"VpcId": {
"Ref": "Vpc"
},
"ZoneId": {
"Fn::Select": [
"0",
{
"Fn::GetAZs": {
"Ref": "ALIYUN::Region"
}
}
]
},
"CidrBlock": "192.168.XX.XX/24"
}
},
"VSwitch2": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"VSwitchName": "mytest",
"VpcId": {
"Ref": "Vpc"
},
"ZoneId": {
"Fn::Select": [
"0",
{
"Fn::GetAZs": {
"Ref": "ALIYUN::Region"
}
}
]
},
"CidrBlock": "192.168.XX.XX/24"
}
},
"VSwitch3": {
"Type": "ALIYUN::ECS::VSwitch",
"Properties": {
"VSwitchName": "mytest",
"VpcId": {
"Ref": "Vpc"
},
"ZoneId": {
"Fn::Select": [
"0",
{
"Fn::GetAZs": {
"Ref": "ALIYUN::Region"
}
}
]
},
"CidrBlock": "192.168.XX.XX/24"
}
},
"KubernetesCluster": {
"Type": "ALIYUN::CS::KubernetesCluster",
"Properties": {
"MasterInstanceTypes": [
"ecs.g6e.large",
"ecs.g6e.large",
"ecs.g6e.large"
],
"MasterSystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"WorkerSystemDiskCategory": {
"Ref": "SystemDiskCategory"
},
"WorkerVSwitchIds": [
{
"Ref": "VSwitch1"
}
],
"VpcId": {
"Ref": "Vpc"
},
"WorkerInstanceTypes": [
"ecs.g6e.large"
],
"Name": "TestKubernetesCluster",
"MasterVSwitchIds": [
{
"Ref": "VSwitch1"
},
{
"Ref": "VSwitch2"
},
{
"Ref": "VSwitch3"
}
],
"LoginPassword": {
"Ref": "LoginPassword"
}
}
}
},
"Outputs": {
"ClusterId": {
"Value": {
"Fn::GetAtt": [
"KubernetesCluster",
"ClusterId"
]
}
},
"TaskId": {
"Value": {
"Fn::GetAtt": [
"KubernetesCluster",
"TaskId"
]
}
}
}
}