Todos os produtos
Search
Central de documentação

Resource Orchestration Service:ALIYUN::ACS::Cluster

Última atualização: Jun 27, 2026

Crie um cluster do Container Service for Kubernetes (ACK).

Sintaxe

{
  "Type": "ALIYUN::ACS::Cluster",
  "Properties": {
    "Name": String,
    "Addons": List,
    "ClusterSpec": String,
    "DeletionProtection": Boolean,
    "EndpointPublicAccess": Boolean,
    "IpStack": String,
    "KubernetesVersion": String,
    "LoggingType": String,
    "LoadBalancerSpec": String,
    "MaintenanceWindow": Map,
    "PodVSwitchIds": List,
    "ResourceGroupId": String,
    "ServiceDiscoveryTypes": List,
    "IsEnterpriseSecurityGroup": Boolean,
    "SlsProjectName": String,
    "ServiceCidr": String,
    "SnatEntry": Boolean,
    "TimeZone": String,
    "ComputeClass": String,
    "Tags": List,
    "VSwitchIds": List,
    "VpcId": String,
    "PodPostpaidSpec": Map,
    "DeleteOptions": List
  }
}

Propriedades

Propriedade

Tipo

Obrigatório

Permite atualizações

Descrição

Restrição

Name

String

Sim

Não

Nome do cluster.

O nome do cluster pode conter letras maiúsculas, minúsculas, caracteres chineses, dígitos e hifens.

Addons

List

Não

Não

Componentes a instalar no cluster.

Para mais informações, consulte Propriedades de Addons.

ClusterSpec

String

Não

Não

Especificação do cluster gerenciado ACK.

Valores válidos:

  • ack.pro.small: cluster gerenciado profissional (cluster ACK Pro).

  • ack.standard: cluster gerenciado padrão.

Valor padrão: ack.pro.small.

DeletionProtection

Boolean

Não

Sim

Indica se deve ativar a proteção contra exclusão para o cluster.

Após ativar a proteção contra exclusão, não é possível excluir o cluster no console do ACK ou por chamadas de API. Valores válidos:

  • true: ativa a proteção contra exclusão para o cluster.

  • false: desativa a proteção contra exclusão para o cluster.

    Valor padrão: false.

EndpointPublicAccess

Boolean

Não

Não

Indica se deve ativar o acesso público ao servidor de API.

Valores válidos:

  • true: o servidor de API público fica acessível.

  • false: nenhum servidor de API público é criado; apenas um servidor de API privado estará disponível. Valor padrão: false.

IpStack

String

Não

Não

Pilha de IP do cluster.

Nenhuma.

KubernetesVersion

String

Não

Não

Versão do Kubernetes do cluster.

Nenhuma.

LoggingType

String

Não

Não

Tipo de log do cluster.

Por padrão, o Simple Log Service não é utilizado.

LoadBalancerSpec

String

Não

Não

Especificação da instância do Server Load Balancer.

Valores válidos:

  • slb.s1.small

  • slb.s2.small

  • slb.s2.medium

  • slb.s3.small

  • slb.s3.medium

  • slb.s3.large

MaintenanceWindow

Map

Não

Não

Janela de manutenção do cluster.

Para mais informações, consulte Propriedades de MaintenanceWindow.

PodVSwitchIds

List

Não

Não

vSwitches destinados aos pods.

Especifique o parâmetro PodVSwitchIds ao selecionar o plug-in de rede Terway para o cluster. Observação:

  • Para cada vSwitch atribuído a um nó, especifique pelo menos um vSwitch de pod na mesma zona. O vSwitch de pod conecta os pods dentro de um nó e garante a comunicação de rede, diferindo do vSwitch do nó, usado para comunicação entre nós ou externa.

  • O vSwitch de pod não pode ser igual ao vSwitch do nó. Isso assegura isolamento e divisão hierárquica na arquitetura de rede, melhorando a segurança do sistema e a eficiência de gerenciamento.

  • Defina o comprimento da máscara de sub-rede do bloco CIDR do vSwitch de pod como 19 ou menos.

ResourceGroupId

String

Não

Sim

ID do grupo de recursos.

Nenhuma.

ServiceDiscoveryTypes

List

Não

Não

Tipos de descoberta de serviço no cluster.

Método de descoberta de serviço para o cluster serverless Kubernetes (ASK).

CoreDNS: plug-in padrão de descoberta de serviço fornecido pelo Kubernetes open source.

