Nesta página, mostramos como iniciar e gerenciar uma migração gerenciada do Dataproc Metastore.
É possível configurar uma migração usando as APIs Dataproc Metastore.
Antes de começar
- Entenda como uma migração gerenciada funciona.
- Configure os pré-requisitos da 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 Dataproc Metastore continua usando o Cloud SQL como back-end e reproduz 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.
Considerações sobre a migração inicial
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, 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 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
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 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
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 Hive, insira o nome do banco de dados que está sendo usado como o back-end do Metastore Hive autogerenciado.
No campo Nome de usuário, digite 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 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.
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, digite o nome de usuário usado para fazer login no CDC do Cloud SQL usado pelo Datastream.
No campo Senha, insira a senha usada 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 da sub-rede de pelo menos
/29
. O Datastream usa esse IP para estabelecer o peering com a rede VPC.No campo Sub-rede de proxy reverso, insira a sub-rede que você criou 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
Para o ID do bucket, selecione o caminho do Cloud Storage para armazenar dados de CDC durante a migração.
No campo Caminho raiz, insira o caminho raiz no bucket do Cloud Storage. Os dados do evento de fluxo são gravados neste 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 Google Cloud em que o serviço do metastore do Dataproc está armazenado.LOCATION
: a Google Cloud região em que o serviço do Dataproc Metastore está localizado.
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 usada 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 do metastore do Dataproc para acessar 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 serviço do 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 o 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 do 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 do evento de fluxo são gravados neste caminho.
Concluir migração
Quando você conclui uma migração, o Dataproc Metastore se conecta ao Spanner e começa a usar o Spanner como o 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 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 Google Cloud em que o serviço do metastore do Dataproc está armazenado.LOCATION
: a Google Cloud região em que o serviço do Dataproc Metastore 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 o banco de dados de back-end. Todos os dados transferidos durante a migração são excluídos.
O cancelamento da migração aciona as seguintes mudanças de estado:
- O metastore do Dataproc volta para o 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 Google Cloud em que o serviço do metastore do Dataproc está armazenado.LOCATION
: a Google Cloud região em que o serviço do Dataproc Metastore está localizado.
Conferir detalhes da migração
Confira os detalhes de 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 as migrações gerenciadas.
Para conferir mais detalhes sobre a migração, 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 Google Cloud em que o serviço do metastore do Dataproc está armazenado.LOCATION
: a Google Cloud região em que o serviço do Dataproc Metastore está localizado.MIGRATION_ID
: o nome ou ID da migração do metastore do Dataproc.
Listar migrações
Lista 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 as 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 Google Cloud em que o serviço do metastore do Dataproc está armazenado.LOCATION
: a Google Cloud região em que o serviço do Dataproc Metastore 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 as 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 Google Cloud em que o serviço do metastore do Dataproc está armazenado.LOCATION
: a Google Cloud região em que o serviço do Dataproc Metastore está localizado.MIGRATION_ID
: o nome ou ID da migração do metastore do Dataproc.