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.

Configura un balanceador de cargas HTTP con Google Cloud Armor

Lab 2 horas 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

El balanceo de cargas HTTP(S) de Google Cloud se implementa en el perímetro de la red de Google, en los puntos de presencia (POP) de Google de todo el mundo. El tráfico de usuario dirigido a un balanceador de cargas HTTP(S) ingresa al POP que se encuentra más cerca del usuario. Luego, su carga se balancea a través de la red global de Google al backend más cercano que cuente con suficiente capacidad disponible.

Las reglas de Google Cloud Armor que aceptan o rechazan direcciones IP le permiten restringir o permitir el acceso a tu balanceador de cargas HTTP(S) en el perímetro de Google Cloud, lo más cerca que se pueda del usuario y del tráfico malicioso. Esto evita que los usuarios o el tráfico maliciosos consuman recursos o ingresen a tus redes de nube privada virtual (VPC).

En este lab, configurarás un balanceador de cargas HTTP con backends globales, como se muestra en el siguiente diagrama. Luego, realizarás una prueba de esfuerzo con el balanceador de cargas y denegarás la dirección IP de la prueba con Google Cloud Armor.

Diagrama de arquitectura de red de un balanceador de cargas de HTTP con backends globales

Objetivos

En este lab, aprenderás a realizar las siguientes tareas:

  • Crear una regla de firewall de verificación de estado
  • Crear dos configuraciones de NAT regional con Cloud Router
  • Configurar dos plantillas de instancias
  • Crear dos grupos de instancias administrados
  • Configurar un balanceador de cargas HTTP con IPv4 y con IPv6
  • Someter un balanceador de cargas HTTP a una prueba de esfuerzo
  • Rechazar una dirección IP para restringir el acceso a un balanceador de cargas HTTP

Configuración y requisitos

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 .

Tarea 1: Configura una regla de firewall de verificación de estado

Las verificaciones de estado determinan qué instancias de un balanceador de cargas pueden recibir conexiones nuevas. En el balanceo de cargas HTTP, los sondeos de verificación de estado de tus instancias de balanceo de cargas provienen de las direcciones dentro de los rangos 130.211.0.0/22 y 35.191.0.0/16. Tus reglas de firewall deben permitir estas conexiones.

Crea la regla de verificación de estado

Crea una regla de firewall para permitir las verificaciones de estado.

  1. Ve al menú de navegación (Ícono del menú de navegación) de la consola de Cloud y selecciona Red de VPC > Firewall.
    Observa las reglas de firewall existentes de ICMP, internas, RDP y SSH.

    Cada proyecto de Google Cloud comienza con la red predeterminada y estas reglas de firewall.

  2. Haz clic en Crear regla de firewall.

  3. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Nombre fw-allow-health-checks
    Red predeterminado
    Destinos Etiquetas de destino especificadas
    Etiquetas de destino allow-health-checks
    Filtro de origen Rangos de IPV4
    Rangos de IPV4 de origen 130.211.0.0/22 y 35.191.0.0/16
    Protocolos y puertos Protocolos y puertos especificados
Nota: Asegúrate de incluir los valores /22 y /16 en el campo Rangos de IP de origen.
  1. Selecciona tcp y, luego, especifica el puerto 80.
  2. Haz clic en Crear.

Haz clic en Revisar mi progreso para verificar el objetivo. Configurar regla de firewall de verificación de estado

Tarea 2: Crea dos configuraciones de NAT con Cloud Router

Las instancias de backend de VM de Google Cloud que configures en la Tarea 3 no se configurarán con direcciones IP externas.

En su lugar, configurarás el servicio de Cloud NAT para permitir que estas instancias de VM realicen solicitudes salientes para instalar Apache Web Server y PHP cuando se inicien. Crearás un Cloud Router para cada grupo de instancias administrado (uno en la región us-central1 y otro en europe-west1) y deberás configurarlos en la próxima tarea.

Crea la instancia de Cloud Router

  1. En la consola de Cloud, ve al Menú de navegación (Ícono del menú de navegación) y selecciona Servicios de red > Cloud NAT.

  2. Haz clic en Comenzar.

  3. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Nombre de la puerta de enlace nat-usa
    Red default
    Región us-central1
  4. Haz clic en Cloud Router y selecciona Crear router nuevo.

  5. En el campo Nombre, ingresa nat-router-us-central1.

  6. Haz clic en Crear.

  7. En Crear puerta de enlace de Cloud NAT, haz clic en Crear.

Nota: Espera hasta que el estado de la puerta de enlace NAT cambie a Activo antes de continuar con la siguiente tarea.

Repite el mismo procedimiento para nat-europe.

  1. Haz clic en Crear puerta de enlace de Cloud NAT.

  2. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Nombre de la puerta de enlace nat-europe
    Red default
    Región europe-west1
    Cloud Router > Crear router nuevo Ingresa el nombre nat-router-europe-west1
  3. Haz clic en Crear.

  4. En Crear una puerta de enlace NAT, haz clic en Crear.

Haz clic en Revisar mi progreso para verificar el objetivo. Crear dos configuraciones de NAT con Cloud Router

Tarea 3: Configura una plantilla de instancias y crea grupos de instancias

Un grupo de instancias administrado utiliza una plantilla de instancias para crear un grupo de instancias idénticas, que usarás para crear los backends del balanceador de cargas HTTP.

Configura la plantilla de instancias

Una plantilla de instancias es un recurso de API que puedes usar para crear instancias de VM y grupos de instancias administrados. Las plantillas de instancias definen el tipo de máquina, la imagen de disco de arranque, la subred, las etiquetas y otras propiedades de las instancias.

  1. En la consola de Cloud, ve al Menú de navegación (Ícono del menú de navegación) y selecciona Compute Engine > Plantillas de instancia.

  2. Haz clic en Crear plantilla de instancias.

  3. En Nombre, escribe us-central1-template.

  4. En Región, elige us-central1.

  5. Haz clic en Opciones avanzadas.

  6. Haz clic en Administración.

  7. En Metadatos, haz clic en + AGREGAR ELEMENTO y especifica lo siguiente:

    Clave Valor
    startup-script-url gs://cloud-training/gcpnet/httplb/startup.sh
Nota: La clave startup-script-url especifica una secuencia de comandos que se ejecutará cuando se inicien las instancias. Esta secuencia de comandos instala Apache y cambia la página de bienvenida para incluir la IP de cliente y el nombre, la región y la zona de la instancia de VM. Puedes obtener más información sobre esta secuencia de comandos consultando la guía de referencia de secuencia de comandos.
  1. Haz clic en Herramientas de redes.

  2. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Etiquetas de red allow-health-checks
    Interfaz de red > Red default
    Subred default (us-central1)
    IP externa Ninguna
  3. Haz clic en LISTO.

Nota: La etiqueta de red allow-health-checks garantiza que la regla de firewall Verificación de estado se aplique a esas instancias.
  1. Haz clic en Crear. Espera a que se cree la plantilla de instancias.

  2. A continuación, copia us-central1-template para prepararte para crear otra plantilla de instancias. Haz clic en us-central1-template. Aparecerá la información de us-central1-template.

  3. Cerca de la parte superior de la página, haz clic en CREAR UNA SIMILAR.

  4. En Nombre, escribe europe-west1-template.

  5. En Región, elige europe-west1.

  6. Haz clic en Opciones avanzadas.

  7. Haz clic en Herramientas de redes > Interfaz de red.

  8. Selecciona default (europe-west1) como subred, y haz clic en LISTO.

  9. Haz clic en Crear.

Crea los grupos de instancias administrados

Crea un grupo de instancias administrado en us-central1 y otro en europe-west1.

  1. En el Menú de navegación, selecciona Compute Engine > Grupos de instancias.

  2. Haz clic en Crear grupo de instancias.

  3. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Nombre us-central1-mig
    Ubicación Varias zonas
    Región us-central1
    Plantilla de instancias us-central1-template
    Ajuste de escala automático > Indicadores de ajuste de escala automático Haz clic en Uso de CPU y establece 80 en Uso de CPU objetivo.
    Período de inicialización 45
    Número mínimo de instancias 1
    Número máximo de instancias 5
