Menú

Cómo subir archivos a Azure Blob Storage con AzCopy, PowerShell y más

Tabla de contenido

Compartir esta página

Yifat Perry
Yifat Perry

Migrar datos desde un repositorio existente a Azure Blob y mantener los datos sincronizados en implementaciones híbridas pueden ser obstáculos importantes en el camino a la nube de muchas organizaciones. Hay varias herramientas y servicios nativos de Azure y de terceros para ayudarte a migrar datos a Azure, siendo los más populares AzCopy, Azure Import/Export, Azure Powershell y Azure Data Box. ¿Cómo puedes saber cuál es la opción correcta para tu migración a Azure?

La selección de las herramientas adecuadas depende de varios factores, como los plazos de migración, el tamaño de los datos, la disponibilidad de ancho de banda de red, los requisitos de migración online/offline y más. Este blog compartirá y explorará algunas de estas herramientas de migración de Azure y los sencillos pasos sobre cómo migrar fácilmente archivos a Azure Blob storage, todo lo cual se puede mejorar con la ayuda de las capacidades avanzadas de gestión de datos de NetApp Cloud Volumes ONTAP para la migración de datos, el rendimiento y la protección en Azure Blob storage.

Herramientas para cargar datos en Azure Blob Storage

Con la migración de datos y la movilidad siendo componentes críticos de la adopción de la nube, Microsoft ofrece múltiples herramientas y servicios nativos para apoyar a los clientes con estos procesos. Vamos a explorar algunas de estas herramientas en detalle.

AzCopy es una utilidad de línea de comandos que se usa para transferir datos hacia y desde el almacenamiento de Azure. Es una herramienta ligera que puedes instalar en tus equipos Windows, Linux o Mac para iniciar la transferencia de datos a Azure. AzCopy se puede usar en varios escenarios, para transferir datos desde on-premises a Azure Blob y Azure Files o desde Amazon S3 al almacenamiento de Azure. La herramienta también se puede usar para copia de datos hacia o desde Azure Stack.

Azure PowerShell es otra opción de línea de comandos para transferir datos desde las instalaciones locales a Azure Blob storage. El comando de Azure PowerShell Set-AzStorageBlobContent se puede usar para copiar datos a Azure Blob storage.

Azure Import/Export es un método de transferencia física que se usa en escenarios de transferencia de datos grandes donde los datos necesitan importarse a o exportarse desde Azure Blob storage o Azure Files. Además de las transferencias de datos a gran escala, esta solución también se puede usar para casos como distribución de contenidos y backup de datos/restauración. Los datos se envían a los centros de datos de Azure en SSDs o HDDs proporcionados por el cliente.

Azure Data Box utiliza un dispositivo de almacenamiento Data Box propietario proporcionado por Microsoft para transferir datos hacia y desde los centros de datos de Azure. El servicio se recomienda en escenarios donde el tamaño de los datos es superior a 40 TB y hay un ancho de banda limitado para transferir datos por la red. Los casos de uso más populares son la migración masiva de datos de una sola vez, las transferencias iniciales de datos a Azure seguidas de transferencias incrementales por la red, así como la carga periódica de datos masivos.

Cómo subir archivos a Azure Blob Storage usando AzCopy

AzCopy está disponible para Windows, Linux y MacOS. No hay instalación involucrada, ya que AzCopy se ejecuta como un archivo ejecutable. El archivo zip para Windows y Linux debe descargarse y extraerse para ejecutar la herramienta. Para Linux, el archivo tar tiene que descargarse y descomprimirse antes de ejecutar los comandos.

La herramienta AzCopy puede autorizarse para acceder al almacenamiento Azure Blob usando Azure AD o un token SAS. Al usar la autenticación de Azure AD, los clientes pueden elegir autenticarse con una cuenta de usuario antes de iniciar la copia de datos. Al usar scripts de automatización, la autenticación de Azure AD puede lograrse usando una service principal o una managed identity.

En este tutorial de AzCopy vamos a usar la autenticación a través de una cuenta de usuario de Azure AD. La cuenta debe tener asignado el rol de storage blob data contributor o el rol de Storage Blob Data Owner en el contenedor de almacenamiento donde se van a copiar los datos, así como en la cuenta de almacenamiento, el grupo de recursos y la suscripción que se vayan a usar.

1. Ve a la carpeta donde se descargó AzCopy y ejecuta el siguiente comando para iniciar sesión:

azcopy login
copiar archivos 1

Ahora verás detalles sobre cómo iniciar sesión en https://microsoft.com/devicelogin. Sigue las instrucciones en la salida y usa el código proporcionado para autenticarte.

2. En la página de inicio de sesión, introduce tus credenciales de Azure con acceso al almacenamiento y haz clic en “Siguiente”.

Ingresa tus credenciales de Azure

3. De nuevo en la línea de comandos, recibirás un mensaje de “login succeeded”.
Mensaje de inicio de sesión correcto

  1. Ejecuta el siguiente comando AzCopy para crear un contenedor en la cuenta de almacenamiento para subir archivos:
azcopy make "https://.blob.core.windows.net/"

Actualiza el marcador de posición con el nombre de la cuenta de almacenamiento en Azure y con el nombre del contenedor que quieres crear. Abajo puedes ver un ejemplo de comando:

azcopy make "https://teststor1110.blob.core.windows.net/folder1"
Ejecuta el comando AzCopy
  1. Para copiar un archivo de tu equipo local a la cuenta de almacenamiento
azcopy copy "https://.core.windows.net//"

Actualiza los marcadores de posición y en el comando anterior para reflejar los valores de tu entorno, y con el nombre del contenedor de almacenamiento que creaste en el paso 4.

Ejemplo de comando a continuación:

azcopy copy 'C:azcopyTestcopyolder1ile1.txt' 'https://teststor1110.blob.core.windows.net/folder1'

Nota: en el ejemplo anterior, folder1 en el comando anterior es el contenedor que se creó en el paso 4.

Copia un archivo de tu máquina local a la Storage account

Cuando el comando se complete con éxito, el estado del trabajo se mostrará como Completado.

  1. Para copiar todos los archivos de una carpeta local al contenedor de almacenamiento Azure, ejecuta el siguiente comando:
azcopy copy "" 'https://.blob.core.windows.net/' --recursive

Actualiza los , , y marcadores de posición en el comando anterior para reflejar los valores de tu entorno. Ejemplo de comando a continuación:

azcopy copy "C:azcopyTestcopysample" "https://teststor1110.blob.core.windows.net/folder1" --recursive

El contenido de tu carpeta de origen aparecerá como se muestra a continuación:

Contenido de la carpeta de origen
  1. Si navegas a la cuenta de almacenamiento en el portal de Azure, puedes ver que la carpeta se ha creado dentro del contenedor de almacenamiento de Azure y que los archivos se copian dentro de la carpeta.
La carpeta se ha creado dentro del contenedor de almacenamiento Azure
  1. Para copiar el contenido de la carpeta local sin crear una nueva carpeta en Azure storage, puedes usar el siguiente comando:
azcopy copy "/*" 'https://.blob.core.windows.net/'

Comando de ejemplo a continuación:


azcopy copy "C:azcopyTestcopyolder2*" "https://teststor1110.blob.core.windows.net/folder1"
  1. Los archivos adicionales se copian de la carpeta local denominada folder2 a la carpeta folder1 del contenedor Azure, como se muestra a continuación. Ten en cuenta que la carpeta de origen no se crea en este caso.

Qué es Azure PowerShell y cómo usarlo


Los cmdlets de Azure PowerShell se pueden usar para gestionar recursos de Azure desde comandos y scripts de PowerShell. Además de AzCopy, PowerShell también se puede usar para subir archivos desde una carpeta local al almacenamiento de Azure. El comando de Azure PowerShell Set-AzStorageBlobContent se usa para el mismo propósito.

Transferencias de archivos a Azure Blob Storage usando Azure PowerShell


En esta sección vamos a ver los comandos que puedes usar para subir archivos al almacenamiento blob de Azure usando PowerShell desde una máquina Windows.
1. Instala la última versión de Azure PowerShell para todos los usuarios del sistema en una sesión de PowerShell abierta con derechos de administrador usando el siguiente comando:
Install-Module -Name Az -AllowClobber -Scope AllUsers

Selecciona "Sí" cuando te pidan permisos para instalar paquetes. Haz clic en "sí" para instalar los paquetes
2. Usa el siguiente comando e inicia sesión en tu suscripción de Azure cuando te lo pidan:
Connect-AzAccount
  1. Obtén el contexto de la cuenta de almacenamiento que se usará para la transferencia de datos usando los siguientes comandos:
$uploadstorage=Get-AzStorageAccount -ResourceGroupName -Name $storcontext=$uploadstorage.Context

Actualiza los marcadores de posición y pon los valores específicos de tu entorno, como en el comando de ejemplo que te muestro abajo:
$uploadstorage=Get-AzStorageAccount -ResourceGroupName cvo177 -Name teststor1110 $storcontext=$uploadstorage.Context
  1. Ejecuta el siguiente comando para cargar un archivo desde tu directorio local a un contenedor en Azure storage:
Set-AzStorageBlobContent -Container "" -File "" -Context $storcontext

Sustituye los marcadores de posición y por valores específicos de tu entorno. Ejemplo a continuación:
Set-AzStorageBlobContent -Container "folder2" -File "C:azcopyTestcopyolder2ile1.txt" -Context $storcontext

Una vez que el archivo se haya cargado correctamente, verás un mensaje similar al que puedes ver en la captura de pantalla de abajo: Mensaje de confirmación de carga de archivos
  1. Para cargar todos los archivos de la carpeta actual, ejecuta el siguiente comando
Get-ChildItem -File -Recurse \| Set-AzStorageBlobContent -Container "" -Context $storcontext

Ejemplo de comando a continuación:
Get-ChildItem -File -Recurse \| Set-AzStorageBlobContent -Container "folder2" -Context $storcontext
  1. Si navegas hasta el contenedor de almacenamiento de Azure, verás todos los archivos cargados en los pasos 4 y 5.

NetApp Cloud Volumes ONTAP: acelera la migración de datos a la nube

Hemos hablado de cómo la migración de datos a Azure se puede lograr fácilmente usando AzCopy y comandos de Azure PowerShell. Los clientes también pueden aprovechar NetApp Cloud Volumes ONTAP para la migración de datos a la nube mediante la tecnología de replicación y clonación de confianza de NetApp. Cloud Volumes ONTAP ofrece una solución híbrida de gestión de datos, abarcando tanto entornos locales como múltiples entornos de nube.

Cloud Volumes ONTAP se distingue por el valor que ofrece a sus clientes gracias a la alta disponibilidad, la protección de datos y las funciones de eficiencia de almacenamiento como deduplicación, compresión y thin provisioning. Los volúmenes de Cloud Volumes ONTAP pueden ser accedidos por máquinas virtuales en Azure a través de los protocolos SMB/NFS y ayudan a lograr una economía de almacenamiento sin igual gracias a estas funciones. Como el almacenamiento se usa de forma más eficiente, el coste de almacenamiento de Azure también se reduce considerablemente.

NetApp Snapshot junto con la replicación de datos de SnapMirror® pueden facilitar la migración de datos de entornos locales a la nube. Mientras que la tecnología SnapShot puede usarse para tomar copias de backup de datos Point-in-time desde el almacenamiento local NetApp, la replicación de datos SnapMirror ayuda a replicarlas a volúmenes Cloud Volumes ONTAP en Azure. El servicio también puede usarse para mantener los datos sincronizados entre entornos locales y en la nube para fines de DR.

NetApp FlexClone® la tecnología de clonación de datos ayuda a crear clones grabables de volúmenes locales eficientes en almacenamiento que pueden integrarse en procesos de CI/CD para desplegar entornos de prueba/desarrollo en la nube. Esto mejora la portabilidad de datos desde las instalaciones a la nube y también dentro de la nube, todo gestionado desde una única consola de gestión. Así, Cloud Volumes ONTAP ayuda a las organizaciones a lograr agilidad y un tiempo de salida al mercado más rápido para sus aplicaciones.

Otro servicio de migración de datos de NetApp es Cloud Sync, que puede migrar datos de forma rápida y eficiente desde cualquier repositorio al almacenamiento basado en objetos en la nube, ya sea desde un sistema on-prem o entre nubes.

Conclusión

Los clientes pueden elegir entre herramientas nativas como AzCopy y Azure PowerShell para subir archivos a Azure Blob Storage. También pueden aprovechar Cloud Volumes ONTAP para capacidades avanzadas de gestión y migración de datos usando funciones como SnapMirror replication, NetApp Snapshots y FlexClone.

Siguientes pasos

Drift chat loading