BLOG

Foco de código abierto: Mesos de escalado automático

Miniatura de Lori MacVittie
Lori MacVittie
Publicado el 25 de septiembre de 2017

Gracias a la nube, las aplicações de escalado automático se han vuelto casi sinónimo de escalabilidad. Si no puede soportar el escalamiento automático, no es escalable según la estimación de la mayoría de las personas.

El escalado automático de aplicaciones en cualquier entorno (nube, contenedor o tradicional) depende en gran medida de la coordinación de acciones específicas en múltiples sistemas. Esa coordinación se logra a través de las API. Que son la piedra angular tanto de los entornos en nube como de los contenedores.

Hasta hace poco, el escalado automático de aplicaciones con Mesos era una tarea principalmente manual. Lo que probablemente funcionó bien para más de la mitad (51%) de los usuarios de Mesos ( según la encuesta ) que buscaban contenedores para implementar aplicações monolíticas y heredadas. Pero para aquellos que adoptan Mesos para lograr una mayor eficacia de los recursos y agilidad a través de la escalabilidad, no es sostenible. Cada vez que debe recurrir a métodos manuales para escalar aplicaciones, corre el riesgo de cometer errores humanos e incurrir en costos operativos que aumentan el costo por transacción. Después de todo, la gente no trabaja gratis, y si gastan tiempo ampliando o reduciendo la escala de las aplicaciones, no pueden trabajar en otros proyectos que pueden ser vitales para el crecimiento y el éxito de la organización. Además, los costos por transacción son una métrica importante para los entornos de nube y contenedores, ya que su eficacia es en parte deseada para mantener esos costos bajos. Cuanto más cueste cada transacción, menos beneficio o productividad se obtendrá. Y ambos son indicadores importantes de la salud empresarial en estos días.

Gaurav Kumar , ingeniero de una de las primeras empresas en adoptar Mesos, afrontó este desafío de una manera coherente con una actitud de código abierto: construyó uno. Porque las API y el código abierto permiten que las comunidades y los clientes hagan ese tipo de cosas.

escalado automático mesos f5

Para habilitar el escalado automático de aplicaciones dentro de Mesos con un F5 BIG-IP se requieren dos soluciones de código abierto existentes:

  1. Conector de contenedor F5 para Marathon , que se encarga de escuchar los eventos de Marathon y luego configurar un BIG-IP de manera adecuada. 
  2. Un exportador de Prometheus para métricas BIG-IP derivado de un proyecto de código abierto existente ( BIG-IP Exporter ) que recopila telemetría relevante (cantidad de conexiones TCP, solicitudes HTTP, etc.) de un BIG-IP.

Luego, Kumar desarrolló la tercera pata de esta solución, el “ componente de escalamiento automático basado en F5 para servicios DCOS/Marathon ” (llamado 'F5 Autoscaler').  

El componente F5 Autoscaler obtiene estadísticas del F5 Exporter y las compara con umbrales definidos. Cuando se alcanza uno de esos umbrales, el escalador automático F5 envía una solicitud de escalamiento al maestro DCOS para agregar un miembro al grupo. Marathon cumple esa solicitud como lo haría normalmente, implementando una nueva instancia de contenedor/aplicación y luego notificando a BIG-IP a través del Conector de contenedor F5 para Marathon, que configura BIG-IP con el nuevo miembro del grupo.

¡Listo! Aplicaciones de escalamiento automático.

Esta solución es un gran ejemplo de cómo el código abierto permite a las organizaciones hacer más que simplemente reducir costos y tiempo de comercialización. Proporciona un marco para resolver desafíos empresariales reales.  

Open source software destacado en este artículo: