Conéctate a Cloud SQL para PostgreSQL mediante el proxy de Cloud SQL Auth

En esta página, se muestra cómo conectarse a Cloud SQL desde un entorno de prueba local con el proxy de Cloud SQL Auth. El proxy de Cloud SQL Auth proporciona acceso seguro a tu instancia de Cloud SQL sin la necesidad de contar con redes autorizadas ni de configurar SSL. Mediante el proxy de Cloud SQL Aurh, puedes conectarte a tu instancia de Cloud SQL de forma segura.

Las instrucciones de esta página son solo para un entorno de pruebas y no deben usarse con entornos de producción. Para obtener más información sobre la configuración requerida para los entornos de producción, consulta Usa el proxy de autenticación de Cloud SQL en un entorno de producción y Conectarse con el proxy de autenticación de Cloud SQL.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  6. Habilita las APIs de Google Cloud necesarias.

    Console

    En la consola de Google Cloud, ve a la página API.

    Ir a las API

    Habilita la API de Cloud SQL Admin

    gcloud

    Haz clic en el siguiente botón para abrir Cloud Shell, que proporciona acceso de línea de comandos a tus recursos de Google Cloud directamente desde el navegador. Cloud Shell se puede usar para ejecutar los comandos de gcloud que se presentan en esta guía de inicio rápido.

    Abra Cloud Shell

    Ejecuta el comando gcloud services enable de la siguiente manera con Cloud Shell a fin de habilitar las API necesarias para esta guía de inicio rápido:

    gcloud services enable sqladmin.googleapis.com

    Este comando habilita las siguientes API:

    • API de Cloud SQL Admin

Cree una instancia de Cloud SQL

En esta guía de inicio rápido, usas la consola de Google Cloud. Para usar gcloud CLI, cURL o PowerShell, consulta la documentación sobre cómo crear instancias.

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Haga clic en Crear instancia.
  3. Haz clic en Elegir PostgreSQL.
  4. Ingresa myinstance en ID de la instancia.
  5. Ingresa una contraseña para el usuario postgres.
  6. Haga clic en Crear.

    Volverás a la lista de las instancias. Puedes hacer clic en la instancia nueva de inmediato para ver los detalles, pero no estará disponible para otras operaciones hasta que se inicialice y se inicie.

Debian/Ubuntu

Instala el cliente psql desde el administrador de paquetes:

sudo apt-get update
sudo apt-get install postgresql-client

CentOS/RHEL

Instala el cliente psql desde el administrador de paquetes:

sudo yum install postgresql

openSUSE

Instala el cliente psql desde el administrador de paquetes:

sudo zypper install postgresql

Otras plataformas

  1. Descarga la distribución principal de PostgreSQL para tu plataforma desde la página de descargas de PostgreSQL.
    La distribución principal incluye el cliente psql.
  2. Instala la base de datos de PostgreSQL y sigue las instrucciones en la página de descargas.

Instala el cliente del proxy de autenticación de Cloud SQL

El objeto binario del proxy de autenticación de Cloud SQL que descargues depende de tu sistema operativo y de si este usa un kernel de 32 bits o de 64 bits. La mayoría del hardware más nuevo usa un kernel de 64 bits. Si no estás seguro de si tu máquina ejecuta un kernel de 32 bits o de 64 bits, usa el comando uname -a para Linux o macOS. Para Windows, consulta la documentación de Windows.

Linux de 64 bits

  1. Descarga el proxy de autenticación de Cloud SQL:
    curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.11.3/cloud-sql-proxy.linux.amd64
    
  2. Haz que el proxy de autenticación de Cloud SQL sea ejecutable:
    chmod +x cloud-sql-proxy
    

Linux de 32 bits

  1. Descarga el proxy de autenticación de Cloud SQL:
    curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.11.3/cloud-sql-proxy.linux.386
    
  2. Si no se encuentra el comando curl, ejecuta sudo apt install curl y repite el comando de descarga.
  3. Haz que el proxy de autenticación de Cloud SQL sea ejecutable:
    chmod +x cloud-sql-proxy
    

