Migración de datos de Google Cloud Storage a Azure Blob Storage con Azure Storage Mover

La característica de migración de origen S3 (Servicio de almacenamiento simple) en Azure Storage Mover transfiere de forma segura datos de almacenes de objetos de Google Cloud Storage (GCS) compatibles con S3 a Azure Blob Storage.

A diferencia de las migraciones de AWS S3 (Amazon Simple Storage Services) que usan conectores multinube Azure Arc, las migraciones de origen compatibles con S3 usan un enfoque simplificado. Al almacenar la dirección URL del punto de conexión de origen y las credenciales de HMAC (código de autenticación de mensajes basado en hash) de forma segura en Azure Key Vault, no necesita un conector multinube ni una detección automatizada de orígenes.

Este artículo le guía por el proceso completo de configuración de Storage Mover para migrar los datos de un origen compatible con GCS S3 a Azure Blob Storage. El proceso consiste en almacenar credenciales de origen en Azure Key Vault, configurar puntos de conexión de origen y de destino y crear y ejecutar un trabajo de migración.

Prerequisites

Antes de comenzar, asegúrese de que dispone de:

  • Una suscripción de Azure activa con permisos para crear y administrar recursos de Azure Storage Mover.
  • Una cuenta de Google Cloud con acceso al bucket de GCS desde el que desea migrar.
  • Una cuenta de Azure Storage que se va a usar como destino.
  • Un recurso de Storage Mover implementado en la suscripción de Azure.
  • Un Azure Key Vault para almacenar de forma segura las credenciales HMAC de origen.
  • Claves HMAC generadas para tu depósito de GCS. Consulte Generación de claves HMAC para GCS.
  • Una configuración de conexión privada en Azure, si los datos de origen solo son accesibles a través de una red privada.

Limits

La característica de migración de origen de GCS compatible con S3 en Azure Storage Mover tiene los límites siguientes:

  • Cada trabajo de migración admite la transferencia de 500 millones de objetos.
  • Se admite un máximo de 10 trabajos simultáneos por suscripción. Si necesita ejecutar más de 10, cree una solicitud de soporte técnico.
  • Solo se admite el acceso HTTPS al origen compatible con S3.
  • El origen compatible con S3 debe admitir la autenticación de estilo AWS Signature Version 4 (SigV4).

Cosas que debe saber

Antes de comenzar la migración, revise las siguientes consideraciones específicas de las migraciones de origen compatibles con GCS S3:

Método de autenticación

El acceso compatible con GCS S3 usa claves HMAC (id. de clave de acceso y clave secreta) asociadas a una cuenta de servicio o una cuenta de usuario de GCS. Estas claves permiten a GCS responder a las solicitudes de API de S3 estándar mediante el proceso de autenticación aws Signature Version 4.

Generación de claves HMAC para GCS

Para acceder al cubo de GCS mediante la interfaz compatible con S3, debe generar claves HMAC en Google Cloud Console.

  1. Vaya a google Cloud Console.

  2. Vaya a la pestaña Almacenamiento en la nube>Configuración>Interoperabilidad.

  3. Si aún no lo ha hecho, seleccione Establecer un proyecto predeterminado para el acceso a la interoperabilidad.

  4. En la sección Claves de acceso para cuentas de servicio , seleccione la cuenta de servicio que desea usar y seleccione Crear una clave.

  5. Anote los valores clave de acceso y clave secreta . Necesita estos valores en el paso siguiente.

    Importante

    Almacene estas claves de forma segura. La clave secreta solo se muestra una vez. La clave solo es visible durante la creación inicial y no se puede recuperar más adelante.

  6. Asegúrese de que las credenciales de HMAC tienen un período de validez mínimo de una semana para garantizar la finalización del trabajo y la seguridad óptima.

Almacenar las credenciales de origen en Azure Key Vault

