All Products
Search
Document Center

:ALIYUN::CS::KubernetesCluster

Last Updated:Jul 06, 2025

ALIYUN::CS::KubernetesCluster digunakan untuk membuat klaster Container Service for Kubernetes (ACK) khusus.

Sintaksis

{
  "Type": "ALIYUN::CS::KubernetesCluster",
  "Properties": {
    "CloudMonitorFlags": Boolean,
    "ProxyMode": String,
    "MasterInstanceTypes": List,
    "SnatEntry": Boolean,
    "VpcId": String,
    "Tags": List,
    "CpuPolicy": String,
    "LoginPassword": String,
    "ContainerCidr": String,
    "Name": String,
    "NodePortRange": String,
    "SshFlags": Boolean,
    "Taint": List,
    "MasterDataDisk": Boolean,
    "MasterSystemDiskCategory": String,
    "Addons": List,
    "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,
    "MasterSystemDiskSnapshotPolicyId": String,
    "FormatDisk": Boolean,
    "WorkerSystemDiskSnapshotPolicyId": String,
    "KeepInstanceName": Boolean,
    "DeletionProtection": Boolean,
    "OsType": String,
    "LoadBalancerSpec": String,
    "NodeCidrMask": String,
    "UserData": String,
    "UserCa": String,
    "IsEnterpriseSecurityGroup": Boolean,
    "MasterSystemDiskPerformanceLevel": String,
    "SocEnabled": Boolean,
    "TimeZone": String,  
    "MasterZoneIds": List,
    "WorkerZoneIds": List,
    "NodePools": List,
    "NodeNameMode": String,
    "SecurityHardeningOs": Boolean,
    "DeleteOptions": List,
    "ControlPlaneLogTtl": Number,
    "MaintenanceWindow": Map,
    "ControlPlaneLogComponents": List,
    "ControlPlaneLogProject": String,
    "MasterInstanceChargeType": String,
    "Platform": String,
    "MasterAutoRenew": Boolean,
    "MasterAutoRenewPeriod": Number
  }
}

Properti

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Runtime

Map

Tidak

Tidak

Runtime kontainer.

Properti Runtime terdiri dari bidang-bidang berikut:

  • name: nama runtime kontainer.

  • version: versi runtime kontainer.

Contoh:

{"name": "docker", "version": "19.03.5"}
Catatan

Untuk informasi lebih lanjut tentang cara memilih runtime kontainer, lihat Perbandingan antara Docker, containerd, dan Sandboxed-Container. Untuk informasi lebih lanjut tentang Runtime, lihat Properti Runtime.

CloudMonitorFlags

Boolean

Tidak

Tidak

Menentukan apakah akan menginstal agen CloudMonitor.

Nilai valid:

  • true

  • false (default)

ProxyMode

String

Tidak

Tidak

Mode kube-proxy.

Nilai valid:

  • iptables (default)

  • ipvs

MasterInstanceTypes

List

Ya

Tidak

Jenis instance Elastic Compute Service (ECS) dari node master.

Anda harus menentukan tiga jenis instance ECS. Anda dapat menentukan jenis instance ECS yang sama.

Untuk informasi lebih lanjut, lihat Ikhtisar keluarga instance.

SnatEntry

Boolean

Tidak

Tidak

Menentukan apakah akan mengonfigurasi aturan SNAT untuk virtual private cloud (VPC).

  • Nilai valid ketika VPC dapat mengakses Internet: false.

  • Nilai valid ketika VPC tidak dapat mengakses Internet:

    • true: mengonfigurasi aturan SNAT untuk VPC. Dalam hal ini, VPC dapat mengakses Internet.

    • false: tidak mengonfigurasi aturan SNAT untuk VPC. Dalam hal ini, VPC tidak dapat mengakses Internet.

VpcId

String

Ya

Tidak

ID VPC.

Jika Anda tidak menentukan properti ini, sistem secara otomatis membuat VPC dengan blok CIDR 192.168.0.0/16.

Anda harus meninggalkan properti VpcId dan MasterVSwitchIds kosong atau menentukan kedua properti tersebut.

Tags

List

Tidak

Ya

Tag klaster.

Anda dapat menambahkan hingga 20 tag.

Untuk informasi lebih lanjut, lihat Properti Tags.

PodVswitchIds

List

Tidak

Tidak

vSwitch pod.

Untuk setiap vSwitch node, Anda harus menentukan setidaknya satu vSwitch pod yang ditempatkan di zona yang sama dengan vSwitch node. vSwitch pod tidak boleh tumpang tindih dengan vSwitch node.

