Instrucciones y requisitos de configuración del lab
Protege tu cuenta y tu progreso. Usa siempre una ventana de navegador privada y las credenciales del lab para ejecutarlo.

Cómo configurar balanceadores de cargas de red y HTTP [ACE]

Lab 40 minutos universal_currency_alt 5 créditos show_chart Introductorio
info Es posible que este lab incorpore herramientas de IA para facilitar tu aprendizaje.
Este contenido aún no está optimizado para dispositivos móviles.
Para obtener la mejor experiencia, visítanos en una computadora de escritorio con un vínculo que te enviaremos por correo electrónico.

Descripción general

En este lab práctico, aprenderá las diferencias entre un balanceador de cargas de red y un balanceador de cargas HTTP, y cómo configurarlos para las aplicaciones que se ejecutan en máquinas virtuales de Google Compute Engine.

Existen varias formas de balancear cargas en Google Cloud Platform. En este lab, conocerá los pasos para configurar los siguientes balanceadores de cargas:

Se incentiva a los estudiantes a que ellos mismos escriban los comandos, ya que eso los ayuda a aprender los conceptos básicos. Muchos labs incluyen un bloque de código que contiene los comandos necesarios. Durante el lab, puede copiar y pegar fácilmente los comandos del bloque de código en los lugares apropiados.

Actividades

  • Configurar un balanceador de cargas de red

  • Configurar un balanceador de cargas HTTP(S)

  • Obtener conocimientos prácticos mientras aprende las diferencias entre los balanceadores de cargas de red y los balanceadores de cargas HTTP

Requisitos previos

Se recomienda estar familiarizado con los editores de texto estándares de Linux, como vim, emacs o nano.

Configuración

En cada lab, recibirá un proyecto de Google Cloud y un conjunto de recursos nuevos por tiempo limitado y sin costo adicional.

  1. Accede a Qwiklabs desde una ventana de incógnito.

  2. Ten en cuenta el tiempo de acceso del lab (por ejemplo, 1:15:00) y asegúrate de finalizarlo en el plazo asignado.
    No existe una función de pausa. Si lo necesita, puede reiniciar el lab, pero deberá hacerlo desde el comienzo.

  3. Cuando esté listo, haga clic en Comenzar lab.

  4. Anote las credenciales del lab (el nombre de usuario y la contraseña). Las usarás para acceder a la consola de Google Cloud.

  5. Haga clic en Abrir Google Console.

  6. Haga clic en Usar otra cuenta, copie las credenciales para este lab y péguelas en el mensaje emergente que aparece.
    Si usa otras credenciales, se generarán errores o incurrirá en cargos.

  7. Acepta las condiciones y omite la página de recursos de recuperación.

Activa Google Cloud Shell

Google 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.

Google Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.

  1. En la consola de Cloud, en la barra de herramientas superior derecha, haz clic en el botón Abrir Cloud Shell.

    Ícono de Cloud Shell destacado

  2. Haz clic en Continuar.

El aprovisionamiento y la conexión al entorno demorarán unos minutos. Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. Por ejemplo:

ID del proyecto destacado en la terminal de Cloud Shell

gcloud es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con el completado de línea de comando.

  • Puedes solicitar el nombre de la cuenta activa con este comando:
gcloud auth list

Resultado:

Credentialed accounts: - @.com (active)

Resultado de ejemplo:

Credentialed accounts: - google1623327_student@qwiklabs.net
  • Puedes solicitar el ID del proyecto con este comando:
gcloud config list project

Resultado:

[core] project =

Resultado de ejemplo:

[core] project = qwiklabs-gcp-44776a13dea667a6 Nota: La documentación completa de gcloud está disponible en la guía de descripción general de gcloud CLI .

Configure la región y la zona predeterminadas para todos los recursos

En Cloud Shell, configure la zona predeterminada:

gcloud config set compute/zone us-central1-a

Configure la región predeterminada:

gcloud config set compute/region us-central1

