Puntos de control
TCP load balancer with regional forwarding rule
/ 100
Balanceo de cargas modular con Terraform: balanceador de cargas regional
GSP191
Descripción general
El balanceo de cargas en Google Cloud es diferente al de otros proveedores de servicios en la nube. Google Cloud usa reglas de reenvío en lugar de instancias de enrutamiento. Esas reglas de reenvío se combinan con servicios de backend, grupos de destino, mapas de URL y proxies de destino para desarrollar un balanceador de cargas funcional en varias regiones y grupos de instancias.
Terraform es una herramienta de administración de infraestructura de código abierto capaz de simplificar el aprovisionamiento de balanceadores de cargas en Google Cloud utilizando módulos.
Objetivos
En este lab, aprenderás a hacer lo siguiente:
- Usar los módulos de balanceo de cargas para Terraform
- Crear un balanceador de cargas TCP regional
- Crear un balanceador de cargas TCP regional interno
- Crear un balanceador de cargas HTTP global con Kubernetes Engine
- Crear un balanceador de cargas HTTPS global basado en contenido
Configuración y requisitos
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.
Descripción general de los módulos de Terraform
El repositorio que usarás en este lab contiene algunos módulos de balanceadores de cargas. En primer lugar, aprenderás qué son los módulos y, luego, clonarás el repositorio y los usarás.
terraform-google-lb (regla de reenvío regional)
Este módulo crea un balanceador de cargas de red TCP para el balanceo de cargas regional mediante un grupo de instancias administrado. Tú proporcionas una referencia a un grupo de instancias administrado, y el módulo lo agrega a un grupo de destino. Se crea una regla de reenvío regional para desviar tráfico a instancias en buen estado dentro del grupo de destino.
Fragmento de ejemplo:
terraform-google-lb-internal (regla de reenvío interno regional)
Este módulo crea un balanceador de cargas interno para realizar el balanceo de cargas regional de recursos internos. Tú proporcionas una referencia a un grupo de instancias administrado, y el módulo lo agrega a un servicio de backend regional. Se crea una regla de reenvío interno para desviar tráfico a instancias en buen estado.
Fragmento de ejemplo:
terraform-google-lb-http (regla de reenvío HTTP(S) global)
Este módulo crea un balanceador de cargas HTTP global para el balanceo de cargas multirregional basado en contenido. Proporcionas una referencia a un grupo de instancias administrado, certificados opcionales para terminación SSL, y el módulo crea un servicio de backend HTTP, un mapa de URL, un proxy de destino HTTP(S) y la regla de reenvío HTTP global para enrutar el tráfico basado en rutas de acceso HTTP a instancias en buen estado.
Fragmento de ejemplo:
Comencemos.
Tarea 1. Clona el repositorio de ejemplo
-
Haz clic en el ícono Activar Cloud Shell en la esquina superior derecha de la consola de Cloud para abrir una nueva pestaña de Cloud Shell.
-
Ejecuta el siguiente comando para clonar el repositorio terraform-google-examples:
Tarea 2: Crea un balanceador de cargas TCP con una regla de reenvío regional
En este lab, se crea un grupo de instancias administrado con dos instancias en la misma región y un balanceador de cargas de red TCP.
- Comienza por exportar el ID de tu proyecto:
El comando terraform init
se usa para inicializar un directorio de trabajo que contiene 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 el comando
terraform init
:
Resultado de ejemplo:
- En el archivo
terraform-google-lb/examples/basic/variables.tf
, ejecuta los siguientes comandos para reemplazar la región predeterminada con la región asignada por el lab de.
El comando terraform plan
se usa para crear un plan de ejecución. Terraform realiza una actualización, a menos que se la inhabilite explícitamente, y, luego, determina qué acciones son necesarias para alcanzar el estado deseado que se especificó 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 el comando
terraform plan
:
- Cuando se te solicite ingresar un valor para el ID del proyecto, usa
.
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 un plan de ejecución terraform plan.
- Ejecuta el comando
terraform apply
:
-
Cuando se te solicite ingresar un valor para el ID del proyecto, usa
. -
Escribe yes para continuar cuando se muestre el siguiente mensaje.
Resultado de ejemplo:
Luego de unos minutos, las instancias y el balanceador de cargas estarán listos.
-
Comprueba el estado de tu balanceador de cargas en la consola de Cloud. Para ello, navega al Menú de navegación > Servicios de red > Balanceo de cargas.
-
Ejecuta el siguiente comando para abrir la URL del balanceador de cargas en un navegador:
-
En el resultado, haz clic en la dirección
http://${EXTERNAL_IP}
para abrir el vínculo al balanceador de cargas. -
Actualiza varias veces para ver el balanceo de tráfico a través de ambas instancias en la región
.
Haz clic en Revisar mi progreso para verificar el objetivo.
¡Felicitaciones!
En este lab, aprendiste a usar los módulos de balanceo de cargas. Con Terraform, implementaste un balanceador de cargas TCP regional, un balanceador de cargas TCP interno regional, un balanceador de cargas HTTPS global con Kubernetes Engine y un balanceador de cargas basado en contenido HTTPS.
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: 7 de diciembre de 2023
Prueba más reciente del lab: 7 de diciembre 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.