Puntos de control
Create Cloud SQL instance using Terraform script
/ 100
Cloud SQL con Terraform
GSP234
Descripción general
En este lab práctico, aprenderás a crear instancias de Cloud SQL con Terraform, a configurar el proxy de Cloud SQL y a probar la conexión con el cliente MySQL.
Objetivos
En este lab, aprenderás a hacer lo siguiente:
- Crear una instancia de Cloud SQL
- Instalar el proxy de Cloud SQL
- Usar Cloud Shell para probar la conectividad con el cliente MySQL
Configuración
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
- Acceso a un navegador de Internet estándar (se recomienda el navegador Chrome)
- Tiempo para completar el lab: Recuerda que, una vez que comienzas un lab, no puedes pausarlo.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
-
Haga clic en el botón Comenzar lab. Si debe pagar por el lab, se abrirá una ventana emergente para que seleccione su forma de pago. A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
- El botón Abrir la consola de Google Cloud
- El tiempo restante
- Las credenciales temporales que debe usar para el lab
- Otra información para completar el lab, si es necesaria
-
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordene las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta. -
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
{{{user_0.username | "Username"}}} También puedes encontrar el nombre de usuario en el panel Detalles del lab.
-
Haz clic en Siguiente.
-
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
{{{user_0.password | "Password"}}} También puedes encontrar la contraseña en el panel Detalles del lab.
-
Haz clic en Siguiente.
Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud. Nota: Usar tu propia Cuenta de Google podría generar cargos adicionales. -
Haga clic para avanzar por las páginas siguientes:
- Acepta los Términos y Condiciones.
- No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
- No te registres para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Activa Cloud Shell
Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.
- Haz clic en Activar Cloud Shell en la parte superior de la consola de Google Cloud.
Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. El resultado contiene una línea que declara el PROJECT_ID para esta sesión:
gcloud
es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.
- Puedes solicitar el nombre de la cuenta activa con este comando (opcional):
-
Haz clic en Autorizar.
-
Ahora, el resultado debería verse de la siguiente manera:
Resultado:
- Puedes solicitar el ID del proyecto con este comando (opcional):
Resultado:
Resultado de ejemplo:
gcloud
, consulta la guía con la descripción general de gcloud CLI en Google Cloud.
Cloud SQL
Cloud SQL es un servicio de base de datos completamente administrado que facilita la configuración, el mantenimiento, la administración y la gestión de tus bases de datos relacionales en Google Cloud. Puedes usar Cloud SQL con MySQL o PostgreSQL.
Tarea 1. Descarga los archivos necesarios
- Crea un directorio y recupera las secuencias de comandos requeridas de Terraform desde el bucket de Cloud Storage con el siguiente código:
- Descomprime el contenido descargado:
Tarea 2: Examina el código
- Observa el contenido del archivo
main.tf
:
Resultado de ejemplo:
A continuación, actualizarás el archivo variables.tf
para usar el ID del proyecto y la región asignados a este lab.
- Haz clic en Abrir editor en Cloud Shell.
- Abre
variables.tf
y modifica las variables deproyecto
yregión
a los valores que se muestran a continuación:
- Proyecto:
- Región:
Cuando termines, guarda los cambios.
Tarea 3. Ejecuta Terraform
El comando terraform init
se utiliza para inicializar un directorio de trabajo que contiene los archivos de configuración de Terraform.
Este comando realiza varios pasos de inicialización diferentes con el fin de preparar un directorio de trabajo para su uso. Se recomienda ejecutar este comando varias veces para que se actualice el directorio de trabajo con los cambios en la configuración.
- Ejecuta
terraform init
:
El comando terraform plan
es opcional (aunque se recomienda usarlo) y se utiliza para crear un plan de ejecución. Terraform realiza una actualización (salvo que esté explícitamente inhabilitada) y, luego, determina las acciones necesarias para lograr el estado deseado que se especifica en los archivos de configuración.
Este comando proporciona un modo conveniente de comprobar si un plan de ejecución de un conjunto de cambios coincide con tus expectativas sin que tengas que modificar el estado o los recursos reales. Por ejemplo, se podría ejecutar terraform plan
antes de confirmar un cambio en el control de versión para garantizar que se comportará según lo esperado.
- Ejecuta
terraform plan
:
Se puede usar el argumento opcional -out
para guardar el plan generado en un archivo y ejecutarlo más tarde con terraform apply
.
El comando terraform apply
se usa para aplicar los cambios requeridos para lograr el estado deseado de la configuración, o el conjunto de acciones predeterminadas que genera el comando terraform plan
del plan de ejecución.
- Aplica el plan Terraform que acabas de crear:
Esto tardará varios minutos en completarse. Una vez completado, verás un resultado similar a este:
Prueba la tarea completada
Haz clic en Revisar mi progreso para verificar la tarea realizada.
Tarea 4. Proxy de Cloud SQL
Qué proporciona el proxy
El proxy de Cloud SQL proporciona acceso seguro a tus instancias de Cloud SQL de segunda generación sin tener que incluir direcciones IP en una lista de entidades permitidas ni configurar SSL.
Acceder a tu instancia de Cloud SQL con el proxy de Cloud SQL tiene las siguientes ventajas:
- Conexiones seguras: El proxy encripta automáticamente el tráfico hacia y desde la base de datos mediante el uso de TLS 1.2 con un algoritmo de cifrado AES de 128 bits. Se usan certificados SSL para verificar las identidades del cliente y del servidor.
- Administración de conexión más sencilla: El proxy controla la autenticación con Cloud SQL, por lo que ya no es necesario proporcionar direcciones IP estáticas.
Cómo funciona el proxy de Cloud SQL
El proxy de Cloud SQL funciona con un cliente local, llamado proxy, que se ejecuta en el entorno local. La aplicación se comunica con el proxy a través del protocolo estándar que usa tu base de datos. El proxy usa un túnel seguro para comunicarse con el proceso complementario que se ejecuta en el servidor.
En el siguiente diagrama, se explica cómo el proxy se conecta con Cloud SQL:
Tarea 5: Instala el proxy de Cloud SQL
- Descarga el proxy:
- Haz que el proxy sea ejecutable con el siguiente comando:
Puedes instalar el proxy en cualquier parte de tu entorno. La ubicación de los objetos binarios del proxy no influye en dónde se escuchan los datos de tu aplicación.
Opciones de inicio del proxy
Cuando inicias el proxy, le brindas la siguiente información:
- Con qué instancias de Cloud SQL debe establecer conexiones
- Dónde escuchará los datos provenientes de tu aplicación que se enviarán a Cloud SQL
- Dónde encontrará las credenciales que usará para autenticar tu aplicación en Cloud SQL
Las opciones de inicio del proxy que proporciones determinarán si el proxy escuchará en un puerto TCP o en un socket Unix. Si lo haces en un socket Unix, crearás el socket en la ubicación que hayas seleccionado, comúnmente el directorio /cloudsql/
. Si lo haces en TCP, el proxy escuchará en localhost
de forma predeterminada.
Tarea 6. Prueba la conexión a la base de datos
- Comienza ejecutando el proxy de Cloud SQL para la instancia de Cloud SQL:
- Ejecuta el siguiente comando:
Ahora, haz clic en el ícono de signo más (+) para iniciar otra pestaña de Cloud Shell. Usarás esta shell para conectarte al proxy de Cloud SQL.
- Navega al directorio
sql-with-terraform
:
- Obtén la contraseña generada para MySQL:
- Prueba la conexión MySQL:
-
Cuando se te solicite, ingresa el valor de
MYSQL_PASSWORD
, que se encuentra en el resultado anterior, y presiona Intro. -
Deberías ingresar a la línea de comandos de MySQL. Escribe Ctrl + D para salir de MySQL.
Si regresas a la primera pestaña de Cloud Shell, verás registros de las conexiones hacia el proxy de Cloud SQL.
Tarea 7. Pon a prueba tus conocimientos
A continuación, se presentan algunas preguntas de opción múltiple para reforzar tus conocimientos de los conceptos de este lab. Trata de responderlas lo mejor posible.
¡Felicitaciones!
En este lab, usaste Terraform para crear una instancia de Cloud SQL y configurar el proxy de Cloud SQL. Luego, probaste la conexión entre los dos con un cliente MySQL.
Finaliza la Quest
Este lab de autoaprendizaje forma parte de las Quests Managing Cloud Infrastructure with Terraform y Cloud SQL. Una Quest es una serie de labs relacionados que forman una ruta de aprendizaje. Si completas esta Quest, obtendrás una insignia como reconocimiento por tu logro. Puedes hacer públicas tus insignias y agregar vínculos a ellas en tu currículum en línea o en tus cuentas de redes sociales. Inscríbete en Managing Cloud Infrastructure with Terraform o Cloud SQL y obtén un crédito de finalización inmediato. Consulta el catálogo de Google Cloud Skills Boost para ver todas las Quests disponibles.
Realiza tu próximo lab
Continúa aprendiendo con Cómo usar una puerta de enlace NAT con Kubernetes Engine o consulta las siguientes sugerencias:
Próximos pasos y más información
Consulta cómo administrar proyectos de Google Cloud con Terraform
Capacitación y certificación de Google Cloud
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Última actualización del manual: 26 de octubre de 2023
Prueba más reciente del lab: 30 de octubre de 2023
Copyright 2024 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.