Kami merekomendasikan Anda menggunakan vSwitch dengan panjang masker blok CIDR tidak lebih dari 19 bit.

Catatan

Anda harus menentukan properti ini ketika Anda menginstal komponen Terway di klaster.

Platform

String

Tidak

Tidak

Distribusi sistem operasi.

Nilai valid:

  • CentOS

  • AliyunLinux (default)

  • Windows

  • WindowsCore

MaintenanceWindow

Map

Tidak

Ya

Konfigurasi jendela pemeliharaan klaster.

Untuk informasi lebih lanjut, lihat bagian "Properti MaintenanceWindow" dari topik ini.

ControlPlaneLogComponents

List

Tidak

Ya

Nama komponen control plane.

Anda dapat menggunakan properti ini untuk menentukan komponen control plane yang log-nya ingin Anda kumpulkan.

Secara default, log kube-apiserver, kube-controller-manager, dan kube-scheduler dikumpulkan.

ControlPlaneLogProject

String

Tidak

Ya

Proyek Simple Log Service (SLS) yang ingin Anda gunakan untuk menyimpan log komponen control plane.

Anda dapat menggunakan proyek yang ada atau menggunakan sistem untuk secara otomatis membuat proyek. Jika Anda menggunakan sistem untuk secara otomatis membuat proyek, proyek yang dibuat dinamai dalam format k8s-log-{ClusterID}.

MasterInstanceChargeType

String

Tidak

Tidak

Metode penagihan node master.

Nilai valid:

  • PrePaid: langganan.

  • PostPaid (default): bayar sesuai pemakaian.

MasterAutoRenew

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan perpanjangan otomatis.

Properti ini berlaku ketika MasterInstanceChargeType disetel ke PrePaid.

Nilai valid:

  • true (default)

  • false

MasterAutoRenewPeriod

Number

Tidak

Tidak

Periode perpanjangan otomatis.

Properti ini berlaku ketika MasterInstanceChargeType disetel ke PrePaid dan MasterAutoRenew disetel ke true. Nilai valid:

  • Nilai valid ketika PeriodUnit disetel ke Minggu: 1 hingga 3.

  • Nilai valid ketika PeriodUnit disetel ke Bulan: 1, 2, 3, 6, dan 12.

Nilai default: 1.

CpuPolicy

String

Tidak

Tidak

Kebijakan CPU.

Properti ini hanya berlaku untuk klaster dengan versi Kubernetes 1.12.6 atau lebih baru. Nilai valid:

  • static

  • none (default)

LoginPassword

String

Tidak

Tidak

Kata sandi untuk masuk SSH.

Kata sandi harus memiliki panjang 8 hingga 30 karakter, dan harus mengandung huruf, angka, dan karakter khusus. Karakter khusus berikut didukung: ( ) ' ~ ! @ # $ % ^ & * - + = | { } [ ] : ; < > , . ? / -.

Catatan

Anda dapat menentukan LoginPassword atau KeyPair.

ContainerCidr

String

Tidak

Tidak

Blok CIDR pod.

Anda harus menentukan properti ini ketika Anda membuat klaster di mana komponen Flannel digunakan. Blok CIDR pod harus salah satu dari blok CIDR VPC berikut atau subnet mereka:

  • 10.0.X.X/8

  • 172.16-31.0.0/12-16

  • 192.168.XX.XX/16

Blok CIDR pod tidak boleh tumpang tindih dengan blok CIDR VPC dan blok CIDR klaster yang ada di VPC. Anda tidak dapat mengubah blok CIDR pod setelah klaster dibuat.

Untuk informasi lebih lanjut tentang cara merencanakan jaringan klaster, lihat Perencanaan jaringan klaster ACK yang dikelola.

SecurityHardeningOs

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan penguatan keamanan untuk Alibaba Cloud Linux.

Nilai valid:

  • true

  • false

Nilai default: false.

Name

String

Ya

Tidak

Nama klaster.

Nama harus memiliki panjang 1 hingga 63 karakter, dan dapat mengandung huruf, angka, dan tanda hubung (-).

NodePortRange

String

Tidak

Tidak

Rentang port node.

Rentang terdiri dari dua nilai dari 30000 hingga 65535. Pisahkan dua nilai tersebut dengan tanda hubung (-).

Rentang default: 30000-65535.

SshFlags

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan masuk SSH melalui Internet.

Nilai valid:

  • true

  • false (default)

Taint

List

Tidak

Tidak

Taint yang ingin Anda tambahkan ke node untuk penjadwalan pod.

Jika Anda menerapkan toleransi pada pod, pod dapat dijadwalkan ke node yang memiliki taint yang cocok.

MasterDataDisk

Boolean

Tidak

Tidak

Menentukan apakah akan melampirkan disk data ke node master.

Nilai valid:

  • true

  • false (default)

MasterSystemDiskCategory

String

Tidak

Tidak

Kategori disk sistem node master.

Nilai valid:

  • cloud_efficiency: ultra disk

  • cloud_ssd: SSD standar

  • cloud_essd: ESSD

Addons

List

Tidak

Tidak

Komponen yang ingin Anda instal di klaster.

  • Komponen jaringan:

    Komponen Flannel dan Terway didukung. Anda harus menggunakan salah satu komponen saat membuat klaster.

    • Format nilai ketika Anda menggunakan komponen Flannel: [{"Name":"flannel","Config":""}].

    • Format nilai ketika Anda menggunakan komponen Terway: [{"Name": "terway-eniip","Config": ""}].

  • Komponen penyimpanan:

    Komponen Container Storage Interface (CSI) dan FlexVolume didukung.

    • Format nilai ketika Anda menggunakan komponen CSI: [{"Name":"csi-plugin","Config": ""},{"Name": "csi-provisioner","Config": ""}].

    • Format nilai ketika Anda menggunakan komponen FlexVolume: [{"Name": "flexvolume","Config": ""}].

  • (Opsional) Komponen SLS:

    Catatan

    Jika Anda tidak mengaktifkan SLS, Anda tidak dapat menggunakan fitur audit klaster.

    • Format nilai ketika Anda menggunakan proyek SLS yang ada: [{"Name": "logtail-ds","Config": "{\"IngressDashboardEnabled\":\"true\",\"sls_project_name\":\"your_sls_project_name\"}"}].

    • Format nilai ketika Anda membuat proyek SLS: [{"Name": "logtail-ds","Config": "{\"IngressDashboardEnabled\":\"true\"}"}].

  • (Opsional) Komponen Ingress:

    Secara default, komponen nginx-ingress-controller diinstal di klaster ACK khusus.

    • Format nilai ketika Anda menginstal komponen nginx-ingress-controller dan mengaktifkan akses Internet: [{"Name":"nginx-ingress-controller","Config":"{\"IngressSlbNetworkType\":\"internet\"}"}].

    • Format nilai ketika Anda tidak menginstal komponen nginx-ingress-controller: [{"Name": "nginx-ingress-controller","Config": "","Disabled": true}].

  • (Opsional) Pusat acara:

    Secara default, fitur pusat acara diaktifkan. Anda dapat menggunakan pusat acara untuk menyimpan dan menanyakan acara Kubernetes serta mengonfigurasi peringatan. Anda dapat menggunakan Logstore yang terkait dengan pusat acara secara gratis hingga 90 hari. Untuk informasi lebih lanjut, lihat Buat dan gunakan pusat acara.

    Format nilai ketika Anda mengaktifkan fitur pusat acara: [{"Name":"ack-node-problem-detector","Config":"{\"sls_project_name\":\"your_sls_project_name\"}"}].

Untuk informasi lebih lanjut, lihat Properti Addons.

ServiceCidr

String

Tidak

Tidak

Blok CIDR Layanan.

Blok CIDR Layanan tidak boleh tumpang tindih dengan blok CIDR VPC atau blok CIDR kontainer.

Jika Anda menggunakan VPC yang dibuat otomatis oleh sistem, 172.19.0.0/20 digunakan sebagai blok CIDR Layanan secara default.

KubernetesVersion

String

Tidak

Ya

Versi Kubernetes dari klaster. ACK mendukung versi Kubernetes yang sama dengan Kubernetes sumber terbuka. Kami merekomendasikan Anda menggunakan versi terbaru.

Anda dapat membuat klaster dari dua versi terbaru. Untuk informasi lebih lanjut tentang versi Kubernetes yang didukung oleh ACK, lihat Ikhtisar versi Kubernetes yang didukung oleh ACK.

SecurityGroupId

String

Tidak

Tidak

ID grup keamanan tempat instance ECS dalam klaster berada.

Tidak ada.

KeyPair

String

Tidak

Tidak

Nama pasangan kunci.

Anda dapat menentukan KeyPair atau LoginPassword.

MasterVSwitchIds

List

Ya

Tidak

ID vSwitch node master.

Anda harus menentukan tiga ID vSwitch. Anda dapat menentukan ID vSwitch yang sama. Kami merekomendasikan Anda menentukan tiga ID vSwitch berbeda untuk memastikan ketersediaan tinggi klaster.

EndpointPublicAccess

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan akses ke server API klaster melalui Internet.

Nilai valid:

  • true: mengaktifkan akses ke server API klaster melalui Internet.

  • false (default): mengaktifkan akses ke server API klaster melalui VPC.

MasterSystemDiskSize

Number

Tidak

Tidak

Ukuran disk sistem node master.

Nilai default: 120.

Satuan: GiB.

MasterDataDisks

List

Tidak

Tidak

Konfigurasi disk data yang ingin Anda lampirkan ke node master. Konfigurasi ini mencakup kategori disk dan ukuran disk.

Properti ini hanya berlaku ketika Anda melampirkan disk data ke node master.

Untuk informasi lebih lanjut, lihat Properti MasterDataDisks.

MasterCount

Number

Tidak

Tidak

Jumlah node master.

Nilai valid:

  • 3 (default)

  • 5

TimeoutMins

Number

Tidak

Tidak

Periode waktu habis untuk membuat klaster.

Nilai default: 60.

Satuan: menit.

ResourceGroupId

String

Tidak

Ya

ID grup sumber daya.

Tidak ada.

MasterSystemDiskSnapshotPolicyId

String

Tidak

Tidak

ID kebijakan yang ingin Anda gunakan untuk mencadangkan disk data node master.

Tidak ada.

FormatDisk

Boolean

Tidak

Tidak

Menentukan apakah akan melampirkan disk data ke node yang dibuat berdasarkan instance ECS yang ada.

Nilai valid:

  • true: Jika Anda menyetel properti ini ke true, data kontainer dan gambar dari instance ECS yang ada disimpan pada disk data. Data yang ada pada disk data ditimpa. Sebelum melampirkan disk data, cadangkan data pada disk data.

  • false (default): Jika Anda menyetel properti ini ke false, data kontainer dan gambar dari instance ECS yang ada tidak disimpan pada disk data.

WorkerSystemDiskSnapshotPolicyId

String

Tidak

Tidak

ID kebijakan yang ingin Anda gunakan untuk mencadangkan disk data node pekerja.

Tidak ada.

KeepInstanceName

Boolean

Tidak

Tidak

Menentukan apakah akan mempertahankan nama instance ECS yang ada di klaster.

Nilai valid:

  • true (default): mempertahankan nama instance ECS yang ada di klaster.

  • false: tidak mempertahankan nama instance ECS yang ada di klaster. Sistem memberikan nama baru ke instance ECS yang ada.

DeletionProtection

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan perlindungan penghapusan.

Setelah Anda mengaktifkan perlindungan penghapusan, Anda tidak dapat menghapus klaster melalui konsol ACK atau dengan memanggil operasi API ACK tertentu.

Nilai valid:

  • true

  • false (default)

OsType

String

Tidak

Tidak

Tipe sistem operasi.

Nilai valid:

  • Windows

  • Linux (default)

LoadBalancerSpec

String

Tidak

Tidak

Spesifikasi instance Server Load Balancer (SLB).

Nilai valid:

  • slb.s1.small

  • slb.s2.small

  • slb.s2.medium

  • slb.s3.small

  • slb.s3.medium

  • slb.s3.large

NodeCidrMask

String

Tidak

Tidak

Jumlah maksimum blok CIDR yang dapat ditetapkan ke node.

Nilai properti ini bervariasi berdasarkan blok CIDR pod. Properti ini hanya berlaku ketika Anda menggunakan komponen Flannel di klaster.

Nilai default: 25.

UserData

String

Tidak

Tidak

Data pengguna yang Anda tentukan saat membuat instance ECS.

Data pengguna bisa memiliki ukuran hingga 16 KB. Anda tidak perlu mengonversi data menjadi string yang dikodekan Base64. Jika data pengguna mengandung karakter khusus, tambahkan karakter escape (\) sebelum setiap karakter khusus.

UserCa

String

Tidak

Tidak

Otoritas sertifikat (CA) klaster.

Anda dapat menentukan sertifikat CA untuk klaster untuk memastikan transmisi data yang aman antara server dan klien.

IsEnterpriseSecurityGroup

Boolean

Tidak

Tidak

Menentukan apakah akan membuat kelompok keamanan tingkat lanjut.