Después de generar claves HMAC para el cubo de GCS, almacénelas como secretos en Azure Key Vault para el acceso seguro mediante el servicio Storage Mover.

  1. Con el portal de Azure, vaya al Azure Key Vault que reside en la misma suscripción que el recurso de Storage Mover.

  2. En el panel de navegación izquierdo, expanda el menú Objetos y seleccione Secretos. A continuación, seleccione Generar/Importar.

    Captura de pantalla que resalta la ubicación del elemento de menú secretos de Key Vault en el panel de navegación izquierdo.

    Captura de pantalla que resalta la ubicación del elemento de menú Generar secretos del Key Vault.

  3. Cree un secreto para la clave de acceso:

    • Nombre: proporcione un nombre descriptivo (por ejemplo, gcs-access-key).
    • Valor secreto: pegue el valor de clave de acceso HMAC de la sección anterior.
    • Seleccione Crear.

    Captura de pantalla que muestra los campos pertinentes para la ventana Key Vault

  4. Cree un segundo secreto para la clave secreta:

    • Nombre: proporcione un nombre descriptivo (por ejemplo, gcs-secret-key).
    • Valor secreto: pegue el valor de clave secreta HMAC de la sección anterior.
    • Seleccione Crear.

    Captura de pantalla que muestra los campos pertinentes para la ventana Key Vault

  5. Anote el URI completo del identificador secreto para cada secreto. Necesita estos identificadores al crear el punto de conexión de origen.

Note

Para garantizar una seguridad óptima, se recomienda deshabilitar el acceso público en el Key Vault que contiene secretos de HMAC y agregar Storage Mover como servicio de confianza.

Para obtener más información, vea Establecer y recuperar un secreto de Key Vault mediante Azure Portal.


Configuración de puntos de conexión de origen y destino

Después de almacenar las credenciales de HMAC en la Azure Key Vault, el siguiente paso es crear los puntos de conexión de origen y destino de la migración.

En el contexto del servicio Azure Storage Mover, un punto de conexión es un recurso que contiene la ruta de acceso a una ubicación de origen o de destino y otra información relevante. Las definiciones de trabajo de Storage Mover usan puntos de conexión para definir las ubicaciones de origen y destino para las operaciones de copia.

Configuración de un punto de conexión de origen compatible con GCS S3

Los puntos de conexión de origen identifican las ubicaciones desde las que se migran los datos. Los puntos de conexión de origen se usan para definir el origen de los datos especificados en el proyecto de migración.

En los pasos siguientes se describe el proceso de creación de un punto de conexión de origen.

  1. Vaya a su instancia de Storage Mover en el portal de Azure.

  2. En el grupo Administración de recursos del panel de navegación izquierdo, seleccione Puntos de conexión de almacenamiento. Seleccione la pestaña Puntos de conexión de origen y, a continuación, seleccione Crear punto de conexión para abrir el panel Crear punto de conexión de origen .

  3. En el panel Crear punto de conexión de origen :

    • Seleccione Migración multinube como tipo de migración.
    • Seleccione Almacenamiento de objetos GCS- S3 como tipo de origen.
    • URL de origen: introduzca la URL HTTPS completa de su bucket de GCS en formato compatible con S3. Use el formato : https://storage.googleapis.com/<bucket-name>/ o https://storage.googleapis.com/<bucket-name>/<prefix>/ para migrar solo un subconjunto de objetos.
    • URI del secreto de Access Key Vault: Escriba el URI completo del secreto que contiene la clave de acceso HMAC.
    • URI del secreto de Key Vault: Introduce la URI completa del secreto que contiene tu clave secreta HMAC
    • Opcionalmente, proporcione una descripción para el punto de conexión.
  4. Compruebe que las selecciones son correctas y seleccione Crear para crear el punto de conexión.

    Captura de pantalla que muestra los campos pertinentes para la ventana

    Note

    Cuando se crea el punto de conexión de origen, se aprovisiona automáticamente una identidad administrada asignada por el sistema. Esta identidad requiere acceso al rol Key Vault Secrets User de control de acceso basado en roles (RBAC) en su Azure Key Vault para recuperar las credenciales HMAC durante la migración. El portal intenta asignar este rol automáticamente. Si se produce un error en la asignación debido a permisos insuficientes, asígnelos manualmente o póngase en contacto con el administrador de Azure para conceder el rol manualmente.

