• ¡Obtenga la seguridad de la aplicación de la manera correcta! Detectar, proteger, monitorear, acelerar y más ...
  • Crear un balanceador de carga en la nube HTTP (s) en Google Cloud Platform (GCP)

    Si aloja sus aplicaciones en Google Cloud y busca una mejor alta disponibilidad, debería intentar implementar un equilibrador de carga (LB).

    Concepto de equilibrador de carga

    Google Cloud LB es inteligente. Ofrece más que uno tradicional.

    • HTTP / 2 habilitado
    • Terminar el protocolo de enlace SSL
    • Políticas personalizadas de SSL / TLS
    • Dirija el tráfico al servidor más cercano
    • Enrutamiento basado en ruta
    • Escalado automático

    y mucho mas ...

    A continuación, tengo dos servidores (uno en los EE. UU. Y otro en el Reino Unido). Creemos un equilibrador de carga y enrutemos el tráfico a ambos servidores.

    Dado que Google ofrece escalado automático, tiene varias opciones y elige lo que requiere su negocio. Sin embargo, en este artículo, explicaré cómo crear un equilibrador de carga utilizando grupos de instancias no administrados que no admiten el escalado automático.

    Crear grupos de instancias

    Todos los servidores deben estar dentro de los grupos de instancias. Así que este es un requisito previo para crear un LB.

    • Inicie sesión para Consola de GCP
    • Navegue a Compute Engine >> Grupos de instancias
    • Haga clic en crear grupo de instancias
    • Ingrese el nombre, seleccione la zona como una única, región donde están sus servidores, grupo de instancias no administrado, elija el servidor en el menú desplegable de instancias de VM y haga clic en Crear

    Una sola zona puede agregar servidores solo desde esa zona. Como tengo servidores en el Reino Unido y EE. UU., Entonces tengo que crear un grupo de dos instancias. Repetiré el procedimiento para agregar mi otro servidor (server-uk).

    Y se crean esos dos grupos.

    Cree un HTTP (s) LB

    Google ofrece tres tipos de LB.

    • HTTP (s)
    • TCP
    • UDP

    Para administrar la distribución del tráfico de aplicaciones web, HTTP (s) es adecuado. Vamos a crear eso.

    • Vaya a Servicios de red >> equilibrio de carga
    • Haz clic en Crear un balanceador de carga.

    • Iniciar la configuración para el equilibrio de carga de HTTP (s)

    • Ingrese el nombre de LB
    • En la pestaña de configuración de backend, seleccione el menú desplegable y cree un servicio de backend
    • Ingrese el nombre y seleccione el tipo de backend como grupos de instancias
    • Agregue ambos grupos de instancias (server-us y server-uk)
    • Ajuste el número de puerto: el número de puerto del servidor web o la aplicación estará escuchando en los servidores

    • En verificación de estado, haga clic en crear
    • Ingrese el nombre, seleccione el protocolo, puerto

    Una verificación de estado es esencial para que LB sepa qué instancia está inactiva, por lo que deja de enviar tráfico. A continuación, le indico a LB que acceda a la IP del servidor con el puerto 80 cada 10 segundos. Si un servidor no responde tres veces consecutivas, LB marcará esa instancia.

    • Haga clic en guardar y continuar para crear salud
    • Haga clic en crear en el asistente de servicio de backend
    • Se mostrará como a continuación

    En la pestaña de reglas de host y ruta, asegúrese de que los servicios de backend recién creados (geekflarelab en mi caso) estén seleccionados

    En la pestaña de configuración de la interfaz, ingrese el nombre y cree una nueva dirección IP.

    • Aparecerá una ventana emergente para reservar una nueva dirección IP estática. Dé el nombre allí y haga clic en reservar.
    • Click Hecho

    Nota: se recomienda obtener la IP estática de su LB para que pueda usarla para apuntar a su dominio.

    En la pestaña de revisión, asegúrese de que todo esté bien y una vez feliz haga clic en Crear

    Tardará unos segundos en crearse y debería verlos en la lista. Al hacer clic en el LB recién creado, se mostrarán los detalles a continuación.

    Como puede ver, ambas instancias están en buen estado y LB está técnicamente operativo.

    Siguiente página, debe actualizar el registro A de su dominio para que apunte a la IP de la interfaz de LB. Una vez hecho esto, cuando acceda a su dominio, debería llegar a LB y distribuir el tráfico a las instancias.

    Hice algunos prueba de carga y aqui esta el resultado.

    Puede ver que el tráfico de Europa se dirige al servidor más cercano ubicado en Londres, y el tráfico de América del Norte y Asia se dirige al servidor de EE. UU. Lo bueno es que no tiene que configurar nada para el enrutamiento del tráfico geográfico, su función predeterminada. La supervisión anterior está disponible en la pestaña de backends.

    Conclusión

    Crear un LB es fácil y espero que esto le dé una idea al respecto. Hay muchas configuraciones que puede hacer para cumplir con los requisitos de su aplicación, como la afinidad de sesión, Integración CDN, Certificado SSL, etc. Si está explorando una opción para tener un equilibrador de carga para su aplicación, entonces pruebe y vea cómo ayuda.

    El costo se basa en el uso, por lo que no hay bloqueo mensual o anual. Creo que el uso mínimo costaría alrededor de $ 18 por mes. Si tiene curiosidad por aprender sobre la administración de Google Cloud, puede considerar tomando este curso en línea.