Properti ini berlaku ketika SecurityGroupId dibiarkan kosong. Nilai valid:

  • true: membuat kelompok keamanan tingkat lanjut. Jika Anda menginstal komponen Terway di klaster, Anda harus membuat kelompok keamanan tingkat lanjut.

  • false (default): tidak membuat kelompok keamanan tingkat lanjut.

MasterSystemDiskPerformanceLevel

String

Tidak

Tidak

Tingkat performa ESSD (PL) dari node master.

Nilai valid:

  • PL0

  • PL1

  • PL2

  • PL3

SocEnabled

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan penguatan berdasarkan perlindungan klasifikasi.

Nilai valid:

  • true

  • false (default)

MasterZoneIds

List

Tidak

Tidak

Informasi tentang zona tempat vSwitch node master berada.

Tidak ada.

WorkerZoneIds

List

Tidak

Tidak

Informasi tentang zona tempat vSwitch node pekerja berada.

Tidak ada.

TimeZone

String

Tidak

Tidak

Zona waktu klaster.

Tidak ada.

NodePools

List

Tidak

Tidak

Informasi tentang pool node.

Untuk informasi lebih lanjut, lihat Properti NodePools.

NodeNameMode

String

Tidak

Tidak

Nama kustom node.

Nama node terdiri dari awalan, substring alamat IP, dan akhiran.

  • Awalan dan akhiran dapat berisi satu atau lebih bagian yang dipisahkan oleh titik (.). Setiap bagian dapat berisi huruf kecil, angka, dan tanda hubung (-). Nama node harus dimulai dan diakhiri dengan huruf kecil atau angka.

  • Substring alamat IP terdiri dari 5 hingga 12 digit yang dipotong dari akhir alamat IP node.

DeleteOptions

Boolean

Tidak

Ya

Opsi untuk menghapus atau mempertahankan sumber daya yang terkait dengan klaster.

Untuk informasi lebih lanjut, lihat Properti DeleteOptions.

Sintaksis NodePools

"NodePools": [
  {
    "ScalingGroup": Map,
    "KubernetesConfig": Map,
    "NodePoolInfo": Map
  }
]

Properti NodePools

Properti

Tipe

Diperlukan

Editable

Deskripsi

Constraint

ScalingGroup

Map

Ya

Tidak

Konfigurasi grup penskalaan yang ingin Anda gunakan untuk pool node.

Untuk informasi lebih lanjut, lihat Properti ScalingGroup.

KubernetesConfig

Map

Tidak

Tidak

Konfigurasi klaster.

Untuk informasi lebih lanjut, lihat Properti KubernetesConfig.

NodePoolInfo

Map

Tidak

Tidak

Konfigurasi pool node.

Untuk informasi lebih lanjut, lihat Properti NodePoolInfo.

Sintaksis MaintenanceWindow

"MaintenanceWindow": {
  "Enable": Boolean,
  "MaintenanceTime": String,
  "Duration": String,
  "WeeklyPeriod": String,
  "Recurrence": String
}

Properti MaintenanceWindow

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Enable

Boolean

Tidak

Tidak

Menentukan apakah akan mengaktifkan jendela pemeliharaan.

Nilai valid:

  • true

  • false

Nilai default: false.

MaintenanceTime

String

Tidak

Tidak

Waktu mulai jendela pemeliharaan.

Tentukan waktu dalam format Request for Comments (RFC) 3339.

Duration

String

Tidak

Tidak

Durasi jendela pemeliharaan.

Nilai valid: 1 hingga 24. Satuan: jam.

Nilai default: 3.

WeeklyPeriod

String

Tidak

Tidak

Siklus pemeliharaan.

Pisahkan beberapa nilai dengan koma (,). Nilai valid: Senin, Selasa, Rabu, Kamis, Jumat, Sabtu, dan Minggu.

Nilai default: Kamis.

Recurrence

String

Tidak

Tidak

Aturan berulang yang ditentukan untuk jendela pemeliharaan menggunakan aturan berulang RFC 5545.

Anda harus menetapkan FREQ ke WEEKLY dan tidak dapat menentukan COUNT atau UNTIL.

Sintaksis ScalingGroup

"ScalingGroup": {
  "RdsInstances": List,
  "IsEnterpriseSecurityGroup": Boolean,
  "VSwitchIds": List,
  "InternetMaxBandwidthOut": Integer,
  "DataDisks": List,
  "Period": Integer,
  "InternetChargeType": String,
  "KeyPair": String,
  "SystemDiskPerformanceLevel": String,
  "ImageId": String,
  "InstanceTypes": List,
  "SystemDiskCategory": String,
  "PeriodUnit": String,
  "LoginPassword": String,
  "InstanceChargeType": String,
  "SystemDiskSize": Integer,
  "Tags": List,
  "ZoneIds": List,
  "DesiredSize": Integer
}