Configuración de un punto de conexión de destino de Azure Blob Storage

  1. En el grupo Administración de recursos del panel de navegación izquierdo, seleccione Puntos de conexión de almacenamiento. Seleccione la pestaña Puntos de conexión de destino y, a continuación, seleccione Agregar punto de conexión para abrir el panel Crear punto de conexión de destino .

  2. En el panel Crear punto de conexión de destino :

    • Seleccione la suscripción y la cuenta de almacenamiento en las listas desplegables correspondientes.
    • Seleccione Contenedor de blobs en el campo Tipo de destino .
    • Elija el contenedor de blobs al que desea migrar en la lista desplegable.
    • Opcionalmente, proporcione una descripción para el punto de conexión.
  3. Compruebe que las selecciones son correctas y seleccione Crear para crear el punto de conexión.

Asignar roles de RBAC

Al crear puntos de conexión a través del portal de Azure, los roles de RBAC necesarios se asignan automáticamente a las identidades administradas asignadas por el sistema:

Endpoint Función Recurso objetivo
Punto de conexión de origen Usuario de secretos de Key Vault Su Azure Key Vault
punto de conexión de destino Colaborador de datos de Storage Blob El contenedor de blobs de Azure

Si se produce un error en la asignación automática (por ejemplo, debido a permisos insuficientes), debe asignar manualmente estos roles o ponerse en contacto con el administrador de Azure.

Creación de un proyecto de migración y una definición de trabajo

Después de definir los puntos de conexión de origen y de destino para la migración, los pasos siguientes son crear un proyecto de migración de Storage Mover y una definición de trabajo.

Un proyecto de migración permite organizar migraciones grandes en unidades más pequeñas y manejables. Una definición de trabajo describe los recursos y las opciones de migración de un conjunto específico de operaciones de copia. Estos recursos incluyen, por ejemplo, los puntos de conexión de origen y de destino y cualquier configuración de migración que quiera aplicar.

Siga los pasos de esta sección para crear un proyecto de migración y ejecutar un trabajo de migración.

Creación de un proyecto

  1. Vaya a la sección Proyectos en Planear y ejecutar migraciones en la instancia de Storage Mover y seleccione Crear proyecto en la pestaña Proyectos .

  2. Proporcione valores para los campos siguientes:

    • Nombre: un nombre descriptivo para el proyecto de migración.
    • Descripción del proyecto: una descripción útil del proyecto.
  3. Seleccione Crear para crear el proyecto.

    Captura de pantalla que muestra los campos pertinentes para la ventana

Creación de una definición de trabajo

Seleccione el proyecto después de que aparezca y, a continuación, seleccione Crear un trabajo. El Asistente para la creación de trabajos tiene cuatro pestañas: Aspectos básicos, Programación, Configuración y Revisión.

Pestaña Aspectos básicos

  1. Proporcione valores para los campos siguientes:

    Campo Value
    Tipo de migración Seleccione Migración multinube
    Tipo de origen Seleccionar almacenamiento de objetos GCS - S3 (versión preliminar)
    Tipo de bucket de S3 Seleccione Público o Privado (versión preliminar)
    Nombre Un nombre descriptivo para el trabajo
    Description (Opcional) Descripción del trabajo (máximo de 1024 caracteres)

    Captura de pantalla que muestra los campos pertinentes para la pestaña Aspectos básicos de la ventana de Storage Mover

  2. En la sección Origen:

    • Punto de conexión de origen: seleccione Agregar punto de conexión de origen para crear un nuevo punto de conexión o seleccione un punto de conexión de origen compatible con GCS S3 existente.
    • Subruta de origen: (Opcional) Especifique la ruta de una subcarpeta para migrar solo parte de su bucket. Si se deja vacío, el trabajo comienza desde la raíz del depósito.
    • Compruebe que la ruta de acceso completa que se muestra es correcta.
  3. En la sección Destino :

    • Punto de conexión de destino: seleccione Agregar punto de conexión de destino para crear un nuevo punto de conexión o seleccione un punto de conexión de destino de Azure Blob Storage existente.
    • Subruta de destino: (Opcional) Especifique una subcarpeta de destino. Si se deja vacío, todo el contenido se migra a la raíz del contenedor. Una subruta única crea una nueva subcarpeta.

    Captura de pantalla que muestra los campos pertinentes para los campos de la ventana

  4. Si seleccionó Privado para el tipo de cubo S3, aparecerá una sección Conexiones privadas :

    • Seleccione Agregar para asociar conexiones privadas aprobadas con este trabajo.
    • Solo se pueden agregar conexiones en estado Aprobado .
    • Puede asociar varias conexiones privadas para el equilibrio de carga.

    Note

    Los cubos privados requieren conexiones privadas. Debes tener al menos una conexión privada aprobada antes de poder iniciar un trabajo con el tipo de depósito Privado. Consulte Conectividad de red privada para GCS para conocer los pasos de configuración.

  5. Seleccione Siguiente para continuar.

