Fazer upgrade de uma instância para a edição Cloud SQL Enterprise Plus usando listas de permissões de IP


Nesta página, mostramos como usar o método de conectividade de rede da lista de permissões de IP público do Database Migration Service para fazer upgrade de uma instância do Cloud SQL Enterprise para a edição Cloud SQL Enterprise Plus. O Database Migration Service cria uma nova instância do Cloud SQL e migra os dados para ela.

Informações gerais

O Cloud SQL Enterprise Plus é ideal para aplicativos que exigem desempenho máximo de gravação. Para mais informações sobre essas melhorias, consulte Melhorias de desempenho.

Para ativar essas melhorias nas instâncias do Cloud SQL Enterprise, faça upgrade delas para o Cloud SQL Enterprise Plus usando o Database Migration Service.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  6. Ative a API Database Migration Service.

    Ativar a API

  7. Verifique se você tem o papel de administrador de migração do banco de dados atribuído à sua conta de usuário.

    Acessar o IAM

Requisitos

O Database Migration Service oferece várias opções de banco de dados de origem e métodos de conectividade de rede. Diferentes fontes funcionam melhor com alguns métodos de conectividade do que com outros. Nesta página, presumimos que você esteja usando uma instância do Cloud SQL Enterprise em um ambiente em que seja possível configurar sua rede para adicionar uma regra de firewall de entrada. Como não sabemos as especificidades do seu ambiente, não podemos fornecer etapas detalhadas sobre a configuração de rede.

Configurar a instância de origem

Para configurar a instância de origem do Cloud SQL Enterprise, siga estas etapas:

  1. Se você não tiver o banco de dados postgres da instância de origem, crie um. Para mais informações, consulte Criar um banco de dados na instância do Cloud SQL.
  2. Instale o pacote pglogical nos bancos de dados da instância de origem. Verifique se o pacote está incluído na variável shared_preload_libraries. Para mais informações, consulte Configurar seus bancos de dados de origem.
  3. Ative a replicação lógica e a decodificação dos bancos de dados da instância de origem. Para mais informações, consulte Ativar replicação lógica e decodificação para seus bancos de dados de origem.

Configurar os bancos de dados de origem

Além dos bancos de dados template0 e template1, o Database Migration Service migra todos os outros bancos de dados na instância de edição do Cloud SQL Enterprise de origem.

Em cada banco de dados em sua instância de origem que não foi mencionado acima, siga estas etapas:

  1. Para instalar a extensão pglogical no banco de dados, execute o comando CREATE EXTENSION IF NOT EXISTS pglogical.

  2. Para as tabelas que não têm chaves primárias, migre as instruções UPDATE e DELETE manualmente.

  3. Para definir esses privilégios em cada um dos bancos de dados migrados, crie um usuário ou defina os privilégios de um usuário existente. Use esse usuário para se conectar à instância de origem e configure-o como o usuário na página Perfis de conexão. Esse usuário precisa ter certos privilégios em cada um dos bancos de dados migrados, bem como o banco de dados postgres padrão.

    Para definir esses privilégios, conecte-se à instância e execute os seguintes comandos:

    1. GRANT USAGE on SCHEMA SCHEMA to USER em todos os esquemas (além do esquema de informações e esquemas que começam com pg_) em cada banco de dados que você quer migrar.
    2. GRANT USAGE on SCHEMA pglogical to PUBLIC; em cada banco de dados que você quer migrar.
    3. GRANT SELECT on ALL TABLES in SCHEMA pglogical to USER em todos os bancos de dados para receber informações de replicação de bancos de dados de origem.
    4. GRANT SELECT on ALL TABLES in SCHEMA SCHEMA to USER em todos os esquemas (além do esquema de informações e esquemas que começam com pg_) em cada banco de dados que você quer migrar.
    5. GRANT SELECT on ALL SEQUENCES in SCHEMA SCHEMA to USER em todos os esquemas (além do esquema de informações e esquemas que começam com pg_) em cada banco de dados que você quer migrar.
    6. ALTER USER USER with REPLICATION role

Ativar replicação lógica e decodificação para seus bancos de dados de origem

