Todos los productos
Search
Centro de documentos

ENS:Ejemplo de integración con Terraform

Última actualización: Sep 04, 2026

Terraform es una herramienta de código abierto que aprovisiona y gestiona la infraestructura en la nube de forma segura y eficiente. Puede utilizar Terraform para gestionar los recursos de ENS (Edge Node Service). Este tutorial muestra cómo crear un recurso EIP de ENS mediante Terraform.

El código de ejemplo admite el despliegue con un solo clic. Run in Terraform Explorer para desplegar el código de ejemplo en línea sin instalar Terraform.

Requisitos previos

Prepare los siguientes elementos antes de ejecutar el código de ejemplo. El entorno de ejecución que elija determina si debe configurar las credenciales por su cuenta:

  • Usuario de RAM y par de AccessKey: una cuenta de Alibaba Cloud tiene permisos sobre todos los recursos, por lo que la filtración de sus credenciales genera riesgos importantes. (Recomendado) Utilice un usuario de Resource Access Management (RAM) y cree un par de AccessKey para dicho usuario. Para obtener más información, consulte Create a RAM user y Create an AccessKey.

  • Permisos de ENS: otorgue al usuario de RAM el permiso AliyunENSFullAccess, que le permite gestionar recursos de ENS. Para obtener más información, consulte Manage RAM user permissions. El siguiente documento de directiva describe los permisos que requiere el código de ejemplo:

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "ens:*",
          "Resource": "*"
        }
      ]
    }
  • Entorno de ejecución de Terraform: prepare un entorno de ejecución de Terraform de cualquiera de las siguientes maneras:

    • (Recomendado) Utilice Terraform en Terraform Explorer: Alibaba Cloud proporciona un entorno de ejecución de Terraform en línea. No necesita instalar Terraform. Inicie sesión y utilice Terraform en línea. Esta opción es adecuada para escenarios en los que desea probar y depurar Terraform rápidamente sin costo alguno. El enlace de despliegue con un solo clic en este tema abre el código de ejemplo en este entorno.

    • Create resources with Terraform: Alibaba Cloud Cloud Shell incluye componentes de Terraform preinstalados y credenciales preconfiguradas, por lo que puede ejecutar comandos de Terraform directamente en Cloud Shell. Esta opción es ideal para escenarios que requieren acceso rápido y de bajo costo a Terraform.

    • Install and configure Terraform: esta opción resulta útil cuando la conectividad de red es deficiente o se necesita un entorno de desarrollo personalizado.

      Independientemente de la opción que elija, asegúrese de que la versión de Terraform sea v0.12.28 o posterior. Para comprobar la versión instalada, ejecute el comando terraform --version.

Aviso

Algunos recursos de este ejemplo generan cargos. Libere los recursos tan pronto como deje de necesitarlos. Para obtener instrucciones, consulte la sección Limpieza de recursos de este tema.

Recursos utilizados

alicloud_ens_eip: crea un recurso EIP de ENS.

Integración de recursos mediante Terraform

En esta sección, definirá el recurso EIP de ENS en un archivo de configuración de Terraform y, a continuación, aplicará la configuración.

  1. Cree un directorio de trabajo y, dentro de él, un archivo de configuración llamado main.tf. main.tf es el archivo principal de Terraform, donde se definen los recursos que se van a desplegar.

    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. Ejecute el siguiente comando para inicializar el entorno de ejecución de 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. Ejecute el siguiente comando para crear un plan de ejecución y previsualizar los cambios:

    terraform plan
  4. Ejecute el siguiente comando para crear el recurso EIP de ENS:

    terraform apply

    Introduzca yes y presione la tecla Enter. Espere a que finalice el comando. La siguiente salida indica que el recurso EIP de ENS se ha creado correctamente.

    Command output that indicates the ENS EIP resource is created

Verificación del resultado

Confirme que el recurso EIP de ENS existe mediante cualquiera de los siguientes métodos.

Ejecución del comando terraform show

Ejecute el siguiente comando para consultar los detalles de los recursos que creó Terraform:

terraform show

Inicio de sesión en la consola de ENS

Una vez creado el recurso, inicie sesión en la ENS console para consultar el recurso EIP de ENS que creó.

The created ENS EIP resource in the ENS console

Limpieza de recursos

Cuando ya no necesite los recursos que creó o gestiona mediante Terraform, ejecute el siguiente comando para liberarlos:

terraform destroy

Para obtener más información sobre terraform destroy, consulte Common Terraform commands.

Ejemplo completo

La siguiente configuración constituye el código de ejemplo completo para crear un recurso EIP de ENS. Run in Terraform Explorer para desplegarlo sin necesidad de preparar un entorno de ejecución local.

Código de ejemplo

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 consultar más ejemplos, vaya a More complete examples y abra la carpeta del servicio correspondiente.