Antiestrés para su servidor. Prueba del equilibrador de carga de Timeweb

¡Hola, Habr!



Hoy le contaremos a la comunidad sobre el lanzamiento de nuestro nuevo servicio: Load Balancer .



Ahora el servicio está disponible para todos en el modo de prueba beta abierta en la cuenta personal de VDS . Es gratis, por supuesto, y estaremos agradecidos por sus comentarios y sugerencias.



Chicos, ¿por qué ahora mismo?



Puede preguntar razonablemente. Nosotros, como todo el mundo, nos estamos acostumbrando a una nueva realidad post-pandémica (¿o todavía no?) Y estamos respondiendo a las necesidades de nuestros clientes.



Las empresas están inmersas en total línea, lo que significa que la carga de servicios está creciendo. El equilibrador distribuye las solicitudes entrantes a varios servidores para aumentar la tolerancia a fallas y también le permite organizar fácilmente la escalabilidad de cualquier aplicación.



El servicio será especialmente relevante cuando un VDS ya no pueda hacer frente a la carga o simplemente desee aumentar la tolerancia a fallos de la aplicación.



¿Cómo funciona?



El equilibrador enruta las solicitudes de los clientes a los servidores de producción disponibles en el grupo. Al sondear periódicamente el estado de los servidores, el equilibrador comprende qué servidores están activos y disponibles para procesar las solicitudes de los clientes.



Si uno o más servidores del grupo dejan de responder, se excluyen del equilibrio y los clientes no terminan en un servidor no operativo. Tan pronto como se restauran dichos servidores, el tráfico a ellos se devuelve automáticamente, y esto es lo que hace el equilibrador, eliminando la necesidad de monitorear de forma independiente la disponibilidad de cada servidor del grupo.



Además, debido a que se pueden agregar fácilmente nuevos servidores a un grupo, el equilibrador de carga puede escalar horizontalmente. Por ejemplo, con un aumento en el tráfico o la cantidad de solicitudes, puede agregar nuevos servidores con su aplicación al balanceo, y el tráfico comenzará a distribuirse uniformemente en todo el grupo, lo que le permitirá procesar una mayor cantidad de solicitudes de clientes en total.



De acuerdo, todo está claro, pero ¿cómo intentarlo?



Puede crear y administrar balanceadores a través del panel de control VDS o usando nuestra API si necesita automatizar este proceso.



En las reglas de reenvío, establecemos los parámetros de reenvío de tráfico, especificamos los puertos de entrada y salida, así como el protocolo de tráfico de los disponibles: tcp, https, http, http2.







Luego, puede elegir uno de los dos algoritmos de equilibrio disponibles: Round Robin o Least Connections.



¿Qué algoritmo deberías elegir?



Round Robin es un algoritmo en el que los servidores pasan por un círculo: la primera solicitud se envía al primer servidor, la siguiente al segundo servidor, y así sucesivamente hasta el último servidor, después de lo cual el ciclo comienza de nuevo.



Least Connections es un algoritmo en el que cada nueva solicitud se envía a un servidor con menos conexiones activas.



Para controlar automáticamente la disponibilidad de sus servidores, puede especificar parámetros en la sección "Verificar disponibilidad": simplemente configure el puerto y el protocolo, así como los intervalos para el monitoreo en segundo plano de la disponibilidad del servidor.



Ahora solo queda seleccionar su VDS o especificar las direcciones IP de los servidores. Por cierto, puedes usar el balanceador no solo con nuestro VDS. ¡Estaremos todos a favor!



Para cada balanceador de carga, asignamos 2 máquinas con haproxy, que se dedican al balanceo de tráfico, la segunda máquina en este esquema es redundante y elimina problemas con la disponibilidad del balanceador en sí, para que no se convierta en un solo punto de falla para todo el sistema.



Realizamos todo el trabajo de seguimiento y aseguramiento de la disponibilidad de los servidores en los que se ubica el balanceador.



Cuéntanos tu experiencia de usar un balanceador, nuestro o cualquier otro, en los comentarios. Es interesante conocer tu opinión.



¡Que comience la beta despiadada!








All Articles