Pestaña Programación

Elija cuándo desea que se ejecute la migración:

Opción Descripción
Sin programación Inicio manual de la migración
Programación única Ejecución de la migración una vez en un momento específico
Programación periódica Ejecución de la migración en una programación diaria, semanal o mensual

Importante

La programación no está disponible actualmente para el tipo de origen GCS Object Storage - S3. Los trabajos solo se pueden ejecutar manualmente. Seleccione Sin programación y seleccione Siguiente para continuar.

Pestaña Settings

  1. Seleccione el modo de copia deseado en la lista desplegable:

    Modo de copia Comportamiento
    Fusionar contenido en el destino Los archivos se mantienen en el destino incluso si no existen en el origen. Los archivos con nombres y rutas de acceso coincidentes se actualizan para que coincidan con el origen. El cambio de nombre de la carpeta entre copias podría dar lugar a contenido duplicado en el destino.
    Reflejar origen en destino Convierte el destino en una réplica exacta del origen. Los objetos eliminados del origen también se eliminan del destino.
  2. Revise la sección Resultados de la migración para comprender cómo se asignan los datos:

    Resultado Descripción
    Estructura de directorios El destino admite carpetas "virtuales". A los archivos se les antepone la ruta de origen a su nombre y se colocan en una lista plana. Las carpetas vacías se representan como un blob vacío con metadatos de carpeta conservados en metadatos personalizados.
    Crear marca de tiempo Se conserva como metadatos de blob personalizados. La marca de tiempo nativa del blob refleja la hora en que se migró el archivo.
    Cambiar marca de tiempo Se conserva como metadatos de blob personalizados. No existe una marca de tiempo nativa para blobs de este tipo.
    Marca de tiempo modificada Se conserva como metadatos de blob personalizados. La marca de tiempo nativa del blob refleja la hora en que se migró el archivo.
    Marca de tiempo del último acceso Se conserva como metadatos personalizados del blob si existe en el origen. No existe una marca de tiempo nativa del blob de este tipo.
    Otros metadatos Se conserva en metadatos personalizados en el blob de destino. Solo se pueden almacenar 4 KiB de metadatos. Los metadatos mayores de 4 KiB no se migran.
    Protocolo de migración a la nube API de REST de Blob
  3. Seleccione Siguiente para continuar.

Pestaña Revisar

Revise el resumen de la configuración:

  • Conceptos básicos: nombre del trabajo, tipo de migración
  • Origen: tipo de origen, dirección URL de origen con el nombre del cubo, nombre en la nube (GCS), subruta de origen
  • Destino: cuenta de almacenamiento, contenedor de blobs de Azure, subruta de destino
  • Programación: frecuencia de migración
  • Configuración: modo de copia

Si toda la configuración es correcta, seleccione Crear para implementar el trabajo. Seleccione Anterior para realizar cambios.

Ejecución de un trabajo de migración

Iniciar un trabajo

  1. Vaya a la pestaña Proyectos . El trabajo recién creado aparece en la lista debajo del proyecto.
  2. Seleccione la definición del trabajo para ver sus detalles en la pestaña Propiedades .
  3. Seleccione el botón Iniciar trabajo .
  4. En el panel Iniciar trabajo , confirme los detalles del trabajo y seleccione Iniciar para comenzar la migración.

El trabajo se ejecuta en segundo plano. Puede supervisar su progreso en la pestaña Información general de la migración.

Supervisión del progreso de la migración