Ative a replicação lógica e a decodificação dos bancos de dados da instância de origem do Cloud SQL Enterprise definindo as sinalizações cloudsql.logical_decoding e cloudsql.enable_pglogical como On. Para mais informações sobre essas sinalizações, consulte Configurar sinalizações do banco de dados.

Para ativar esses dois sinalizadores, siga estas etapas:

  1. No console do Google Cloud, acesse a página Instâncias do Cloud SQL.

    Acesse "Instâncias do Cloud SQL"

  2. Clique na instância de origem.
  3. Clique em Editar.
  4. Na seção Personalizar a instância, se o menu Mostrar opções de configuração for exibido, clique nele.
  5. Expanda a seção Sinalizações.

  6. Para definir as sinalizações cloudsql.logical_decoding e cloudsql.enable_pglogical, siga estas etapas:

    1. Clique em Adicionar uma sinalização de banco de dados.
    2. No menu suspenso, escolha a sinalização cloudsql.logical_decoding.
    3. Defina o valor desta sinalização como On.
    4. Clique em Concluído.
    5. Repita essas etapas para a sinalização cloudsql.enable_pglogical.
  7. Clique em Save.

  8. Na caixa de diálogo As alterações precisam ser reiniciadas, clique em Salvar e reiniciar. O Cloud SQL reinicia a instância de origem para que as alterações de configuração feitas nas sinalizações entrem em vigor.

  9. No painel Configuração, confirme as alterações na seção Sinalizações do banco de dados.

Criar um perfil de conexão

Um perfil de conexão contém informações sobre o banco de dados de origem do Cloud SQL Enterprise. O Database Migration Service usa as informações no perfil de conexão para migrar dados do banco de dados de origem para a instância da edição Cloud SQL Enterprise Plus.

Para criar um perfil de conexão, siga estas etapas:

  1. No Console do Google Cloud, acesse a página Perfis de conexão no Database Migration Service.

    Acessar Perfis de conexão

  2. Clique em Create profile.

  3. Na lista suspensa Mecanismo do banco de dados, selecione Cloud SQL para PostgreSQL.

  4. No campo Nome do perfil de conexão, digite um nome para o perfil de conexão do banco de dados de origem, como My Connection Profile.

  5. Selecione a região em que você quer salvar o perfil de conexão.

  6. Na lista suspensa Instância do Cloud SQL, selecione o nome da sua instância da edição Cloud SQL Enterprise.

  7. Para autenticar na instância de origem, digite um nome de usuário e uma senha. Depois clique em Continuar.

  8. Se você quiser criptografar seus dados, ative a criptografia SSL/TLS na conexão entre os bancos de dados de origem e de destino. Caso contrário, mantenha o valor padrão Nenhum.

  9. Clique em Continuar.

  10. No menu suspenso Teste de conectividade, selecione IP público.

  11. Verifique se a origem foi configurada corretamente e se o Database Migration Service pode se comunicar com a origem:

    1. Clique em Executar teste.

    2. Verifique se é possível ver o status Your connection profile test was successful!.

    Se o teste falhar, você pode resolver o problema na parte do fluxo destinada a isso e refazer o teste.

  12. Clique em Criar.

Criar um job de migração

O Database Migration Service usa jobs de migração para migrar dados da instância de banco de dados do Cloud SQL Enterprise de origem para a instância de destino do Cloud SQL Enterprise Plus.

A criação de um job de migração inclui as seguintes etapas:

  • Definir as configurações do job.
  • Selecionar o perfil de conexão que você criou para seu banco de dados do Cloud SQL Enterprise de origem. Esse é seu perfil de conexão de origem.
  • Definir configurações para a instância de destino do Cloud SQL Enterprise Plus.
  • Configurar a conectividade entre as instâncias de banco de dados de origem e destino.
  • Testar o job de migração para garantir que as informações de conexão fornecidas para o job sejam válidas.