Nota: Los grupos de instancias administrados ofrecen funciones de ajuste de escala automático que te permiten agregar o quitar automáticamente instancias de dichos grupos, según los aumentos o las disminuciones de la carga. El ajuste de escala automático ayuda a tus aplicaciones a manejar correctamente los aumentos en el tráfico y a reducir los costos cuando hay menos demanda de recursos. Tú simplemente defines la política de ajuste de escala automático, y el escalador automático realiza el ajuste correspondiente según la carga medida.
  1. Haz clic en Crear.

    Repite el mismo procedimiento para europe-west1-mig en europe-west1:

  2. Haz clic en Crear grupo de instancias.

  3. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Nombre europe-west1-mig
    Ubicación Varias zonas
    Región europe-west1
    Plantilla de instancias europe-west1-template
    Ajuste de escala automático > Indicadores de ajuste de escala automático Haz clic en Uso de CPU y establece 80 en Uso de CPU objetivo.
    Período de inicialización 45
    Número mínimo de instancias 1
    Número máximo de instancias 5
  4. Haz clic en Crear.

Haz clic en Revisar mi progreso para verificar el objetivo. Configurar las plantillas de instancias y crear los grupos de instancias

Verifica los backends

Verifica que las instancias de VM se creen en ambas regiones y accede a sus sitios HTTP.

  1. En el Menú de navegación, haz clic en Compute Engine > Instancias de VM.
    Toma nota de las instancias que comienzan con us-central1-mig y europe-west1-mig.

    Forman parte de los grupos de instancias administrados.

  2. En la consola de Cloud, toma nota del nombre y la zona de la instancia de VM ubicada en Europa (necesitarás estos valores muy pronto).

  3. En el menú de Google Cloud Platform, haz clic en Activar Cloud Shell (Ícono de Activa Cloud Shell) para abrir Cloud Shell. Si se te solicita, haz clic en Continuar.

  4. En Cloud Shell, ejecuta el siguiente comando para iniciar los comandos SSH en la instancia de VM ubicada en Europa:

gcloud compute ssh <INSTANCE_NAME> --zone <ZONE>
  1. Si se te solicita, haz clic en Autorizar.
  2. Cuando se te pregunte si quieres continuar, ingresa Y.
  3. Cuando se te solicite una frase de contraseña, presiona Intro o Retorno. Esto generará una frase de contraseña vacía.
  4. Para confirmarla, vuelve a presionar Intro o Retorno. Luego de unos momentos, Cloud Shell utilizará túneles IAP para crear una conexión SSH a la instancia de VM ubicada en Europa. La línea de comandos de Cloud Shell puede usarse en la instancia.
  5. En la línea de comandos, ingresa lo siguiente:
curl localhost

Deberías ver la página de bienvenida de Apache que se instaló como parte de startup-script-url, la secuencia de comandos que modifica esta página para incluir la dirección IP de cliente y el nombre, la región y la zona de la instancia de VM.

  1. Copia la dirección IP interna de una instancia ubicada en la región us-central.
  2. Ejecuta el siguiente comando para probar la conexión:
curl $IP_Address Nota: Reemplaza el valor $IP_Address por la dirección IP interna de la instancia us-central1.
  1. Ingresa exit para cerrar la sesión de SSH.

Tarea 4: Configura el balanceador de cargas HTTP

Luego, configurarás el balanceador de cargas HTTP para balancear la carga del tráfico entre los dos backends (us-central1-mig en us-central1 y europe-west1-mig en europe-west1), como se ilustra en el diagrama de red:

Diagrama de red de un balanceador de cargas de HTTP con backends globales

