Usa la migración administrada con un servicio de Dataproc Metastore

En esta página, se muestra cómo iniciar y administrar una migración administrada de Dataproc Metastore.

Puedes configurar una migración con las APIs de Dataproc Metastore.

Antes de comenzar

Iniciar migración

Cuando ejecutas una migración de inicio, Dataproc Metastore se conecta a Cloud SQL y usa Cloud SQL como su base de datos de backend. Durante este proceso, Dataproc Metastore ejecuta una canalización que copia datos de Cloud SQL a su propia base de datos (Spanner).

Dataproc Metastore continúa usando Cloud SQL como su backend y replica datos hasta que se llama al proceso de migración completa.

Antes de iniciar una migración, asegúrate de haber configurado los requisitos previos para la migración administrada.

Consideraciones para iniciar la migración

  • Un servicio de Dataproc Metastore solo puede ejecutar una sola migración a la vez.

  • Una migración permanece activa hasta que completas el proceso de migración. No hay una fecha límite para completar la migración. Por ejemplo, la migración puede tardar 1 día, 30 días o un año.

  • Las copias de seguridad programadas no se restringen durante una migración. Sin embargo, es posible que la copia de seguridad esté incompleta. Para evitar problemas, inhabilita las copias de seguridad programadas mientras la migración esté en curso.

Una migración de inicio activa los siguientes cambios de estado:

  • Dataproc Metastore pasa al estado MIGRATING.
  • El estado de ejecución de la migración pasa a RUNNING.
  • La fase de ejecución de la migración pasa a REPLICATION.

Console

Comenzar

  1. En la Google Cloud consola, abre la página Dataproc Metastore:

    Ir a Dataproc Metastore

  2. En la página Dataproc Metastore, haz clic en el nombre del servicio al que deseas migrar.

    Se abrirá la página Detalles del servicio.

  3. En la parte superior de la página, haz clic en Migrar datos.

    Se abrirá la página Crear migración en la pestaña Conectividad y se mostrará la configuración de Configuración de la base de datos de Cloud SQL para Dataproc Metastore.

Configuración de la base de datos de Cloud SQL para DPMS

  1. En el Nombre de conexión de la instancia, ingresa el nombre de conexión de la instancia de la base de datos de Cloud SQL, en el siguiente formato: project_id:region:instance_name.

  2. En el campo Dirección IP, ingresa la dirección IP necesaria para conectarte a la instancia de Cloud SQL.

  3. En el campo Puerto, ingresa 3306.

  4. En el Nombre de la base de datos de Hive , ingresa el nombre de la base de datos que se usa como backend del metastore de Hive autoadministrado.

  5. En el campo Nombre de usuario, ingresa el nombre de usuario que usas para conectar Cloud SQL al metastore de Hive.

  6. En el campo Contraseña, ingresa la contraseña que usas para conectar Cloud SQL al metastore de Hive.

Servicio de proxy SOCKS5

  1. En el campo Subred de proxy, ingresa una subred de tipo Regular. La subred debe estar presente en la red de VPC de Cloud SQL. Esta subred se usa para implementar el servicio de proxy SOCKS5 intermedio.

  2. En el campo Subred de NAT, ingresa una subred de tipo Private Service Connect. Esta subred debe estar presente en la red de VPC de Cloud SQL y se usa para publicar el servicio de proxy SOCKS5 con Private Service Connect.

  3. Haz clic en Continuar.

    Se abrirá la pestaña Captura de datos modificados (CDC) y se mostrará la configuración de Configuración de la base de datos de Cloud SQL para Datastream.

Configuración de la base de datos de Cloud SQL para el flujo de datos

  1. En el campo Nombre de usuario, ingresa el nombre de usuario que usas para acceder al CDC de Cloud SQL que usa Datastream.

  2. En el campo Contraseña, ingresa la contraseña que usas para acceder al CDC de Cloud SQL que usa Datastream.

  3. En el campo Red de VPC, ingresa la red en la misma red de VPC que la instancia de Cloud SQL que usa Datastream para establecer una conexión privada al CDC.

  4. En el campo Rango de IP de subred, ingresa un rango de IP de subred de al menos /29. Datastream usa esta IP para establecer el intercambio de tráfico a la red de VPC.

  5. En el campo Subred de proxy inverso, ingresa la subred que creaste en la misma red de VPC que Cloud SQL. Datastream usa esta subred. La subred se usa para alojar una conexión de proxy inverso para el CDC de Datastream. La subred debe configurarse en la misma región que el servicio de Dataproc Metastore.

