Usar a migração gerenciada com um serviço do metastore do Dataproc

Nesta página, mostramos como iniciar e gerenciar um metastore do Dataproc migração gerenciada.

É possível configurar uma migração usando as APIs Dataproc Metastore.

Antes de começar

Iniciar migração

Quando você executa uma migração de início, o Dataproc Metastore se conecta ao Cloud SQL e usa o Cloud SQL como banco de dados de back-end. Durante esse processo, o Dataproc Metastore executa um pipeline que copia dados do Cloud SQL para o próprio banco de dados (Spanner).

O metastore do Dataproc continua usando o Cloud SQL como back-end e replica os dados até que o processo de migração completa seja chamado.

Antes de iniciar uma migração, configure os pré-requisitos de migração gerenciada.

Iniciar considerações sobre a migração

  • Um serviço do Dataproc Metastore só pode executar uma única migração por vez.

  • Uma migração permanece ativa até que você conclua o processo. Não há um prazo para concluir a migração. Por exemplo, a migração pode levar um dia, 30 dias ou um ano.

  • Os backups programados não são restritos durante uma migração. No entanto, o backup pode estar incompleto. Para evitar problemas, desative todos os backups programados enquanto a migração estiver em andamento.

Uma migração inicial aciona as seguintes mudanças de estado:

  • O metastore do Dataproc é movido para o estado MIGRATING.
  • O estado de execução da migração muda para RUNNING.
  • A fase de execução da migração passa para REPLICATION.

Console

Primeiros passos

  1. No console do Google Cloud, abra a página Metastore do Dataproc:

    Acesse Dataproc Metastore

  2. Na página Metastore do Dataproc, clique no nome do serviço. para onde você quer migrar.

    A página Detalhes do serviço é aberta.

  3. Na parte de cima da página, clique em Migrar dados.

    A página Create migration é aberta na guia Connectivity e mostra as configurações de Configuração do banco de dados do Cloud SQL para o Dataproc Metastore.

Configuração do banco de dados do Cloud SQL para DPMS

  1. Em Nome da conexão da instância, insira o nome da conexão da instância Banco de dados do Cloud SQL, no seguinte formato: project_id:region:instance_name

  2. No campo Endereço IP, digite o endereço IP necessário para se conectar. à instância do Cloud SQL.

  3. No campo Porta, digite 3306.

  4. Em Nome do banco de dados Hive, insira o nome do banco de dados que está sendo usado como o back-end do Metastore Hive autogerenciado.

  5. No campo Nome de usuário, digite o nome de usuário que você usa para se conectar. Cloud SQL para o metastore Hive.

  6. No campo Senha, digite a senha que você usa para se conectar. Cloud SQL para o metastore Hive.

Serviço de proxy SOCKS5

  1. No campo Sub-rede do proxy, insira uma sub-rede de tipo regular. A sub-rede precisa estar presente na rede VPC do Cloud SQL. Essa sub-rede é usada para implantar o serviço de proxy SOCKS5 intermediário

  2. No campo Nat Sub-rede, insira uma sub-rede do tipo Private Service Connect. Essa sub-rede precisa estar presente na rede VPC do Cloud SQL e não pode ser usada para publicar o serviço de proxy SOCKS5 usando o Private Service Connect.

  3. Clique em Continuar.

    A guia Captura de dados de alteração (CDC) é aberta e mostra as configurações de Configuração do banco de dados do Cloud SQL para o Datastream.

Configuração do banco de dados do Cloud SQL para fluxo de dados

  1. No campo Nome de usuário, digite o nome de usuário que você usa para fazer login. ao CDC do Cloud SQL usado pelo Datastream.

  2. No campo Senha, digite a senha que você usa para fazer login. ao CDC do Cloud SQL usado pelo Datastream.

  3. No campo Rede VPC, insira a rede na mesma VPC como a instância do Cloud SQL usada pelo Datastream para para estabelecer uma conexão privada com o CDC.

  4. No campo Intervalo de IP da sub-rede, insira um intervalo de IP de sub-rede com valor no mínimo /29. O Datastream usa esse IP para estabelecer o peering com a rede VPC.

  5. No campo Sub-rede do proxy reverso, insira a sub-rede que você criou na mesma rede VPC do Cloud SQL. O Datastream usa sub-rede. A sub-rede é usada para hospedar uma conexão de proxy reversa para o CDC do Datastream. A sub-rede precisa ser configurada na mesma região do serviço do metastore do Dataproc.

Configuração do GCS

  1. Em Código do bucket, selecione o caminho do Cloud Storage para o armazenamento Dados de CDC durante a migração.

  2. No campo Caminho raiz, insira o caminho raiz no bucket do Cloud Storage. Os dados do evento de stream são gravados nesse caminho.

  3. Clique em Criar.

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

Substitua:

  • SERVICE: o nome ou ID do serviço Metastore do Dataproc.
  • PROJECT_ID: o ID do projeto do Google Cloud. projeto em que o serviço do metastore do Dataproc reside.
  • LOCATION: a região do Google Cloud em que seu serviço do Dataproc Metastore reside.

Configuração da migração do Cloud SQL

  • INSTANCE_CONNECTION_NAME: o nome da conexão de instância do banco de dados do Cloud SQL, no seguinte formato: PROJECT_ID/LOCATION/CLOUDSQL_INSTANCE_ID.
  • HIVE_DATABASE_NAME: o nome do banco de dados autogerenciado Hive conectado ao Cloud SQL.
  • IP_ADDRESS: o endereço IP necessário para se conectar à instância do Cloud SQL.
  • CONNECTION_USERNAME: o nome de usuário usado para conectar o Cloud SQL ao Metastore do Hive.
  • CONNECTION_PASSWORD a senha usados para conectar o Cloud SQL ao metastore Hive
  • PROXY_SUBNET: a sub-rede usada na rede VPC do Cloud SQL. Essa sub-rede hospeda uma instância intermediária proxy para e fornece conectividade entre redes transitivas.
  • NAT_SUBNET: uma sub-rede do Private Service Connect que fornece uma conexão do serviço Metastore do Dataproc acessem o proxy intermediário. O tamanho da sub-rede precisa ter um tamanho de prefixo de pelo menos /29 e no intervalo IPv4.

