全部产品
Search
文档中心

Container Service for Kubernetes:Panggil operasi CreateCluster untuk membuat klaster ACK Serverless

更新时间:Jul 06, 2025

Anda dapat memanggil operasi CreateCluster untuk membuat klaster Container Service for Kubernetes (ACK) Serverless.

Sintaks permintaan

POST /clusters HTTP/1.1
Content-Type:application/json
{
  "cluster_type" : "String",
  "profile": "String",
  "cluster_spec" : "String",
  "name" : "String",
  "kubernetes_version" : "String",
  "private_zone" : Boolean,
  "region_id" : "String",
  "endpoint_public_access" : Boolean,
  "service_discovery_types" : [ "String" ],
  "zoneid" : "String",
  "logging_type" : "String",
  "tags" : [ {
    "key" : "String",
    "value" : "String"
  } ],
  "deletion_protection" : Boolean,
  "service_cidr" : "String",
  "timezone" : "String",
  "addons" : [ {
    "name" : "String",
    "config" : "String",
    "disabled" : Boolean
  } ],
  "snat_entry" : Boolean,
  "vpcid" : "String",
  "vswitch_ids" : [ "String" ],
  "security_group_id" : "String"
}

Parameter permintaan

Tabel 1. Parameter Permintaan

Parameter

Tipe

Diperlukan

Contoh

Deskripsi

cluster_type

String

Ya

ManagedKubernetes

Jenis klaster. Atur nilainya menjadi ManagedKubernetes. Dalam hal ini, jika Anda menyetel parameter profile ke Serverless, sebuah klaster ACK Serverless akan dibuat.

profile

String

Ya

Serverless

Pengenal klaster. Jika Anda menyetel parameter ini ke Serverless dan parameter cluster_type ke ManagedKubernetes, sebuah klaster ACK Serverless akan dibuat.

cluster_spec

String

Tidak

ack.pro.small

Jenis klaster ACK Serverless. Nilai yang valid:

  • ack.pro.small: sebuah klaster ACK Serverless profesional.

  • ack.standard: sebuah klaster ACK Serverless standar.

Nilai default: ack.standard. Jika Anda tidak menentukan parameter ini, sebuah klaster ACK Serverless standar akan dibuat.

Untuk informasi lebih lanjut, lihat Ikhtisar klaster.

name

String

Ya

cluster-demo

Nama klaster.

Nama harus memiliki panjang 1 hingga 63 karakter dan dapat berisi angka, huruf, dan tanda hubung (-). Nama tidak boleh dimulai dengan tanda hubung (-).

kubernetes_version

String

Tidak

1.32.1-aliyun.1

Versi Kubernetes dari klaster. ACK mendukung semua versi Kubernetes sumber terbuka. Jika parameter ini tidak ditentukan, versi Kubernetes stabil terbaru akan digunakan (direkomendasikan).

Anda dapat membuat dua jenis klaster yang menjalankan versi Kubernetes terbaru di konsol ACK. Jika Anda ingin membuat klaster yang menjalankan versi Kubernetes sebelumnya, panggil operasi API. Untuk informasi lebih lanjut tentang versi Kubernetes yang didukung oleh ACK, lihat Ikhtisar versi Kubernetes yang didukung oleh ACK.

private_zone

Boolean

Tidak

false

Menentukan apakah akan mengaktifkan Alibaba Cloud DNS PrivateZone untuk penemuan layanan. Nilai yang valid:

  • true: mengaktifkan Alibaba Cloud DNS PrivateZone untuk penemuan layanan.

  • false: menonaktifkan Alibaba Cloud DNS PrivateZone untuk penemuan layanan.

Untuk informasi lebih lanjut, lihat Aktifkan penemuan layanan berdasarkan Alibaba Cloud DNS PrivateZone.

region_id

String

Ya

cn-beijing

ID wilayah tempat Anda ingin menerapkan klaster.

endpoint_public_access

Boolean

Tidak

true

Menentukan apakah klaster diizinkan mengakses server API melalui Internet. Nilai yang valid:

  • true: mengizinkan klaster mengakses server API melalui Internet.

  • false: tidak mengizinkan klaster mengakses server API melalui Internet. Dalam hal ini, klaster hanya dapat mengakses server API melalui VPC tertentu.

Nilai default: true.

service_discovery_types

Array of String

Tidak

PrivateZone