Configuración de GCS

  1. Para el ID del bucket, selecciona la ruta de acceso de Cloud Storage para almacenar datos de CDC durante la migración.

  2. En el campo Ruta raíz, ingresa la ruta raíz dentro del bucket de Cloud Storage. Los datos de eventos de transmisión se escriben en esta ruta de acceso.

  3. Haz clic en Crear.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type:application/json" \
  -X POST -d \
  '{
    "migration_execution": {
      "cloud_sql_migration_config": {
        "cloud_sql_connection_config": {
          "instance_connection_name": INSTANCE_CONNECTION_NAME,
          "hive_database_name": "HIVE_DATABASE_NAME",
          "ip_address": "IP_ADDRESS",
          "port": 3306,
          "username": "CONNECTION_USERNAME",
          "password": "CONNECTION_PASSWORD",
          "proxy_subnet": "PROXY_SUBNET",
          "nat_subnet": "NAT_SUBNET"
        },
        "cdc_config": {
          "username": "CDC_USENAME",
          "password": "CDC_PASSWORD",
          "vpc_network": "VPC_NETWORK",
          "subnet_ip_range": "SUBNET_IP_RANGE",
          "reverse_proxy_subnet": "REVERSE_PROXY_SUBNET_ID",
          "bucket": "BUCKET_NAME",
          "root_path": "ROOT_PATH",
        }
      }
    }
}' \
  https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE:startMigration

Reemplaza lo siguiente:

  • SERVICE: Es el nombre o el ID de tu servicio de Dataproc Metastore.
  • PROJECT_ID: Es el ID del proyecto del Google Cloud proyecto en el que reside tu servicio de Dataproc Metastore.
  • LOCATION: Es la Google Cloud región en la que reside tu servicio de Dataproc Metastore.

Configuración de migración de Cloud SQL

  • INSTANCE_CONNECTION_NAME: Es el nombre de conexión de la instancia para la base de datos de Cloud SQL, en el siguiente formato: PROJECT_ID/LOCATION/CLOUDSQL_INSTANCE_ID.
  • HIVE_DATABASE_NAME: Es el nombre de la base de datos de Hive autoadministrada conectada a Cloud SQL.
  • IP_ADDRESS: Es la dirección IP necesaria para conectarte a la instancia de Cloud SQL.
  • CONNECTION_USERNAME: Es el nombre de usuario que usas para conectar Cloud SQL al metastore de Hive.
  • CONNECTION_PASSWORD : Es la contraseña que usas para conectar Cloud SQL al metastore de Hive.
  • PROXY_SUBNET: Es la subred que se usa en la red de VPC de Cloud SQL. Esta subred aloja un proxy intermedio para proporcionar conectividad en redes transitivas.
  • NAT_SUBNET: Es una subred de Private Service Connect que proporciona una conexión desde el servicio de Dataproc Metastore para acceder al proxy intermedio. El tamaño de la subred debe tener una longitud de prefijo de al menos /29 y en el rango de IPv4.

Configuración de CDC

  • CDC_USERNAME: Es el nombre de usuario que usa el servicio de Datastream para acceder a Cloud SQL.
  • CDC_PASSWORD: Es la contraseña que usa el servicio de Datastream para acceder a Cloud SQL.
  • VPC_NETWORK: Es una red en la misma red de VPC que la instancia de Cloud SQL que usa Datastream para establecer una conexión privada al CDC.
  • SUBNET_IP_RANGE: Es un rango de IP de subred de al menos /29 que usa Datastream para establecer el intercambio de tráfico a la red de VPC.
  • REVERSE_PROXY_SUBNET_ID: Es una subred en la misma red de VPC que la instancia de Cloud SQL que usa Datastream. La subred se usa para alojar una conexión de proxy inverso para el CDC de Datastream. La subred debe configurarse en la misma región que el servicio de Dataproc Metastore.
  • BUCKET_NAME: Es la ruta de acceso de Cloud Storage para almacenar datos de CDC durante la migración.
  • ROOT_PATH: Es la ruta raíz dentro del bucket de Cloud Storage. Los datos de eventos de transmisión se escriben en esta ruta de acceso.

Completar migración

Cuando completas una migración, Dataproc Metastore se conecta a Spanner y comienza a usar Spanner como su base de datos de backend.

Una migración completa activa los siguientes cambios de estado:

  • Dataproc Metastore vuelve al estado ACTIVE.
  • El estado de ejecución de la migración pasa a SUCCEEDED.