Implante um conjunto de containers no cluster para resolução de DNS.

Por padrão, duas instâncias ECI são provisionadas, cada uma com 0,25 núcleos de cpu e 512 MiB de memória.

PrivateZone: para usar o Alibaba Cloud PrivateZone na descoberta de serviço,

ative o serviço PrivateZone.

Valor padrão: Desativado.

SlsProjectName

String

Não

Não

Nome do projeto SLS.

Se você definir LoggingType como SLS e deixar SlsProjectName vazio, um novo projeto será criado.

ServiceCidr

String

Não

Não

Bloco CIDR de serviço. Não deve entrar em conflito com o bloco CIDR da VPC ou com o bloco CIDR do container.

Quando o sistema cria automaticamente uma VPC, o bloco CIDR 172.19.0.0/20 é usado por padrão.

SnatEntry

Boolean

Não

Não

Indica se deve configurar SNAT para a rede.

Se a VPC tiver acesso à Internet, defina este parâmetro como false.

Se a VPC existente não tiver acesso à Internet:

Ao definir este parâmetro como true, o SNAT é configurado e a VPC passa a ter acesso à Internet.

Ao definir este parâmetro como false, o SNAT não é configurado e a VPC permanece sem acesso à Internet.

Valor padrão: true.

IsEnterpriseSecurityGroup

Boolean

Não

Não

Indica se deve criar um grupo de segurança empresarial.

Valores válidos:

  • true: crie um grupo de segurança empresarial. Esse grupo é obrigatório para clusters com o Terway instalado.

  • false (padrão): o recurso não será criado.

ComputeClass

String

Não

Não

Classe de computação do cluster.

Usado apenas para consultar ZoneIds disponíveis, não durante a criação real do cluster.

TimeZone

String

Não

Não

Fuso horário do cluster.

Nenhuma.

Tags

List

Não

Sim

Tags a adicionar ao cluster.

Para mais informações, consulte Propriedades de Tags.

VSwitchIds

List

Não

Não

IDs dos vSwitches.

Se esta propriedade for deixada vazia, o sistema cria automaticamente um vSwitch.

Observação: especifique ambas as propriedades VpcId e VSwitchIds ou deixe ambas vazias.

VpcId

String

Não

Não

ID da VPC.

Nenhuma.

ZoneIds

List

Não

Não

Lista de IDs de zona.

Nenhuma.

PodPostpaidSpec

Map

Não

Sim

Detalhes da especificação de pod com pagamento conforme o uso.

Para mais informações, consulte Propriedades de PodPostpaidSpec.

DeleteOptions

List

Não

Sim

Opções de exclusão de recursos. Aplicável apenas ao excluir recursos.

Para mais informações, consulte Propriedades de DeleteOptions.

Sintaxe de Addons

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

Propriedades de Addons

Propriedade

Tipo

Obrigatório

Permite atualizações

Descrição

Restrição

Name

String

Sim

Não

Nome do componente.

Nenhuma.

Config

String

Não

Não

Configuração do componente.

Se este parâmetro for deixado vazio, nenhuma configuração será necessária.

Disabled

Boolean

Não

Não

Indica se deve desativar a instalação padrão.

Nenhuma.

Version

String

Não

Não

Versão do componente.

Se este parâmetro for deixado vazio, a versão mais recente será selecionada por padrão.

Sintaxe de MaintenanceWindow

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

Propriedades de MaintenanceWindow

Propriedade

Tipo

Obrigatório

Permite atualizações

Descrição

Restrição

Duration

String

Não

Não

Duração da janela de manutenção.

Nenhuma.

Enable

Boolean

Não

Não

Indica se deve ativar a janela de manutenção.

Nenhuma.

MaintenanceTime

String

Não

Não

Horário de manutenção da janela de manutenção.

Nenhuma.

WeeklyPeriod

String

Não

Não

Ciclo semanal da janela de manutenção.

Valores válidos:

  • Monday

  • Tuesday

  • Wednesday

  • Thursday

  • Friday

  • Saturday

  • Sunday

Sintaxe de PodPostpaidSpec

"PodPostpaidSpec": 
  {
    "CpuCore": Integer,
    "Replicas": Integer,
    "MemGib": Integer,
    "GpuQuantityConfigs": Map
  }

Propriedades de PodPostpaidSpec

Propriedade

Tipo

Obrigatório

Permite atualizações

Descrição

Restrição

CpuCore

Integer

Não

Sim

Número de núcleos de cpu.

Nenhuma.

Replicas

Integer

Não

Sim

Número de réplicas.

Nenhuma.

MemGib

Integer

Não

Sim

Tamanho da memória da gpu.

Nenhuma.

GpuQuantityConfigs

Map

Não

Sim

Módulo de especificação da gpu.

Para mais informações, consulte Propriedades de GpuQuantityConfigs.

Sintaxe de GpuQuantityConfigs

"GpuQuantityConfigs": 
  {
    "GpuQuantity": Integer,
    "GpuModel": String,
    "Arch": String,
    "ComputeQos": String
  }

Propriedades de GpuQuantityConfigs

Propriedade

Tipo

Obrigatório

Permite atualizações

Descrição

Restrição

GpuQuantity

Integer

Não

Sim

Quantidade de GPUs.

Nenhuma.

GpuModel

String

Não

Sim

Modelo da gpu.

Nenhuma.

Arch

String

Não

Sim

Arquitetura da gpu.

Nenhuma.

ComputeQos

String

Não

Sim

Qualidade de Serviço (QoS) da computação da gpu.

Nenhuma.

Sintaxe de DeleteOptions

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

Propriedades de DeleteOptions

Propriedade

Tipo

Obrigatório

Permite atualizações

Descrição

Restrição

DeleteMode

String

Não

Sim

Política de exclusão para este tipo de recurso.

Valores válidos:

  • delete: exclua este tipo de recurso.

  • retain: retém este tipo de recurso.

ResourceType

String

Não

Sim

Tipo de recurso.

Valores válidos:

  • SLB: recursos SLB criados por um serviço. Por padrão, esses recursos são excluídos, mas você pode optar por retê-los.

  • ALB: recursos ALB criados por um controlador ALB Ingress. Por padrão, esses recursos são retidos, mas você pode optar por excluí-los.

  • SLS_Data: projeto do Simple Log Service usado para o recurso de logs do cluster. Por padrão, esse recurso é retido, mas você pode optar por excluí-lo.

  • SLS_ControlPlane: projeto do Simple Log Service usado para os logs do plano de controle de um cluster gerenciado. Por padrão, esse recurso é retido, mas você pode optar por excluí-lo.

  • PrivateZone: recursos PrivateZone criados por um cluster serverless Kubernetes (ASK). Por padrão, esses recursos são retidos, mas você pode optar por excluí-los.

Sintaxe de Tags

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

Propriedades de Tags

Propriedade

Tipo

Obrigatório

Permite atualizações

Descrição

Restrição

Key

String

Sim

Não

Chave da tag.

Nenhuma.

Value

String

Não

Não

Valor da tag.

Nenhuma.

Valores de retorno

Fn::GetAtt

  • TaskId: ID da tarefa. O sistema atribui esse ID automaticamente, permitindo consultar o status da tarefa.

  • ClusterId: ID da instância do cluster.

  • APIServerSLBId: ID da instância SLB do servidor de API.

  • ScalingGroupId: ID do grupo de dimensionamento.

  • IngressSLBId: ID da instância SLB de Ingress.

  • ScalingRuleId: ID da regra de dimensionamento.

  • DefaultUserKubeConfig: configuração padrão de usuário do Kubernetes usada para configurar credenciais do cluster.

  • WorkerRamRoleName: nome da função RAM do worker.

  • ScalingConfigurationId: ID da configuração de dimensionamento.

  • PrivateUserKubConfig: configuração privada de usuário do Kubernetes usada para configurar credenciais do cluster.

  • Nodes: lista de nós no cluster.

Exemplos

ROSTemplateFormatVersion: '2015-09-01'
Metadata: {}
Parameters: {}
Resources:
  Cluster:
    Type: ALIYUN::ACS::Cluster
    Properties:
      Name: test
      EndpointPublicAccess: false
      ServiceCidr: 172.19.0.0/20
      ClusterSpec: ack.pro.small
      SnatEntry: true
Outputs: {}
{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Metadata": {
  },
  "Parameters": {
  },
  "Resources": {
    "Cluster": {
      "Type": "ALIYUN::ACS::Cluster",
      "Properties": {
        "Name": "test",
        "EndpointPublicAccess": false,
        "ServiceCidr": "172.19.0.0/20",
        "ClusterSpec": "ack.pro.small",
        "SnatEntry": true
      }
    }
  },
  "Outputs": {
  }
}