Configura el acceso a la instancia de Cloud SQL
El Servicio de transferencia de datos de BigQuery te permite transferir datos de una instancia privada de Cloud SQL entre diferentes proyectos de Google Cloud a través de una dirección IP interna. Para establecer esta conexión privada para el conector de MySQL del Servicio de transferencia de datos de BigQuery o el conector de PostgreSQL del Servicio de transferencia de datos de BigQuery, configura el intercambio de tráfico entre redes de nube privada virtual, un proxy de Cloud SQL y un adjunto de red.
Descripción general de la arquitectura
Para transferir datos de una instancia privada de Cloud SQL en un proyecto a BigQuery en otro proyecto, el Servicio de transferencia de datos de BigQuery requiere una red de conectores para establecer un puente de conectividad de red privada.
El intercambio de tráfico entre redes de VPC solo admite la comunicación entre redes con intercambio de tráfico directo y no reenvía el tráfico de otras conexiones. Por lo tanto, el tráfico que ingresa a una red de VPC a través de un adjunto de red de Private Service Connect no puede cruzar una conexión de intercambio de tráfico para llegar a una red de Cloud SQL con intercambio de tráfico. Para establecer esta conexión, una VM de Compute Engine en la red del conector ejecuta el proxy de autenticación de Cloud SQL. El proxy finaliza la conexión entrante desde el adjunto de red y establece una conexión autenticada a la instancia de Cloud SQL a través de la red de intercambio de tráfico.
En el siguiente diagrama, se ilustran los componentes de red y la ruta de acceso de los datos entre el Servicio de transferencia de datos de BigQuery y una instancia privada de Cloud SQL:

Antes de comenzar
Asegúrate de tener lo siguiente:
- Acceso a un proyecto de Google Cloud con el conector del Servicio de transferencia de datos de BigQuery y otro proyecto de Google Cloud con la instancia de Cloud SQL.
- Una base de datos de MySQL o PostgreSQL existente en un proyecto de Google Cloud .
- Los permisos adecuados para crear una VPC, crear reglas de firewall y, además, instalar software.
- Una instancia de máquina virtual (VM).
Configura el intercambio de tráfico entre VPC
Para configurar el intercambio de tráfico entre VPC, debes crear un intercambio de tráfico entre VPC desde el proyecto del conector del Servicio de transferencia de datos de BigQuery, crear un intercambio de tráfico entre VPC en el proyecto de la base de datos de Cloud SQL hacia el proyecto del Servicio de transferencia de datos de BigQuery y configurar las rutas y las reglas de firewall.
Crea un intercambio de tráfico de VPC desde el proyecto del conector del Servicio de transferencia de datos de BigQuery
En la consola de Google Cloud , ve a la página Intercambio de tráfico entre redes de VPC de tu proyecto de conector del Servicio de transferencia de datos de BigQuery.
Haz clic en Crear conexión de intercambio de tráfico.
En el campo Nombre, ingresa un nombre para la configuración de intercambio de tráfico.
En Tu red de VPC, selecciona la red de VPC con la que deseas intercambiar tráfico en el proyecto del conector del Servicio de transferencia de datos de BigQuery.
En Red de VPC con intercambio de tráfico, selecciona la opción En otro proyecto.
En ID del proyecto, ingresa el ID del proyecto de Cloud SQL.
En Nombre de la red de VPC, ingresa el nombre de la red de VPC en el proyecto de Cloud SQL.
Haz clic en Crear.
Crea un intercambio de tráfico entre VPC en el proyecto de base de datos de Cloud SQL
Para crear un intercambio de tráfico entre VPC en el proyecto de la base de datos de Cloud SQL con el proyecto del Servicio de transferencia de datos de BigQuery, haz lo siguiente:
En la consola de Google Cloud , ve a la página Intercambio de tráfico entre redes de VPC de tu proyecto de conector del Servicio de transferencia de datos de BigQuery.
Haz clic en Crear conexión de intercambio de tráfico.
En el campo Nombre, ingresa un nombre para la configuración de intercambio de tráfico.
Selecciona la red de VPC con la que deseas intercambiar tráfico en el proyecto de base de datos de Cloud SQL.
En ID del proyecto de intercambio de tráfico, ingresa el ID del proyecto del Servicio de transferencia de datos de BigQuery.
En Red de VPC con intercambio de tráfico, ingresa el nombre de la red de VPC en el proyecto del conector del Servicio de transferencia de datos de BigQuery.
Haz clic en Crear.
Configura rutas y reglas de firewall
Si no seleccionaste las rutas de importación y exportación cuando configuraste las conexiones de intercambio de tráfico antes, sigue estos pasos para hacerlo ahora:
Ve a la página Rutas del proyecto del conector del Servicio de transferencia de datos de BigQuery.
Asegúrate de que existan las rutas para permitir el tráfico entre los entornos de VPC con intercambio de tráfico.
Ve a la página Políticas de firewall.
Crea reglas de firewall que permitan el tráfico en los puertos necesarios (por ejemplo, el puerto 3306 para MySQL y el puerto 5432 para PostgreSQL) entre las redes con intercambio de tráfico.
Agrega las reglas de firewall personalizadas que se requieren del proyecto del conector del Servicio de transferencia de datos de BigQuery al proyecto alojado en la base de datos de Cloud SQL.
Configura rutas y reglas de firewall para tu proyecto con la instancia de Cloud SQL como lo hiciste en los pasos anteriores.
Configura el proxy de Cloud SQL
Usa SSH para conectarte a una instancia de máquina virtual (VM) en el proyecto del conector del Servicio de transferencia de datos de BigQuery.
En la terminal, descarga el proxy de Cloud SQL:
wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxyActualiza los permisos de los archivos descargados:
chmod +x cloud_sql_proxyEjecuta el proxy de Cloud SQL:
./cloud_sql_proxy -instances=NAME=tcp:3306 or 5432 &Reemplaza
NAMEpor el nombre de tu conexión de instancia de Cloud SQL.
Conéctate a la dirección IP interna de Cloud SQL
- Usa la dirección IP interna de la instancia de Cloud SQL para las conexiones.
- Configura tu aplicación o herramienta para que se conecte a la dirección IP interna, especificando las credenciales y los detalles de la base de datos adecuados.
Cuando te conectes desde un proyecto de Google Cloud diferente, usa la dirección IP interna de la VM de proxy que implementaste antes. Esta solución resuelve los problemas de intercambio de tráfico transitivo.
Crea el adjunto de red
Para crear el adjunto de red en el proyecto del conector del Servicio de transferencia de datos de BigQuery, sigue estos pasos:
En la consola de Google Cloud , ve a la página Adjuntos de red.
Haz clic en Crear adjunto de red.
Proporciona un nombre para el adjunto de red.
Selecciona la red de VPC adecuada.
En Región, especifica la región en la que se encuentra tu conector del Servicio de transferencia de datos de BigQuery.
En Subred, selecciona la opción adecuada que coincida con tu configuración.
Haz clic en Crear adjunto de red.
Prueba la conexión
Verifica que la VM con el proxy de Cloud SQL pueda conectarse a la instancia de Cloud SQL:
mysql -u USERNAME -p -h IP_ADDRESSReemplaza lo siguiente:
USERNAME: el nombre de usuario de la base de datosIP_ADDRESS: Es la dirección IP de la instancia de Cloud SQL.
Asegúrate de que las aplicaciones del proyecto del conector del Servicio de transferencia de datos de BigQuery puedan conectarse a la instancia de Cloud SQL con la IP interna.
Solucionar problemas
Si tienes problemas para establecer la configuración de red, haz lo siguiente:
- Asegúrate de que se establezca el intercambio de tráfico entre VPC y de que las rutas estén configuradas correctamente.
- Verifica que las reglas de firewall permitan el tráfico en los puertos requeridos.
- Verifica los registros del proxy de Cloud SQL para detectar errores y asegúrate de que se esté ejecutando correctamente.
- Asegúrate de que el adjunto de red esté configurado y conectado correctamente.