Console

  1. En la Google Cloud consola, abre la página **Dataproc Metastore**.

  2. En la parte superior de la página, haz clic en Migrar datos.

    Se abrirá la página Migrar datos y se mostrarán las migraciones administradas completadas.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type:application/json" \
  -X POST -d '' \
   https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE:completeMigration

Reemplaza lo siguiente:

  • SERVICE: Es el nombre o el ID de tu servicio de Dataproc Metastore.
  • PROJECT_ID: Es el ID del proyecto del Google Cloud proyecto en el que reside tu servicio de Dataproc Metastore.
  • LOCATION: Es la Google Cloud región en la que reside tu servicio de Dataproc Metastore.

Cancelar migración

Cuando cancelas una migración, Dataproc Metastore revierte los cambios y comienza a usar el tipo de base de datos de Spanner como su base de datos de backend. Se borran todos los datos que se transfirieron durante la migración.

Una migración de cancelación activa los siguientes cambios de estado:

  • Dataproc Metastore vuelve al estado ACTIVE.
  • El estado de ejecución de la migración pasa a CANCELLED.

Console

  1. En la Google Cloud consola, abre la página **Dataproc Metastore**.

  2. En la parte superior de la página, haz clic en Migrar datos.

    Se abrirá la página Migrar datos y se mostrarán las migraciones administradas canceladas.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type:application/json" \
  -X POST -d '' \
    https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE:cancelMigration

Reemplaza lo siguiente:

  • SERVICE_NAME: Es el nombre o el ID de tu servicio de Dataproc Metastore.
  • PROJECT_ID: Es el ID del proyecto del Google Cloud proyecto en el que reside tu servicio de Dataproc Metastore.
  • LOCATION: Es la Google Cloud región en la que reside tu servicio de Dataproc Metastore.

Obtén detalles de la migración

Obtén detalles sobre una sola migración administrada.

Console

  1. En la Google Cloud consola, abre la página **Dataproc Metastore**.

  2. En la parte superior de la página, haz clic en Migrar datos.

    Se abrirá la página Migrar datos y se mostrarán las migraciones administradas.

    Para obtener más detalles de la migración, haz clic en el nombre de una migración administrada.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -X GET \
   https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE/migrationExecutions/MIGRATION_ID

Reemplaza lo siguiente:

  • SERVICE: Es el nombre o el ID de tu servicio de Dataproc Metastore.
  • PROJECT_ID: Es el ID del proyecto del Google Cloud proyecto en el que reside tu servicio de Dataproc Metastore.
  • LOCATION: Es la Google Cloud región en la que reside tu servicio de Dataproc Metastore.
  • MIGRATION_ID: Es el nombre o el ID de tu migración de Dataproc Metastore.

Enumera migraciones

Enumera las migraciones administradas.

Console

  1. En la Google Cloud consola, abre la página **Dataproc Metastore**.

  2. En la parte superior de la página, haz clic en Migrar datos.

    Se abrirá la página Migrar datos y se mostrarán las migraciones administradas.

  3. Verifica que el comando haya enumerado las migraciones.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -X GET \
   https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE/migrationExecutions/MIGRATION_ID

Reemplaza lo siguiente:

  • SERVICE: Es el nombre o el ID de tu servicio de Dataproc Metastore.
  • PROJECT_ID: Es el ID del proyecto del Google Cloud proyecto en el que reside tu servicio de Dataproc Metastore.
  • LOCATION: Es la Google Cloud región en la que reside tu servicio de Dataproc Metastore.

Borrar migraciones

Borra las migraciones administradas.

Console

  1. En la Google Cloud consola, abre la página **Dataproc Metastore**.

  2. En la parte superior de la página, haz clic en Migrar datos.

    Se abrirá la página Migrar datos y se mostrarán las migraciones administradas.

  3. Selecciona la migración y haz clic en Borrar.

REST

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
   -X DELETE \
    https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE/migrationExecutions/MIGRATION_ID

Reemplaza lo siguiente:

  • SERVICE: Es el nombre o el ID de tu servicio de Dataproc Metastore.
  • PROJECT_ID: Es el ID del proyecto del Google Cloud proyecto en el que reside tu servicio de Dataproc Metastore.
  • LOCATION: Es la Google Cloud región en la que reside tu servicio de Dataproc Metastore.
  • MIGRATION_ID: Es el nombre o el ID de la migración de Dataproc Metastore.

¿Qué sigue?