Compartir a través de


Inicio rápido: Implementación de un clúster de Azure DocumentDB mediante Terraform

En este inicio rápido, implementará un nuevo clúster de Azure DocumentDB mediante Terraform. En este inicio rápido se proporcionan instrucciones paso a paso para ayudarle a empezar a trabajar rápidamente. Este clúster contiene todos los recursos de MongoDB: bases de datos, colecciones y documentos. Proporciona un punto de conexión único para herramientas y kits de desarrollo de software (SDK) para conectarse a Azure DocumentDB y realizar operaciones.

Prerrequisitos

  • Una suscripción de Azure

Configuración del entorno

Configure el entorno de la CLI de Azure para administrar los recursos de Azure DocumentDB en la suscripción.

  1. Inicie en un directorio vacío.

  2. Inicie sesión en la CLI de Azure.

    az login
    
  3. Compruebe la suscripción de Azure de destino.

    az account show
    

    Nota:

    Si no está conectado a la suscripción que esperaba, use este comando para cambiar la suscripción:

    az account set --subscription "<subscription-name>"
    

    Para más información, consulte Administración de suscripciones de Azure con la CLI de Azure.

Preparación de la configuración de Terraform

Cree y configure un archivo de Terraform para definir los recursos necesarios para implementar un clúster de Azure DocumentDB.

  1. Cree un nuevo archivo main.tf en el directorio del proyecto.

  2. Agregue esta configuración al contenido del archivo.

    variable "admin_username" {
      type = string
      description = "Username for default administrator account"
    }
    
    variable "admin_password" {
      type = string
      description = "Password for default administrator account"
      sensitive = true
    }
    
    terraform {
      required_providers {
        azurerm = {
          source = "hashicorp/azurerm"
          version = "~> 4.0"
        }
      }
    }
    
    provider "azurerm" {
      features { }
    }
    
    resource "azurerm_resource_group" "resource_group" {
      name     = "example-resource-group"
      location = "West US"
    }
    
    resource "azurerm_mongo_cluster" "cluster" {
      name                   = "example-mongo-cluster"
      resource_group_name    = azurerm_resource_group.resource_group.name
      location               = azurerm_resource_group.resource_group.location
      administrator_username = var.admin_username
      administrator_password = var.admin_password
      shard_count            = "1"
      compute_tier           = "M10"
      high_availability_mode = "Disabled"
      storage_size_in_gb     = "32"
      version                = "8.0"
    }
    

    Sugerencia

    Para obtener más información sobre las opciones que usan el recurso, consulte azurerm documentación del proveedor en Terraform Registry.

Implementación de la configuración

Implemente el archivo de configuración creado en el paso anterior mediante un plan de ejecución.

  1. Inicialice la implementación de Terraform con la CLI de Terraform.

    terraform init --upgrade
    
  2. Cree un plan de ejecución y guárdelo en un archivo denominado main.tfplan. Proporcione valores cuando se le pidan las admin_username variables y admin_password .

    ARM_SUBSCRIPTION_ID=$(az account show --query id --output tsv) terraform plan --out "main.tfplan"
    

    Nota:

    Este comando establece temporalmente la ARM_SUBSCRIPTION_ID variable de entorno. Esta configuración es necesaria para el proveedor de azurerm comenzando con la versión 4.0. Para obtener más información, consulte Id. de suscripción en azurerm.

  3. Aplique el plan de ejecución para implementar recursos en Azure.

    ARM_SUBSCRIPTION_ID=$(az account show --query id --output tsv) terraform apply "main.tfplan"
    
  4. Espere a que se complete la operación de implementación antes de continuar.

Revisión de los recursos implementados

Enumere los recursos de Azure DocumentDB implementados en el grupo de recursos.

  1. Use az resource list para obtener una lista de recursos en el grupo de recursos.

    az resource list \
        --resource-group "<resource-group-name>" \
        --namespace "Microsoft.DocumentDB" \
        --resource-type "mongoClusters" \
        --query "[].name" \
        --output json
    
  2. En la salida de ejemplo, busquen los recursos cuya clase es Microsoft.DocumentDB/mongoClusters. Este es un ejemplo del tipo de salida que se espera:

    [
      "msdocs-documentdb-example-cluster"
    ]
    

Limpieza de recursos

Quite todos los recursos definidos en la configuración de Terraform.

  1. Destruye los recursos administrados por Terraform mediante el destroy comando .

    ARM_SUBSCRIPTION_ID=$(az account show --query id --output tsv) terraform destroy
    

    Sugerencia

    Como alternativa, use az group delete para quitar el grupo de recursos de la suscripción:

    az group delete \
        --name "<resource-group-name>" \
        --yes \
        --no-wait
    

    Importante

    Asegúrese de que ya no necesita los recursos antes de ejecutar este comando, ya que los elimina permanentemente.

  2. Confirme las indicaciones pertinentes para continuar con la eliminación.