Conéctate a Cloud SQL para PostgreSQL desde Compute Engine

Aprende a implementar una app de ejemplo en tu instancia de VM de Compute Engine basada en Linux o Windows conectada a una instancia de PostgreSQL mediante la consola de Google Cloud y una aplicación cliente.

Si suponemos que completas todos los pasos de manera oportuna, los recursos creados en esta guía de inicio rápido suelen costar menos de un dólar (USD).

Antes de comenzar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

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

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Habilita las API de Cloud necesarias para ejecutar una app de ejemplo de Cloud SQL en una instancia de VM de Compute Engine.

    Console

    Haz clic en el botón Habilitar las API para habilitar las APIs necesarias para esta guía de inicio rápido.

    Habilita las API

    Esto habilita la siguiente API:

    • API de Cloud SQL Admin

    gcloud

    Instala la CLI de gcloud, que proporciona acceso de la línea de comandos a los recursos de Google Cloud. La CLI de gcloud se usa para ejecutar los comandos gcloud CLI que se presentan en esta guía de inicio rápido. Se le da formato a todos los comandos para que se ejecuten en una terminal o en una ventana de PowerShell.

    Ejecuta el siguiente comando gcloud:

    gcloud services enable sqladmin.googleapis.com

    Este comando habilita la siguiente API:

    • API de Cloud SQL Admin

Configura Cloud SQL

Crea una instancia de Cloud SQL

Crea una base de datos

Console

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

    Ir a Instancias de Cloud SQL

  2. Selecciona quickstart-instance.
  3. Abre la pestaña Bases de datos.
  4. Haga clic en Crear base de datos.
    1. En el cuadro de diálogo Nueva base de datos, ingresa quickstart_db como nombre de la base de datos.
    2. Haz clic en Crear.

gcloud

Ejecuta el comando gcloud sql databases create para crear una base de datos.

gcloud sql databases create quickstart_db --instance=quickstart-instance

Crea un usuario

Console

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

    Ir a Instancias de Cloud SQL

  2. Para abrir la página de Descripción general de una instancia, haz clic en su nombre.
  3. Selecciona Usuarios en el menú de navegación de SQL.
  4. Haz clic en Agregar cuenta de usuario.
  5. En la página Agrega una cuenta de usuario a la instancia instance_name, agrega la siguiente información:
    • En el campo Nombre de usuario, ingresa quickstart-user.
    • En el campo Contraseña, especifica una contraseña para tu usuario de base de datos. Toma nota de esto para usarlo en un paso posterior de esta guía de inicio rápido.
  6. Haz clic en Agregar.

gcloud

Antes de ejecutar el siguiente comando, realiza los siguientes reemplazos:

  1. PASSWORD por una contraseña para el usuario de tu base de datos. Toma nota de esto para usarlo en un paso posterior de esta guía de inicio rápido.

Ejecuta el comando gcloud sql users create para crear el usuario.

gcloud sql users create quickstart-user --instance=quickstart-instance --password=PASSWORD

Los límites de extensión del nombre de usuario son los mismos en Cloud SQL y en PostgreSQL local.

Configura una cuenta de servicio de Compute Engine

Crea y configura una cuenta de servicio de Google Cloud que tenga el rol de cliente de Cloud SQL con permisos para conectarse a Cloud SQL. Después de crear una cuenta de servicio, es posible que debas esperar 60 segundos o más antes de poder usarla.

Console

Crea una cuenta de servicio

  1. En la consola de Google Cloud, ve a la página Crear cuenta de servicio.
  2. Ve a Crear cuenta de servicio

  3. Selecciona un proyecto de Google Cloud.
  4. Ingresa quickstart-service-account como el nombre de la cuenta de servicio.
  5. Opcional: Ingresa una descripción de la cuenta de servicio.
  6. Haz clic en Crear y continuar y continúa con el paso siguiente.
  7. Elige el rol Cliente de Cloud SQL para otorgárselo a la cuenta de servicio en el proyecto.
  8. Haz clic en Agregar otro rol y elige el rol Visualizador de objetos de almacenamiento para otorgar a la cuenta de servicio del proyecto.
  9. Haga clic en Continuar.
  10. Haz clic en Listo para terminar de crear la cuenta de servicio.

gcloud

Crea una cuenta de servicio

  1. Para crear la cuenta de servicio, ejecuta el comando gcloud iam service-accounts create:
  2. gcloud iam service-accounts create quickstart-service-account --description="DESCRIPTION" --display-name="quickstart-service-account"

    Reemplaza el siguiente valor:

    • DESCRIPTION: una descripción opcional de la cuenta de servicio
  3. Para otorgar a tu cuenta de servicio el rol Cliente de Cloud SQL y el rol Visualizador de objetos de almacenamiento en tu proyecto, ejecuta el comando gcloud projects add-iam-policy-binding. Reemplaza PROJECT_ID por el ID del proyecto de Google Cloud:
    gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:quickstart-service-account@PROJECT_ID.iam.gserviceaccount.com" --role="roles/cloudsql.client" --role="roles/storage.objectViewer"

Crea una instancia de VM de Compute Engine

Crea una instancia de VM de Compute Engine para alojar una aplicación web de ejemplo que se conecte a Cloud SQL

Accede a una instancia de VM de Compute Engine

Configura el entorno de desarrollo para el lenguaje de programación

Configura el entorno de desarrollo de la instancia de VM de Compute Engine para tu lenguaje de programación preferido.

Instalar Git

Instala Git, un sistema de control de versiones de código abierto, en tu instancia de VM de Compute Engine.

Clona una app de ejemplo

Clona una app de ejemplo en tu instancia de VM de Compute Engine con el comando git clone.

Go

En tu instancia de VM de Compute Engine, abre una terminal nueva o una ventana de PowerShell. Ejecuta los siguientes comandos para clonar la app de ejemplo de Go y cambia el directorio al que contiene la app de ejemplo.

  1. Clona la app de ejemplo.
    git clone https://github.com/GoogleCloudPlatform/golang-samples
  2. Cambia el directorio al que contiene la aplicación de ejemplo.
    cd golang-samples/cloudsql/postgres/database-sql

Java

En tu instancia de VM de Compute Engine, abre una terminal nueva o una ventana de PowerShell. Ejecuta los siguientes comandos para clonar la app de ejemplo de Java y cambia el directorio al que contiene la app de ejemplo.

  1. Clona la app de ejemplo.
    git clone https://github.com/GoogleCloudPlatform/java-docs-samples
  2. Cambia el directorio al que contiene la aplicación de ejemplo.
    cd java-docs-samples/cloud-sql/postgres/servlet

Node.js

En tu instancia de VM de Compute Engine, abre una terminal nueva o una ventana de PowerShell. Ejecuta los siguientes comandos para clonar la app de ejemplo de Node.js y cambia el directorio al que contiene la app de ejemplo.

  1. Clona la app de ejemplo.
    git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples
  2. Cambia el directorio al que contiene la aplicación de ejemplo.
    cd nodejs-docs-samples/cloud-sql/postgres/knex

Python

En tu instancia de VM de Compute Engine, abre una terminal nueva o una ventana de PowerShell. Ejecuta los siguientes comandos para clonar la app de ejemplo de Python y cambia el directorio al que contiene la app de ejemplo.

  1. Clona la app de ejemplo.
    git clone https://github.com/GoogleCloudPlatform/python-docs-samples
  2. Cambia el directorio al que contiene la aplicación de ejemplo.
    cd python-docs-samples/cloud-sql/postgres/sqlalchemy

Configura y ejecuta una app de ejemplo de Cloud SQL

Con una instancia de Cloud SQL, una base de datos y una cuenta de servicio con permisos de cliente, ahora puedes configurar una aplicación de ejemplo que se ejecute en tu instancia de VM de Compute Engine para conectarte a tu instancia de Cloud SQL.

Libera espacio

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

Borra una instancia de Cloud SQL

  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 quickstart-instance 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 el cuadro de diálogo Borrar instancia, escribe quickstart-instance y, luego, haz clic en Borrar.

Borra una instancia de VM de Compute Engine

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

    Ir a Instancias de VM

  2. Selecciona la instancia quickstart-vm-instance 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. Haz clic en Borrar para borrar la instancia.

Pasos opcionales de limpieza

Si no usas el rol de cliente de Cloud SQL que asignaste a la cuenta de servicio Compute Engine default, puedes quitarlo.

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

    Ir a IAM

  2. Haz clic en el ícono de edición (que tiene forma de lápiz) en la cuenta de IAM llamada Cuenta de servicio predeterminada de Compute Engine.
  3. Borra la función cliente de Cloud SQL.
  4. Haz clic en Guardar.

Si no usas la API que se habilitó como parte de esta guía de inicio rápido, puedes inhabilitarla.

  • API que se habilitó 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 que quieras inhabilitar y, luego, haz clic en el botón Inhabilitar API.

¿Qué sigue?

En función de tus necesidades, puedes obtener más información para crear instancias de Cloud SQL.

También puedes obtener información sobre cómo crear usuarios de PostgreSQL y bases de datos para tu instancia de Cloud SQL.

Si deseas obtener más información sobre los precios, consulta Precios de Cloud SQL para PostgreSQL.

Conoce más sobre:

  • La configuración de la instancia de Cloud SQL con una dirección IP pública
  • La configuración de la instancia de Cloud SQL con una dirección IP privada

Además, puedes obtener información sobre la conexión a una instancia de Cloud SQL desde otras aplicaciones de Google Cloud: