Cómo Desplegar DataSunrise con Plantilla de Terraform en Azure
Previamente describimos cómo configurar DataSunrise en Microsoft Azure usando Azure Resource Manager. Dado que la configuración de Alta Disponibilidad requiere una implementación precisa con todas las dependencias aplicadas correctamente, no hay duda de que las plantillas son útiles. Sin ellas, la instalación del producto podría tomar mucho más tiempo, incluyendo también el mantenimiento de una solución confiable y estable para ejecutar el entorno del producto. Para evitar tales inconvenientes, DataSunrise proporciona un script dedicado para el despliegue de infraestructura HA dentro del servicio de Microsoft Azure basado en una plantilla de Terraform. El proceso de despliegue está automatizado y no requiere ajustes manuales adicionales.
La infraestructura de DataSunrise incluye:
- Red Virtual Personalizada donde se almacenan las subredes.
- Nodos de autoscaling de DataSunrise (instancias).
- Almacenamiento de configuración y auditoría basado en las Bases de Datos de Azure.
- El Balanceador de Carga de Azure es utilizado para distribuir el tráfico entre los nodos activos.
- ScaleSet incluye la configuración del clúster de failover.
- Key Vault se utiliza para almacenar credenciales para recursos.
Todos estos componentes están ubicados dentro de una Red Virtual Personalizada con la subred especificada.
Preparación para el Despliegue de la Plantilla de Terraform
Algunas entidades deben existir en su entorno de Azure antes del proceso de despliegue. Aquí está la lista de elementos requeridos:
- AZ CLI está instalado.
- Descargado/Instalado Terraform CLI.
- Cuenta de almacenamiento con un contenedor accesible con la versión de DataSunrise adentro o cualquier lugar desde donde se pueda descargar la versión de DataSunrise.
Importante:
Su suscripción a la cuenta de Azure debe estar asignada al rol de Propietario para habilitar el uso del recurso de Identidad Administrada para conectarse a Azure CLI y desplegar los recursos de Azure necesarios para la implementación exitosa de DataSunrise. Puede verificarlo en Suscripciones -> <su-suscripción> -> Control de acceso -> Asignaciones de roles.
Desplegando una Plantilla de Terraform
Registre o seleccione una aplicación existente y proporcione “CLIENT_ID”, “CLIENT_SECRET”, “SUBSCRIPTION_ID”, “TENANT_ID”.
Script de Terraform
Descargue el script de Terraform del repositorio para desplegar DataSunrise en una configuración HA. Abra el archivo terraform.tfvars y reemplace xxxxxxxxx allí con valores que correspondan a su entorno:
Abrir la consola y establecer estas variables de entorno:
Set ARM_CLIENT_ID="SET-CLIENT-KEY-HERE" Set ARM_CLIENT_SECRET="SET-CLIENT-SECRET-HERE" Set ARM_SUBSCRIPTION_ID="SET-SUBSCRIPTION-ID-HERE" Set ARM_TENANT_ID="SET-TENANT-ID-HERE"
Importante: en Windows, necesita copiar el archivo ejecutable descargado, terraform.exe, a la carpeta scripts.
Comandos de Terraform
El comando terraform init.
Este comando se utiliza para inicializar un directorio de trabajo que contiene archivos de configuración de Terraform. Este es el primer comando que se debe ejecutar después de configurar una nueva configuración de Terraform o clonar una existente desde el control de versiones. Es seguro ejecutar este comando varias veces.
El comando terraform plan.
Este comando crea un plan de ejecución que le permite previsualizar los cambios que Terraform planea hacer en su infraestructura. Por defecto, cuando Terraform crea un plan hace lo siguiente:
- Lee el estado actual de cualquier objeto remoto ya existente para asegurarse de que el estado de Terraform esté actualizado.
- Compara la configuración actual con el estado anterior y nota cualquier diferencia.
- Propone un conjunto de acciones de cambio que, si se aplican, harán que los objetos remotos coincidan con la configuración.
El comando terraform apply.
Este comando ejecuta las acciones propuestas en un plan de Terraform.
El comando terraform destroy.
Este comando destruye el entorno creado. Además, es una forma conveniente de destruir todos los objetos remotos gestionados por una configuración particular de Terraform. Además, el comando terraform destroy le permite limpiar convenientemente todos los objetos temporales una vez que haya terminado su trabajo.
Finalizando el Despliegue
Después de ejecutar terraform apply, la creación de recursos toma aproximadamente 10-15 minutos, y la configuración adicional e instalación de bibliotecas adicionales toman alrededor de 15-20 minutos.
Puede ver todos los recursos creados en el grupo de recursos creado con el nombre que se estableció en el terraform.tfvars – prefijo.
Si todos los recursos se despliegan correctamente, se enumerarán dentro del grupo de recursos:
Depuración
Si su servidor no está disponible por mucho tiempo, puede conectarse a la máquina virtual creada a través de SSH utilizando el nombre de usuario y la contraseña especificados en el archivo terraform.tfvars. Habiéndose conectado, ejecute el comando sudo cat /var/log/cloud-init-output.log y vea la razón de la instalación incorrecta del servidor.
Conectándose a la Interfaz Web de DataSunrise
Para conectarse a la Consola Web de DataSunrise, utilice la dirección IP pública del balanceador de carga. Se conectará automáticamente a uno de los nodos configurados. También necesita usar esta dirección IP para conectarse a su base de datos objetivo a través de un proxy y para conectarse a su máquina virtual utilizando SSH.
La Base de Datos Objetivo se agregará automáticamente a la configuración de DataSunrise: