Nesta página, mostramos como iniciar e gerenciar uma migração gerenciada do metastore do Dataproc.
É possível configurar uma migração usando as APIs do Dataproc Metastore.
Antes de começar
- Entenda como funciona uma migração gerenciada.
- Configure os pré-requisitos de migração gerenciada.
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, verifique se você configurou os pré-requisitos da migração gerenciada.
Considerações sobre o início da migração
Um serviço do metastore do Dataproc só pode executar uma 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, ela 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 de início aciona as seguintes mudanças de estado:
- O metastore do Dataproc passa 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
No console do Google Cloud , abra a página Metastore do Dataproc:
Na página Metastore do Dataproc, clique no nome do serviço para o qual você quer migrar.
A página Detalhes do serviço é aberta.
Na parte de cima da página, clique em Migrar dados.
A página Criar migração é aberta na guia Conectividade 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
Em Nome da conexão da instância, insira o nome da conexão da instância do banco de dados do Cloud SQL no seguinte formato:
project_id:region:instance_name
.No campo Endereço IP, digite o endereço IP necessário para se conectar à instância do Cloud SQL.
No campo Porta, digite 3306.
Em Nome do banco de dados do Hive, insira o nome do banco de dados usado como back-end do metastore Hive autogerenciado.
No campo Nome de usuário, insira o nome de usuário que você usa para conectar o Cloud SQL ao metastore do Hive.
No campo Senha, insira a senha usada para conectar o Cloud SQL ao metastore do Hive.
Serviço de proxy SOCKS5
No campo Sub-rede de proxy, insira uma sub-rede do tipo regular. A sub-rede precisa estar na rede VPC do Cloud SQL. Essa sub-rede é usada para implantar o serviço de proxy SOCKS5 intermediário.
No campo Sub-rede NAT, insira uma sub-rede do tipo Private Service Connect. Essa sub-rede precisa estar presente na rede VPC do Cloud SQL e é usada para publicar o serviço de proxy SOCKS5 usando o Private Service Connect.
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
No campo Nome de usuário, insira o nome de usuário que você usa para fazer login na CDC do Cloud SQL usada pelo Datastream.
No campo Senha, insira a senha que você usa para fazer login na CDC do Cloud SQL usada pelo Datastream.
No campo Rede VPC, insira a rede na mesma rede VPC que a instância do Cloud SQL usada pelo Datastream para estabelecer uma conexão privada com o CDC.
No campo Intervalo de IP da sub-rede, insira um intervalo de IP de sub-rede de pelo menos
/29
. O Datastream usa esse IP para estabelecer peering com a rede VPC.No campo Sub-rede de proxy reverso, insira a sub-rede criada na mesma rede VPC do Cloud SQL. O Datastream usa essa sub-rede. 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.
Configuração do GCS
Em ID do bucket, selecione o caminho do Cloud Storage para armazenar os dados de CDC durante a migração.
No campo Caminho raiz, insira o caminho raiz no bucket do Cloud Storage. Os dados de eventos de fluxo são gravados nesse caminho.
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 seu serviço do Dataproc Metastore.PROJECT_ID
: o ID do projeto do Google Cloud em que o serviço do metastore do Dataproc está localizado.LOCATION
: a região do Google Cloud em que o serviço do metastore do Dataproc está localizado.
Configuração da migração do Cloud SQL
INSTANCE_CONNECTION_NAME
: o nome da conexão da 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 do Hive autogerenciado 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 que você usa para conectar o Cloud SQL ao Hive Metastore.CONNECTION_PASSWORD
a senha que você usa para conectar o Cloud SQL ao metastore do HivePROXY_SUBNET
: a sub-rede usada na rede VPC do Cloud SQL. Essa sub-rede hospeda um proxy intermediário para fornecer conectividade em redes transitivas.NAT_SUBNET
: uma sub-rede do Private Service Connect que fornece uma conexão do serviço metastore do Dataproc para acessar o proxy intermediário. O tamanho da sub-rede precisa ter um comprimento de prefixo de pelo menos /29 e no intervalo IPv4.
Configuração de CDC
CDC_USERNAME
: o nome de usuário que o serviço Datastream usa para fazer login no Cloud SQL.CDC_PASSWORD
: a senha que 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 pelo menos /29 usado pelo Datastream para estabelecer peering com a rede VPC.REVERSE_PROXY_SUBNET_ID
: uma sub-rede na mesma rede VPC que a 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 Metastore do Dataproc.BUCKET_NAME
: o caminho do Cloud Storage para armazenar dados de CDC durante a migração.ROOT_PATH
: o caminho raiz dentro do bucket do Cloud Storage. Os dados de eventos de fluxo são gravados nesse caminho.
Concluir a migração
Quando você conclui uma migração, o Dataproc Metastore se conecta ao Spanner e começa a usá-lo como banco de dados de back-end.
Uma migração completa aciona as seguintes mudanças de estado:
- O metastore do Dataproc volta ao estado
ACTIVE
. O estado de execução da migração muda para
SUCCEEDED
.
Console
No console do Google Cloud , abra a página Metastore do Dataproc.
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 seu serviço do Dataproc Metastore.PROJECT_ID
: o ID do projeto do Google Cloud em que o serviço do metastore do Dataproc está localizado.LOCATION
: a região do Google Cloud em que o serviço do metastore do Dataproc está localizado.
Cancelar migração
Quando você cancela uma migração, o Dataproc Metastore reverte todas as mudanças e começa a usar o tipo de banco de dados do 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 mudanças de estado:
- O metastore do Dataproc volta ao estado
ACTIVE
. O estado de execução da migração muda para
CANCELLED
.
Console
No console do Google Cloud , abra a página Metastore do Dataproc.
Na parte de cima da página, clique em Migrar dados.
A página Migrar dados é aberta e mostra as migrações gerenciadas 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
Substitua:
SERVICE_NAME
: o nome ou ID do seu serviço do Dataproc Metastore.PROJECT_ID
: o ID do projeto do Google Cloud em que o serviço do metastore do Dataproc está localizado.LOCATION
: a região do Google Cloud em que o serviço do metastore do Dataproc está localizado.
Acessar detalhes da migração
Recebe detalhes sobre uma única migração gerenciada.
Console
No console do Google Cloud , abra a página Metastore do Dataproc.
Na parte de cima da página, clique em Migrar dados.
A página Migrar dados é aberta e mostra suas migrações gerenciadas.
Para 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 seu serviço do Dataproc Metastore.PROJECT_ID
: o ID do projeto do Google Cloud em que o serviço do metastore do Dataproc está localizado.LOCATION
: a região do Google Cloud em que o serviço do metastore do Dataproc está localizado.MIGRATION_ID
: o nome ou ID da sua migração do metastore do Dataproc.
Listar migrações
Liste as migrações gerenciadas.
Console
No console do Google Cloud , abra a página Metastore do Dataproc.
Na parte de cima da página, clique em Migrar dados.
A página Migrar dados é aberta e mostra suas migrações gerenciadas.
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 seu serviço do Dataproc Metastore.PROJECT_ID
: o ID do projeto do Google Cloud em que o serviço do metastore do Dataproc está localizado.LOCATION
: a região do Google Cloud em que o serviço do metastore do Dataproc está localizado.
Excluir migrações
Excluir migrações gerenciadas.
Console
No console do Google Cloud , abra a página Metastore do Dataproc.
Na parte de cima da página, clique em Migrar dados.
A página Migrar dados é aberta e mostra suas migrações gerenciadas.
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 seu serviço do Dataproc Metastore.PROJECT_ID
: o ID do projeto do Google Cloud em que o serviço do metastore do Dataproc está localizado.LOCATION
: a região do Google Cloud em que o serviço do metastore do Dataproc está localizado.MIGRATION_ID
: o nome ou ID da migração do metastore do Dataproc.