Chame a operação CreateCluster com profile=Edge para configurar rede, runtime e nós worker.
Depuração
Sintaxe da requisição
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" ]
}
Parâmetros da requisição
Tabela 1. Parâmetros do corpo da requisição
| Parâmetro | Tipo | Obrigatório | Exemplo | Descrição |
|---|---|---|---|---|
| name | String | Sim | demo-edge-cluster | Nome do cluster. Deve ter de 1 a 63 caracteres e pode conter dígitos, letras, caracteres chineses e hifens (-). Não pode começar com hífen. |
| cluster_type | String | Sim | ManagedKubernetes | Tipo do cluster. Defina como ManagedKubernetes para clusters ACK Edge. |
| disable_rollback | Boolean | Não | true | Descontinuado. Indica se o sistema deve reverter em caso de falha na criação do cluster. Valores válidos: true (reverter) e false (não reverter). Valor padrão: false. |
| timeout_mins | Long | Não | 60 | Descontinuado. Tempo limite para criação de recursos. Unidade: minutos. Valor padrão: 60. |
| kubernetes_version | String | Não | 1.30.1-aliyun.1 | Versão do Kubernetes. O padrão é a versão mais recente. O ACK oferece as mesmas versões do Kubernetes open source. O console disponibiliza as três versões mais recentes; use operações de API para versões anteriores. Consulte Suporte a versões do Kubernetes. |
| runtime | Array de runtime | Não | {"name": "containerd", "version": "1.6.20"} |
Runtime de contêiner. Runtimes compatíveis: containerd e docker. Campos: name (nome do runtime) e version (versão do runtime). |
| region_id | String | Sim | cn-beijing | ID da região do cluster. |
| key_pair | String | Sim | demo-key | Descontinuado. Nome do par de chaves. Defina este parâmetro ou login_password. |
| login_password | String | Sim | HelloWorld123 | Descontinuado. Senha de login SSH. Defina este parâmetro ou key_pair. A senha deve ter de 8 a 30 caracteres e incluir pelo menos três dos seguintes tipos: letras maiúsculas, letras minúsculas, dígitos e caracteres especiais. |
| num_of_nodes | Long | Sim | 1 | Descontinuado. Quantidade de nós worker. Valores válidos: 0 a 100. |
| profile | String | Sim | Edge | Identifica o cluster como ACK Edge. Valor padrão: Edge. |
| logging_type | String | Não | SLS | Indica se o Simple Log Service (SLS) deve ser ativado. Defina como SLS para ativar. Aplica-se apenas a clusters ACK Serverless. |
| snat_entry | Boolean | Não | true | Define se o sistema deve configurar regras SNAT para a Virtual Private Cloud (VPC). Valores válidos: true (configurar SNAT para acesso à internet) e false (sem SNAT). Defina como false se a VPC já tiver acesso à internet ou como true se as aplicações do cluster precisarem de acesso à internet. Valor padrão: false. |
| vswitch_ids | Array de String | Sim | vsw-2ze48rkq464rsdts1\*\*\*\* | IDs dos vSwitches. Especifique de um a três vSwitches. |
| worker_system_disk_category | String | Sim | cloud_efficiency | Descontinuado. Tipo de disco de sistema para nós worker. Valores válidos: cloud_efficiency (ultra disk) e cloud_ssd (SSD padrão). Valor padrão: cloud_ssd. |
| worker_system_disk_size | Long | Sim | 100 | Descontinuado. Tamanho do disco de sistema para nós worker. Unidade: GiB. Valores válidos: 40 a 500 (deve ser pelo menos max{40, ImageSize}). Valor padrão: 120. |
| container_cidr | String | Não | 172.20.0.0 |
Bloco CIDR dos pods. Não pode sobrepor ao bloco CIDR da VPC. Padrão: 172.16.0.0/16 se a VPC for criada automaticamente.
Importante
Este parâmetro é obrigatório se o cluster usar Flannel como plug-in de rede e opcional se usar Terway. |
| cloud_monitor_flags | Boolean | Não | true | Descontinuado. Indica se o agente do CloudMonitor deve ser instalado. Valores válidos: true (instalar) e false (não instalar). Valor padrão: false. |
| endpoint_public_access | Boolean | Não | true |
Define se o acesso à internet para o servidor de API deve ser ativado. Valores válidos:
true
(ativar) e
false
(desativar; servidor de API acessível apenas na rede interna). Valor padrão:
true
.
Importante
Em clusters ACK Edge, os nós de borda se comunicam com o plano de controle pela internet. Ative o acesso à internet para o servidor de API ao criar um cluster ACK Edge. |
| service_cidr | String | Sim | 172.21.0.0 | Bloco CIDR de serviço. Não pode sobrepor aos blocos CIDR dos pods ou da VPC. Padrão: 172.19.0.0/20 se a VPC for criada automaticamente. |
| addons | Array de addon | Não | \[{"name":"flannel","config":""},{"name":"logtail-ds-docker","config":""},{"name":"alibaba-log-controller","config":"{\"IngressDashboardEnabled\":\"false\"}"}\] |
Add-ons do cluster. Campos: name (obrigatório), config (opcional; deixe em branco se não utilizado) e disabled (opcional; desativa a instalação automática). Plug-in de rede (obrigatório): Flannel ou Terway. Flannel: [{"name":"flannel","config":""}]. Terway: [{"name":"terway-eniip","config":""}]. Plug-in de volume (opcional): Container Storage Interface (CSI): [{"name":"csi-plugin","config":""},{"name":"csi-provisioner","config":""}].
Add-on do Log Service
(opcional): Desativar o SLS desabilita a auditoria do cluster. Projeto existente: [{"name":"logtail-ds","config":"{\"IngressDashboardEnabled\":\"true\",\"sls_project_name\":\"your_sls_project_name\"}"}]. Novo projeto: [{"name":"logtail-ds","config":"{\"IngressDashboardEnabled\":\"true\"}"}]. Controlador de Ingress (opcional): Instalado por padrão em clusters ACK dedicados. Com acesso à internet: [{"name":"nginx-ingress-controller","config":"{\"IngressSlbNetworkType\":\"internet\"}"}]. Ignorar: [{"name":"nginx-ingress-controller","config":"","disabled":true}]. Central de eventos (opcional): Ativada por padrão. Configuração: [{"name":"ack-node-problem-detector","config":"{\"sls_project_name\":\"your_sls_project_name\"}"}]. Consulte Criar e usar uma central de eventos.
|
| tags | Array de tag | Não | \[{"key":"env","value":"prod"}\] | Tags a adicionar ao cluster. key: chave da tag. value: valor da tag. |
| vpcid | String | Sim | vpc-2zeik9h3ahvv2zz95\*\*\*\* |
ID da VPC. Obrigatório para criar o cluster.
Nota
Deixe |
| worker_data_disks | Array de data_disk | Não | — | Descontinuado. Configuração de discos de dados para nós worker, incluindo tipo e tamanho do disco. |
| deletion_protection | Boolean | Não | true | Indica se a proteção contra exclusão deve ser ativada. Quando ativada, impede a exclusão do cluster pelo console ou por operações de API. Valores válidos: true (ativar) e false (desativar). Valor padrão: false. |
| node_cidr_mask | String | Não | 25 | Tamanho da máscara CIDR do nó. Determina o número máximo de endereços IP de pods por nó. Aplica-se apenas ao plug-in Flannel. Valor padrão: 25. |
| worker_instance_types | Array de String | Sim | ecs.n4.large | Descontinuado. Tipos de instância ECS para nós worker. Especifique pelo menos um tipo, listado em ordem decrescente de prioridade. O sistema usará o próximo tipo se o atual estiver indisponível. Consulte Visão geral das famílias de instâncias. |
| worker_instance_charge_type | String | Sim | PrePaid | Descontinuado. Método de faturamento dos nós worker. Valores válidos: PrePaid (assinatura) e PostPaid (pagamento conforme o uso). Valor padrão: PostPaid. |
| security_group_id | String | Não | sg-bp1bdue0qc1g7k\*\*\*\* | ID de um grupo de segurança existente. Defina este parâmetro ou is_enterprise_security_group. Os nós do cluster são adicionados automaticamente a este grupo de segurança. |
| is_enterprise_security_group | Boolean | Não | true |
Indica se um grupo de segurança avançado deve ser criado. Aplica-se apenas quando
security_group_id
não estiver definido. Valores válidos:
true
(criar) e
false
(não criar). Valor padrão:
true
.
Nota
Para usar um grupo de segurança básico, garanta que o total de nós e pods Terway não exceda 2.000. Para clusters Terway, use um grupo de segurança avançado. |
| rds_instances | rds_instances | Não | rm-2zev748xi27xc\*\*\*\* | Descontinuado. Nomes das instâncias ApsaraDB RDS. |
| cluster_spec | String | Não | ack.pro.small | Tipo de cluster gerenciado ACK. Valores válidos: ack.pro.small (ACK Edge Pro) e ack.standard (ACK Edge Basic). Valor padrão: ack.standard. Se deixado em branco, o sistema cria um cluster ACK Edge Basic.ack.standard
. Consulte Introdução aos clusters ACK Edge Pro.
|
| resource_group_id | String | Não | rg-acfm3mkrure\*\*\*\* | ID do grupo de recursos. Use para isolar clusters em diferentes grupos de recursos. |
Sintaxe da resposta
HTTP/1.1 200
Content-Type:application/json
{
"cluster_id" : "String",
"request_id" : "String",
"task_id" : "String"
}
Parâmetros da resposta
Tabela 2. Parâmetros do corpo da resposta
|
Parâmetro |
Tipo |
Exemplo |
Descrição |
|
cluster_id |
String |
cb95aa626a47740afbf6aa099b650\\\\ |
ID do cluster. |
|
request_id |
String |
687C5BAA-D103-4993-884B-C35E4314A1E1 |
ID da requisição. |
|
task_id |
String |
T-5a54309c80282e39ea00002f |
ID da tarefa. |
Exemplos
Exemplos de requisição
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", // Specifies that the cluster is an ACK Edge cluster.
"logging_type" : "SLS",
"worker_instance_types":[
"ecs.hfc6.large"
],
"runtime":{ // The configuration of the container runtime.
"name":"containerd", // The name of the container runtime.
"version":"1.6.20" // The version of the container runtime.
},
"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"]
}
Exemplos de resposta de sucesso
Formato XML
<cluster_id>cb95aa626a47740afbf6aa099b650****</cluster_id>
<task_id>T-5a54309c80282e39ea00002f</task_id>
<request_id>687C5BAA-D103-4993-884B-C35E4314A1E1</request_id>
Formato JSON
{
"cluster_id": "cb95aa626a47740afbf6aa099b650****",
"task_id": "T-5a54309c80282e39ea00002f",
"request_id": "687C5BAA-D103-4993-884B-C35E4314A1E1"
}
Códigos de erro
Consulte a Central de Erros.
Consulte os Códigos de erro do serviço.