Verificando autenticación…

Saltar al contenido principal

Cloud SQL Instances

El servicio de Cloud SQL en ANDES permite la gestión centralizada de instancias de bases de datos PostgreSQL para los servicios de LATAM, facilitando operaciones Day-2 y el mantenimiento de las bases de datos.

Pantalla principal Cloud SQL

Turn ON / OFF Instance

Los equipos ANDES y FinOps se encuentran colaborando estrechamente en la integración de un sistema automatizado para el encendido y apagado de infraestructura tecnológica. Actualmente, este sistema permite controlar el apagado y encendido de instancias de bases de datos Cloud SQL y VM, optimizando así los recursos y generando eficiencias operativas y económicas para la organización.

  1. Ir a pantalla principal de Instancias Cloud SQL Home > Developer > Environment Management > Instances SQL
  2. Buscar la instancia y seleccionar el ⚡️ action Turn On Instance o Turn Off Instance.

Create Bastion

En escenarios donde deseas limitar estrictamente quién puede acceder a las instancias de Cloud SQL, un bastión funciona como un punto intermedio de acceso seguro. En lugar de abrir directamente las instancias al exterior, se utiliza el bastión como "puerta segura" de acceso.

  1. Ir a pantalla principal de Instancias Cloud SQL Home > Developer > Environment Management > Instances SQL.
  2. Buscar la instancia y seleccionar el ⚡️ action Create Bastión .
Menú para crear bastión
  1. Group: Correo del grupo que tendrá acceso al bastión Ej: grp_andes_devs@latam.com

  2. Sub Network: SubNet perteneciente el proyecto gcp de la instancia cloud sql.

¿Cómo funciona un bastión en Cloud SQL?

La implementación típica es la siguiente:

  1. Instancia Bastión:
    Una VM en Compute Engine ejecuta el Cloud SQL Auth Proxy, una herramienta de Google que gestiona conexiones cifradas, seguras y autenticadas hacia instancias Cloud SQL.
  2. Conexión segura:
    Desde la VM bastión, las solicitudes a las bases de datos viajan en conexiones cifradas y autenticadas, sin que sea necesario exponerlas públicamente.

Create Liquibase

Liquibase es una herramienta open-source que permite gestionar de manera organizada, controlada y automatizada los cambios en esquemas de bases de datos. Su función principal es aplicar, registrar y versionar migraciones o modificaciones en estructuras de bases de datos, garantizando consistencia, rastreabilidad y colaboración efectiva entre equipos.

Con ANDES, se creará un template y lo dejará en el repositorio gitlab correspondiente al IT Element al que pertenece la instancia cloud sql.

  • Ir a pantalla principal de Instancias Cloud SQL Home > Developer > Environment Management > Instances SQL.
  • Buscar la instancia y seleccionar el ⚡ action Create Liquibase.

¿Para qué sirve Liquibase en GCP?

Cuando trabajas con bases de datos administradas por Cloud SQL en Google Cloud Platform, Liquibase ofrece varias ventajas:

  • Automatización de cambios:
    Permite desplegar cambios en estructuras de base de datos (tablas, columnas, índices) automáticamente, reduciendo errores humanos.
  • Versionamiento y trazabilidad:
    Mantiene un historial detallado de cada cambio aplicado, facilitando la auditoría y el control de versiones.
  • Colaboración y CI/CD:
    Facilita integrar bases de datos en procesos de Integración y Entrega Continua (CI/CD) utilizando herramientas como Cloud Build, Jenkins, o GitLab.

Add IAM User to Instance

Las Instancias Cloud SQL permite que los usuarios se autentiquen directamente usando su identidad IAM (correo electrónico @latam.com) sin necesidad de contraseña.

  • Ir a pantalla principal de Instancias Cloud SQL Home > Developer > Environment Management > Instances SQL
  • Buscar la instancia y seleccionar el ⚡ action Add IAM User to Instance

Habilita la autenticación basada en IAM para la instancia PostgreSQL

  • Se debe habilitar la autentificación
    1. Ve a SQL > Tu instancia > Conexiones.
    2. En la sección "Autenticación", activa "Autenticación basada en IAM".
    3. Guarda los cambios (la instancia puede reiniciarse brevemente).

El usuario se conecta con gcloud y psql

  • El usuario deberá tener el SDK de Google Cloud instalado y autenticado. Luego puede conectarse así:
gcloud auth login
gcloud config set project TU_ID_PROYECTO

gcloud sql connect NOMBRE_INSTANCIA \
--user=usuario@tudominio.com \
--database=nombre_basedatos \
--quiet

Add Cloud SQL Instance User Role

Le asigna el Role roles/cloudsql.instanceUser a un usuario (@latam.com) o grupo de usuarios (grp_andes_devs@latam.com)

  • Ir a pantalla principal de Instancias Cloud SQL Home > Developer > Environment Management > Instances SQL
  • Buscar la instancia y seleccionar el ⚡️ action Add Cloud SQL Instance User Role