Conectividade de rede para migrações homogêneas padrão do PostgreSQL

Nesta página, apresentamos uma visão geral dos conceitos associados à configuração da conectividade de rede para migrações homogêneas padrão do PostgreSQL para o AlloyDB para PostgreSQL. Para informações sobre a conectividade da migração de início rápido, consulte o guia Usar migrações de início rápido.

Depois de se familiarizar com os diferentes métodos de conectividade e os requisitos deles, use o diagrama de árvore de decisão para escolher a solução certa para seu cenário.

Componentes de rede envolvidos no processo de migração

Para migrações homogêneas do PostgreSQL para o AlloyDB para PostgreSQL, o Database Migration Service se conecta ao cluster de destino do AlloyDB para PostgreSQL e gerencia o processo de migração em nome dele. É o cluster de destino que estabelece a conexão com a instância de origem, enquanto o Database Migration Service supervisiona o processo.

Visão geral do fluxo de migração do PostgreSQL
Figura 1. Movimentação de dados durante as migrações do Database Migration Service para PostgreSQL. (clique para ampliar)
Visão geral do fluxo de migração do PostgreSQL

Ao planejar a configuração da conectividade de rede para sua migração, é importante considerar cuidadosamente os requisitos de infraestrutura, incluindo as limitações que suas decisões de rede podem introduzir no estado final do cluster de banco de dados migrado. Por exemplo, se você quiser usar uma conexão particular para sua conectividade de rede, use um cluster de destino do AlloyDB para PostgreSQL configurado com acesso a serviços privados ou Private Service Connect.

Disponibilidade dos métodos de conectividade

Diferentes métodos de conectividade estão disponíveis para diferentes bancos de dados de origem, dependendo se você está migrando para um cluster de destino novo ou existente. A tabela a seguir mostra uma visão geral de qual cenário é compatível com qual método:

Oferta de banco de dados de origem Métodos para migrações para novos clusters de destino Métodos para migrações para clusters de destino atuais
Auto-hospedado Lista de permissões de IP, túnel SSH reverso, peering de VPC, proxy TCP por uma VM hospedada na nuvem Lista de permissões de IP, túnel SSH reverso, peering de VPC (requer um cluster de destino de PSA), proxy TCP por uma VM hospedada na nuvem, interfaces do PSC (requer um cluster de destino com PSC ativado)
Amazon Aurora, Amazon RDS Lista de permissões de IP, túnel SSH reverso, peering de VPC Lista de permissões de IP, túnel SSH reverso, peering de VPC (requer um cluster de destino de PSA), interfaces do PSC (requer um cluster de destino com PSC ativado)
Cloud SQL para PostgreSQL Lista de permissões de IP (não recomendado), peering de VPC, proxy TCP por uma VM hospedada na nuvem Lista de permissões de IP (não recomendado), peering de VPC, proxy TCP por uma VM hospedada na nuvem, interfaces do PSC (requer um cluster de destino com PSC ativado)

Comparação de métodos de conectividade

Cada método de conectividade tem benefícios e requisitos diferentes. Use as tabelas a seguir para compará-los rapidamente e, em seguida, saiba mais detalhes nas seções dedicadas a cada método.

Método de rede Vantagens Desvantagens
Lista de permissões de IP
  • O método de conectividade mais fácil de configurar.
  • Útil quando não é possível acessar o banco de dados de origem por redes privadas no Google Cloud.
  • Exige que você exponha um endereço IPv4 do servidor de banco de dados de origem à Internet pública. Isso exige medidas de segurança extras. Por exemplo, recomendamos que você use certificados TLS e regras de firewall para proteger a conexão.
  • A configuração das regras de firewall pode exigir assistência do departamento de segurança de rede ou de TI.
Túnel SSH reverso
  • Mais seguro do que se conectar por IP público com uma lista de permissões de IP.

    A conexão inicial é estabelecida por portas Secure Shell (SSH) na Internet pública. Depois que a conexão estiver ativa, todo o tráfego vai passar por um túnel seguro e particular até a porta 5432 do PostgreSQL.

  • Útil quando não é possível acessar o banco de dados de origem por redes particulares no Google Cloud, mas você não quer expor o servidor de banco de dados de origem diretamente à Internet pública.
  • O uso de um servidor intermediário (a máquina do túnel SSH reverso) para conectividade pode introduzir latência adicional.
  • Você precisa configurar e manter o servidor host de SSH reverso. O servidor precisa permanecer on-line durante toda a migração.
Interfaces do Private Service Connect
  • Estabelece conexões com o IP privado de origem usando um anexo de rede. Esse método não consome a cota de peering na VPC.
  • O método de conectividade privada de origem mais fácil e recomendado para configurar.
  • Compatível apenas com migrações para clusters de destino do AlloyDB para PostgreSQL. Se você quiser usar esse método, crie o cluster de destino diretamente no AlloyDB para PostgreSQL.
  • Exige a configuração de um anexo de rede e o ajuste das regras de firewall.
  • Não é possível modificar o anexo de rede depois de estabelecer a conexão.
Proxy TCP por uma VM hospedada na nuvem
  • Conecta a conectividade privada quando o roteamento direto não é possível devido ao peering de VPC não transitivo (por exemplo, ao migrar de fontes do Cloud SQL para PostgreSQL que usam a arquitetura de rede de produtor mais antiga ou ao conectar redes VPC separadas).
  • O Database Migration Service gera automaticamente um script de configuração para implantar e configurar a VM de proxy.
  • É preciso configurar e manter a VM de proxy do Compute Engine, o que pode gerar custos adicionais de computação.
Conectividade particular com peering de nuvem privada virtual A conexão é estabelecida com o endereço IP privado do banco de dados de origem por meio de peerings de VPC. Se a VPC não tiver cota de peering suficiente, pode ser difícil usar esse método de conectividade. Na maioria dos cenários em que você migra para um cluster atual do AlloyDB para PostgreSQL, recomendamos usar a conectividade particular com interfaces do Private Service Connect.

Lista de permissões de IP para conectividade do banco de dados de origem

Quando você usa o método de conectividade de lista de permissões de IP, o AlloyDB para PostgreSQL tenta estabelecer uma conexão com um endereço IP disponível publicamente do servidor de banco de dados de origem na porta 5432 do PostgreSQL.

Diagrama que mostra a conectividade da lista de permissões de IP público para migrações
        homogêneas.
Figura 2. Diagrama de conectividade de rede da lista de permissões de IP para migrações homogêneas do PostgreSQL. (clique para ampliar)
Diagrama que mostra a conectividade da lista de permissões de IP público para migrações homogêneas.

Requisitos para conectividade da lista de permissões de IP

Em geral, para usar esse método de conectividade, você precisa garantir o seguinte:

  • É preciso expor o endereço IP do banco de dados de origem à Internet pública (diretamente ou com um nome de host reconhecido publicamente por um servidor de nomes de domínio (DNS)).

  • A instância principal do AlloyDB para PostgreSQL de destino precisa ter o IP público de saída ativado. O banco de dados de origem precisa permitir conexões de entrada de ambos os endereços IP públicos de saída da instância principal de destino.

Configurar a conectividade da lista de permissões de IP

A configuração da conectividade de IP público requer etapas diferentes, dependendo do tipo de banco de dados de origem. Para mais informações, consulte:

Conectividade do banco de dados do túnel SSH reverso

Esse método de conectividade é uma mistura de conectividade de rede pública e privada. A conexão em si é estabelecida por meio de portas Secure Shell (SSH) para o endereço IP público do servidor host do túnel. Depois que a conexão estiver ativa, todo o tráfego vai passar por um túnel seguro para o endereço IP privado do banco de dados de origem na porta 5432.

Para origens do Cloud SQL ou soluções autohospedadas que residem no Google Cloud, recomendamos que você use os métodos de conectividade particular com interfaces do Private Service Connect ou de conectividade particular com peering de nuvem privada virtual.

