Migrações de início rápido para PostgreSQL homogêneo

Nesta página, descrevemos as migrações de início rápido para migrações homogêneas do PostgreSQL para o Cloud SQL para PostgreSQL e o AlloyDB para PostgreSQL. As migrações de início rápido são um fluxo de migração contínua leve para cenários homogêneos do PostgreSQL que simplificam o processo de migração com recursos como rede automatizada, descoberta incorporada, replicação rápida (com base em pgnative) e muito mais. Nesta página, descrevemos as migrações de início rápido para migrações homogêneas do PostgreSQL para o Cloud SQL para PostgreSQL e o AlloyDB para PostgreSQL:

  • A visão geral fornece uma descrição geral do que são as migrações de início rápido e como usá-las para melhorar sua experiência de migração.
  • Guias e cenários compatíveis contém links para instruções detalhadas de todos os fluxos de migração de início rápido.
  • Conectividade de rede explica a arquitetura exclusiva usada pelo Database Migration Service em migrações de início rápido.
  • Limitações descreve limitações e advertências conhecidas que você precisa considerar ao seguir as migrações de início rápido.

Visão geral

Com as migrações de início rápido, o Database Migration Service pode configurar automaticamente tudo o que você precisa para migrar origens que têm um IP privado atribuído em uma rede VPC, como bancos de dados autogerenciados no Compute Engine ou instâncias do Cloud SQL para PostgreSQL. Os principais destaques das migrações de início rápido incluem:

  • Replicação do pgnative: o mecanismo de replicação nativo permite migrar sem instalar outras extensões do PostgreSQL ou rebaixar a instância de destino. Os outros bancos de dados na instância de destino permanecem operacionais, sem interrupções no tráfego.
  • Rede simplificada: o Database Migration Service lida automaticamente com a conectividade de rede em IPs particulares. Nas migrações de início rápido, todos os recursos necessários (configuração de conectividade privada, anexo de rede e sub-rede) são criados automaticamente para permitir conexões por interfaces do Private Service Connect. Para mais informações, consulte a seção Conectividade de rede.
  • Descoberta incorporada: é possível iniciar, gerenciar e monitorar migrações diretamente nas instâncias de destino do Cloud SQL ou do AlloyDB para PostgreSQL com os recursos de observabilidade do Database Migration Service.

A tabela a seguir resume as principais diferenças entre as migrações homogêneas de início rápido e padrão do PostgreSQL:

Recurso Migrações padrão (pglogical) Migrações de início rápido (replicação nativa)
Instalação da extensão Obrigatório. É preciso instalar e configurar a extensão pglogical no banco de dados de origem. Não é obrigatório.
Estado da instância de destino Precisa estar vazio e rebaixado (para o Cloud SQL) ou no modo de inicialização (para o AlloyDB para PostgreSQL). Pode ser uma instância ativa com tráfego ativo para outros bancos de dados (não sendo migrados).
Conectividade de rede Oferece suporte a cenários complexos com interfaces do Private Service Connect, peering de nuvem privada virtual, túneis SSH reversos e conectividade de IP público. Usa conexões totalmente particulares com interfaces do Private Service Connect para abstrair a configuração de rede. Não é necessário configurar o banco de dados de origem para conectividade. O único requisito é que ele tenha um IP particular atribuído em uma rede VPC.
Tabelas sem chaves primárias Incompatível. Todas as tabelas precisam ter chaves primárias. Compatível. É possível replicar tabelas sem chaves primárias definindo a identidade da réplica como INDEX ou FULL.
Jobs de migração paralelos Incompatível. Só é possível executar um job de migração por instância de banco de dados de origem. Compatível. É possível executar vários jobs de migração em paralelo, com cada job migrando bancos de dados diferentes da mesma origem.
Propriedade do objeto de destino Os objetos pertencem ao usuário postgres. Os objetos pertencem ao usuário de migração gerado pelo Database Migration Service (se estiver usando o console do Google Cloud ) ou ao usuário que você fornecer (se estiver usando a Google Cloud CLI).

Guias e cenários compatíveis

Uma prévia em vídeo do fluxo de migração de início rápido.

As migrações de início rápido para o PostgreSQL homogêneo facilitam as migrações homogêneas contínuas para destinos novos ou atuais do Cloud SQL para PostgreSQL ou do AlloyDB para PostgreSQL. Esse fluxo de migração é mais adequado para migrar de origens que têm um endereço IP privado na sua rede de nuvem privada virtual (VPC) do Google Cloud, como bancos de dados autogerenciados no Compute Engine ou instâncias do Cloud SQL para PostgreSQL ativadas para rede privada. As origens hospedadas fora do Google Cloud podem precisar de outros componentes de rede (como uma conexão Cloud VPN) para que possam ser acessadas em um endereço IP particular na sua rede VPC.

Você pode iniciar sua jornada de migração de início rápido em vários lugares no console do Google Cloud :

Conectividade de rede

Em geral, as migrações de início rápido usam uma arquitetura de rede diferente das migrações homogêneas padrão. O Database Migration Service e as instâncias de destino do Cloud SQL para PostgreSQL ou do AlloyDB para PostgreSQL são produtores de serviços que residem nas próprias redes dedicadas (conhecidas como redes de serviços), fora das redes VPC que você usa no projeto do Google Cloud .

Figura 1. Visualização simplificada de rede para migrações de início rápido (clique para ampliar)

O Database Migration Service facilita totalmente a conectividade de origem e destino para migrações de início rápido.

Para conectividade do banco de dados de origem, as migrações de início rápido usam interfaces do Private Service Connect. Esse método de conectividade exige que a instância de origem tenha um endereço IP privado na rede VPC do Google Cloud. Os bancos de dados autogerenciados no Compute Engine ou nas instâncias do Cloud SQL para PostgreSQL geralmente atendem a esse requisito de maneira imediata. As origens hospedadas fora do Google Cloud podem precisar de outros componentes de rede (como uma conexão Cloud VPN) para que possam ser acessadas em um endereço IP privado na rede VPC.

Para a conectividade do banco de dados de destino, o Database Migration Service gerencia totalmente a comunicação de rede com as instâncias do Cloud SQL para PostgreSQL ou os clusters do AlloyDB para PostgreSQL. O único requisito é que o destino esteja ativado para o Private Service Connect, mas nenhuma outra configuração é necessária.

Conectividade de origem com bancos de dados auto-hospedados no Compute Engine

Quando você migra de um banco de dados autohospedado no Compute Engine, o Database Migration Service cria o anexo de rede na mesma rede VPC em que você tem sua VM.

Este diagrama mostra a conectividade de rede facilitada pelo Database Migration Service
        para migrações de início rápido de bancos de dados autogerenciados no Compute Engine.
Figura 2. Conectividade de rede facilitada pelo Database Migration Service para migrações de início rápido de bancos de dados autogerenciados no Compute Engine. (clique para ampliar)
Este diagrama mostra a conectividade de rede facilitada pelo Database Migration Service
        para migrações de início rápido de bancos de dados autogerenciados no Compute Engine.

Conectividade de origem com o Cloud SQL para PostgreSQL

Quando você migra de uma instância do Cloud SQL para PostgreSQL, o Database Migration Service cria o anexo de rede na rede VPC em que sua instância tem um IP privado atribuído. Esse IP pode ser resultado de uma configuração de acesso a serviços particulares (PSA, na sigla em inglês) ou do Private Service Connect. Para mais informações, consulte Configuração de IP privado na documentação do Cloud SQL.

Este diagrama mostra a conectividade de rede facilitada pelo Database Migration Service
        para migrações de início rápido de uma instância do Cloud SQL para PostgreSQL.
Figura 3. Conectividade de rede facilitada pelo Database Migration Service para migrações de início rápido de uma instância do Cloud SQL para PostgreSQL. (clique para ampliar)
Este diagrama mostra a conectividade de rede facilitada pelo Database Migration Service
        para migrações de início rápido de uma instância do Cloud SQL para PostgreSQL.

