Panggil CreateCluster dengan parameter profile=Edge untuk mengonfigurasi pengaturan jaringan, runtime, dan node pekerja.
Debugging
Sintaks permintaan
POST /clusters HTTP/1.1
Content-Type:application/json
{
"name" : "String",
"cluster_type" : "String",
"disable_rollback" : Boolean,
"timeout_mins" : Long,
"kubernetes_version" : "String",
"runtime" : {
"name" : "String",
"version" : "String"
},
"region_id" : "String",
"key_pair" : "String",
"login_password" : "String",
"num_of_nodes" : Long,
"profile" : "String",
"logging_type" : "String",
"snat_entry" : Boolean,
"vswitch_ids" : [ "String" ],
"worker_system_disk_category" : "String",
"worker_system_disk_size" : Long,
"container_cidr" : "String",
"cloud_monitor_flags" : Boolean,
"endpoint_public_access" : Boolean,
"service_cidr" : "String",
"addons" : [ {
"name" : "String",
"config" : "String",
"disabled" : Boolean
} ],
"tags" : [ {
"key" : "String",
"value" : "String"
} ],
"vpcid" : "String",
"worker_data_disks" : [ {
"category" : "String",
"size" : Long,
"encrypted" : "String",
"auto_snapshot_policy_id" : "String"
} ],
"deletion_protection" : Boolean,
"node_cidr_mask" : "String",
"worker_instance_types" : [ "String" ],
"worker_instance_charge_type" : "String",
"security_group_id" : "String",
"is_enterprise_security_group" : Boolean,
"rds_instances" : [ "String" ]
}
Parameter permintaan
Tabel 1. Parameter Body Permintaan
| Parameter | Tipe | Wajib | Contoh | Deskripsi |
|---|---|---|---|---|
| name | String | Ya | demo-edge-cluster | Nama kluster. Terdiri dari 1–63 karakter; dapat berisi angka, huruf, karakter Tionghoa, dan tanda hubung (-). Tidak boleh diawali dengan tanda hubung. |
| cluster_type | String | Ya | ManagedKubernetes | Tipe kluster. Tetapkan ke ManagedKubernetes untuk kluster ACK Edge. |
| disable_rollback | Boolean | Tidak | true | Usang. Menentukan apakah akan melakukan rollback saat pembuatan kluster gagal. Nilai yang valid: true (rollback) dan false (tidak rollback). Nilai default: false. |
| timeout_mins | Long | Tidak | 60 | Usang. Periode timeout untuk pembuatan resource. Satuan: menit. Nilai default: 60. |
| kubernetes_version | String | Tidak | 1.30.1-aliyun.1 | Versi Kubernetes. Default ke versi terbaru. ACK mendukung versi yang sama dengan Kubernetes open-source. Konsol menyediakan tiga versi terbaru; gunakan operasi API untuk versi sebelumnya. Lihat Dukungan versi Kubernetes. |
| runtime | Array of runtime | Tidak | {"name": "containerd", "version": "1.6.20"} |
Runtime kontainer. Runtime yang didukung: containerd dan docker. Field: name (nama runtime) dan version (versi runtime). |
| region_id | String | Ya | cn-beijing | ID wilayah kluster. |
| key_pair | String | Ya | demo-key | Usang. Nama pasangan kunci. Tetapkan parameter ini atau login_password. |
| login_password | String | Ya | HelloWorld123 | Usang. Kata sandi logon SSH. Tetapkan parameter ini atau key_pair. Terdiri dari 8–30 karakter; harus mencakup minimal tiga dari: huruf kapital, huruf kecil, angka, dan karakter khusus. |
| num_of_nodes | Long | Ya | 1 | Usang. Jumlah node pekerja. Nilai yang valid: 0 hingga 100. |
| profile | String | Ya | Edge | Mengidentifikasi kluster sebagai kluster ACK Edge. Nilai default: Edge. |
| logging_type | String | Tidak | SLS | Menentukan apakah akan mengaktifkan Simple Log Service (SLS). Tetapkan ke SLS untuk mengaktifkan. Hanya berlaku untuk kluster ACK Serverless. |
| snat_entry | Boolean | Tidak | true | Menentukan apakah akan mengonfigurasi aturan SNAT untuk Virtual Private Cloud (VPC). Nilai yang valid: true (konfigurasi SNAT untuk akses Internet) dan false (tanpa SNAT). Tetapkan ke false jika VPC sudah memiliki akses Internet, atau true jika aplikasi kluster memerlukan akses Internet. Nilai default: false. |
| vswitch_ids | Array of String | Ya | vsw-2ze48rkq464rsdts1\*\*\*\* | ID vSwitch. Tentukan satu hingga tiga vSwitch. |
| worker_system_disk_category | String | Ya | cloud_efficiency | Usang. Tipe disk sistem untuk node pekerja. Nilai yang valid: cloud_efficiency (disk ultra) dan cloud_ssd (SSD standar). Nilai default: cloud_ssd. |
| worker_system_disk_size | Long | Ya | 100 | Usang. Ukuran disk sistem untuk node pekerja. Satuan: GiB. Nilai yang valid: 40 hingga 500 (minimal max{40, ImageSize}). Nilai default: 120. |
| container_cidr | String | Tidak | 172.20.0.0 |
Blok CIDR pod. Tidak boleh tumpang tindih dengan blok CIDR VPC. Default: 172.16.0.0/16 jika VPC dibuat otomatis.
Penting
Parameter ini wajib jika kluster menggunakan Flannel sebagai plug-in jaringan, dan opsional jika kluster menggunakan Terway. |
| cloud_monitor_flags | Boolean | Tidak | true | Usang. Menentukan apakah akan menginstal agen CloudMonitor. Nilai yang valid: true (instal) dan false (lewati). Nilai default: false. |
| endpoint_public_access | Boolean | Tidak | true |
Menentukan apakah akan mengaktifkan akses Internet untuk server API. Nilai yang valid:
true
(aktifkan) dan
false
(nonaktifkan; server API hanya dapat diakses melalui jaringan internal). Nilai default:
true
.
Penting
Pada kluster ACK Edge, node edge berkomunikasi dengan lapisan kontrol melalui Internet. Aktifkan akses Internet untuk server API saat membuat kluster ACK Edge. |
| service_cidr | String | Ya | 172.21.0.0 | Blok CIDR Service. Tidak boleh tumpang tindih dengan blok CIDR pod atau VPC. Default: 172.19.0.0/20 jika VPC dibuat otomatis. |
| addons | Array of addon | Tidak | \[{"name":"flannel","config":""},{"name":"logtail-ds-docker","config":""},{"name":"alibaba-log-controller","config":"{\"IngressDashboardEnabled\":\"false\"}"}\] |
Add-on kluster. Field: name (wajib), config (opsional; biarkan kosong jika tidak digunakan), dan disabled (opsional; nonaktifkan instalasi otomatis). Plug-in jaringan (wajib): Flannel atau Terway. Flannel: [{"name":"flannel","config":""}]. Terway: [{"name":"terway-eniip","config":""}]. Plug-in volume (opsional): Container Storage Interface (CSI): [{"name":"csi-plugin","config":""},{"name":"csi-provisioner","config":""}].
Add-on Layanan Log
(opsional): Menonaktifkan SLS akan menonaktifkan audit kluster. Proyek yang ada: [{"name":"logtail-ds","config":"{\"IngressDashboardEnabled\":\"true\",\"sls_project_name\":\"your_sls_project_name\"}"}]. Proyek baru: [{"name":"logtail-ds","config":"{\"IngressDashboardEnabled\":\"true\"}"}]. Kontroler Ingress (opsional): Diinstal secara default di kluster khusus ACK. Dengan akses Internet: [{"name":"nginx-ingress-controller","config":"{\"IngressSlbNetworkType\":\"internet\"}"}]. Lewati: [{"name":"nginx-ingress-controller","config":"","disabled":true}]. Pusat event (opsional): Diaktifkan secara default. Konfigurasi: [{"name":"ack-node-problem-detector","config":"{\"sls_project_name\":\"your_sls_project_name\"}"}]. Lihat Buat dan gunakan pusat event.
|
| tags | Array of tag | Tidak | \[{"key":"env","value":"prod"}\] | Label yang akan ditambahkan ke kluster. key: kunci label. value: nilai label. |
| vpcid | String | Ya | vpc-2zeik9h3ahvv2zz95\*\*\*\* |
ID VPC. Wajib untuk pembuatan kluster.
Catatan
Biarkan |
| worker_data_disks | Array of data_disk | Tidak | — | Usang. Konfigurasi disk data untuk node pekerja, termasuk tipe dan ukuran disk. |
| deletion_protection | Boolean | Tidak | true | Menentukan apakah akan mengaktifkan perlindungan penghapusan. Saat diaktifkan, kluster tidak dapat dihapus dari Konsol atau melalui operasi API. Nilai yang valid: true (aktifkan) dan false (nonaktifkan). Nilai default: false. |
| node_cidr_mask | String | Tidak | 25 | Ukuran mask CIDR node, yang menentukan jumlah maksimum alamat IP pod per node. Hanya berlaku dengan plug-in Flannel. Nilai default: 25. |
| worker_instance_types | Array of String | Ya | ecs.n4.large | Usang. Tipe instans ECS untuk node pekerja. Tentukan minimal satu tipe, diurutkan berdasarkan prioritas menurun; sistem akan beralih ke tipe berikutnya jika tipe pertama tidak tersedia. Lihat Ikhtisar keluarga instans. |
| worker_instance_charge_type | String | Ya | PrePaid | Usang. Metode penagihan node pekerja. Nilai yang valid: PrePaid (langganan) dan PostPaid (bayar sesuai penggunaan). Nilai default: PostPaid. |
| security_group_id | String | Tidak | sg-bp1bdue0qc1g7k\*\*\*\* | ID grup keamanan yang sudah ada. Tetapkan parameter ini atau is_enterprise_security_group. Node kluster secara otomatis ditambahkan ke grup keamanan ini. |
| is_enterprise_security_group | Boolean | Tidak | true |
Menentukan apakah akan membuat kelompok keamanan tingkat lanjut. Hanya berlaku saat
security_group_id
tidak ditetapkan. Nilai yang valid:
true
(buat) dan
false
(lewati). Nilai default:
true
.
Catatan
Untuk menggunakan kelompok keamanan dasar, pastikan total node dan pod Terway tidak melebihi 2.000. Untuk kluster Terway, gunakan kelompok keamanan tingkat lanjut. |
| rds_instances | rds_instances | Tidak | rm-2zev748xi27xc\*\*\*\* | Usang. Nama instans ApsaraDB RDS. |
| cluster_spec | String | Tidak | ack.pro.small | Tipe kluster ACK yang dikelola. Nilai yang valid: ack.pro.small (ACK Edge Pro) dan ack.standard (ACK Edge Basic). Nilai default: ack.standard. Jika dibiarkan kosong, kluster ACK Edge Basic akan dibuat.ack.standard
. Lihat pengenalan kluster ACK Edge Pro.
|
| resource_group_id | String | Tidak | rg-acfm3mkrure\*\*\*\* | ID kelompok sumber daya. Gunakan untuk mengisolasi kluster di antara kelompok sumber daya. |
Sintaks respons
HTTP/1.1 200
Content-Type:application/json
{
"cluster_id" : "String",
"request_id" : "String",
"task_id" : "String"
}
Parameter respons
Tabel 2. Parameter body respons
| Parameter | Tipe | Contoh | Deskripsi |
|---|---|---|---|
| cluster_id | String | cb95aa626a47740afbf6aa099b650\*\*\*\* | ID kluster. |
| request_id | String | 687C5BAA-D103-4993-884B-C35E4314A1E1 | ID permintaan. |
| task_id | String | T-5a54309c80282e39ea00002f | ID tugas. |
Contoh
Permintaan contoh
POST /clusters
<Common request headers>
{
"name":"ACK Edge cluster",
"cluster_type":"ManagedKubernetes",
"disable_rollback":true,
"timeout_mins":60,
"kubernetes_version":"1.14.8-aliyunedge.1",
"region_id":"cn-zhangjiakou",
"snat_entry":true,
"cloud_monitor_flags":true,
"endpoint_public_access":true,
"deletion_protection":true,
"node_cidr_mask":"25",
"tags":[
{
"key":"tag-k",
"value":"tag-v"
}
],
"addons":[
{
"name":"logtail-ds-docker"
},
{
"name":"alibaba-log-controller",
"config":"{\"IngressDashboardEnabled\":\"false\"}"
},
{
"name":"flannel"
},
{
"name":"alicloud-monitor-controller"
}
],
"profile":"Edge", // Menentukan bahwa kluster adalah kluster ACK Edge.
"logging_type" : "SLS",
"worker_instance_types":[
"ecs.hfc6.large"
],
"runtime":{ // Konfigurasi runtime kontainer.
"name":"containerd", // Nama runtime kontainer.
"version":"1.6.20" // Versi runtime kontainer.
},
"num_of_nodes":1,
"worker_system_disk_category":"cloud_ssd",
"worker_system_disk_size":40,
"worker_data_disks":[
{
"category":"cloud_efficiency",
"size":"40",
"encrypted":"false",
"auto_snapshot_policy_id":"",
}
],
"worker_instance_charge_type":"PostPaid",
"vpcid":"vpc-8vb435kr467tnfj42****",
"container_cidr":"172.20.0.0/16",
"service_cidr":"172.21.0.0/20",
"vswitch_ids":[
"vsw-8vbhdhn461i65p32g****"
],
"login_password":"Hello1234",
"key_pair": "sin-name",
"security_group_id":"sg-8vb7grbyvlb10j0i****",
"is_enterprise_security_group":true,
"rds_instances": ["rm-xx","rm-xx"]
}
Respons sukses contoh
XML format
<cluster_id>cb95aa626a47740afbf6aa099b650****</cluster_id>
<task_id>T-5a54309c80282e39ea00002f</task_id>
<request_id>687C5BAA-D103-4993-884B-C35E4314A1E1</request_id>
JSON format
{
"cluster_id": "cb95aa626a47740afbf6aa099b650****",
"task_id": "T-5a54309c80282e39ea00002f",
"request_id": "687C5BAA-D103-4993-884B-C35E4314A1E1"
}
Kode kesalahan
Lihat Pusat Kesalahan.
Lihat Kode kesalahan layanan.