Consulte esta documentación sobre regiones y zonas para obtener más información.

Cree varias instancias de servidor web

Para simular la entrega desde un clúster de máquinas, utilice plantillas de instancias y grupos de instancias administradas a fin de crear un clúster simple de servidores web Nginx que entregarán contenido estático. Las plantillas de instancias definen cómo serán las máquinas virtuales del clúster (disco, CPU, memoria, etc.). Los grupos de instancias administradas crean varias instancias de máquinas virtuales con la plantilla de instancias.

Para crear los clústeres de servidores web Nginx, cree lo siguiente:

  • Una secuencia de comandos de inicio que se usará en cada instancia de máquina virtual para configurar el servidor Nginx al inicio
  • Una plantilla de instancias para usar la secuencia de comandos de inicio
  • Un grupo de destino
  • Un grupo de instancias administradas mediante la plantilla de instancias

En Cloud Shell, cree una secuencia de comandos de inicio para que la utilice cada instancia de máquina virtual. Esta secuencia de comandos configura el servidor Nginx al inicio:

cat << EOF > startup.sh
#! /bin/bash
apt-get update
apt-get install -y nginx
service nginx start
sed -i -- 's/nginx/Google Cloud Platform - '"\$HOSTNAME"'/' /var/www/html/index.nginx-debian.html
EOF

Cree una plantilla de instancias que use la secuencia de comandos de inicio:

gcloud compute instance-templates create nginx-template \--metadata-from-file startup-script=startup.sh

(Salida)

Created [...].
NAME           MACHINE_TYPE  PREEMPTIBLE CREATION_TIMESTAMP
nginx-template n1-standard-1             2015-11-09T08:44:59.007-08:00

Cree un grupo de destino. Este grupo permite tener un punto de acceso único para todas las instancias de un grupo y es necesario en el balanceo de cargas de los pasos posteriores.

gcloud compute target-pools create nginx-pool

(Salida)

Created [...].
NAME       REGION       SESSION_AFFINITY BACKUP HEALTH_CHECKS
nginx-pool us-central1

Cree un grupo de instancias administradas con la plantilla de instancias:

gcloud compute instance-groups managed create nginx-group \
         --base-instance-name nginx \
         --size 2 \
         --template nginx-template \
         --target-pool nginx-pool

(Salida)

Created [...].
NAME         LOCATION       SCOPE  BASE_INSTANCE_NAME  SIZE  TARGET_SIZE  INSTANCE_TEMPLATE  AUTOSCALED
nginx-group  us-central1-a  zone   nginx               0     2            nginx-template     no

Esto crea 2 instancias de máquinas virtuales que tienen nombres con el prefijo nginx-. Este proceso puede tardar unos minutos.

Utilice el siguiente comando para obtener una lista de las instancias de Compute Engine. Debería ver todas las instancias que se crearon.

gcloud compute instances list

(Salida)

NAME       ZONE           MACHINE_TYPE  PREEMPTIBLE INTERNAL_IP EXTERNAL_IP    STATUS
nginx-7wvi us-central1-a n1-standard-1             10.240.X.X  X.X.X.X           RUNNING
nginx-9mwd us-central1-a n1-standard-1             10.240.X.X  X.X.X.X           RUNNING

Ahora configure un firewall para poder conectarse a las máquinas en el puerto 80 a través de las direcciones EXTERNAL_IP:

gcloud compute firewall-rules create www-firewall --allow tcp:80

Debería poder conectarse a cada una de las instancias a través de sus direcciones IP externas con http://EXTERNAL_IP/, que se muestra como resultado de la ejecución del comando anterior.

Compruebe su progreso en el lab. Haga clic en Revisar mi progreso a continuación para verificar que creó un grupo de servidores web.

Crear un grupo de servidores web

Cree un balanceador de cargas de red

El balanceo de cargas de red permite balancear la carga de sus sistemas según los datos entrantes del protocolo IP, como la dirección, el puerto y el tipo de protocolo. También verá algunas opciones que no están disponibles con el balanceo de cargas HTTP(S). Por ejemplo, puede balancear la carga de protocolos adicionales basados en TCP/UDP, como el tráfico SMTP. Si su aplicación requiere características relacionadas con la conexión TCP, el balanceo de cargas de red le permite a su aplicación inspeccionar los paquetes que no inspecciona el balanceo de cargas HTTP(S).

Cree un balanceador de cargas de red L4 dirigido a su grupo de instancias:

gcloud compute forwarding-rules create nginx-lb \
         --region us-central1 \
         --ports=80 \
         --target-pool nginx-pool

(Salida)

Created [https://www.googleapis.com/compute/v1/projects/...].

Obtenga una lista de todas las reglas de reenvío de Google Compute Engine en su proyecto.

gcloud compute forwarding-rules list

(Salida)

NAME     REGION       IP_ADDRESS     IP_PROTOCOL TARGET
nginx-lb us-central1 X.X.X.X        TCP         us-central1/targetPools/nginx-pool

Puede acceder al balanceador de cargas desde el navegador con http://IP_ADDRESS/, donde IP_ADDRESS es la dirección que se muestra como resultado de la ejecución del comando anterior.

Compruebe su progreso en el lab. Haga clic en Revisar mi progreso a continuación para verificar que creó un balanceador de cargas de red L4 que apunte a los servidores web.

Crear un balanceador de cargas de red L4 que apunte a los servidores web

Cree un balanceador de cargas HTTP(S)

El balanceo de cargas HTTP(S) proporciona un balanceo de cargas global para las solicitudes HTTP(S) destinadas a sus instancias. Puede configurar reglas de URL que enruten algunas URL a un conjunto de instancias y otras URL a otras instancias. Las solicitudes siempre se enrutan al grupo de instancias más cercano al usuario, con tal de que el grupo tenga la capacidad suficiente y sea apropiado para la solicitud. Si el grupo más cercano no tiene suficiente capacidad, la solicitud se envía al grupo más cercano que la tenga.

Primero, cree una verificación de estado. Estas verificaciones comprueban que la instancia responde al tráfico HTTP o HTTPS:

gcloud compute http-health-checks create http-basic-check

(Salida)

Created [https://www.googleapis.com/compute/v1/projects/...].
NAME             HOST PORT REQUEST_PATH
http-basic-check      80   /

Defina un servicio HTTP y mapee un nombre de puerto al puerto relevante para el grupo de instancias. Ahora el servicio de balanceo de cargas puede desviar el tráfico al puerto especificado:

gcloud compute instance-groups managed \
       set-named-ports nginx-group \
       --named-ports http:80

(Salida)

Updated [https://www.googleapis.com/compute/v1/projects/...].

Cree un servicio de backend:

gcloud compute backend-services create nginx-backend \
      --protocol HTTP --http-health-checks http-basic-check --global

(Salida)

Created [https://www.googleapis.com/compute/v1/projects/...].
NAME          BACKENDS PROTOCOL
nginx-backend          HTTP

Agregue el grupo de instancias al servicio de backend:

gcloud compute backend-services add-backend nginx-backend \
    --instance-group nginx-group \
    --instance-group-zone us-central1-a \
    --global

(Salida)

Updated [https://www.googleapis.com/compute/v1/projects/...].

Cree un mapa de URL predeterminado que dirija todas las solicitudes entrantes a todas sus instancias:

gcloud compute url-maps create web-map \
    --default-service nginx-backend

(Salida)

Created [https://www.googleapis.com/compute/v1/projects/...].
NAME    DEFAULT_SERVICE
Web-map nginx-backend

Cree un Proxy HTTP de destino para enrutar las solicitudes a su mapa de URL:

gcloud compute target-http-proxies create http-lb-proxy \
    --url-map web-map

(Salida)

Created [https://www.googleapis.com/compute/v1/projects/...].
NAME          URL_MAP
http-lb-proxy web-map

Cree una regla de reenvío global para administrar y enrutar las solicitudes entrantes. Una regla de reenvío envía tráfico a un Proxy HTTP o HTTPS de destino específico según la dirección IP, el protocolo IP y el puerto que se hayan especificado. La regla de reenvío global no admite varios puertos.

gcloud compute forwarding-rules create http-content-rule \
        --global \
        --target-http-proxy http-lb-proxy \
        --ports 80

(Salida)

Created [https://www.googleapis.com/compute/v1/projects/...].

Después de crear la regla de reenvío global, su configuración puede tardar varios minutos en propagarse.

gcloud compute forwarding-rules list

(Salida)

NAME              REGION IP_ADDRESS    IP_PROTOCOL TARGET
http-content-rule        X.X.X.X       TCP         http-lb-proxy
nginx-lb   us-central1  X.X.X.X       TCP         us-central1/....

Tome nota de los datos correspondientes a IP_ADDRESS de http-content-rule para la regla de reenvío.

Debería poder conectarse a http://IP_ADDRESS/ desde el navegador. Puede tardar de tres a cinco minutos. Si no se conecta, espere un minuto y luego vuelva a cargar el navegador.

Compruebe su progreso en el lab. Haga clic en Revisar mi progreso a continuación para verificar que creó un balanceador de cargas HTTP(S) L7.

Crear un balanceador de cargas HTTP(S) L7

Ponga a prueba sus conocimientos

Realice nuestro test para poner a prueba sus conocimientos sobre Google Cloud Platform. Seleccione varias opciones correctas si es necesario.

Finalice su lab

Cuando haya completado el lab, haga clic en Finalizar lab. Google Cloud Skills Boost quitará los recursos que usó y limpiará la cuenta.

Tendrá la oportunidad de calificar su experiencia en el lab. Seleccione la cantidad de estrellas que corresponda, ingrese un comentario y haga clic en Enviar.

La cantidad de estrellas indica lo siguiente:

  • 1 estrella = Muy insatisfecho
  • 2 estrellas = Insatisfecho
  • 3 estrellas = Neutral
  • 4 estrellas = Satisfecho
  • 5 estrellas = Muy satisfecho

Puede cerrar el cuadro de diálogo si no desea proporcionar comentarios.

Para enviar comentarios, sugerencias o correcciones, use la pestaña Asistencia.

Copyright 2026 Google LLC. Todos los derechos reservados. Google y el logotipo de Google son marcas de Google LLC. El resto de los nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que están asociados.

Antes de comenzar

  1. Los labs crean un proyecto de Google Cloud y recursos por un tiempo determinado
  2. .
  3. Los labs tienen un límite de tiempo y no tienen la función de pausa. Si finalizas el lab, deberás reiniciarlo desde el principio.
  4. En la parte superior izquierda de la pantalla, haz clic en Comenzar lab para empezar

Usa la navegación privada

  1. Copia el nombre de usuario y la contraseña proporcionados para el lab
  2. Haz clic en Abrir la consola en modo privado

Accede a la consola

  1. Accede con tus credenciales del lab. Si usas otras credenciales, se generarán errores o se incurrirá en cargos.
  2. Acepta las condiciones y omite la página de recursos de recuperación
  3. No hagas clic en Finalizar lab, a menos que lo hayas terminado o quieras reiniciarlo, ya que se borrará tu trabajo y se quitará el proyecto

Este contenido no está disponible en este momento

Te enviaremos una notificación por correo electrónico cuando esté disponible

¡Genial!

Nos comunicaremos contigo por correo electrónico si está disponible

Un lab a la vez

Confirma para finalizar todos los labs existentes y comenzar este

Usa la navegación privada para ejecutar el lab

Usar una ventana de incógnito o de navegación privada es la mejor forma de ejecutar este lab. Así evitarás cualquier conflicto entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.