Cloud Volumes ONTAP para Azure: Ráfagas en la nube
Este artículo es compatible con la solución de automatización NetApp Cloud Volumes ONTAP para Azure, que está disponible para los clientes de NetApp desde el centro de automatización de la NetApp Console .
La solución de automatización de Cloud Volumes ONTAP para Azure automatiza la implementación en contenedores de Cloud Volumes ONTAP para Azure mediante Terraform, lo que le permite implementar Cloud Volumes ONTAP para Azure rápidamente, sin ninguna intervención manual.
-
Debes descargar el "Cloud Volumes ONTAP Azure: Ráfagas a la nube" Solución de automatización a través de la interfaz web de la consola. La solución se presenta empaquetada como
CVO-Azure-Burst-To-Cloud.zip. -
Debe instalar una máquina virtual Linux en la misma red que Cloud Volumes ONTAP.
-
Después de instalar la máquina virtual Linux, debe seguir los pasos de esta solución para instalar las dependencias necesarias.
Paso 1: Instalar Docker y Docker Compose
Instale Docker
Los siguientes pasos usan el software de distribución Linux Ubuntu 20,04 como ejemplo. Los comandos que ejecute dependen del software de distribución de Linux que utilice. Consulte la documentación específica del software de distribución de Linux para conocer la configuración.
-
Instale Docker ejecutando los siguientes
sudocomandos:sudo apt-get update sudo apt-get install apt-transport-https cacertificates curl gnupg-agent software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository “deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” sudo apt-get update sudo apt-get install dockerce docker-ce-cli containerd.io -
Compruebe la instalación:
docker –version -
Compruebe que se ha creado un grupo denominado «docker» en su sistema Linux. Si es necesario, cree el grupo:
sudo groupadd docker -
Agregue el usuario que necesita acceder a Docker al grupo:
sudo usermod -aG docker $(whoami) -
Los cambios se aplican después de cerrar la sesión y volver a conectarse al terminal. Como alternativa, puede aplicar los cambios inmediatamente:
newgrp docker
Instale Docker Compose
-
Instale Docker Compose ejecutando los siguientes
sudocomandos:sudo curl -L “https://github.com/docker/compose/releases/download/1.29.2/dockercompose-(𝑢𝑛𝑎𝑚𝑒 − 𝑠)−(uname -m)” -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose -
Compruebe la instalación:
docker-compose –version
Paso 2: Preparar la imagen de Docker
-
Copie
CVO-Azure-Burst-To-Cloud.zipla carpeta en la máquina virtual Linux que desee utilizar para implementar Cloud Volumes ONTAP:scp -i ~/<private-key>.pem -r CVO-Azure-Burst-To-Cloud.zip <azureuser>@<IP_ADDRESS_OF_VM>:<LOCATION_TO_BE_COPIED>-
private-key.pemes su archivo de clave privada para iniciar sesión sin contraseña. -
azureuserEs el nombre de usuario de la máquina virtual. -
IP_ADDRESS_OF_VMEs la dirección IP del equipo virtual. -
LOCATION_TO_BE_COPIEDes la ubicación donde se copiará la carpeta.
-
-
Extraiga la
CVO-Azure-Burst-To-Cloud.zipcarpeta. Puede extraer la carpeta en el directorio actual o en una ubicación personalizada.Para extraer la carpeta del directorio actual, ejecute:
unzip CVO-Azure-Burst-To-Cloud.zipPara extraer la carpeta en una ubicación personalizada, ejecute:
unzip CVO-Azure-Burst-To-Cloud.zip -d ~/<your_folder_name> -
Después de extraer el contenido, desplácese a la
CVO_Azure_Deploymentcarpeta y ejecute el siguiente comando para ver los archivos:ls -laDebería ver una lista de archivos, similar al siguiente ejemplo:
drwxr-xr-x@ 11 user1 staff 352 May 5 13:56 . drwxr-xr-x@ 5 user1 staff 160 May 5 14:24 .. -rw-r--r--@ 1 user1 staff 324 May 5 13:18 .env -rw-r--r--@ 1 user1 staff 1449 May 5 13:18 Dockerfile -rw-r--r--@ 1 user1 staff 35149 May 5 13:18 LICENSE -rw-r--r--@ 1 user1 staff 13356 May 5 14:26 README.md -rw-r--r-- 1 user1 staff 354318151 May 5 13:51 cvo_azure_flexcache_ubuntu_image_latest drwxr-xr-x@ 4 user1 staff 128 May 5 13:18 cvo_azure_variables -rw-r--r--@ 1 user1 staff 996 May 5 13:18 docker-compose-deploy.yml -rw-r--r--@ 1 user1 staff 1041 May 5 13:18 docker-compose-destroy.yml -rw-r--r--@ 1 user1 staff 4771 May 5 13:18 sp_role.json
-
Busque el
cvo_azure_flexcache_ubuntu_image_latest.tar.gzarchivo. Esto contiene la imagen de Docker necesaria para poner en marcha Cloud Volumes ONTAP para Azure. -
Abra el archivo:
docker load -i cvo_azure_flexcache_ubuntu_image_latest.tar.gz -
Espere unos minutos hasta que se cargue la imagen de Docker y, a continuación, valide que la imagen de Docker se haya cargado correctamente:
docker imagesDebería ver una imagen de Docker llamada
cvo_azure_flexcache_ubuntu_image_latestcon lalatestetiqueta, como se muestra en el siguiente ejemplo:REPOSITORY TAG IMAGE ID CREATED SIZE cvo_azure_flexcache_ubuntu_image latest 18db15a4d59c 2 weeks ago 1.14GB
Paso 3: Crear archivos de variables de entorno
En esta etapa, debes crear dos archivos de variables de entorno. Un archivo es para la autenticación de las API de Azure Resource Manager mediante credenciales de entidad de servicio. El segundo archivo sirve para configurar variables de entorno para permitir que los módulos Terraform de la consola localicen y autentiquen las API de Azure.
-
Cree un principal de servicio.
Antes de crear los archivos de variables de entorno, debe crear un principal de servicio siguiendo los pasos de "Cree una aplicación de Azure Active Directory y un director de servicio que pueda acceder a los recursos".
-
Asigne el rol Contributor al principal de servicio recién creado.
-
Crear un rol personalizado.
-
Localice el
sp_role.jsonarchivo y compruebe los permisos necesarios en las acciones enumeradas. -
Inserte estos permisos y adjunte el rol personalizado al principal de servicio recién creado.
-
-
Vaya a Certificados y secretos y seleccione Nuevo secreto de cliente para crear el secreto de cliente.
Cuando creas el secreto del cliente, debes registrar los detalles de la columna VALOR porque no podrás ver este valor de nuevo. También debe registrar la siguiente información:
-
ID del cliente
-
ID de suscripción
-
ID de inquilino
Necesitará esta información para crear las variables de entorno. Puede encontrar la información de ID de cliente e ID de inquilino en la sección Overview de la interfaz de usuario principal de servicio.
-
-
Cree los archivos de entorno.
-
Cree el
azureauth.envarchivo en la siguiente ubicación:path/to/env-file/azureauth.env-
Agregue el siguiente contenido al archivo:
ClientID=<> clientSecret=<> SubscriptionId=<> tenantId=<>
El formato debe ser exactamente como se muestra arriba sin ningún espacio entre la clave y el valor.
-
-
Cree el
credentials.envarchivo en la siguiente ubicación:path/to/env-file/credentials.env-
Agregue el siguiente contenido al archivo:
AZURE_TENANT_ID=<> AZURE_CLIENT_SECRET=<> AZURE_CLIENT_ID=<> AZURE_SUBSCRIPTION_ID=<>
-
El formato debe ser exactamente como se muestra arriba sin ningún espacio entre la clave y el valor.
-
-
Agregue las rutas de acceso absolutas al
.envarchivo.Introduzca la ruta de acceso absoluta para
azureauth.envel archivo de entorno en el.envarchivo que corresponda a laAZURE_RM_CREDSvariable de entorno.AZURE_RM_CREDS=path/to/env-file/azureauth.envIntroduzca la ruta de acceso absoluta para
credentials.envel archivo de entorno en el.envarchivo que corresponda a laBLUEXP_TF_AZURE_CREDSvariable de entorno.BLUEXP_TF_AZURE_CREDS=path/to/env-file/credentials.env
Paso 4: Regístrese en NetApp Intelligent Services
Regístrese en NetApp Intelligent Services a través de su proveedor de nube para pagar por hora (PAYGO) o mediante un contrato anual. Los servicios inteligentes de NetApp incluyen NetApp Backup and Recovery, Cloud Volumes ONTAP, NetApp Cloud Tiering, NetApp Ransomware Resilience y NetApp Disaster Recovery. La clasificación de datos de NetApp está incluida en su suscripción sin costo adicional
-
Desde el portal de Azure, navegue hasta SaaS y seleccione Suscribirse a NetApp Intelligent Services.
-
Seleccione el plan Cloud Manager (por Cap PYGO por hora, WORM y servicios de datos).
Puede usar el mismo grupo de recursos que Cloud Volumes ONTAP o uno diferente.
-
Configure el portal de la consola para importar la suscripción de SaaS a la consola.
Puede configurarlo directamente desde el portal de Azure navegando a Detalles del producto y del plan y seleccionando la opción Configurar cuenta ahora.
Luego será redirigido al portal de la consola para confirmar la configuración.
-
Confirme la configuración en el portal de la consola seleccionando Guardar.
Paso 5: Cree un volumen externo
Debe crear un volumen externo para mantener los archivos de estado de Terraform y otros archivos importantes persistentes. Debe asegurarse de que los archivos están disponibles para Terraform para ejecutar el flujo de trabajo y las implementaciones.
-
Cree un volumen externo fuera de Docker Compose:
docker volume create « volume_name »Ejemplo:
docker volume create cvo_azure_volume_dst
-
Utilice una de las siguientes opciones:
-
Añada una ruta de volumen externo al
.envarchivo de entorno.Debe seguir el formato exacto que se muestra a continuación.
Formato:
PERSISTENT_VOL=path/to/external/volume:/cvo_azureEjemplo:
PERSISTENT_VOL=cvo_azure_volume_dst:/cvo_azure -
Añada recursos compartidos NFS como volumen externo.
Asegúrese de que el contenedor de Docker se pueda comunicar con los recursos compartidos NFS y de que los permisos correctos, como lectura/escritura, están configurados.
-
Agregue la ruta de acceso de recursos compartidos NFS como la ruta al volumen externo en el archivo Docker Compose, como se muestra a continuación: Formato:
PERSISTENT_VOL=path/to/nfs/volume:/cvo_azure
-
Ejemplo:
PERSISTENT_VOL=nfs/mnt/document:/cvo_azure -
-
Navegue a la
cvo_azure_variablescarpeta.Debe ver los siguientes archivos de variables en la carpeta:
terraform.tfvarsvariables.tf -
Cambie los valores dentro del
terraform.tfvarsarchivo de acuerdo con sus requisitos.Debe leer la documentación de soporte específica cuando modifique cualquiera de los valores de variables del
terraform.tfvarsarchivo. Los valores pueden variar según la región, las zonas de disponibilidad y otros factores compatibles con Cloud Volumes ONTAP para Azure. Esto incluye licencias, tamaño de disco y tamaño de máquina virtual para nodos individuales y pares de alta disponibilidad.Todas las variables de soporte para el agente de la consola y los módulos Terraform de Cloud Volumes ONTAP ya están definidas en el
variables.tfarchivo. Debes hacer referencia a los nombres de las variables en elvariables.tfarchivo antes de agregarlo alterraform.tfvarsarchivo. -
En función de sus requisitos, puede activar o desactivar FlexCache and FlexClone configurando las siguientes opciones en
trueofalse.Los siguientes ejemplos habilitan FlexCache y FlexClone:
-
is_flexcache_required = true -
is_flexclone_required = true
-
-
Si es necesario, puede recuperar el valor de la variable Terraform
az_service_principal_object_iddesde Azure Active Directory Service:-
Vaya a Enterprise Applications –> All Applications y seleccione el nombre del Service Principal que creó anteriormente.
-
Copie el ID del objeto e inserte el valor para la variable Terraform:
az_service_principal_object_id
-
Paso 6: Implemente Cloud Volumes ONTAP para Azure
Utilice los siguientes pasos para implementar Cloud Volumes ONTAP para Azure.
-
Desde la carpeta raíz, ejecute el siguiente comando para activar el despliegue:
docker-compose up -dSe activan dos contenedores, el primer contenedor pone en marcha Cloud Volumes ONTAP y el segundo contenedor envía datos de telemetría a AutoSupport.
El segundo contenedor espera hasta que el primer contenedor complete todos los pasos correctamente.
-
Supervise el progreso del proceso de despliegue mediante los archivos log:
docker-compose logs -fEste comando proporciona resultados en tiempo real y captura los datos en los siguientes archivos de registro:
deployment.logtelemetry_asup.logPuede cambiar el nombre de estos archivos de registro editando
.envel archivo mediante las siguientes variables de entorno:DEPLOYMENT_LOGSTELEMETRY_ASUP_LOGSLos siguientes ejemplos muestran cómo cambiar los nombres de los archivos log:
DEPLOYMENT_LOGS=<your_deployment_log_filename>.logTELEMETRY_ASUP_LOGS=<your_telemetry_asup_log_filename>.log
Puede utilizar los siguientes pasos para eliminar el entorno temporal y limpiar los elementos creados durante el proceso de despliegue.
-
Si implementó FlexCache, configure la siguiente opción en
terraform.tfvarsel archivo, esto limpia los volúmenes de FlexCache y elimina el entorno temporal creado anteriormente.flexcache_operation = "destroy"Las opciones posibles son deployy.destroy -
Si implementó FlexClone, configure la siguiente opción en
terraform.tfvarsel archivo, esto limpia los volúmenes de FlexClone y elimina el entorno temporal creado anteriormente.flexclone_operation = "destroy"Las opciones posibles son deployy.destroy