Al usar Storage Mover para migrar los datos, debe supervisar las operaciones de copia para detectar posibles problemas. Los datos relacionados con las operaciones que se realizan durante la migración se muestran en la pestaña Información general de la migración. Estos datos le permiten realizar un seguimiento del progreso de la migración proporcionando información de estado y clave actuales, como el progreso, la velocidad y el tiempo de finalización estimado.

Cuando se configura, Azure Storage Mover también proporciona registros de copia y registros de ejecución de trabajos. Estos registros permiten realizar un seguimiento del resultado de la migración de ejecuciones de trabajos y de archivos individuales.

  1. Vaya a la pestaña Trabajos de migración .
  2. Seleccione el trabajo para ver el progreso, la velocidad y el tiempo de finalización estimado.
  3. Seleccione Registros para comprobar si hay errores o advertencias.
  4. Una vez completada la migración, compruebe los datos de Azure Blob Storage.

Para más información sobre los registros de copia y trabajo de Storage Mover, consulte el artículo Habilitación de los registros de copia y trabajo de Azure Storage Mover .


Validación posterior a la migración

La validación de datos posteriores a la migración garantiza que los datos sean precisos y que se complete la transferencia de GCS a Azure Blob Storage. Este proceso de validación comprueba la integridad de los datos comparando los datos migrados con los mismos datos del origen.

Siga estos pasos para completar la validación manual y limpiar los recursos de GCS sin usar:

  1. Comparar el origen y el destino: compruebe que todos los objetos esperados se transfieren comparando los recuentos de objetos y el tamaño total de los datos entre el cubo GCS y el contenedor de blobs de Azure.
  2. Verifique de forma puntual la integridad de los datos: descargue una muestra representativa de objetos tanto del origen como del destino y compare las sumas de comprobación.
  3. Habilitar la sincronización incremental (si es necesario): si necesitas mantener sincronizados tu depósito de GCS y tu contenedor de blobs de Azure a lo largo del tiempo, programa ejecuciones periódicas de los trabajos.
  4. Retirar de servicio el origen: elimina el depósito de GCS y las claves HMAC una vez que la migración se haya completado y verificado por completo. Quite los secretos correspondientes de Azure Key Vault cuando ya no sea necesario.

Solución de problemas y soporte técnico

Si encuentra problemas durante la migración, comience a solucionar problemas siguiendo los pasos siguientes.

Cuestión Resolution
El trabajo de migración ha fallado Compruebe los registros de copia y trabajo para ver los mensajes de error detallados. Entre las causas comunes se incluyen credenciales no válidas o problemas de conectividad de red.
Error de autenticación Compruebe que la clave de acceso hMAC y la clave secreta almacenadas en Azure Key Vault son correctas y no han expirado. Asegúrese de que la identidad administrada del punto de conexión de origen tenga acceso de Usuario de secretos de Key Vault en su Key Vault.
Error de permisos en el destino Compruebe que la identidad administrada del punto de conexión de destino tenga el rol de Colaborador de datos de blobs de almacenamiento en el contenedor de blobs de destino.
La transferencia de datos es lenta Asegúrese de que el ancho de banda de red es suficiente. GCS puede implementar límites de velocidad en solicitudes de API compatibles con S3. Considere reducir el número de tareas simultáneas si se produce una limitación de ancho de banda.
Faltan objetos después de la sincronización Debido a la granularidad a nivel de segundos de las marcas de tiempo de GCS, es posible que los objetos modificados en el mismo segundo que la última sincronización no se detecten hasta la siguiente ejecución del trabajo. Espere y ejecute una sincronización complementaria.
Objetos inesperados en el objetivo Los objetos de marcador de posición del directorio GCS (objetos de cero bytes que terminan en /) se omiten automáticamente y no deben aparecer en el destino. Si existen objetos inesperados, revise los registros de copia para obtener más información.
Dirección URL de origen rechazada Asegúrese de que la dirección URL de origen usa HTTPS, no contiene parámetros de consulta, fragmentos ni direcciones IP y apunta a un nombre de dominio completo válido.

Si no puede resolver el problema, cree una solicitud de Soporte técnico de Azure.


Los siguientes artículos pueden ayudarle a familiarizarse con el servicio Storage Mover: