Laboratorio 8: Bases de Datos con Cloud SQL (Asegurando tus Motores de Datos)
Autor: Eduardo Martínez Agrelo
Bienvenidos al octavo laboratorio del curso de Terraform. En este módulo práctico, aprenderemos a configurar una base de datos de forma totalmente segura. Desplegaremos una instancia de Postgres en Google Cloud sin dirección IP pública utilizando direccionamientos privados internos.
El Riesgo de Exposición de Datos y la Red Privada
El diseño profesional de almacenamiento de datos exige mantener los motores de base de datos aislados del tráfico externo. No abriremos puertos a internet; configuraremos una red de servicios gestionados que se comunicará directamente con nuestra infraestructura mediante el emparejamiento de red:
- Cloud SQL: Es el servicio administrado por Google Cloud para alojar de manera escalable bases de datos relacionales compatibles con PostgreSQL.
- Private Service Access: Es la conexión privada que vincula nuestra red de VPC local con la red del servicio administrado de Google Cloud.
Configuración del Direccionamiento Reservado y Peering de Red
Para realizar la conexión de servicios, debemos reservar primero un bloque de direcciones IP internas dentro de nuestra VPC que no interfiera con nuestras subredes existentes:
purpose = "VPC_PEERING" (prefix_length = 16)
Esta directiva de Terraform reserva un direccionamiento privado global que asocia de forma dinámica mediante una conexión del tipo peering. Con este puente de comunicación, la base de datos contará con una IP interna accesible desde nuestros servidores locales.
Seguridad de Datos y Aislamiento del Motor de Base de Datos
Para proteger los datos críticos de posibles fugas o vectores de ataque, aplicaremos el aislamiento estricto. No permitiremos conexiones directas; utilizaremos Terraform para desactivar de forma explícita el direccionamiento público de internet:
- ipv4_enabled = false: Bloqueará por completo la asignación de una dirección IP pública de internet en Cloud SQL para resguardar la seguridad del proyecto.
- postgres_instance: Desplegará de forma aislada la base de datos de PostgreSQL con un usuario administrador y una contraseña.
La Habilitación Automatizada de APIs
En este laboratorio, evitaremos fallos de dependencia inicializando las APIs correspondientes. Declararemos la
activación del servicio de emparejamiento mediante el recurso servicenetworking.googleapis.com de
Terraform de manera automatizada.
Conclusión: Almacenamiento seguro y privado
Has completado el laboratorio de bases de datos privadas. Has aprendido que el despliegue profesional de motores de datos consiste en combinar VPC Peering, direccionamiento reservado de servicios y desactivación de IPs públicas en Google Cloud SQL para lograr aislamiento absoluto. Ya tienes tu base de datos lista; el siguiente paso es avanzar al Laboratorio 9 para desplegar un HTTP Load Balancer.