Nesta página, descrevemos como se conectar à instância do Cloud SQL em VPCs com peering transitivo.
O Cloud SQL oferece as seguintes maneiras de conectar sua instância do Cloud SQL a várias VPCs usando IP privado:
- Conectar usando rotas anunciadas personalizadas
- Conectar usando um proxy intermediário (SOCKS5)
- Conectar usando proxy como serviço
- Conectar usando o Private Service Connect
Para saber mais sobre sua instância do Cloud SQL e várias VPCs, consulte Instância do Cloud SQL em várias VPCs.
Conectar usando rotas anunciadas personalizadas
Use o Cloud Router para configurar rotas divulgadas personalizadas entre duas redes que passam por uma VPC intermediária para conectar várias VPCs à instância do Cloud SQL. As duas VPCs precisam estar conectadas usando uma rede privada virtual (VPN), o Cloud Interconnect ou qualquer outra rede compatível com o Cloud Router.
Com rotas divulgadas personalizadas, a VPC do Cloud SQL, VPC C, conecta-se à VPC principal, VPC A, usando uma VPC intermediária, VPC B. É possível configurar rotas compartilhadas entre essas redes das seguintes maneiras:
É possível usar o Cloud Router para anunciar manualmente rotas entre duas redes que passam por uma VPC intermediária. Para mais informações sobre como configurar o Cloud Router para anunciar rotas manualmente, consulte Rede de transporte público.
É possível criar dois gateways de VPC de alta disponibilidade que se conectam entre si para conectar as duas VPCs diferentes e configurar o Cloud Router para compartilhar rotas entre elas. Para mais informações sobre como configurar gateways de VPC de alta disponibilidade, consulte Criar gateways de VPC de alta disponibilidade para conectar redes VPC.
Recomendamos o uso de rotas divulgadas personalizadas para conectar várias VPCs à instância do Cloud SQL usando o Cloud Router.
Conectar usando um proxy intermediário (SOCKS5)
É possível configurar um proxy intermediário, como SOCKS5, em uma VPC intermediária com o proxy de autenticação do Cloud SQL na VPC principal entre o cliente e a instância do Cloud SQL. Isso permite que o nó intermediário encaminhe o tráfego criptografado do proxy de autenticação do Cloud SQL para a instância do Cloud SQL.
Se quiser usar um proxy intermediário para se conectar à instância do Cloud SQL por várias VPCs, siga estas etapas:
No cliente externo, instale a CLI gcloud.
Na VM intermediária, instale, configure e execute um servidor SOCKS. Um exemplo desse servidor é o Dante, uma solução de código aberto conhecida.
Configure o servidor para se vincular à interface de rede
ens4
da VM para conexões externas e internas. Para conexões internas, especifique qualquer porta.Configure o firewall da VPC para permitir o tráfego TCP do intervalo ou do endereço IP apropriado até a porta configurada do servidor SOCKS.
No cliente externo, faça o download e instale o proxy de autenticação do Cloud SQL.
No cliente externo, inicie o proxy do Cloud SQL Auth.
Como você configurou a instância para usar um endereço IP interno, ao iniciar o proxy do Cloud SQL Auth, forneça a opção
--private-ip
.Além disso, defina a variável de ambiente
ALL_PROXY
como o endereço IP da VM intermediária e especifique a porta que o servidor SOCKS usa. Por exemplo,ALL_PROXY=socks5://VM_IP_ADDRESS:SOCKS_SERVER_PORT.
Se você estiver se conectando a partir de uma VPC com peering, use o endereço IP interno da VM intermediária. Caso contrário, use o endereço IP externo.
No cliente externo, teste sua conexão usando
psql
.
Conectar usando o Cloud SQL Auth Proxy como serviço
É possível instalar e executar o proxy do Cloud SQL Auth na VPC intermediária em vez do cliente externo e ativar conexões seguras pareando-o com um proxy compatível com protocolos, também conhecido como pool de conexões. Exemplos de pools de conexões incluem PGbouncer ou Pgpool-II(somente PostgreSQL).
Esse método de conexão permite que seus aplicativos se conectem diretamente ao pooler com segurança usando um SSL configurado. O pooler transmite consultas de bancos de dados para a instância do Cloud SQL usando o proxy de autenticação do Cloud SQL.
Conectar usando o Private Service Connect
O Private Service Connect permite que você se conecte a várias redes VPC em diferentes projetos ou organizações. É possível usar o Private Service Connect para se conectar a uma instância primária ou a qualquer uma das réplicas de leitura dela. Para mais informações sobre o Private Service Connect, consulte Informações gerais do Private Service Connect.
Para se conectar a várias VPCs usando o Private Service Connect, consulte Conectar-se a uma instância usando o Private Service Connect.