Definir configurações para o job de migração

  1. No console do Google Cloud, acesse a página Jobs de migração no Database Migration Service.

    Acessar Jobs de migração

  2. Clique em Criar job de migração.

  3. No campo Nome do job de migração, digite um nome para o job de migração, como My Migration Job.

  4. Na lista suspensa Mecanismo do banco de dados de origem, selecione Cloud SQL para PostgreSQL.

  5. Na lista suspensa Mecanismo de banco de dados de destino, selecione Cloud SQL para PostgreSQL.

  6. Selecione a região de destino onde a instância do Cloud SQL Enterprise Plus será criada.

  7. Na lista suspensa Tipo de job de migração, selecione Contínuo, para que as alterações contínuas no banco de dados do Cloud SQL Enterprise de origem sejam migradas para a instância do Cloud SQL Enterprise Plus.

  8. Revise os pré-requisitos necessários que são gerados automaticamente para refletir como o ambiente precisa estar preparado para um job de migração. Esses pré-requisitos podem incluir como configurar o banco de dados do Cloud SQL Enterprise de origem e como conectá-lo à instância de destino do Cloud SQL Enterprise Plus.

    É recomendável concluir esses pré-requisitos nessa etapa, mas é possível concluí-los a qualquer momento antes de testar ou iniciar o job de migração.

  9. Clique em Salvar e continuar.

Especificar informações sobre o perfil de conexão de origem

  1. Na lista suspensa Selecionar perfil de conexão de origem, selecione o perfil de conexão que você criou.

  2. Clique em Salvar e continuar.

Definir configurações para a instância de destino do Cloud SQL Enterprise Plus.

  1. No campo Senha, digite uma senha alfanumérica para a instância do Cloud SQL Enterprise Plus. Esta é a senha da conta de administrador postgres na instância.

  2. Na lista suspensa Versão do banco de dados, selecione a instância de destino na lista de versões compatíveis do Cloud SQL para o mecanismo de banco de dados especificado.

  3. Selecione Enterprise Plus.

  4. Na seção Escolher região e zona, selecione a zona desejada do Google Cloud para a nova instância do Cloud SQL Enterprise Plus (ou deixe como Qualquer).

  5. Marque a caixa de seleção IP público.

  6. Selecione o formato da máquina para a instância do Cloud SQL Enterprise Plus. O tamanho do disco precisa ser igual ou maior que o tamanho do banco de dados de origem.

  7. Defina o tipo e a capacidade de armazenamento da instância do Cloud SQL.

  8. Para criar a nova instância, clique em Criar e continuar.

  9. Na caixa de diálogo exibida, clique em Criar destino e continuar. A criação da instância pode levar vários minutos.

Configurar conectividade

  1. Na lista suspensa Método de conectividade, selecione Lista de permissões de IP.
  2. Para usar os endereços IP de saída da instância do Cloud SQL Enterprise Plus de destino e estabelecer uma conexão com a instância de origem do Cloud SQL Enterprise, siga estas etapas:

    1. Na região Endereços IP de saída de destino, clique em Copiar tudo.
    2. Abra uma guia separada no seu navegador.
    3. No console do Google Cloud, acesse a página Instâncias do Cloud SQL.

      Acesse "Instâncias do Cloud SQL"

    4. Clique na instância de origem.
    5. Clique em Editar.
    6. Na seção Personalizar a instância, se o menu Mostrar opções de configuração for exibido, clique nele.
    7. Clique na seção Conexões.
    8. Clique em adicionar uma rede.
    9. No campo Nome, forneça um nome para a rede que representa o primeiro endereço IP que você copiou, como My First Network. Essa rede é usada para estabelecer uma conexão entre as instâncias de banco de dados do Cloud SQL Enterprise de origem e de destino no Cloud SQL Enterprise Plus.
    10. No campo Rede, digite o primeiro endereço IP que você copiou, seguido por /32. Com isso, limita-se a rede para que aceite apenas conexões desse endereço IP.
    11. Clique em Concluído.
    12. Repita essas etapas para cada endereço IP que você copiou.
    13. Clique em Save. O Cloud SQL reinicia a instância de origem do Cloud SQL Enterprise para que as alterações feitas na configuração entrem em vigor.

  3. Na guia que contém o job de migração, clique em Salvar e continuar.

Testar, criar e iniciar o job de migração

  1. Revise as configurações que você escolheu para o job de migração.

  2. Verifique se a origem foi configurada corretamente, se as instâncias de origem do Cloud SQL Enterprise e de destino do Cloud SQL Enterprise Plus podem se comunicar entre si e se o job de migração é válido:

    1. Clique em Job de teste.

    2. Verifique se é possível ver o status Your migration job test was successful!.

    Se o teste falhar, você pode resolver o problema na parte do fluxo destinada a isso e refazer o teste.

  3. Para criar o job de migração e iniciá-lo imediatamente, clique em Criar e iniciar job.

  4. Na caixa de diálogo exibida, clique em Criar e iniciar.

  5. Na página Jobs de migração, verifique se o status dele é Starting.

  6. Após alguns minutos, verifique se o status mudou para Running.

Verificar o job de migração

Para confirmar que o Database Migration Service usou o job de migração para migrar dados da instância de banco de dados do Cloud SQL Enterprise de origem para a de destino do Cloud SQL Enterprise Plus, siga estas etapas:

  1. No Console do Google Cloud, acesse a página Instâncias do SQL.

    Acessar "instâncias do Cloud SQL

  2. Clique na entrada de réplica de leitura do job de migração.

  3. Clique no ícone Ativar o Cloud Shell que aparece ao lado do campo Pesquisar.
  4. Quando solicitado, use o comando gcloud sql connect para se conectar à instância de banco de dados do Cloud SQL Enterprise Plus.

    gcloud sql connect DESTINATION_INSTANCE_NAME --user=postgres

    Substitua DESTINATION_INSTANCE_NAME pelo nome da instância de destino do Cloud SQL Enterprise Plus.

  5. Opcional: se uma caixa de diálogo Autorizar o Cloud Shell for exibida, clique em Autorizar.
  6. Quando o comando Inserir senha for exibido, digite a senha fornecida em Definir configurações para a instância do Cloud SQL Enterprise Plus.
  1. No prompt postgres, digite \list para listar os bancos de dados e verificar se você vê a instância de banco de dados de origem do Cloud SQL Enterprise de origem.
  2. No prompt postgres, insira \connect SOURCE_DB_NAME para ver as tabelas associadas a essa instância de banco de dados. O nome do prompt muda de postgres para SOURCE_DB_NAME.
  3. No prompt SOURCE_DB_NAME, para acesar as tabelas dessa instância, insira \dt.
  4. No prompt SOURCE_DB_NAME, insira GRANT cloudsqlexternalsync to USER; para conceder a esse usuário permissão de acesso aos dados nas tabelas dessa instância.

    Substitua USER pelo nome do usuário usado para se conectar à instância do banco de dados de edição do Cloud SQL Enterprise Plus.

  5. No prompt SOURCE_DB_NAME, para ver as informações replicadas de uma tabela na instância de banco de dados do Cloud SQL Enterprise de origem, digite SELECT * from TABLE_NAME;.
  6. Verifique se as informações na tabela estão corretas.

Promover o job de migração

Promover o job de migração substitui a instância de banco de dados de origem do Cloud SQL Enterprise pela instância de banco de dados de destino do Cloud SQL Enterprise Plus como banco de dados principal.

Para promover o job de migração, siga estas etapas:

  1. Volte para a página Jobs de migração.

  2. Clique no job de migração que você quer promover. A página Detalhes do job de migração é exibida.

  3. Interrompa todas as gravações no banco de dados do Cloud SQL Enterprise de origem.

  4. Verifique se o atraso da replicação é o mínimo.

  5. Clique no job de migração que você quer promover. Este job tem um status de Running.

  6. Para promover o job de migração, clique em Promover.

  7. Na caixa de diálogo exibida, clique em Promover.

  8. Verifique se o job de migração tem o status Promote in progress. Após alguns minutos, verifique se o status mudou para Completed.

Sua nova instância de banco de dados do Cloud SQL Enterprise Plus está pronta para uso.

Limpeza

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, use o console do Google Cloud para excluir o job de migração, o perfil de conexão, a instância e o projeto do Cloud SQL Enterprise, caso não precise deles.

A seguir