Como profesional en ingeniería de servicios en la nube, tu objetivo principal es crear sistemas en la nube tolerantes a errores, confiables, con alta disponibilidad y rentables. Debes diseñar soluciones con ajuste de escala automático que puedan responder a los aumentos repentinos de demanda. Tienes que asegurarte de que el diseño de la arquitectura no esté sobreaprovisionado y que ayude a tu organización a optimizar los costos. En general, debes tener en cuenta lo siguiente a medida que completes tus diseños:
¿Cómo puedes agregar alta disponibilidad (HA) a tus cargas de trabajo?
¿Cómo puedes asignar recursos de forma dinámica para cumplir con los cambiantes requisitos de capacidad?
¿Cómo puedes distribuir el tráfico entre diferentes máquinas virtuales (VMs)?
En AWS, creaste planes de escalamiento que automatizan la forma en que los grupos de diferentes recursos de Elastic Compute Cloud (EC2) responden a los cambios en la demanda. Para lograrlo, usaste lo siguiente:
Elastic Load Balancer (ELB) para distribuir el tráfico entre múltiples destinos en varias zonas de disponibilidad y realizar verificaciones de estado con regularidad
Imágenes de máquina de Amazon (AMI) personalizadas que contienen el sistema operativo de tus instancias de EC2 junto con diferentes parámetros de configuración y aplicaciones que se necesitan para tus operaciones y que se pueden usar para iniciar VMs sin instalar manualmente todos los servicios necesarios
Plantillas de lanzamiento de EC2 para definir los parámetros que se necesitan para iniciar instancias de EC2 en grupos de ajuste de escala automático, como el ID de AMI, el tipo de instancia, el grupo de seguridad y los datos del usuario
Grupos de ajuste de escala automático para aumentar y disminuir de forma dinámica la capacidad de tus destinos y satisfacer la demanda de acuerdo con tus propias políticas de escalamiento, y para reemplazar instancias en mal estado y optimizar los costos
Ahora, explorarás diferentes servicios en Google Cloud que te ayudarán a crear una solución escalable y con alta disponibilidad.
Descripción general
El balanceo de cargas de aplicaciones (HTTP/HTTPS) 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 de aplicaciones (HTTP/HTTPS) ingresa al PoP que se encuentra más cerca del usuario. Luego, se balancea su carga a través de la red global de Google al backend más cercano que cuente con capacidad disponible suficiente.
En este lab, configurarás un balanceador de cargas de aplicaciones (HTTP) como se muestra en el siguiente diagrama. Luego, lo someterás a una prueba de esfuerzo para demostrar el balanceo de cargas y el escalado automático globales.
Objetivos
En este lab, aprenderás a realizar las siguientes tareas:
Crear una regla de firewall de verificación de estado
Crear una configuración de NAT con Cloud Router
Crear una imagen personalizada para un servidor web
Crear una plantilla de instancias basada en la imagen personalizada
Crear dos grupos de instancias administrados
Configurar un balanceador de cargas de aplicaciones (HTTP) con IPv4 e IPv6
Someter un balanceador de cargas de aplicaciones (HTTP) a una prueba de esfuerzo
En cada lab, recibirás un proyecto de Google Cloud y un conjunto de recursos nuevos por tiempo limitado y sin costo adicional.
Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá una ventana emergente para que selecciones tu 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 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.
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.
Nota: Para ver un menú con una lista de productos y servicios de Google Cloud, haz clic en el menú de navegación que se encuentra en la parte superior izquierda.
Tarea 1. Configura una regla de firewall de verificación de estado
En esta tarea, configurarás una regla de firewall para permitir el tráfico de verificación de estado a tus instancias.
Las verificaciones de estado determinan qué instancias de un balanceador de cargas de aplicaciones (HTTP) pueden recibir conexiones nuevas. Los sondeos de verificación de estado para tus instancias de balanceo de cargas provienen de los rangos de IP 130.211.0.0/22 y 35.191.0.0/16. Tus reglas de firewall deben permitir esas conexiones.
Crea la regla de verificación de estado
Crea una regla de firewall para permitir las verificaciones de estado.
En el menú de navegación () de la consola de Cloud, haz clic en 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.
Haz clic en Crear regla de firewall.
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
default
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.
Selecciona TCP y, luego, especifica el puerto 80.
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 una configuración de NAT con Cloud Router
En esta tarea, crearás una instancia de Cloud Router y configurarás una puerta de enlace de Cloud NAT para habilitar la conectividad a Internet saliente para tus instancias de VM.
Las instancias de backend de VM de Google Cloud que configures en la tarea 3 no se configurarán con direcciones IP externas.
En cambio, configurarás el servicio de Cloud NAT para permitir que estas instancias de VM envíen tráfico saliente solo a través de Cloud NAT y reciban tráfico entrante a través del balanceador de cargas.
Crea la instancia de Cloud Router
En la barra de título de la consola de Google Cloud, escribe Servicios de red en el campo de búsqueda y, luego, haz clic en Servicios de red en la sección Herramientas de administración de redes.
En la página Servicio de red, haz clic en Fijar junto a Servicios de red.
Haz clic en Cloud NAT.
Haz clic en Comenzar para configurar una puerta de enlace de NAT.
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-config
Red
default
Región
Haz clic en Cloud Router y selecciona Crear router nuevo.
En Nombre, escribe nat-router-us1.
Haz clic en Crear.
En Crear una puerta de enlace 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.
Haz clic en Revisar mi progreso para verificar el objetivo.
Crear una configuración de NAT con Cloud Router
Tarea 3: Crea una imagen personalizada para un servidor web
En esta tarea, crearás una imagen personalizada de servidor web para el backend del balanceador de cargas.
Crea una VM
En el menú de navegación () de la consola de Cloud, haz clic en Compute Engine > Instancias de VM.
Haz clic en Crear instancia.
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
webserver
Región
Zona
Haz clic en SO y almacenamiento y, luego, en Cambiar.
Haz clic en Mostrar configuración avanzada.
En Regla de eliminación, selecciona Conservar disco de arranque.
Haz clic en Seleccionar.
Haz clic en Redes.
En la sección Etiquetas de red, ingresa allow-health-checks.
En Interfaces de red, haz clic en predeterminada.
En el menú desplegable Dirección IPv4 externa, selecciona Ninguna.
Haz clic en Listo.
Haz clic en Crear.
Personaliza la VM
En webserver, haz clic en SSH para iniciar una terminal y conectarte.
Si se te solicita permitir que SSH en el navegador se conecte a las VMs, haz clic en Autorizar.
Para instalar Apache2, ejecuta los siguientes comandos:
Para iniciar el servidor Apache, ejecuta el siguiente comando:
sudo service apache2 start
Para probar la página predeterminada del servidor Apache2, ejecuta el siguiente comando:
curl localhost
Se debería mostrar la página predeterminada del servidor Apache2.
Configura el servicio Apache para que se inicie al arrancar
Se completó correctamente la instalación del software. Sin embargo, cuando se crea una nueva VM utilizando esta imagen, la VM recién iniciada no cuenta con el servidor web Apache en ejecución. Usa el siguiente comando para configurar el servicio Apache para que se inicie automáticamente al arrancar. Luego, pruébalo para asegurarte de que funcione.
En la terminal SSH del servidor web, configura el servicio para que se inicie en el arranque, de la siguiente manera:
sudo update-rc.d apache2 enable
En la consola de Cloud, selecciona webserver y, luego, haz clic en Más acciones .
Haz clic en Restablecer.
En el diálogo de confirmación, haz clic en Restablecer.
Nota: Este paso detendrá y reiniciará la máquina. Se mantienen las mismas IP y el mismo disco de arranque persistente, pero se limpia la memoria. Por lo tanto, si el servicio Apache está disponible después del restablecimiento, significa que se ejecutó correctamente el comando update-rc.
Para verificar el servidor, conéctate a la VM a través de SSH y, luego, ingresa el siguiente comando:
sudo service apache2 status
Nota: Si ves una ventana emergente con el mensaje No se pudo establecer la conexión a través de Cloud Identity-Aware Proxy, haz clic en Reintentar.
El resultado debería mostrar el mensaje Started The Apache HTTP Server.
Prepara el disco para crear una imagen personalizada
Verifica que no se borre el disco de arranque cuando se borre la instancia.
En la página Instancias de VM, haz clic en webserver para ver los detalles de la instancia de VM.
En Almacenamiento > Disco de arranque, verifica que la opción Cuando se borra una instancia esté configurada en Conservar el disco.
Regresa a la página de instancias de VM, selecciona webserver y, luego, haz clic en Más acciones ().
Haz clic en Borrar.
En el diálogo de confirmación, haz clic en Borrar.
En el panel izquierdo, haz clic en Discos y verifica que exista el disco webserver.
Crea la imagen personalizada
En el panel izquierdo, haz clic en Imágenes.
Haz clic en Crear imagen.
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
mywebserver
Origen
Disco
Disco de origen
webserver
Haz clic en Crear.
Nota: Creaste una imagen personalizada desde la que se pueden iniciar varios servidores web idénticos. En este punto, puedes borrar el disco webserver.
El siguiente paso es utilizar esa imagen para definir una plantilla de instancias que se pueda usar en los grupos de instancias administrados.
Haz clic en Revisar mi progreso para verificar el objetivo.
Crear una imagen personalizada para un servidor web
Tarea 4: Configura una plantilla de instancias y crea grupos de instancias
En esta tarea, configurarás plantillas de instancias y crearás grupos de instancias administrados para tu servidor web con balanceo de cargas.
Un grupo de instancias administrado usa una plantilla de instancias para crear un grupo de instancias idénticas. Úsalas para crear los backends del balanceador de cargas de aplicaciones (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.
En el menú de navegación () de la consola de Cloud, haz clic en Compute Engine > Plantillas de instancias.
Haz clic en Crear plantilla de instancias.
En Nombre, escribe mywebserver-template.
En Ubicación, selecciona Global.
En Serie, selecciona E2.
En Tipo de máquina > Con núcleo compartido, selecciona e2-micro (2 CPU virtuales, 1 núcleo, 1 GB de memoria).
En Disco de arranque, haz clic en Cambiar.
Haz clic en Imágenes personalizadas y, en Proyecto de origen de imágenes, asegúrate de que esté seleccionado el ID del proyecto de Qwiklabs.
En Imagen, selecciona mywebserver.
Haz clic en Seleccionar.
Haz clic en Opciones avanzadas.
Haz clic en Redes.
En la sección Etiquetas de red, ingresa allow-health-checks.
En Interfaces de red, haz clic en default.
En el menú desplegable Dirección IPv4 externa, selecciona Ninguna.
Haz clic en Listo.
Haz clic en Crear.
Crea las verificaciones de estado para los grupos de instancias administrados
En el menú de navegación, haz clic en Compute Engine > Verificaciones de estado.
Haz clic en Crear verificación de estado.
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
Haz clic en Crear.
Las verificaciones de estado del grupo de instancias administrado indican de manera proactiva que se borren y vuelvan a crear las instancias que tienen un mal estado.
Crea los grupos de instancias administrados
Crea un grupo de instancias administrado en y uno en .
En el menú de navegación, haz clic en Compute Engine > Grupos de instancias.
Haz clic en Crear grupo de instancias.
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-1-mig
Plantilla de instancias
mywebserver-template
Ubicación
Varias zonas
Región
En Escalado automático, ingresa 1 como la cantidad mínima de instancias y 2 como la máxima.
En Indicadores de escalado automático, haz clic en Uso de CPU.
En Tipo de indicador, selecciona Uso del balanceo de cargas de HTTP.
En Uso del balanceo de cargas de HTTP objetivo, ingresa 80.
Haz clic en Listo.
Haz clic en Período de inicialización y establécelo en 60 segundos.
Nota: Los grupos de instancias administrados ofrecen funciones de escalado 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 escalado 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. Simplemente defines la política de escalado automático, y el escalador automático realiza el ajuste correspondiente según la carga medida.
En la sección verificación de estado de Reparación automática, escribe http-health-check.
Selecciona http-health-check (TCP).
En Retraso inicial, ingresa 60.
Este es el tiempo que espera el grupo de instancias después de inicializar el arranque de una VM antes de intentar una verificación de estado. Dado que no queremos esperar 5 minutos durante el lab, configúralo en 1 minuto.
Haz clic en Crear.
Haz clic en Confirmar en la ventana de diálogo.
Nota: Espera algunos minutos para que se cree el grupo de instancias antes de repetir el mismo procedimiento de asia-1-mig en . Haz clic en Actualizar hasta que el estado cambie a Transforming. Nota: Si aparece una ventana de advertencia o ves un signo de exclamación rojo a la izquierda de un grupo de instancia después de la creación que indique No hay ningún servicio de backend vinculado con este grupo de instancias, ignóralo; configurarás el balanceador de cargas con un servicio de backend en la siguiente sección del lab.
Haz clic en Crear grupo de instancias.
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
notus-1-mig
Plantilla de instancias
mywebserver-template
Ubicación
Varias zonas
Región
Escalado automático > Cantidad mínima de instancias
1
Escalado automático > Cantidad máxima de instancias
2
Indicadores de ajuste de escala automático > Tipo de indicador
Uso del balanceo de cargas de HTTP
Uso del balanceo de cargas de HTTP objetivo
80
Período de inicialización
60
En Verificación de estado, selecciona http-health-check (TCP).
En Retraso inicial, ingresa 60.
Haz clic en Crear.
Haz clic en Confirmar en la ventana de diálogo.
Haz clic en Revisar mi progreso para verificar el objetivo.
Configurar una plantilla de instancias y crear grupos de instancias
Verifica los backends
Verifica que las instancias de VM se creen en ambas regiones.
En el menú de navegación, haz clic en Compute Engine > Instancias de VM.
Toma nota de las instancias que comienzan con us-1-mig y notus-1-mig. Forman parte de los grupos de instancias administrados.
Tarea 5. Configura el balanceador de cargas de aplicaciones (HTTP)
En esta tarea, configurarás el balanceador de cargas de aplicaciones (HTTP) para balancear el tráfico entre los dos backends (us-1-mig en y notus-1-mig en ) como se ilustra en el diagrama de red:
Inicia la configuración
En el menú de navegación, haz clic en Servicios de red > Balanceo de cargas.
Haz clic en Crear balanceador de cargas.
En Tipo de balanceador de cargas, selecciona Balanceador de cargas de aplicaciones (HTTP/HTTPS) y haz clic en Siguiente.
En Orientado al público o para uso interno, selecciona Orientado al público (externo) y haz clic en Siguiente.
En Implementación global o de una sola región, selecciona Ideal para cargas de trabajo globales y haz clic en Siguiente.
En Generación de balanceadores de cargas, selecciona Balanceador de cargas de aplicaciones externo global y haz clic en Siguiente.
En Crear balanceador de cargas, haz clic en Configurar.
En Nombre del balanceador de cargas, ingresa http-lb.
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.
Haz clic en Configuración de frontend.
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
Haz clic en Listo.
Haz clic en Agregar IP y puerto de frontend.
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
Haz clic en Listo.
El balanceo de cargas de aplicaciones (HTTP/HTTPS) admite direcciones IPv4 e IPv6 para el tráfico de clientes. Las solicitudes de clientes IPv6 terminan en la capa de balanceo de cargas global y, luego, se dirigen a través de proxies IPv4 a tus backends.
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.
Haz clic en Configuración de backend.
Haz clic en Servicios y buckets de backend > Crear un servicio de backend.
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-1-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-1-mig con 50 solicitudes por segundo (RPS) o menos.
Haz clic en Listo.
Haz clic en Agregar backend.
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
notus-1-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 notus-1-mig con un uso de CPU del 80% o menos.
Haz clic en Listo.
En Verificación de estado, selecciona http-health-check.
Marca la casilla de verificación Habilitar registro.
Especifica la Tasa de muestreo en 1.
Haz clic en Crear.
Haz clic en Aceptar.
Revisa y crea el balanceador de cargas HTTP
Haz clic en Revisión y finalización.
Revisa los Servicios de backend y el Frontend.
Haz clic en Crear. Espera a que se cree el balanceador de cargas.
Haz clic en el nombre del balanceador de cargas (http-lb).
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 de aplicaciones (HTTP)
Tarea 6. Somete el balanceador de cargas de aplicaciones (HTTP) a una prueba de esfuerzo
En esta tarea, realizarás una prueba de esfuerzo en tu balanceador de cargas de aplicaciones (HTTP) para verificar que el tráfico se reenvíe al servicio de backend.
Accede al balanceador de cargas HTTP
En la barra de título de la consola de Google Cloud, haz clic en Activar Cloud Shell ().
Si se te solicita, haz clic en Continuar.
Para verificar el estado del balanceador de cargas, ejecuta el siguiente comando. Reemplaza [LB_IP_v4] por la dirección IPv4 del balanceador:
LB_IP=[LB_IP_v4]
while [ -z "$RESULT" ] ;
do
echo "Waiting for Load Balancer";
sleep 5;
RESULT=$(curl -m1 -s $LB_IP | grep Apache);
done
Nota: El comando saldrá una vez que el balanceador de cargas esté listo.
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.
Somete el balanceador de cargas de aplicaciones (HTTP) a una prueba de esfuerzo
Crea una VM nueva para simular una carga en el balanceador de cargas de aplicaciones (HTTP). Luego, determina si se balancea el tráfico entre ambos backends cuando la carga es alta.
En el menú de navegación () de la consola de Cloud, haz clic en Compute Engine > Instancias de VM.
Haz clic en Crear instancia.
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
stress-test
Región
Una región diferente, pero más cercana a
Zona
Una zona de la región
En Serie, selecciona E2.
En Tipo de máquina, selecciona e2-micro (2 CPU virtuales, 1 núcleo, 1 GB de memoria).
Nota: Debido a que una región de EE.UU. está más cerca de que de notus-1, el tráfico solo se debería desviar a us-1-mig (a menos que la carga sea muy alta).
Haz clic en SO y almacenamiento y, luego, en Cambiar.
Haz clic en Imágenes personalizadas.
Haz clic en Imágenes personalizadas y, en Proyecto de origen de imágenes, asegúrate de que esté seleccionado el ID del proyecto de Qwiklabs.
En Imagen, selecciona mywebserver.
Haz clic en Seleccionar.
Haz clic en Crear.
Espera hasta que se cree la instancia stress-test.
En stress-test, haz clic en SSH para iniciar una terminal y conectarte.
Si se te solicita permitir que SSH en el navegador se conecte a las VMs, haz clic en Autorizar.
Para crear una variable de entorno para la dirección IP de tu balanceador de cargas, ejecuta el siguiente comando:
export LB_IP=<Enter your [LB_IP_v4] here>
Verifícalo con echo:
echo $LB_IP
Para colocar una carga en el balanceador de cargas, ejecuta el siguiente comando:
ab -n 500000 -c 1000 http://$LB_IP/
Haz clic en Revisar mi progreso para verificar el objetivo.
Someter el balanceador de cargas de aplicaciones (HTTP) a una prueba de esfuerzo
En el menú de navegación de la consola de Cloud (), haz clic en Servicios de red > Balanceo de cargas.
Haz clic en http-lb.
Haz clic en Monitoring.
Supervisa el valor de Ubicación de frontend (tráfico total entrante) entre Norteamérica y los dos backends durante unos minutos.
Nota: Primero, el tráfico se dirige solo a us-1-mig. Sin embargo, a medida que aumentan las RPS, también se dirige a notus-1-mig. Esto demuestra que, de forma predeterminada, se desvía el tráfico al backend más cercano, pero se puede distribuir entre los backends si la carga es muy alta.
En el menú de navegación de la consola de Cloud, (), haz clic en Compute Engine > Grupos de instancias.
Haz clic en us-1-mig para abrir la página del grupo de instancias.
Haz clic en Supervisión para supervisar la cantidad de instancias y la capacidad de balanceo de cargas.
Repite el mismo procedimiento para el grupo de instancias notus-1-mig.
Nota: Según la carga, es posible que se escalen los backends para que se ajusten a la carga.
Tarea 7: Revisión
En este lab, configuraste un balanceador de cargas de aplicaciones (HTTP) con backends en y . Luego, sometiste el balanceador de cargas de aplicaciones a una prueba de esfuerzo con una VM para demostrar el balanceo de cargas y el escalado automático globales.
En AWS, un patrón común para una arquitectura con alta disponibilidad incluye los siguientes elementos:
Grupos de ajuste de escala automático que lanzan nuevas instancias de Elastic Compute Cloud (EC2) (según verificaciones de estado y políticas de escalamiento, con escalamiento horizontal según sea necesario) y que reemplazan las instancias en mal estado
Imágenes de máquina de Amazon (AMI) personalizadas y plantillas de inicio que definen los parámetros de las instancias de EC2 que se inician dentro de un grupo de ajuste de escala automático, como los siguientes:
Sistema operativo
Apps previamente configuradas
Tipo de instancia
Datos del usuario
Tipo de almacenamiento activado
Seguridad
Elastic Load Balancers (ELB) que pueden distribuir el tráfico entre grupos de destino en diferentes zonas de disponibilidad
En Google Cloud, puedes usar los siguientes servicios para lograr una alta disponibilidad (HA) en tus cargas de trabajo:
Imágenes de sistemas operativos (SO) personalizadas para Compute Engine: Son imágenes de SO reutilizables que creas desde el disco de arranque de tu VM o a partir de otras imágenes y que están preconfiguradas con las apps que necesita tu organización. Estas imágenes de SO se pueden usar para iniciar instancias nuevas.
Grupo de instancias administrado (MIG): Es un conjunto de VMs que puedes administrar como una sola entidad y que se puede adaptar automáticamente a la demanda aumentando la cantidad de instancias en el grupo. Cuando ya no se necesitan los recursos, los MIG con ajuste de escala automático pueden deshacerse de instancias adicionales para reducir los costos.
Otra función de los MIG es la capacidad de realizar verificaciones de estado que indican de manera proactiva que se reemplacen las instancias en mal estado.
Balanceador de cargas de Google Cloud: Distribuye el tráfico entrante entre varias instancias, lo que reduce el riesgo de problemas de rendimiento y mejora la disponibilidad.
En Google Cloud, puedes encontrar dos tipos principales de balanceadores de cargas:
Internos: distribuyen el tráfico a instancias dentro de Google Cloud.
Externos: distribuyen el tráfico que proviene del Internet público hacia tu red de nube privada virtual (VPC) de Google Cloud.
Además, puedes elegir entre el balanceo de cargas regional o, en el caso de un balanceador de cargas externo, uno global.
Un aspecto adicional que se debe tener en cuenta cuando seleccionas un balanceador de cargas adecuado es el tipo de tráfico, por ejemplo, TCP/UDP, HTTP y HTTPS o SSL.
Finalice su lab
Cuando haya completado su lab, haga clic en Finalizar lab. Qwiklabs quitará los recursos que usó y limpiará la cuenta por usted.
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.
Los labs crean un proyecto de Google Cloud y recursos por un tiempo determinado
.
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.
En la parte superior izquierda de la pantalla, haz clic en Comenzar lab para empezar
Usa la navegación privada
Copia el nombre de usuario y la contraseña proporcionados para el lab
Haz clic en Abrir la consola en modo privado
Accede a la consola
Accede con tus credenciales del lab. Si usas otras credenciales, se generarán errores o se incurrirá en cargos.
Acepta las condiciones y omite la página de recursos de recuperación
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.
En este lab, configurarás un balanceador de cargas de aplicaciones (HTTP). Luego, lo someterás a una prueba de esfuerzo para demostrar el balanceo de cargas y el escalado automático globales.
Duración:
0 min de configuración
·
Acceso por 120 min
·
60 min para completar