Inicia la configuración

  1. En el Menú de navegación, selecciona Servicios de red > Balanceo de cargas.
  2. Haz clic en Crear balanceador de cargas.
  3. En Tipo de balanceador de cargas, selecciona Balanceador de cargas de aplicaciones (HTTP/HTTPS) y haz clic en Siguiente.
  4. En Orientado al público o para uso interno, selecciona Orientado al público (externo) y haz clic en Siguiente.
  5. En Implementación global o de una sola región, selecciona Ideal para cargas de trabajo globales y haz clic en Siguiente.
  6. En Generación del balanceador de cargas, selecciona Balanceador de cargas de aplicaciones clásico y haz clic en Siguiente.
  7. Haz clic en Configurar.
  8. En Nombre del balanceador de cargas, ingresa http-lb.

Configura el backend

Los servicios de backend dirigen el tráfico entrante a uno o más backends adjuntos. Cada backend está compuesto por un grupo de instancias y metadatos con capacidad de entrega adicional.

  1. Haz clic en Configuración de backend.

  2. En Servicios y buckets de backend, haz clic en Crear un servicio de backend.

  3. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (selecciona la opción como se especifica)
    Nombre http-backend
    Tipo de backend Grupo de instancias
    Grupo de instancias us-central1-mig
    Números de puerto 80
    Modo de balanceo Tasa
    Máximo de RPS 50
    Capacidad 100
Nota: Esta configuración significa que el balanceador de cargas intentará mantener cada instancia de us-central1-mig con 50 solicitudes por segundo (RPS) o menos.
  1. Haz clic en Listo.

  2. Haz clic en Agregar backend.

  3. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (selecciona la opción como se especifica)
    Grupo de instancias europe-west1-mig
    Números de puerto 80
    Modo de balanceo Utilización
    Utilización máxima del backend 80
    Capacidad 100
Nota: Esta configuración significa que el balanceador de cargas intentará mantener cada instancia de europe-west1-mig con un uso de CPU del 80% o menos.
  1. Haz clic en Listo.

  2. En Verificación de estado, selecciona Crear una verificación de estado.

  3. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (selecciona la opción como se especifica)
    Nombre http-health-check
    Protocolo TCP
    Puerto 80
Nota: Las verificaciones de estado determinan qué instancias pueden recibir nuevas conexiones. Esta verificación de estado HTTP sondea las instancias cada 10 segundos, espera hasta 5 segundos para recibir una respuesta y considera que 2 intentos exitosos o 3 intentos con errores indican que están en buen estado o en mal estado, respectivamente.
  1. Haz clic en Guardar.
  2. Marca la casilla Habilitar registro.
  3. Configura la Tasa de muestreo como 1.
  4. Haz clic en Crear.

Configura el frontend

Las reglas de host y ruta de acceso determinan cómo se dirigirá el tráfico. Por ejemplo, puedes dirigir el tráfico de video a un backend y el tráfico estático a otro backend. Sin embargo, no configurarás esas reglas en este lab.

  1. Haz clic en Configuración de frontend.

  2. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Protocolo HTTP
    Versión de IP IPv4
    Dirección IP Efímera
    Puerto 80
  3. Haz clic en Listo.

  4. Haz clic en Agregar IP y puerto de frontend.

  5. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Protocolo HTTP
    Versión de IP IPv6
    Dirección IP Asignación automática
    Puerto 80
  6. Haz clic en Listo.

Nota: El balanceo de cargas HTTP(S) admite tanto direcciones IPv4 como IPv6 para el tráfico de clientes. Las solicitudes de clientes IPv6 terminan en la capa de balanceo de cargas global y, luego, son dirigidas mediante proxies IPv4 a tus backends.

Revisa y crea el balanceador de cargas HTTP

  1. Haz clic en Revisar y finalizar.
  2. Revisa los Servicios de backend y el Frontend.
  3. Haz clic en Crear.
    Espera hasta que se cree el balanceador de cargas.
  4. Haz clic en el nombre del balanceador de cargas (http-lb).
  5. Toma nota de las direcciones IPv4 e IPv6 del balanceador de cargas para la siguiente tarea. Se llamarán [LB_IP_v4] y [LB_IP_v6], respectivamente.
Nota: La dirección IPv6 es la que está en formato hexadecimal.

Haz clic en Revisar mi progreso para verificar el objetivo. Configurar el balanceador de cargas HTTP

Tarea 5: Prueba el balanceador de cargas HTTP

Ahora que creaste el balanceador de cargas HTTP para tus backends, verifica que el tráfico se desvíe al servicio de backend.

Accede al balanceador de cargas HTTP

  1. Abre una pestaña nueva en tu navegador y navega a http://[LB_IP_v4]. Asegúrate de reemplazar [LB_IP_v4] por la dirección IPv4 del balanceador de cargas.
Nota: Es posible que tardes unos minutos en acceder al balanceador de cargas HTTP. Mientras tanto, es probable que recibas errores 404 o 502. Sigue intentando hasta que veas la página de uno de los backends. Nota: Según tu proximidad a us-central1 y europe-west1, el tráfico se desviará a una instancia us-central1-mig o europe-west1-mig.
  1. Si tienes una dirección IPv6 local, prueba la dirección IPv6 del balanceador de cargas HTTP. Para ello, navega a http://[LB_IP_v6]. Asegúrate de reemplazar [LB_IP_v6] por la dirección IPv6 del balanceador de cargas.

Somete el balanceador de cargas HTTP a una prueba de esfuerzo

A continuación, crearás una VM nueva para simular una carga en el balanceador de cargas HTTP. Luego, determina si se balancea el tráfico entre ambos backends cuando la carga es alta.

  1. En la consola de Cloud, ve al Menú de navegación (Ícono del menú de navegación) y selecciona Compute Engine > Instancias de VM.

  2. Haz clic en Crear instancia.

  3. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Nombre siege-vm
    Región us-west1
    Zona us-west1-c
Nota: Dado que us-west1 está más cerca de us-central1 que de europe-west1, el tráfico solo se debería desviar a us-central1-mig (a menos que la carga sea muy alta).
  1. Haz clic en Crear. Espera a que se cree la instancia siege-vm.
  2. En el símbolo del sistema de Cloud Shell, ingresa el siguiente comando para crear una conexión SSH a siege-vm:
gcloud compute ssh siege-vm --zone us-west1-c
  1. Ejecuta el siguiente comando para instalar siege:
sudo apt-get -y install siege
  1. Para almacenar la dirección IPv4 del balanceador de cargas HTTP en una variable de entorno, ejecuta el siguiente comando y reemplaza [LB_IP_v4] por la dirección IPv4:
export LB_IP=[LB_IP_v4]
  1. Verifícalo con echo:
echo $LB_IP
  1. Para simular una carga, ejecuta el siguiente comando:
siege -c 250 http://$LB_IP

El resultado debería verse así:

Resultado:

New configuration template added to /home/cloudcurriculumdeveloper/.siege Run siege -C to view the current settings in that file [alert] Zip encoding disabled; siege requires zlib support to enable it: No such file or directory ** SIEGE 4.0.2 ** Preparing 250 concurrent users for battle. The server is now under siege…
  1. En la consola de Cloud, ve al Menú de navegación (Ícono del menú de navegación) y selecciona Servicios de red > Balanceo de cargas.
  2. Haz clic en http-lb.
  3. Haz clic en Monitoring.
  4. Supervisa el valor de Ubicación de frontend (tráfico total entrante) entre Norteamérica y los dos backends durante 2 o 3 minutos.
  5. Regresa a la terminal SSH de siege-vm.
  6. Presiona Ctrl + C para detener siege.

Tarea 6: Deniega siege-vm

Usarás Google Cloud Armor para denegar siege-vm y evitar que acceda al balanceador de cargas HTTP.

Crea la política de seguridad

Crea una política de seguridad de Google Cloud Armor con una regla para denegar siege-vm.

  1. Ve al menú de navegación de la consola de Cloud y selecciona Compute Engine > Instancias de VM.
  2. Toma nota de la IP externa de siege-vm. Se llamará [SIEGE_IP].