Properti ScalingGroup

Properti

Tipe

Diperlukan

Editable

Deskripsi

Constraint

RdsInstances

List

Tidak

Tidak

ID instance ApsaraDB RDS.

Tidak ada.

DesiredSize

Integer

Tidak

Tidak

Jumlah node yang diharapkan dalam pool node.

Tidak ada.

IsEnterpriseSecurityGroup

Boolean

Tidak

Tidak

Menentukan apakah akan secara otomatis membuat dan menggunakan kelompok keamanan tingkat lanjut.

Nilai valid:

  • true

  • false

VSwitchIds

List

Ya

Tidak

ID vSwitch.

Tidak ada.

InternetMaxBandwidthOut

Integer

Tidak

Tidak

Bandwidth maksimum keluar dari alamat IP publik node.

Satuan: Mbit/s.

Nilai valid: 1 hingga 100.

DataDisks

List

Tidak

Tidak

Konfigurasi disk data yang ingin Anda lampirkan ke node dalam pool node.

Untuk informasi lebih lanjut, lihat Properti DataDisks.

Period

Integer

Tidak

Tidak

Durasi langganan node dalam pool node.

  • Anda hanya perlu menentukan properti ini ketika InstanceChargeType disetel ke PrePaid.

  • Nilai valid Period ketika PeriodUnit disetel ke Bulan: 1, 2, 3, 6, dan 12. Nilai default: 1.

InternetChargeType

String

Tidak

Tidak

Metode penagihan alamat IP publik.

Nilai valid:

  • PayByBandwidth: bayar berdasarkan bandwidth

  • PayByTraffic: bayar berdasarkan transfer data

KeyPair

String

Tidak

Tidak

Nama pasangan kunci yang digunakan untuk masuk tanpa kata sandi.

Anda dapat menentukan KeyPair atau LoginPassword.

SystemDiskPerformanceLevel

String

Tidak

Tidak

Tingkat performa (PL) disk sistem node.

Properti ini hanya berlaku untuk ESSD.

ImageId

String

Tidak

Tidak

ID gambar kustom.

Secara default, gambar yang disediakan oleh sistem digunakan.

InstanceTypes

List

Ya

Tidak

Jenis instance.

Tidak ada.

SystemDiskCategory

String

Tidak

Tidak

Kategori disk sistem node.

Nilai valid:

  • cloud_efficiency (default): ultra disk

  • cloud_ssd: SSD standar

  • cloud_essd: ESSD

PeriodUnit

String

Tidak

Tidak

Unit durasi langganan node dalam pool node.

  • Anda harus menentukan properti ini ketika InstanceChargeType disetel ke PrePaid.

  • Tetapkan nilai PeriodUnit ke Bulan.

LoginPassword

String

Tidak

Tidak

Kata sandi untuk masuk SSH.

Anda dapat menentukan KeyPair atau LoginPassword.

Kata sandi harus memiliki panjang 8 hingga 30 karakter, dan harus mengandung setidaknya huruf besar, huruf kecil, angka, dan karakter khusus.

InstanceChargeType

String

Tidak

Tidak

Metode penagihan node dalam pool node.

Nilai valid:

  • PrePaid: langganan

  • PostPaid (default): bayar sesuai pemakaian

SystemDiskSize

Integer

Ya

Tidak

Ukuran disk sistem node.

Satuan: GiB.

Nilai valid: 40 hingga 500.

Tags

List

Tidak

Tidak

Tag yang ingin Anda tambahkan ke instance ECS.

Untuk informasi lebih lanjut, lihat Properti Tags.

ZoneIds

List

Tidak

Tidak

Zona.

Tidak ada.

Sintaksis DataDisks

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

Properti DataDisks

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

AutoSnapshotPolicyId

String

Tidak

Tidak

ID kebijakan snapshot otomatis.

Sistem secara otomatis mencadangkan disk cloud berdasarkan kebijakan snapshot otomatis yang ditentukan.

Encrypted

Boolean

Tidak

Tidak

Menentukan apakah akan mengenkripsi disk data.

Nilai valid:

  • true

  • false (default)

Size

Integer

Tidak

Tidak

Ukuran disk data.

Satuan: GiB.

Nilai valid: 40 hingga 32768.

Nilai default: 120.

Category