Conectividade de origem com bancos de dados fora do Google Cloud

Ao migrar de um banco de dados hospedado fora do Google Cloud, você precisa de outros componentes de rede para garantir que o banco de dados tenha um endereço IP particular atribuído na rede VPC do Google Cloud (por exemplo, uma rede VPC). O Database Migration Service cria o anexo de rede na rede VPC em que sua instância tem um IP privado atribuído.

Este diagrama mostra a conectividade de rede facilitada pelo Database Migration Service
        para migrações de início rápido de bancos de dados hospedados no local ou
        como ofertas gerenciadas fora do l10n-placeholder15="15" .
Figura 4. Conectividade de rede facilitada pelo Database Migration Service para migrações de início rápido de bancos de dados hospedados no local ou como ofertas gerenciadas fora do Google Cloud. (clique para ampliar)
Este diagrama mostra a conectividade de rede facilitada pelo Database Migration Service
        para migrações de início rápido de bancos de dados hospedados no local ou
        como ofertas gerenciadas fora do l10n-placeholder16="16" .

Limitações

As limitações a seguir se aplicam às migrações de início rápido. Se o cenário de migração exigir o uso de recursos não compatíveis, recomendamos que você siga o fluxo de migração padrão. Para mais informações, consulte as páginas de documentação Migrar para o Cloud SQL para PostgreSQL ou Migrar para o AlloyDB para PostgreSQL.

  • As migrações de início rápido não são compatíveis com a migração de versões do PostgreSQL 9.6 ou anteriores.

  • Bancos de dados vazios (ou seja, bancos de dados que têm apenas esquemas do sistema) não são compatíveis.

  • A autenticação do Identity and Access Management (IAM) para instâncias ou clusters de destino não é compatível. Quando você usa migrações de início rápido para um novo destino, o Database Migration Service se conecta como o usuário padrão postgres. Se você migrar para um destino atual, o Database Migration Service vai criar uma conta dedicada do cloudsqlsuperuser ou do alloydbsuperuser e usá-la para se conectar ao destino. Para mais informações sobre o IAM, consulte Autenticação do IAM na documentação do Cloud SQL ou Gerenciar a autenticação do IAM na documentação do AlloyDB para PostgreSQL.

  • O banco de dados de origem precisa ter um endereço IP privado atribuído na sua rede VPC. O Database Migration Service se conecta ao banco de dados de origem usando interfaces do Private Service Connect (anexos de rede). A conectividade de IP público não é compatível com migrações de início rápido.

  • Somente destinos com o Private Service Connect ativado são aceitos. As instâncias do Cloud SQL para PostgreSQL ou do AlloyDB para PostgreSQL do PSA não são compatíveis como destinos de migração.

  • As opções de criptografia SSL para conexões de origem só são compatíveis com as variantes none e required para migrações de início rápido.

  • As migrações homogêneas do MySQL ou do SQL Server não são compatíveis com as migrações de início rápido.

  • Recursos avançados, como configurações personalizadas de paralelismo de despejo de dados, não são compatíveis.

  • Somente migrações contínuas são compatíveis.

  • As migrações de início rápido podem acomodar até 50 bancos de dados por job de migração. Não é necessário migrar todos os bancos de dados no servidor de banco de dados de origem. O Database Migration Service permite selecionar quais bancos de dados você quer migrar.

  • Para tabelas sem chaves primárias, apenas as operações INSERT são replicadas por padrão durante a fase de captura de dados alterados (CDC). Para replicar as operações UPDATE e DELETE, defina a identidade da réplica da tabela como FULL ou USING INDEX. As etapas exatas são abordadas nos guias de migração de início rápido.

  • As limitações padrão de fidelidade de migração se aplicam. Para mais informações, consulte Fidelidade da migração em migrações do AlloyDB para PostgreSQL, Fidelidade da migração em migrações do Cloud SQL para PostgreSQL.

A seguir