Nota: Existen maneras de identificar la dirección IP externa de un cliente que intenta acceder a tu balanceador de cargas HTTP. Por ejemplo, puedes examinar el tráfico capturado por los registros de flujo de VPC en BigQuery para determinar un alto volumen de solicitudes entrantes.
  1. En el menú de navegación, selecciona Seguridad de red > Cloud Armor > Políticas de Cloud Armor.

  2. Haz clic en Crear política.

  3. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Nombre deny-siege
    Acción de la regla predeterminada Permitir
  4. Haz clic en Siguiente paso.

  5. Haz clic en Agregar regla.

  6. Especifica lo siguiente y deja los parámetros de configuración restantes con sus valores predeterminados:

    Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
    Condición > Coincidencia Ingresa la SIEGE_IP.
    Acción Rechazar
    Código de denegación 403 (Prohibido)
    Prioridad 1,000
  7. Haz clic en Listo.

  8. Haz clic en Próximo paso.

  9. Haz clic en Agregar destino.

  10. En Tipo, selecciona Servicio de backend del balanceador de cargas.

  11. En Destino, selecciona http-backend.

  12. Haz clic en Crear política.
    Espera a que se cree la política antes de continuar con el siguiente paso.

Nota: De manera alternativa, puedes configurar la regla predeterminada como Denegar y solo permitir tráfico proveniente de las direcciones IP o los usuarios autorizados.

Haz clic en Revisar mi progreso para verificar el objetivo. Rechazar siege-vm

Verifica la política de seguridad

A continuación, verificarás que siege-vm no pueda acceder al balanceador de cargas HTTP.

  1. Regresa a la terminal SSH de siege-vm.
  2. Para acceder al balanceador de cargas, ejecuta el siguiente comando:
curl http://$LB_IP

El resultado debería verse así:

Resultado:

<!doctype html><meta charset="utf-8"><meta name=viewport content="width=device-width, initial-scale=1"><title>403</ title>403 Forbidden Nota: Es posible que la política de seguridad tarde unos minutos en aplicarse. Si puedes acceder a los backends, sigue intentando hasta que aparezca el error 403 (Forbidden).
  1. Abre una pestaña nueva en tu navegador y ve a http://[LB_IP_v4]. Asegúrate de reemplazar [LB_IP_v4] por la dirección IPv4 del balanceador de cargas.
Nota: Puedes acceder al balanceador de cargas HTTP desde tu navegador debido a la regla predeterminada que permite el tráfico. Sin embargo, no puedes acceder desde siege-vm a causa de la regla Rechazar que implementaste.
  1. Para simular una carga, ejecuta el siguiente comando:
siege -c 250 http://$LB_IP

El resultado debería verse así:

Resultado:

[alert] Zip encoding disabled; siege requires zlib support to enable it ** SIEGE 4.0.2 ** Preparing 250 concurrent users for battle. The server is now under siege…

Explora los registros de la política de seguridad para determinar si también se bloquea el tráfico.

  1. En el Menú de navegación de la consola de Cloud, selecciona Seguridad de red > Cloud Armor > Políticas de Cloud Armor.
  2. Haz clic en deny-siege.
  3. Haz clic en Registros.
  4. Haz clic en Ver registros de políticas. Se iniciará el Explorador de registros Verás los registros del balanceador de cargas http-lb.
  5. Expande una entrada de registro en Resultados de la consulta.
  6. Expande httpRequest.

La solicitud debería ser de la dirección IP de siege-vm. Si no es así, expande otra entrada de registro.

  1. Expande jsonPayload.
  2. Expande enforcedSecurityPolicy.
    Ten en cuenta que configuredAction se configuró como DENY para el nombre deny-siege.
Nota: Las políticas de seguridad de Google Cloud Armor crean registros que se pueden explorar para determinar cuándo se rechaza o permite el tráfico, además de conocer su origen.

¡Felicitaciones!

En este lab, configuraste un balanceador de cargas HTTP con backends en us-central1 y europe-west1. Después, realizaste una prueba de esfuerzo del balanceador de cargas con una VM y rechazaste su dirección IP con Google Cloud Armor. Además, pudiste explorar los registros de políticas de seguridad para identificar por qué se bloqueaba el tráfico.

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

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

Usa una ventana de navegación privada o de Incógnito para ejecutar el 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.