Um diagrama de rede que mostra uma configuração de conectividade de alto nível
      em um servidor SSH dedicado.
Figura 3. Exemplo de rede de migração: conectividade de origem por um túnel SSH. (clique para ampliar)
Um diagrama de rede que mostra uma configuração de conectividade de alto nível
      em um servidor SSH dedicado.

Requisitos para túneis SSH reversos

Para criar a conexão, é preciso expor as portas SSH à Internet pública no servidor de túnel (também conhecido como Bastion Host). Quando a conectividade é estabelecida, todo o tráfego é roteado pela conexão de túnel particular.

Esse método requer outros componentes de rede:

  • Uma máquina virtual (VM) no Google Cloud para servir como a máquina de SSH reverso.
  • Uma máquina adicional na sua rede que tenha conectividade com o banco de dados de origem.

Configurar a conectividade do túnel SSH reverso

O Database Migration Service pode gerar um script de configuração para criar a VM de SSH reverso, mas o processo completo é diferente dependendo do tipo de banco de dados de origem. Para mais informações, consulte Configurar a conectividade SSH reversa.

Conectividade particular com interfaces do Private Service Connect

Esse método de conectividade permite que você se conecte ao IP privado do banco de dados de origem sem consumir a cota de peering de VPC. As interfaces do Private Service Connect são o método recomendado para conectividade de IP privado, mas só estão disponíveis quando você migra para um cluster atual.

Quando você usa interfaces do Private Service Connect, o cluster de destino não consome mais cota de peering. Em vez disso, ele usa a interface do Private Service Connect para acessar a nuvem privada virtual em que o IP privado do banco de dados de origem pode ser acessado. Dependendo da arquitetura de rede, talvez seja necessário usar outros componentes, como o Cloud VPN ou o Cloud Interconnect.

Diagrama mostrando a conectividade do Private Service Connect com o Cloud VPN
        para migrações homogêneas.
Figura 4. Conectividade de rede com interfaces do Private Service Connect para migrações homogêneas de origens que residem fora do Google Cloud. (clique para ampliar)
Diagrama mostrando a conectividade do Private Service Connect com o Cloud VPN
        para migrações homogêneas.

Para migrações de instâncias do Cloud SQL para PostgreSQL, a instância de origem precisa estar ativada para o acesso a serviços particulares e ter peering com a nuvem privada virtual em que você cria o anexo de rede, mas o cluster de destino do AlloyDB para PostgreSQL não consome mais cota de peering. Em vez disso, ele usa a interface do Private Service Connect.

Diagrama mostrando a conectividade de rede para migrações com
        interfaces do Private Service Connect.
Figura 5. Conectividade de rede com interfaces do Private Service Connect para migrações homogêneas do Cloud SQL para PostgreSQL. (clique para ampliar)
Diagrama mostrando a conectividade de rede para migrações com
        interfaces do Private Service Connect.

Requisitos para interfaces do Private Service Connect

Esse método de conectividade requer o seguinte:

  • O cluster de banco de dados de destino precisa ser um cluster do AlloyDB para PostgreSQL com o PSC ativado.

  • Você precisa ter uma rede de nuvem privada virtual com o acesso a serviços particulares ativado.

    Essa é a rede em que você cria o anexo de rede. O IP do banco de dados de origem precisa ser acessível por essa nuvem privada virtual. Por exemplo, para origens do Cloud SQL para PostgreSQL, essa é a rede que você faz peering com a instância de origem do Cloud SQL com PSA ativado.

Configurar a conectividade de IP particular com interfaces do Private Service Connect

Para usar a conectividade de IP privado com as interfaces do Private Service Connect, o IP privado do banco de dados de origem precisa ser acessível pela nuvem privada virtual. Dependendo da arquitetura de rede, talvez seja necessário usar outros componentes, como o Cloud VPN ou o Cloud Interconnect.

Para saber como configurar a conectividade de IP privado para diferentes fontes de banco de dados, consulte:

Proxy TCP por uma VM hospedada na nuvem

