Todos os produtos
Search
Central de documentação

Enterprise Distributed Application Service:Use Terraform to create an ACK cluster and deploy an application

Última atualização: Jun 26, 2026

O Terraform permite definir a infraestrutura como código para criar um cluster do Container Service for Kubernetes (ACK), importá-lo no Enterprise Distributed Application Service (EDAS) e implantar uma aplicação em um único fluxo de trabalho automatizado.

Como funciona

A implantação encadeia três recursos do Terraform:

  1. alicloud_cs_managed_kubernetes -- Crie um cluster Kubernetes gerenciado no ACK.

  2. alicloud_edas_k8s_cluster -- Importa o cluster ACK para o EDAS.

  3. alicloud_edas_k8s_application -- Implanta uma aplicação no cluster gerenciado pelo EDAS.

Interfaces do Terraform

Data sources

Data source

Descrição

alicloud_edas_applications

Consulta aplicações do EDAS, incluindo as do Elastic Compute Service (ECS) e do ACK

alicloud_edas_clusters

Consulta clusters do EDAS, incluindo os de ECS e ACK

Resources

Resource

Descrição

alicloud_edas_k8s_cluster

Importa um cluster ACK para o EDAS

alicloud_edas_k8s_application

Crie e implante uma aplicação em um cluster ACK gerenciado pelo EDAS

Exemplo de configuração

Este exemplo cria um cluster Kubernetes gerenciado no ACK, importa-o para o EDAS e implanta uma aplicação baseada em contêiner. Modifique os parâmetros de configuração conforme necessário.

Nota

O Terraform oferece suporte a vários tipos de cluster ACK. Este exemplo utiliza um cluster Kubernetes gerenciado.

Nota

Este exemplo pressupõe que você já definiu recursos de VPC e vSwitch (por exemplo, alicloud_vpc e alicloud_vswitch) e um data source alicloud_instance_types na configuração. Para obter detalhes, consulte a documentação do provedor Terraform da Alibaba Cloud.

Etapa 1: Criar um cluster Kubernetes gerenciado

resource "alicloud_cs_managed_kubernetes" "default" {
  name                        = var.name
  worker_instance_types       = [data.alicloud_instance_types.default.instance_types.0.id]
  worker_vswitch_ids          = [alicloud_vswitch.default.id]
  worker_number               = "1"
  password                    = "Test12345"
  pod_cidr                    = "172.20.0.0/16"
  service_cidr                = "172.21.0.0/20"
  worker_disk_size            = "50"
  worker_disk_category        = "cloud_ssd"
  worker_data_disk_size       = "20"
  worker_data_disk_category   = "cloud_ssd"
  worker_instance_charge_type = "PostPaid"
  slb_internet_enabled        = "true"
}

A tabela a seguir descreve os principais parâmetros:

Parâmetro

Descrição

Exemplo

name

Nome do cluster

Referenciado de uma variável

worker_instance_types

Tipo de instância ECS para nós de trabalho

ecs.g6.large

worker_vswitch_ids

ID do vSwitch para nós de trabalho

Referenciado de um recurso alicloud_vswitch

password

Senha de login SSH para nós de trabalho

Test12345

pod_cidr

Bloco CIDR para endereços IP dos pods. Não deve se sobrepor aos intervalos CIDR da VPC ou do serviço.

172.20.0.0/16

service_cidr

Bloco CIDR para endereços IP do serviço. Não deve se sobrepor aos intervalos CIDR da VPC ou dos pods.

172.21.0.0/20

Etapa 2: Importar o cluster para o EDAS

resource "alicloud_edas_k8s_cluster" "default" {
  cs_cluster_id = "xxxx-xxx-xxx"
}

Esse recurso importa o cluster ACK criado na Etapa 1 para o EDAS. Após a importação, o EDAS pode gerenciar as implantações de aplicações nesse cluster.

Etapa 3: Implantar uma aplicação

resource "alicloud_edas_k8s_application" "default" {
  application_name = "shesheng-test-k8s"
  cluster_id       = "45bc8232-3233-46be-ab20-6d4a9b506d5c"
  replicas         = 1
  package_type     = "Image"
  image_url        = "cr.registry.cloud.ste2.com/test/gw-provider:1028"
  command          = "/bin/sh"
  command_args     = ["-c", "while true; do echo hello; sleep 1000;done"]
}

A tabela a seguir descreve os principais parâmetros:

Parâmetro

Descrição

application_name

Nome da aplicação no EDAS

cluster_id

ID do cluster gerenciado pelo EDAS da Etapa 2

replicas

Número de réplicas de pods

package_type

Tipo de pacote de implantação. Defina como Image para implantações com imagem de contêiner.

image_url

URL completa da imagem do contêiner

command

Comando de ponto de entrada do contêiner

command_args

Argumentos passados ao comando de ponto de entrada

Implantar a infraestrutura

Execute os comandos a seguir para inicializar e aplicar a configuração do Terraform:

  1. Inicialize o diretório de trabalho do Terraform.

    terraform init

    Saída esperada:

    Initializing provider plugins...
    - Installing aliyun/alicloud...
    
    Terraform has been successfully initialized!
  2. Visualize as alterações.

    terraform plan
  3. Aplique a configuração para criar todos os recursos.

    terraform apply

    Quando solicitado, digite yes para confirmar. A criação do cluster geralmente leva de 10 a 15 minutos.

    Saída esperada:

    Apply complete! Resources: X added, 0 changed, 0 destroyed.

Limpar recursos

Para evitar cobranças contínuas, destrua todos os recursos criados por esta configuração quando não forem mais necessários:

terraform destroy

Quando solicitado, digite yes para confirmar. Essa ação remove a aplicação do EDAS, a importação do cluster no EDAS e o cluster ACK.

Aviso

O comando terraform destroy exclui permanentemente todos os recursos gerenciados por esta configuração. Faça backup de quaisquer dados importantes antes de executar esse comando.

Informações relacionadas