Jenis penemuan layanan yang diterapkan di klaster ACK Serverless. Nilai yang valid:

  • CoreDNS: komponen penemuan layanan standar asli Kubernetes. Anda harus menerapkan satu set kontainer untuk menggunakan layanan resolusi DNS. Secara default, dua instance kontainer elastis (ECI) yang memiliki 0,25 core CPU dan 512 MiB memori digunakan.

  • PrivateZone: layanan resolusi DNS yang disediakan oleh Alibaba Cloud. Anda harus mengaktifkan Alibaba Cloud DNS PrivateZone sebelum dapat menggunakannya untuk penemuan layanan.

Secara default, parameter ini tidak ditentukan.

zoneid

String

Tidak

cn-beiji****

ID zona tempat klaster berada.

Penting

Jika Anda tidak menentukan parameter vpc_id atau vswitch_ids, Anda harus menentukan parameter zoneid.

logging_type

String

Tidak

SLS

Menentukan apakah akan mengaktifkan Layanan Log Sederhana untuk klaster. Atur nilainya menjadi SLS. Parameter ini hanya berlaku untuk klaster ACK Serverless.

tags

Array of tag

Tidak

[{"key": "env", "value": "prod"}]

Tag yang ingin Anda tambahkan ke klaster. Tag terdiri dari elemen-elemen berikut:

  • key: kunci tag.

  • value: nilai tag.

deletion_protection

Boolean

Tidak

true

Menentukan apakah akan mengaktifkan perlindungan penghapusan untuk klaster. Setelah perlindungan penghapusan diaktifkan, klaster tidak dapat dihapus di konsol ACK atau dengan memanggil operasi API. Nilai yang valid:

  • true: mengaktifkan perlindungan penghapusan untuk klaster.

  • false: menonaktifkan perlindungan penghapusan untuk klaster.

Nilai default: false.

service_cidr

String

Tidak

172.21.0.0/20

Blok CIDR Layanan. Nilai yang valid: 10.0.0.0/16-24, 172.16-31.0.0/16-24, dan 192.168.0.0/16-24.

Blok CIDR Layanan tidak boleh tumpang tindih dengan blok CIDR VPC atau blok CIDR klaster yang ada di VPC. Blok CIDR VPC adalah 10.1.0.0/21. Blok CIDR Layanan tidak dapat diubah setelah klaster dibuat.

Nilai default: 172.19.0.0/20.

timezone

String

Tidak

Asia/Shanghai

Zona waktu klaster. Untuk informasi lebih lanjut, lihat Zona waktu yang didukung.

addons

Array of addon

Tidak

[{"name":"logtail-ds","config":"{\"sls_project_name\":\"your_sls_project_name\"}"}]

Komponen yang ingin Anda instal di klaster. Anda dapat menentukan parameter berikut:

  • name: wajib. Parameter ini menunjukkan nama komponen.

  • config: opsional. Jika parameter ini dibiarkan kosong, tidak diperlukan konfigurasi.

  • disabled: opsional. Parameter ini menentukan apakah akan menonaktifkan instalasi otomatis.

Komponen Layanan Log: opsional.

Catatan

Jika Layanan Log Sederhana tidak diaktifkan untuk klaster, Anda tidak dapat menggunakan fitur audit klaster.

  • Untuk menggunakan proyek Layanan Log Sederhana yang ada, tentukan komponen dalam format berikut: [{"name": "logtail-ds","config": "{\"IngressDashboardEnabled\":\"true\",\"sls_project_name\":\"your_sls_project_name\"}"}].

  • Untuk membuat proyek Layanan Log Sederhana, tentukan komponen dalam format berikut: [{"name": "logtail-ds","config": "{\"IngressDashboardEnabled\":\"true\"}"}].

Kontroler Ingress: opsional. Secara default, komponen nginx-ingress-controller diinstal di klaster ACK khusus.

  • Untuk menginstal nginx-ingress-controller dan mengaktifkan akses Internet, tentukan kontroler Ingress dalam format berikut: [{"name":"nginx-ingress-controller","config":"{\"IngressSlbNetworkType\":\"internet\"}"}].

  • Jika Anda tidak ingin menginstal nginx-ingress-controller, tentukan komponen dalam format berikut: [{"name": "nginx-ingress-controller","config": "","disabled": true}.

snat_entry

Boolean

Tidak

true

Menentukan apakah akan membuat gateway NAT dan mengonfigurasi aturan Source Network Address Translation (SNAT) saat Anda membuat klaster ACK Serverless. Nilai yang valid:

  • true: secara otomatis membuat gateway NAT dan mengonfigurasi aturan SNAT. Jika Anda menyetel parameter ini ke true, klaster di VPC dapat mengakses Internet.

  • false: tidak membuat gateway NAT atau mengonfigurasi aturan SNAT. Jika Anda menyetel parameter ini ke false, klaster di VPC tidak dapat mengakses Internet.

Nilai default: false.

vpcid

String

Tidak

vpc-2zeik9h3ahvv2zz95****

VPC tempat Anda ingin menerapkan klaster. Anda harus menentukan VPC saat membuat klaster.

Catatan

Jika Anda menentukan parameter vpcid, Anda juga harus menentukan parameter vswitch_ids.

vswitch_ids

Array of String

Tidak

["vsw-2ze97jwri7cei0mpw****"]

ID vSwitch. Anda dapat menentukan satu hingga tiga vSwitch.

security_group_id

String

Tidak

sg-bp1bdue0qc1g7k****

ID grup keamanan yang ada yang ingin Anda gunakan untuk klaster. Anda harus menentukan parameter ini atau parameter is_enterprise_security_group. Node dalam klaster secara otomatis ditambahkan ke grup keamanan yang ditentukan.

resource_group_id

String

Tidak

rg-acfm3mkrure****

ID grup sumber daya tempat klaster berada. Anda dapat menggunakan parameter ini untuk mengisolasi klaster yang berbeda.

Sintaks respons

HTTP/1.1 200
Content-Type:application/json
{
  "cluster_id" : "String",
  "request_id" : "String",
  "task_id" : "String"
}

Parameter respons

Tabel 2. Parameter Respons

Parameter

Tipe

Contoh

Deskripsi

cluster_id

String

cb95aa626a47740afbf6aa099b650****

ID klaster.

request_id

String

687C5BAA-D103-4993-884B-C35E4314A1E1

ID permintaan.

task_id

String

T-5a54309c80282e39ea00002f

ID tugas.

Contoh 1: Buat klaster ACK Serverless di VPC yang dibuat secara otomatis

Contoh Permintaan

POST /clusters HTTP/1.1
<Common request headers>
{
    "cluster_type":"ManagedKubernetes",
    "profile":"Serverless",
    "cluster_spec":"ack.standard",  
    "name":"test-ask",
    "region_id":"cn-hangzhou",
    "endpoint_public_access":false,
    "logging_type" : "SLS",
    "private_zone":false,
    "snat_entry":true,
    "tags":[
        {
            "key":"k-aa",
            "value":"v-aa"
        }
    ],
    "deletion_protection":false,
    "addons":[
        {
            "name":"logtail-ds"
        }
    ],
    "zoneid":"cn-hangzhou-i"
}

Contoh Respons

{
    "cluster_id": "cb95aa626a47740afbf6aa099b650****",
    "RequestId": "687C5BAA-D103-4993-884B-C35E4314A1E1",
    "task_id": "T-5a54309c80282e39ea00002f",
}

Contoh 2: Buat klaster ACK Serverless di VPC yang sudah ada

Contoh Permintaan

POST /clusters HTTP/1.1
<Common request headers>
{
    "cluster_type":"ManagedKubernetes",
    "profile":"Serverless",
    "cluster_spec":"ack.pro.small", 
    "name":"ask-cluster",
    "region_id":"cn-shenzhen",
    "endpoint_public_access":true,
    "logging_type": "SLS",
    "private_zone":true,
    "tags":[
        {
            "key":"tier",
            "value":"frontend"
        }
    ],
    "deletion_protection":true,
    "addons":[
        {
            "name":"logtail-ds"
        }
    ],
    "vpcid":"vpc-wz984yvbd6lck22z3****",
    "vswitch_ids":[
        "vsw-wz9uwxhawmtzg7u9h****"
    ],
    "security_group_id":"sg-wz9b86l4s7nthi1k****"
}

Contoh Respons

{
    "cluster_id": "cb95aa626a47740afbf6aa099b650****",
    "RequestId": "687C5BAA-D103-4993-884B-C35E4314A1E1",
    "task_id": "T-5a54309c80282e39ea00002f",
}

Kode kesalahan

Untuk daftar kode kesalahan, lihat Kode Kesalahan Layanan.