Actualizado: mover datos de una máquina virtual de Azure a una cuenta de almacenamiento con AzCopy

Estaba trabajando con un cliente que hizo su viaje a la nube y, como parte de su antigua infraestructura, tiene un servidor que recibe volcados de respaldo de varios servidores, lo que se estaba convirtiendo en un único punto de falla. Además, se utilizó el mismo servidor para mover datos entre diferentes entornos, lo que a veces implica colocar los archivos en un área temporal para moverlos a un entorno no enrutado (Dev, Test y UAT, por mencionar algunos). El último detalle fue una gran cantidad de datos que requirieron un tiempo de respuesta rápido para moverse, ya sea al restaurar el entorno original o al copiar en una ubicación diferente.

Buscaban una solución más moderna para abordar algunos de los problemas actuales. El objetivo era garantizar que los datos que se centralizaban en ese servidor se duplicaran y tal vez se reemplazaran por completo. Hay varias opciones disponibles, como Azure Backup, Azure files, etc.

Después de algunas discusiones y algunas ideas propuestas, trabajamos en una solución que sería más fácil de usar, segura y confiable. Nuestro objetivo se estableció para cumplir con los requisitos mediante el uso de cuentas de almacenamiento. La solución propuesta fue utilizar Cuentas de almacenamiento con la utilidad AzCopy para copiar los datos del servidor al área de almacenamiento. Tenga en cuenta que una versión actualizada de AzCopy (AzCopy V10.10.0) acaba de ser lanzado. La versión actualizada contiene algunas características nuevas y una gran cantidad de correcciones para errores que aparecieron en versiones anteriores.

Para mejorar la seguridad de la solución general, configuraremos el firewall y la función de red virtual en el nivel de la cuenta de almacenamiento, donde solo las conexiones de una subred específica podrán comunicarse con la cuenta de almacenamiento. Además de eso, vamos a crear un identidad administrada por el sistema en la máquina virtual y asigne un RBAC (control de acceso basado en roles) solo a esa misma máquina virtual para poder escribir datos en la cuenta de almacenamiento.

Un sistema gestionado identidad está habilitado en el nivel de máquina virtual y crea una identidad para la máquina virtual en Azure Active Directory. Esa identidad es única para la máquina virtual y existirá mientras exista la máquina virtual y no se puede transmitir.

El proceso para copiar datos a otros entornos se simplificó porque el cliente podía utilizar una solución como Explorador de almacenamiento para ver los archivos y descargar los archivos necesarios. Nota: Las IP / redes virtuales para esos entornos deben estar permitidas primero en el firewall de almacenamiento y en el área de la red virtual.

El diseño de alto nivel de la solución se muestra en la imagen a continuación, donde las líneas verdes muestran el tráfico permitido y las rojas muestran el tráfico denegado (en caso de que VM intente conectarse).

AzCopy

Configurar la identidad de la máquina virtual

El primer paso de este artículo es habilitar un Identidad administrada por el sistema a la máquina virtual que va a copiar los datos a nuestra cuenta de almacenamiento. Podemos activar durante la provisión de la VM en el Gestión pestaña, como se muestra en la imagen a continuación.

AzCopy

Si la máquina virtual se creó sin esa opción, el proceso para habilitarla es sencillo. En las propiedades de la hoja de VM deseadas, haga clic en Identidad, cambia el Estado a En y entonces Ahorrar. Un cuadro de diálogo le pedirá que confirme el registro de la máquina virtual con Azure Active Directory. Haga clic en para confirmar. El resultado debería ser similar a la imagen que se muestra a continuación.

cuenta de almacenamiento

Crear una cuenta de almacenamiento

Nuestro primer paso es crear una cuenta de almacenamiento para que sea nuestra cuenta de almacenamiento temporal que será el repositorio de nuestros archivos. Para crear una nueva cuenta de almacenamiento usando Azure Portal, haga clic en Crear un recurso ubicado en la esquina superior izquierda de Azure Portal. Escribir Cuenta de almacenamiento y presione enter. En la página de resultados, haga clic en Cuenta de almacenamiento: blob, archivo, tabla, cola, y en la nueva hoja, haga clic en Crear.