Configuração do CDC

  • CDC_USERNAME: o nome de usuário que o serviço do Datastream usa para fazer login no Cloud SQL.
  • CDC_PASSWORD: a senha que o O serviço Datastream usa para fazer login no Cloud SQL.
  • VPC_NETWORK: uma rede na mesma rede VPC que a instância do Cloud SQL usada pelo Datastream para estabelecer uma conexão particular com o CDC.
  • SUBNET_IP_RANGE: um intervalo de IP de sub-rede de usado pelo Datastream para estabelecer peering com o rede VPC do produtor de serviços.
  • REVERSE_PROXY_SUBNET_ID: uma sub-rede na mesma rede VPC da instância do Cloud SQL usada pelo Datastream. A sub-rede é usada para hospedar uma conexão de proxy reverso para o CDC do Datastream. A sub-rede precisa ser configurada na mesma região do serviço do metastore do Dataproc.
  • BUCKET_NAME: o caminho do Cloud Storage para o armazenamento Dados de CDC durante a migração.
  • ROOT_PATH: o caminho raiz dentro do Cloud Storage do Google Cloud. Os dados do evento de fluxo são gravados neste caminho.

Concluir a migração

Quando você conclui uma migração, o metastore do Dataproc se conecta Spanner e começa a usar o Spanner como banco de dados de back-end.

Uma migração completa aciona as seguintes mudanças de estado:

  • O metastore do Dataproc volta para o estado ACTIVE.
  • O estado de execução da migração é movido para SUCCEEDED.

Console

  1. No console do Google Cloud, abra a página Metastore do Dataproc.

  2. Na parte de cima da página, clique em Migrar dados.

    A página Migrar dados é aberta e mostra as migrações gerenciadas concluídas.

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

Substitua:

  • SERVICE: o nome ou ID do serviço Metastore do Dataproc.
  • PROJECT_ID: o ID do projeto do Google Cloud. projeto em que o serviço do metastore do Dataproc reside.
  • LOCATION: a região do Google Cloud em que seu serviço do Dataproc Metastore reside.

Cancelar migração

Quando você cancela uma migração, o metastore do Dataproc reverte todas as alterações e começa a usar o tipo de banco de dados Spanner como banco de dados de back-end. Todos os dados transferidos durante a migração são excluídos.

Uma migração de cancelamento aciona as seguintes alterações de estado:

  • O metastore do Dataproc volta para o estado ACTIVE.
  • O estado de execução da migração é movido para CANCELLED.

Console

  1. No console do Google Cloud, abra a página Metastore do Dataproc.

  2. Na parte de cima da página, clique em Migrar dados.

    A página Migrar dados é aberta e exibe as contas migrações gerenciadas.

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

Substitua:

  • SERVICE_NAME: o nome ou ID do serviço do Dataproc Metastore.
  • PROJECT_ID: o ID do projeto do Google Cloud. projeto em que o serviço do metastore do Dataproc reside.
  • LOCATION: a região do Google Cloud em que o serviço do Dataproc Metastore está localizado.

Receber detalhes da migração

Confira os detalhes de uma única migração gerenciada.

Console

  1. No console do Google Cloud, abra o Metastore do Dataproc página.

  2. Na parte de cima da página, clique em Migrar dados.

    A página Migrar dados é aberta e mostra as migrações gerenciadas.

    Para conferir mais detalhes, clique no nome de uma migração gerenciada.

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

Substitua:

  • SERVICE: o nome ou ID do serviço Metastore do Dataproc.
  • PROJECT_ID: o ID do projeto do Google Cloud. projeto em que o serviço do metastore do Dataproc reside.
  • LOCATION: a região do Google Cloud em que seu serviço do Dataproc Metastore reside.
  • MIGRATION_ID: o nome ou ID do Migração do metastore do Dataproc.

Listar migrações

Lista as migrações gerenciadas.

Console

  1. No console do Google Cloud, abra a página Metastore do Dataproc.

  2. Na parte de cima da página, clique em Migrar dados.

    A página Migrar dados é aberta e mostra as migrações gerenciadas.

  3. Verifique se o comando listou as migrações.

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

Substitua:

  • SERVICE: o nome ou ID do serviço Metastore do Dataproc.
  • PROJECT_ID: o ID do projeto do Google Cloud. projeto em que o serviço do metastore do Dataproc reside.
  • LOCATION: a região do Google Cloud em que o serviço do Dataproc Metastore está localizado.

Excluir migrações

Excluir migrações gerenciadas.

Console

  1. No console do Google Cloud, abra o Metastore do Dataproc página.

  2. Na parte de cima da página, clique em Migrar dados.

    A página Migrar dados é aberta e mostra as migrações gerenciadas.

  3. Selecione a migração e clique em Excluir.

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

Substitua:

  • SERVICE: o nome ou ID do serviço Metastore do Dataproc.
  • PROJECT_ID: o ID do projeto do Google Cloud. projeto em que o serviço do metastore do Dataproc reside.
  • LOCATION: a região do Google Cloud em que o serviço do Dataproc Metastore está localizado.
  • MIGRATION_ID: o nome ou ID do Migração do metastore do Dataproc.

A seguir