En esta página se describe cómo conectarse a una instancia de Cloud SQL a través de VPCs emparejadas de forma transitiva.
Cloud SQL ofrece las siguientes formas de conectar tu instancia de Cloud SQL a varias VPCs mediante una IP privada:
- Conectarse mediante rutas anunciadas personalizadas
- Conectar mediante un proxy intermedio (SOCKS5)
- Conectarse mediante Proxy como servicio
- Conectarse mediante Private Service Connect
Conectarse usando rutas anunciadas personalizadas
Puedes usar Cloud Router para configurar rutas anunciadas personalizadas entre dos redes que pasen por una VPC intermedia para conectar varias VPCs a tu instancia de Cloud SQL. Las dos VPCs deben estar conectadas mediante una red privada virtual (VPN), Cloud Interconnect o cualquier otra red compatible con Cloud Router.
Con las rutas anunciadas personalizadas, tu VPC de Cloud SQL, VPC C, se conecta a tu VPC principal, VPC A, mediante una VPC intermedia, VPC B. Puede configurar rutas compartidas entre estas redes de las siguientes formas:
Puedes usar Cloud Router para anunciar manualmente rutas entre dos redes que pasan por una VPC intermedia. Para obtener más información sobre cómo configurar Cloud Router para anunciar rutas manualmente, consulta Red de tránsito.
Puedes crear dos pasarelas de VPN de alta disponibilidad que se conecten entre sí para conectar las dos VPCs diferentes y configurar Cloud Router para que comparta rutas entre ellas. Para obtener más información sobre cómo configurar pasarelas de VPN de alta disponibilidad, consulta el artículo Crear pasarelas de VPN de alta disponibilidad para conectar redes VPC.
Te recomendamos que uses rutas anunciadas personalizadas para conectar varias VPCs a tu instancia de Cloud SQL mediante Cloud Router.
Conectarse mediante un proxy intermedio (SOCKS5)
Puedes configurar un proxy intermedio, como un proxy SOCKS5, en una VPC intermedia junto con el proxy de autenticación de Cloud SQL en tu VPC principal entre el cliente y tu instancia de Cloud SQL. De esta forma, el nodo intermedio puede reenviar el tráfico cifrado desde el proxy de autenticación de Cloud SQL a la instancia de Cloud SQL.
Para usar un proxy intermediario para conectarte a tu instancia de Cloud SQL desde varias VPCs, sigue estos pasos:
En tu cliente externo, instala gcloud CLI.
En la VM intermediaria, instala, configura y ejecuta un servidor SOCKS. Un ejemplo de este servidor es Dante, una solución de código abierto popular.
Configura el servidor para que se enlace a la interfaz de red
ens4
de la VM para las conexiones externas e internas. En el caso de las conexiones internas, especifica cualquier puerto.Configura el cortafuegos de tu VPC para permitir el tráfico TCP desde la dirección IP o el intervalo de direcciones IP adecuados al puerto configurado del servidor SOCKS.
En tu cliente externo, descarga e instala el proxy de autenticación de Cloud SQL.
En tu cliente externo, inicia el proxy de autenticación de Cloud SQL.
Como has configurado tu instancia para que use una dirección IP interna, cuando inicies el proxy de autenticación de Cloud SQL, debes proporcionar la opción
--private-ip
.Además, define la variable de entorno
ALL_PROXY
en la dirección IP de la VM intermediaria y especifica el puerto que usa el servidor SOCKS. Por ejemplo,ALL_PROXY=socks5://VM_IP_ADDRESS:SOCKS_SERVER_PORT.
Si te conectas desde una VPC emparejada, usa la dirección IP interna de la VM intermediaria. De lo contrario, usa su dirección IP externa.
En tu cliente externo, prueba la conexión con
psql
.
Conectarse mediante el proxy de autenticación de Cloud SQL como servicio
Puedes instalar y ejecutar el proxy de autenticación de Cloud SQL en tu VPC intermedia en lugar de en tu cliente externo y habilitar conexiones seguras emparejándolo con un proxy compatible con protocolos, también conocido como agrupador de conexiones. Algunos ejemplos de gestores de conexiones son PGbouncer o Pgpool-II(solo para PostgreSQL).
Este método de conexión permite que tus aplicaciones se conecten de forma segura directamente al pooler mediante un SSL configurado. El agrupador envía consultas de bases de datos a tu instancia de Cloud SQL mediante el proxy de autenticación de Cloud SQL.
Conectarse mediante Private Service Connect
Private Service Connect te permite conectarte a varias redes de VPC de diferentes proyectos u organizaciones. Puedes usar Private Service Connect para conectarte a una instancia principal o a cualquiera de sus réplicas de lectura. Para obtener más información sobre Private Service Connect, consulta el artículo de introducción a Private Service Connect.
Para conectarte a varias VPCs mediante Private Service Connect, consulta Conectarse a una instancia mediante Private Service Connect.