GSP007

Descripción general
En este lab práctico, aprenderás a configurar un balanceador de cargas de red (NLB) de transferencia que se ejecute en máquinas virtuales (VMs) de Compute Engine. Un NLB de capa 4 (L4) controla el tráfico según la información a nivel de la red, como las direcciones IP y los números de puerto, y no inspecciona el contenido del tráfico.
Existen varias formas de balancear cargas en Google Cloud.
En este lab, conocerás los pasos para configurar los siguientes balanceadores de cargas:
Es aconsejable que escribas los comandos por tu cuenta, ya que te ayudará a aprender los conceptos básicos. Muchos labs incluyen un bloque de código que contiene los comandos necesarios. Durante el lab, puedes copiar y pegar fácilmente los comandos del bloque de código en los lugares apropiados.
Objetivos
En este lab, aprenderás a realizar las siguientes tareas:
- Configurar la región y la zona predeterminadas para tus recursos
- Crear varias instancias de servidor web
- Configurar un servicio de balanceo de cargas
- Configurar una regla de reenvío para distribuir el tráfico
Configuración y requisitos
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs cuentan con un temporizador que no se puede pausar. El temporizador, 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.
Nota: Usa una ventana del navegador privada o de incógnito (opción recomendada) para ejecutar el lab. Así evitarás conflictos entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
- Tiempo para completar el lab (recuerda que, una vez que comienzas un lab, no puedes pausarlo).
Nota: Usa solo la cuenta de estudiante para este lab. Si usas otra cuenta de Google Cloud, es posible que se apliquen cargos a esa cuenta.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
-
Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá un diálogo para que selecciones la forma de pago.
A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
- El botón para abrir la consola de Google Cloud
- El tiempo restante
- Las credenciales temporales que debes 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: Ordena 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 Cloud para este lab podría generar cargos adicionales.
-
Haz 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.
Nota: Para acceder a los productos y servicios de Google Cloud, haz clic en el menú de navegación o escribe el nombre del servicio o producto en el campo Buscar.
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.
-
Haz clic para avanzar por las siguientes ventanas:
- Continúa en la ventana de información de Cloud Shell.
- Autoriza a Cloud Shell para que use tus credenciales para realizar llamadas a la API 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:
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
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):
gcloud auth list
- Haz clic en Autorizar.
Resultado:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- Puedes solicitar el ID del proyecto con este comando (opcional):
gcloud config list project
Resultado:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Nota: Para obtener toda la documentación de gcloud
, en Google Cloud, consulta la guía con la descripción general de gcloud CLI.
Tarea 1: Configura la región y la zona predeterminadas para todos los recursos
-
Configura la región predeterminada:
gcloud config set compute/region {{{project_0.default_region | Region}}}
-
En Cloud Shell, configura la zona predeterminada:
gcloud config set compute/zone {{{project_0.default_zone | Zone}}}
Consulta la documentación Regiones y zonas de Compute Engine para obtener más información sobre cómo elegirlas.
Tarea 2. Crea varias instancias de servidor web
Para esta situación de balanceo de cargas, crea tres instancias de VM de Compute Engine e instala Apache en ellas. Luego, agrega una regla de firewall que permita que el tráfico HTTP llegue a las instancias.
El código proporcionado establece la zona en .
Si configuras el campo tags
, podrás hacer referencia a estas instancias de una sola vez, por ejemplo, con una regla de firewall.
Con estos comandos, también se instala Apache en cada instancia y se les otorga una página principal única:
-
Crea una máquina virtual www1
en tu zona predeterminada con el siguiente código:
gcloud compute instances create www1 \
--zone={{{project_0.default_zone | Zone}}} \
--tags=network-lb-tag \
--machine-type=e2-small \
--image-family=debian-11 \
--image-project=debian-cloud \
--metadata=startup-script='#!/bin/bash
apt-get update
apt-get install apache2 -y
service apache2 restart
echo "
Web Server: www1
" | tee /var/www/html/index.html'
-
Crea una máquina virtual www2
en tu zona predeterminada con el siguiente código:
gcloud compute instances create www2 \
--zone={{{project_0.default_zone | Zone}}} \
--tags=network-lb-tag \
--machine-type=e2-small \
--image-family=debian-11 \
--image-project=debian-cloud \
--metadata=startup-script='#!/bin/bash
apt-get update
apt-get install apache2 -y
service apache2 restart
echo "
Web Server: www2
" | tee /var/www/html/index.html'
-
Crea una máquina virtual www3
en tu zona predeterminada.
gcloud compute instances create www3 \
--zone={{{project_0.default_zone | Zone}}} \
--tags=network-lb-tag \
--machine-type=e2-small \
--image-family=debian-11 \
--image-project=debian-cloud \
--metadata=startup-script='#!/bin/bash
apt-get update
apt-get install apache2 -y
service apache2 restart
echo "
Web Server: www3
" | tee /var/www/html/index.html'
-
Crea una regla de firewall para permitir la entrada del tráfico externo a las instancias de VM:
gcloud compute firewall-rules create www-firewall-network-lb \
--target-tags network-lb-tag --allow tcp:80
Ahora debes obtener las direcciones IP externas de tus instancias y verificar que se estén ejecutando.
-
Ejecuta los siguientes comandos para generar una lista de tus instancias. Encontrarás las direcciones IP en la columna EXTERNAL_IP
:
gcloud compute instances list
-
Verifica que cada instancia se esté ejecutando con curl
(reemplaza [IP_ADDRESS] por la dirección IP externa de cada VM):
curl http://[IP_ADDRESS]
Haz clic en Revisar mi progreso para verificar que creaste un grupo de servidores web.
Crear varias instancias de servidor web
Tarea 3. Configura el servicio de balanceo de cargas
Cuando configuras el servicio de balanceo de cargas, tus instancias de máquina virtual reciben paquetes destinados a la dirección IP externa estática que configures.
Las instancias creadas con una imagen de Compute Engine se configuran automáticamente para administrar esta dirección IP.
Nota:
Obtén más información para configurar el balanceo de cargas de red en la guía Descripción general del balanceador de cargas de red de transferencia externo basado en servicios de backend.
-
Crea una dirección IP externa estática para tu balanceador de cargas:
gcloud compute addresses create network-lb-ip-1 \
--region {{{project_0.default_region | Region}}}
Resultado:
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-xxxxxxxxxxx/regions/{{{project_0.startup_script.project_region}}}/addresses/network-lb-ip-1].
-
Agrega un recurso de verificación de estado HTTP heredado:
gcloud compute http-health-checks create basic-check
Haz clic en Revisar mi progreso para verificar que creaste un balanceador de cargas de red L4 dirigido a los servidores web.
Configurar el servicio de balanceo de cargas
Tarea 4: Crea el grupo de destino y la regla de reenvío
Un grupo de destino es un grupo de instancias de backend que reciben tráfico entrante de los NLB de transferencia externos. Todas las instancias de backend de un grupo de destino deben estar en la misma región de Google Cloud.
-
Ejecuta el siguiente comando para crear el grupo de destino y utilizar la verificación de estado requerida para que funcione el servicio:
gcloud compute target-pools create www-pool \
--region {{{project_0.default_region | Region}}} --http-health-check basic-check
-
Agrega al grupo las instancias que creaste anteriormente:
gcloud compute target-pools add-instances www-pool \
--instances www1,www2,www3
A continuación, crearás la regla de reenvío. Una regla de reenvío especifica cómo enrutar el tráfico de red a los servicios de backend de un balanceador de cargas.
-
Agrega una regla de reenvío:
gcloud compute forwarding-rules create www-rule \
--region {{{project_0.default_region | Region}}} \
--ports 80 \
--address network-lb-ip-1 \
--target-pool www-pool
Haz clic en Revisar mi progreso para verificar que creaste el grupo de destino y una regla de reenvío.
Crear el grupo de destino y la regla de reenvío
Tarea 5: Envía tráfico a tus instancias
Ahora que está configurado el servicio de balanceo de cargas, puedes comenzar a enviar tráfico a la regla de reenvío y ver cómo se dispersa el tráfico a las diferentes instancias.
-
Ingresa el comando siguiente para ver la dirección IP externa de la regla de reenvío www-rule que usa el balanceador de cargas:
gcloud compute forwarding-rules describe www-rule --region {{{project_0.default_region | Region}}}
-
Accede a la dirección IP externa:
IPADDRESS=$(gcloud compute forwarding-rules describe www-rule --region {{{project_0.default_region | Region}}} --format="json" | jq -r .IPAddress)
-
Muestra la dirección IP externa:
echo $IPADDRESS
-
Utiliza el comando curl
para acceder a la dirección IP externa (reemplaza IP_ADDRESS
por la dirección IP externa del comando anterior):
while true; do curl -m1 $IPADDRESS; done
La respuesta del comando curl
se alterna de manera aleatoria entre las tres instancias.
Si al principio la respuesta es incorrecta, espera aproximadamente 30 segundos para que la configuración se cargue por completo y las instancias estén en buen estado antes de volver a intentarlo.
-
Utiliza Ctrl + C para detener la ejecución del comando.
¡Felicitaciones!
En este lab, creaste un balanceador de cargas de red, practicaste el envío de tráfico a una regla de reenvío y observaste cómo el tráfico se distribuía a diferentes instancias.
Próximos pasos y más información
Consulta las siguientes guías para obtener más información:
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: 17 de julio de 2025
Prueba más reciente del lab: 17 de julio de 2025
Copyright 2025 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.