String

Tidak

Tidak

Kategori disk data.

Nilai valid:

  • cloud: disk dasar

  • cloud_efficiency (default): ultra disk

  • cloud_ssd: SSD standar

  • cloud_essd: ESSD

PerformanceLevel

String

Tidak

Tidak

Tingkat performa (PL) disk data node.

Properti ini hanya berlaku untuk ESSD. Tingkat performa disk bervariasi berdasarkan ukuran disk.

Untuk informasi lebih lanjut, lihat ESSD.

Sintaksis KubernetesConfig

"KubernetesConfig": {
  "Runtime": String,
  "RuntimeVersion": String,
  "CpuPolicy": String,
  "Labels": List,
  "NodeNameMode": String,
  "Taints": List
}

Properti KubernetesConfig

Properti

Tipe

Diperlukan

Editable

Deskripsi

Constraint

Runtime

String

Ya

Tidak

Runtime kontainer.

Tidak ada.

RuntimeVersion

String

Ya

Tidak

Versi runtime kontainer.

Tidak ada.

CpuPolicy

String

Tidak

Tidak

Kebijakan manajemen CPU node.

Nilai valid ketika versi Kubernetes klaster adalah 1.12.6 atau lebih baru:

  • static: memberikan afinitas dan eksklusivitas CPU yang ditingkatkan pada pod dengan karakteristik sumber daya tertentu di node.

  • none (default): menggunakan afinitas CPU default.

Labels

List

Tidak

Tidak

Label node.

Anda dapat menambahkan label ke node dalam klaster.

Untuk informasi lebih lanjut, lihat Properti Labels.

NodeNameMode

String

Tidak

Tidak

Nama kustom node.

Nama node terdiri dari awalan, substring alamat IP, dan akhiran.

  • Awalan dan akhiran dapat berisi satu atau lebih bagian yang dipisahkan oleh titik (.). Setiap bagian dapat berisi huruf kecil, angka, dan tanda hubung (-). Nama node harus dimulai dan diakhiri dengan huruf kecil atau angka.

  • Substring alamat IP terdiri dari 5 hingga 12 digit yang dipotong dari akhir alamat IP node.

Taints

List

Tidak

Tidak

Konfigurasi taint.

Untuk informasi lebih lanjut, lihat Properti Taints.

Sintaks Label

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

Properti Label

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Batasan

Nilai

String

Ya

Tidak

Nilai label.

Tidak ada.

Kunci

String

Ya

Tidak

Kunci label.

Tidak ada.

Sintaks Taints

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

Properti Taints

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Batasan

Nilai

String

Ya

Tidak

Nilai taint.

Tidak ada.

Efek

String

Tidak

Tidak

Kebijakan penjadwalan.

Nilai yang valid:

  • NoSchedule (default): Pod yang tidak mentolerir taint tidak akan dijadwalkan ke node yang mengandung taint ini. Kebijakan ini hanya memengaruhi proses penjadwalan dan hanya berlaku untuk pod baru. Kebijakan ini tidak memengaruhi pod yang sudah dijadwalkan.

  • NoExecute: Pod yang tidak mentolerir taint akan dihapus setelah Anda menambahkan taint ini ke node.

  • PreferNoSchedule: Ini adalah preferensi atau versi lunak dari NoSchedule. Kebijakan ini tidak memengaruhi pod yang sudah ada di node.

Kunci

String

Ya

Tidak

Nama taint.

Tidak ada.

Sintaksis NodePoolInfo

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

Properti NodePoolInfo

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Name

String

Ya

Tidak

Nama pool node.

Tidak ada.

Type

String

Tidak

Tidak

Jenis pool node.

Nilai valid:

  • edge

  • ess

ResourceGroupId

String

Tidak

Ya

Grup sumber daya tempat pool node berada.

Tidak ada.

Sintaksis Tags

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

Properti Tags

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Key

String

Ya

Tidak

Kunci tag.

Kunci tag harus memiliki panjang 1 hingga 64 karakter, dan tidak boleh dimulai dengan aliyun, acs:, https://, atau http://.

Value

String

Ya

Tidak

Nilai tag.

Nilai tag bisa memiliki panjang hingga 128 karakter, dan tidak boleh dimulai dengan aliyun, acs:, https://, atau http://.

Sintaksis MasterDataDisks

"MasterDataDisks": [
  {
    "Category": String,
    "Size": Number
  }
]

Properti MasterDataDisks

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Category

String

Ya

Tidak

Kategori disk data node master.

Nilai valid:

  • cloud: disk dasar

  • cloud_ssd: SSD standar

  • cloud_efficiency (default): ultra disk

  • cloud_essd: ESSD

Size

Number

Ya

Tidak

Ukuran disk data node master.

Nilai valid: 40 hingga 32768.

Satuan: GiB.

Sintaksis Addons

"Addons": [
  {
    "Disabled": Boolean,
    "Config": String,
    "Name": String
  }
]

Properti Addons

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

Disabled

Boolean

Tidak

Tidak

Menentukan apakah akan menonaktifkan instalasi default.

Nilai valid:

  • true

  • false

Config

String

Tidak

Tidak

Konfigurasi komponen.

Tidak ada.

Name

String

Ya

Tidak

Nama komponen.

Tidak ada.

Sintaksis Runtime

"Runtime": {
    "Name": String,
    "Version": String
  }

Properti Runtime

Properti

Tipe

Diperlukan

Editable

Deskripsi

Constraint

Name

String

Ya

Tidak

Nama runtime kontainer.

Nilai valid:

  • containerd

  • docker (default)

  • Sandboxed-Container.runv

Version

String

Tidak

Tidak

Versi runtime kontainer.

  • Nilai valid ketika Name disetel ke containerd: 1.4.4.

  • Nilai valid ketika Name disetel ke docker: 19.03.5.

  • Nilai valid ketika Name disetel ke Sandboxed-Container.runv: 3.4.1.

Sintaksis DeleteOptions

"DeleteOptions": [{
    "DeleteMode": String,
    "ResourceType": String
}]

Properti DeleteOptions

Properti

Tipe

Diperlukan

Dapat Diedit

Deskripsi

Kendala

DeleteMode

String

Tidak

Ya

Kebijakan penghapusan untuk jenis sumber daya yang ditentukan.

Nilai valid:

  • delete: menghapus jenis sumber daya yang ditentukan.

  • retain: mempertahankan jenis sumber daya yang ditentukan.

ResourceType

String

Tidak

Ya

Jenis sumber daya.

Nilai valid:

  • SLB: Sumber daya SLB yang dibuat untuk Layanan. Secara default, sumber daya SLB dihapus.

  • ALB: Sumber daya Application Load Balancer (ALB) yang dibuat oleh pengontrol ALB Ingress. Secara default, sumber daya ALB dipertahankan.

  • SLS_Data: Proyek SLS yang digunakan oleh fitur logging klaster. Secara default, proyek SLS dipertahankan.

  • SLS_ControlPlane: Proyek SLS yang digunakan oleh log control plane dari klaster ACK yang dikelola. Secara default, proyek SLS dipertahankan.

  • PrivateZone: Sumber daya Alibaba Cloud DNS PrivateZone yang dibuat oleh klaster ACK Serverless. Secara default, sumber daya Alibaba Cloud DNS PrivateZone dipertahankan.

Nilai Kembali

Fn::GetAtt

  • ClusterId: ID klaster.

  • TaskId: ID tugas. ID tugas secara otomatis ditetapkan oleh sistem dan digunakan untuk menanyakan status tugas.

  • WorkerRamRoleName: nama peran Resource Access Management (RAM) untuk node pekerja.

  • ScalingGroupId: ID grup penskalaan.

  • DefaultUserKubeConfig: file kubeconfig default dari kredensial klaster.

  • Nodes: node dalam klaster.

  • ScalingRuleId: ID aturan penskalaan.

  • PrivateUserKubConfig: file kubeconfig pribadi dari kredensial klaster.

  • ScalingConfigurationId: ID konfigurasi penskalaan.

  • APIServerSLBId: ID instance SLB yang terkait dengan server API.

  • IngressSLBId: ID SLB Ingress.

Contoh

YAML

ROSTemplateFormatVersion: '2015-09-01'
Description: Test Create KubernetesCluster
Parameters:
  SystemDiskCategory:
    Type: String
    Description: Kategori disk sistem. Default adalah cloud_efficiency. mendukung cloud|cloud_efficiency|cloud_ssd|cloud_essd|ephemeral_ssd.Instance lama tidak akan berubah.
    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
      VpcId:
        Ref: Vpc
      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": "Kategori disk sistem. Default adalah cloud_efficiency. mendukung cloud|cloud_efficiency|cloud_ssd|cloud_essd|ephemeral_ssd.Instance lama tidak akan berubah.",
      "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"
        },
        "VpcId": {
          "Ref": "Vpc"
        },
        "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"
        ]
      }
    }
  }
}