macOS de 64 bits

  1. Descarga el proxy de autenticación de Cloud SQL:
    curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.11.3/cloud-sql-proxy.darwin.amd64
    
  2. Haz que el proxy de autenticación de Cloud SQL sea ejecutable:
    chmod +x cloud-sql-proxy
    

Mac M1

  1. Descarga el proxy de autenticación de Cloud SQL:
      curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.11.3/cloud-sql-proxy.darwin.arm64
      
  2. Haz que el proxy de autenticación de Cloud SQL sea ejecutable:
      chmod +x cloud-sql-proxy
      

Windows de 64 bits

Haz clic con el botón derecho en https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.11.3/cloud-sql-proxy.x64.exe y selecciona Guardar vínculo como para descargar el proxy de autenticación de Cloud SQL. Cambia el nombre del archivo por cloud-sql-proxy.exe.

Windows de 32 bits

Haz clic con el botón derecho en https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.11.3/cloud-sql-proxy.x86.exe y selecciona Guardar vínculo como para descargar el proxy de autenticación de Cloud SQL. Cambia el nombre del archivo por cloud-sql-proxy.exe.

Imagen de Docker del proxy de Cloud SQL 

El proxy de autenticación de Cloud SQL tiene diferentes imágenes de contenedor, como distroless, alpine y buster. La imagen de contenedor del proxy de autenticación de Cloud SQL predeterminada usa distroless, que no contiene shell. Si necesitas una shell o herramientas relacionadas, descarga una imagen basada en alpine o buster. Para obtener más información, consulta Imágenes de contenedor del proxy de autenticación de Cloud SQL.

Puedes extraer la última imagen a tu máquina local con Docker a través del siguiente comando:

docker pull gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.11.3

Otro SO

Para otros sistemas operativos que no se incluyen aquí, puedes compilar el proxy de autenticación de Cloud SQL desde la fuente.

Obtén el nombre de conexión de la instancia

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Haz clic en el nombre de la instancia para abrir la página Descripción general de esa instancia.
  3. En la sección Conéctate a esta instancia, copia el Nombre de la conexión. El nombre de la conexión tiene el formato projectID:region:instanceID.

Inicia el proxy de Cloud SQL Auth

Inicia el proxy de Cloud SQL Auth en su propia terminal para poder supervisar el resultado. Reemplaza INSTANCE_CONNECTION_NAME por el nombre de la conexión de instancia que copiaste en el paso anterior.

En entornos de Linux, usa este comando para iniciar el proxy de Cloud SQL Auth:

./cloud-sql-proxy INSTANCE_CONNECTION_NAME

En PowerShell de Windows, usa este comando para iniciar el proxy de Cloud SQL Auth:

.\cloud-sql-proxy.exe INSTANCE_CONNECTION_NAME

Aparecerá un mensaje similar al que figura a continuación:

Listening on 127.0.0.1:5432 for INSTANCE_CONNECTION_NAME
Ready for new connections

Ejecuta el siguiente comando después de reemplazar DB_NAME por el nombre de la base de datos de Cloud SQL:

psql "host=127.0.0.1 port=5432 sslmode=disable dbname=DB_NAME user=postgres"

En el cuadro de contraseña Intro: ingresa la contraseña de tu cuenta de PostgreSQL.

Verifica que aparezca el cuadro de PostgreSQL. Te conectaste a tu base de datos con el cliente psql.

Regresa a la ventana de terminal en la que iniciaste el proxy de Cloud SQL Auth. Deberías ver un mensaje similar al siguiente:

New connection for myInstance

Realiza una limpieza

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Selecciona la instancia myinstance para abrir la página de detalles de la instancia.
  3. En la barra de íconos en la parte superior de la página, haz clic en Borrar.
  4. En la ventana Borrar instancia, escribe el nombre de tu instancia y, luego, haz clic en Borrar.

Pasos opcionales de limpieza

Si no usas las API que se habilitaron como parte de esta guía de inicio rápido, puedes inhabilitarlas.

  • API que se habilitaron en esta guía de inicio rápido:
    • API de Cloud SQL Admin
  1. En la consola de Google Cloud, ve a la página API.

    Ir a las API

  2. Selecciona la API de Cloud SQL Admin y, luego, haz clic en el botón Inhabilitar API.

¿Qué sigue?