En el Crear cuenta de almacenamiento asistente, defina el grupo de recursos, el nombre de la cuenta de almacenamiento y la ubicación según sus requisitos. En este artículo, debido a que vamos a utilizar archivos pequeños, vamos a utilizar Estándar rendimiento, tipo StorageV2, almacenamiento redundante local (LRS) como método de replicación, y Caliente como nivel.

El rendimiento es un punto de discusión al decidir qué cuenta de almacenamiento usar. Siempre puede probar ambas opciones de rendimiento y encontrar el equilibrio entre rendimiento y costo para su solución.

cuenta de almacenamiento

Después de crear la cuenta de almacenamiento, la bloquearemos para que sea accesible solo desde la subred donde se encuentra la VM que va a cargar los archivos.

Haga clic en el Cuenta de almacenamientoy haga clic en Cortafuegos y redes virtuales (Artículo 1). En la nueva hoja, seleccione Redes seleccionadas (Elemento 2), haga clic en agregar una red virtual existente (Ítem 3). Aparecerá una nueva hoja en el lado derecho, donde debemos definir la red virtual y la subred (elemento 4). Elija la subred donde se encuentra el servidor que utilizará esta cuenta de almacenamiento y haga clic en Permitir (artículo 5).

Para guardar todo el proceso que realizamos hasta el momento, haga clic en Ahorrar (Ítem 6).

AzCopy

Al copiar los archivos, necesitaremos el Punto final del servicio de blog principal para nuestra cuenta de almacenamiento actual. Para obtener esa información, haga clic en Propiedades en el nivel de Cuenta de almacenamiento y copie la información como se muestra en la imagen a continuación.

El último paso es asignar un asignación de roles en el nivel de la cuenta de almacenamiento a la máquina virtual que acabamos de crear una identidad administrada. En las propiedades de la hoja de la cuenta de almacenamiento, haga clic en Control de acceso (IAM). En la nueva hoja, haga clic en +Agregar , Agregar asignación de funciones.

En la nueva hoja, seleccione Colaborador de datos de Storage Blob rol (elemento 1), seleccione máquina virtual (Elemento 2) en el Asignar acceso a (Elemento 3), seleccione la VM deseada de la lista y haga clic en Ahorrar (Ítem 4)

Copia de datos de la máquina virtual a la cuenta de almacenamiento

Inicie sesión en la máquina virtual, copie la utilidad AzCopy. Es un solo ejecutable, no requiere instalación, guárdelo en una carpeta (C: Windows si desea usarlo desde cualquier lugar de su VM). Para descargar AzCopy en un archivo ZIP, haga clic aquí.

Los dos primeros comandos que vamos a ejecutar es asegurarnos de que podemos establecer una sesión, y luego crearemos un contenedor en la Cuenta de Almacenamiento. El primero (elemento 1) utilizará la identidad administrada por VM y el segundo (elemento 2) creará un nuevo contenedor. El resultado de ambas acciones se puede ver en el nivel Cuenta de almacenamiento Contenedor (Elemento 3).

AzCopy login --identity
AzCopy make https://ap6.blob.core.windows.net/newcontainer

Se puede utilizar el proceso para copiar una carpeta completa del servidor actual a la cuenta de almacenamiento (la sintaxis se enumera a continuación). La utilidad AzCopy proporciona un excelente resumen cuando se completa la copia.

AzCopy copy ‘c:temp’ https://ap6.blob.core.windows.net/newcontainer --recursive

Este artículo ha sido actualizado con nueva información.

Foto principal: Diseñado por Macrovector / Freepik


Vistas de publicaciones:
2.009


Leave a Reply

Your email address will not be published. Required fields are marked *