Esse método de conectividade é uma alternativa quando você quer usar a conectividade privada por peering de nuvem privada virtual, mas o peering de VPC não transitivo impede o roteamento direto entre o banco de dados de origem e o cluster de destino do AlloyDB para PostgreSQL.

Esse cenário ocorre com mais frequência ao migrar de uma instância do Cloud SQL para PostgreSQL que usa a arquitetura de rede de produtor mais antiga para um cluster de destino do AlloyDB para PostgreSQL configurado com o acesso a serviços particulares (PSA). Como os dois serviços residem em redes de produtor separadas gerenciadas pelo Google e o peering de VPC não é transitivo, o tráfego não pode fluir diretamente entre eles. Ele também se aplica quando o banco de dados de origem auto-hospedado e o cluster de destino do AlloyDB para PostgreSQL residem em redes VPC com peering separadas ou quando os requisitos da política de segurança corporativa exigem o roteamento do tráfego de migração por um único endereço IP interno estático.

Uma VM intermediária do Compute Engine na sua rede VPC atua como uma ponte, aceitando conexões de replicação de entrada na porta 5432 da instância principal de destino do AlloyDB para PostgreSQL e encaminhando-as para o banco de dados de origem.

Um diagrama de arquitetura para uma conexão de banco de dados particular que usa a VM de proxy TCP.
Figura 6. Uma conexão particular facilitada pela VM de proxy TCP. (clique para ampliar)
Um diagrama de arquitetura para uma conexão de banco de dados particular que usa a VM de proxy TCP.

Requisitos para conectividade do proxy TCP

Esse método de conectividade requer o seguinte:

  • Uma VM do Compute Engine na rede de nuvem privada virtual com peering com o cluster de destino do AlloyDB para PostgreSQL para executar o contêiner de proxy TCP.
  • Network Reachability da VM de proxy para a instância do banco de dados de origem.

Configurar a conectividade do proxy TCP

Quando você cria um job de migração no console do Google Cloud , o Database Migration Service coleta os parâmetros necessários e gera um script gcloud que cria a VM do contêiner de proxy do Compute Engine e a regra de firewall de entrada necessária na VPC. Para instruções detalhadas, consulte Configurar a conectividade usando um proxy TCP por uma VM hospedada na nuvem.

Conectividade privada com peering de VPC

Esse método permite que você se conecte à origem usando os endereços IP privados na nuvem privada virtual (VPC). Não é necessário expor nenhuma interface à Internet pública para usar esse método, mas o endereço IP ou o nome do host do banco de dados de origem precisa ser acessível pela VPC do Google Cloud . Para origens que residem fora do Google Cloud, talvez sejam necessários outros componentes de rede, como o Cloud VPN ou o Cloud Interconnect.

Diagrama mostrando a conectividade de peering de nuvem privada virtual para migrações homogêneas do PostgreSQL.
Figura 7. Conectividade de rede com peering de nuvem privada virtual para migrações homogêneas do PostgreSQL. (clique para ampliar)
Diagrama mostrando a conectividade de peering de nuvem privada virtual para migrações homogêneas do PostgreSQL.

Requisitos para conectividade por IP particular com peering de VPC

A conectividade por IP particular com peering de VPC requer o seguinte:

Configurar a conectividade de IP particular com o peering de VPC

Para usar a conectividade de IP privado com o peering de nuvem privada virtual, o IP privado do banco de dados de origem precisa ser acessível pela nuvem privada virtual. Dependendo da arquitetura de rede, talvez seja necessário usar outros componentes, como o Cloud VPN ou o Cloud Interconnect.

Para saber como configurar a conectividade de IP privado para diferentes fontes de banco de dados, consulte:

Árvore de decisão de conectividade de rede

Quando você estiver familiarizado com todos os métodos de conectividade compatíveis e os requisitos deles, siga as perguntas no diagrama para escolher o método de conectividade certo para seu cenário.

Um diagrama de árvore de decisão com perguntas de orientação para ajudar você
        a escolher o método de conectividade certo.
Figura 8. Árvore de decisão de conectividade de rede de origem.

A seguir