Todos os produtos
Search
Central de documentação

ENS:Exemplo de integração com o Terraform

Última atualização: Sep 22, 2026

O Terraform é uma ferramenta de código aberto que provisiona e gerencie infraestrutura em cloud de forma segura e eficiente. Use o Terraform e gerencie recursos do ENS (Edge Node Service). Este tutorial mostra como você crie um recurso EIP do ENS usando o Terraform.

O source de exemplo suporta implantação com um clique. Clique em Execute no Terraform Explorer para implantar o source de exemplo online sem que você instale o Terraform.

Pré-requisitos

Prepare os itens a seguir antes que execute o source de exemplo. O ambiente de execução que você escolha determina se você configure as credenciais manualmente:

  • Usuário RAM e par de AccessKey — Uma conta da Alibaba Cloud tem permissões em todos os recursos, e o vazamento de suas credenciais gera riscos significativos. (Recomendado) Use um usuário do Resource Access Management (RAM) e crie um par de AccessKey para esse usuário. Para mais informações, consulte Create a RAM user e Create an AccessKey.

  • Permissões do ENS — Conceda ao usuário RAM a permissão AliyunENSFullAccess, que permite que você gerencie recursos do ENS. Para mais informações, consulte Manage RAM user permissions. O documento de política a seguir descreve as permissões exigidas pelo source de exemplo:

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "ens:*",
          "Resource": "*"
        }
      ]
    }
  • Ambiente de execução do Terraform — Prepare um ambiente de execução do Terraform de uma das seguintes maneiras:

    • (Recomendado) Use o Terraform no Terraform Explorer: a Alibaba Cloud fornece um ambiente de execução online do Terraform. Não é necessário que você instale o Terraform. Faça logon e use o Terraform online. Essa opção é ideal para testar e depurar o Terraform de forma rápida e gratuita. O link de implantação com um clique neste tópico abre o source de exemplo nesse ambiente.

    • Create resources with Terraform: o Cloud Shell da Alibaba Cloud já vem com os componentes do Terraform pré-instalados e as credenciais pré-configuradas. Assim, execute comandos do Terraform diretamente no Cloud Shell. Essa opção é adequada para cenários que exigem acesso rápido e de baixo custo ao Terraform.

    • Install and configure Terraform: essa opção é recomendada para cenários com conectividade de rede instável ou quando você precisa de um ambiente de desenvolvimento personalizado.

      Independentemente da opção que você escolha, certifique-se de que a versão do Terraform seja v0.12.28 ou posterior. Verifique a versão instalada com o comando terraform --version.

Aviso

Alguns recursos neste exemplo geram custos. Libere os recursos assim que eles não forem mais necessários. Para obter instruções, consulte a seção Limpar recursos deste tópico.

Recursos utilizados

alicloud_ens_eip: crie um recurso EIP do ENS.

Integrar recursos com o Terraform

Nesta seção, defina o recurso EIP do ENS em um arquivo de configuração do Terraform e, em seguida, aplique a configuração.

  1. Crie um diretório de trabalho e crie um arquivo de configuração chamado main.tf nele. O arquivo main.tf é o principal arquivo do Terraform e define os recursos a serem implantados.

    variable "name" {
      default = "terraform-example"
    }
    # Create an ENS EIP resource.
    resource "alicloud_ens_eip" "default" {
      # (Optional) The description of the EIP.
      description   = "EipDescription_autotest"
      # (Optional, computed) The peak bandwidth of the EIP. Default value: 5. Valid values: 5 to 10000.
      bandwidth     = "5"
      # (Optional, forces new resource) The Internet service provider.
      isp           = "cmcc"
      # (Required, forces new resource) The billing method of the EIP. Valid value: PayAsYouGo (pay-as-you-go).
      payment_type  = "PayAsYouGo"
      # (Required, forces new resource) The ID of the ENS edge zone.
      ens_region_id = "cn-chenzhou-telecom_unicom_cmcc"
      # (Optional) The name of the EIP.
      eip_name      = var.name
      # (Required, forces new resource) Valid value: 95BandwidthByMonth.
      internet_charge_type = "95BandwidthByMonth"
    }
  2. Execute o seguinte comando para inicializar o ambiente de execução do Terraform:

    terraform init
    Initializing the backend...
    
    Initializing provider plugins...
    - Reusing previous version of hashicorp/alicloud from the dependency lock file
    - Using previously-installed hashicorp/alicloud v1.231.0
    
    Terraform has been successfully initialized!
    
    You may now begin working with Terraform. Try running "terraform plan" to see
    any changes that are required for your infrastructure. All Terraform commands
    should now work.
    
    If you ever set or change modules or backend configuration for Terraform,
    rerun this command to reinitialize your working directory. If you forget, other
    commands will detect it and remind you to do so if necessary.
  3. Para que você crie um plano de execução e visualize as alterações, execute o comando a seguir:

    terraform plan
  4. Execute o comando abaixo para que você crie o recurso EIP do ENS:

    terraform apply

    Insira yes e pressione a tecla Enter. Aguarde a conclusão do comando. Confirme a criação do recurso EIP do ENS na saída abaixo.

    Command output that indicates the ENS EIP resource is created

Verifique o resultado

Confirme a criação do recurso EIP do ENS de uma das seguintes maneiras.

Execute o comando terraform show

Para consultar os detalhes dos recursos que o Terraform criou, execute o seguinte comando:

terraform show

Acesse o console do ENS

Após a criação do recurso, acesse o console do ENS e visualize o recurso EIP do ENS criado.

The created ENS EIP resource in the ENS console

Limpar recursos

Para liberar os recursos que você criou ou gerencie com o Terraform quando eles não forem mais necessários, execute o comando a seguir:

terraform destroy

Para mais informações sobre o terraform destroy, consulte Common Terraform commands.

Exemplo completo

A configuração a seguir é o source de exemplo completo para que você crie um recurso EIP do ENS. Clique em Execute no Terraform Explorer para implantá-lo sem preparar um ambiente de execução local.

Código de exemplo

variable "name" {
  default = "terraform-example"
}
# Create an ENS EIP resource.
resource "alicloud_ens_eip" "default" {
  # (Optional) The description of the EIP.
  description   = "EipDescription_autotest"
  # (Optional, computed) The peak bandwidth of the EIP. Default value: 5. Valid values: 5 to 10000.
  bandwidth     = "5"
  # (Optional, forces new resource) The Internet service provider.
  isp           = "cmcc"
  # (Required, forces new resource) The billing method of the EIP. Valid value: PayAsYouGo (pay-as-you-go).
  payment_type  = "PayAsYouGo"
  # (Required, forces new resource) The ID of the ENS edge zone.
  ens_region_id = "cn-chenzhou-telecom_unicom_cmcc"
  # (Optional) The name of the EIP.
  eip_name      = var.name
  # (Required, forces new resource) Valid value: 95BandwidthByMonth.
  internet_charge_type = "95BandwidthByMonth"
}

Para mais exemplos, acesse Mais exemplos completos e abra a pasta do service correspondente.