Escalar contenedores implica mucho más que limitarse a colocar un proxy delante de un servicio y olvidarse del asunto. La escalabilidad no consiste únicamente en la distribución y, en el vertiginoso mundo de los contenedores, se requieren cinco capacidades específicas para garantizarla: reintentos, disyuntores, descubrimiento, distribución y supervisión.
En este artículo sobre el arte de escalar contenedores, profundizaremos en el descubrimiento de servicios.
Descubrimiento
Los modelos tradicionales de escalado tienen una configuración relativamente fija. Los proxies de equilibrio de carga utilizan un algoritmo para seleccionar un recurso de un conjunto de recursos bastante estático. Aunque la selección del recurso (distribución) se realiza en tiempo real y puede tener en cuenta variables puntuales como la carga y los tiempos de respuesta, el entorno general no funciona así. Los operadores añaden y eliminan recursos según procesos definidos por la empresa que regulan el aumento o la reducción de la capacidad.
Los modelos modernos de escalado son volátiles y dinámicos por naturaleza. La premisa del escalado en los sistemas modernos se basa en automatizarlo todo. El escalado automático, un concepto materializado gracias a la nube, impone la idea de ampliar y reducir los grupos de recursos en función de la demanda. Sin embargo, esto solo supone un avance parcial respecto a los modelos tradicionales. Sigue existiendo la noción de un grupo «central» de recursos entre los que un algoritmo de equilibrio de carga realiza una selección. Este grupo puede ampliarse o reducirse dinámicamente, pero sigue estando limitado por el modelo bastante tradicional en el que opera.
Los contenedores —y, en particular, los entornos de orquestación de contenedores— rompen por completo con ese modelo. El concepto de un punto de conexión (el punto de entrada) es uno de los pocos elementos «fijos» del escalado basado en contenedores, mientras que todo lo demás, desde las reglas de enrutamiento hasta los recursos que componen el conjunto que lo sustenta, se considera altamente variable. En teoría, los contenedores pueden durar apenas unos segundos. Sin embargo, en la práctica suelen durar varios días. En comparación con los modelos tradicionales, en los que los recursos duraban meses (y, a veces, años), esta vida útil ejerce sobre los operadores una presión que no pueden soportar sin automatización.
Por lo tanto, el descubrimiento es un componente fundamental para escalar contenedores. Los proxies de equilibrio de carga deben poder seleccionar un recurso de un conjunto que puede haber cambiado con respecto al que había hace un minuto. Por ello, la mayoría de los entornos de orquestación de contenedores incluyen un «registro» de recursos que ayuda a los proxies a descubrirlos en tiempo real para garantizar la escalabilidad.
Este proceso requiere que los proxies no solo estén integrados en el ecosistema de orquestación de contenedores, sino que también hablen la lengua franca de estos entornos: en los entornos de orquestación de contenedores se utilizan archivos de configuración declarativa (archivos de recursos) y metadatos para que los proxies puedan identificar los recursos asociados a los servicios que están escalando. Esto permite que los proxies ajusten automáticamente sus «grupos» de recursos en tiempo real y evita el inconveniente de seleccionar un recurso que, lamentablemente, ya se ha desactivado.
Sin detección, no hay ninguna forma eficiente de que un proxy de equilibrio de carga escale aplicaciones y servicios en un entorno de contenedores. Ningún operador podría seguir el ritmo de los cambios en un entorno de este tipo utilizando métodos de configuración manuales. El mero hecho de llevar un registro de los recursos que están activos —y vinculados a cada servicio— consumiría la mayor parte de su tiempo, dejándole muy poco para realizar los cambios necesarios.
El descubrimiento proporciona los mecanismos necesarios para que los componentes de un entorno de orquestación de contenedores puedan funcionar en tiempo real y permite que los proxies de equilibrio de carga escalen aplicaciones y servicios al garantizar que dispongan de la información necesaria para seleccionar recursos bajo demanda.
Sobre el autor

Lori MacVittie es ingeniera distinguida y evangelista jefe en la Oficina del CTO de F5, y cuenta con una amplia experiencia en entrega de aplicaciones, estrategia de automatización e infraestructura. Es conocida por convertir la complejidad en claridad, ya sea definiendo mecanismos de protección para agentes de IA, analizando arquitecturas multinube frágiles o explorando los límites de los sistemas escalables. Aporta más de treinta años de experiencia en el sector en desarrollo de aplicaciones, arquitectura de TI y operaciones de redes y sistemas. Antes de incorporarse a F5, fue una galardonada editora de tecnología. MacVittie posee un máster en Informática y es una autora prolífica cuyas publicaciones abarcan la seguridad, la nube y la arquitectura empresarial. También es una apasionada de los juegos de mesa y los videojuegos, y expresa sin complejos sus firmes opiniones sobre el queso.
Más artículos de Lori Mac VittieArtículos relacionados del blog

Cree servicios públicos seguros, resilientes y preparados para la IA con F5 y AWS
Descubre cómo las organizaciones del sector público pueden modernizar de forma segura sus aplicaciones y soluciones de IA, al tiempo que gestionan los sistemas heredados, el cumplimiento normativo y el riesgo operativo.
Protección de los sistemas de IA: por qué la seguridad debe avanzar al ritmo de la innovación
Desde acelerar avances revolucionarios en medicina y educación hasta transformar la vida cotidiana, la IA está cambiando nuestra forma de vivir y trabajar. Pero también ofrece grandes oportunidades a los ciberdelincuentes.
Avanzar hacia la optimización digital tras la transformación
Descubre estrategias de optimización digital para garantizar políticas de seguridad coherentes, impulsar la madurez de la transformación digital y superar los retos de la transformación.
Proyecto de código abierto destacado: mayor observabilidad con F5 Cloud Logger iApp
En el punto de mira del código abierto: cómo aumentar la observabilidad. Lee el blog de F5 para descubrir cómo exportar fácilmente la telemetría de BIG-IP a plataformas modernas de análisis en la nube.
El estado de la entrega de aplicaciones en 2018: la transformación digital impulsa la automatización y la multinube pese a las preocupaciones de seguridad
Descubre las principales conclusiones del cuarto informe anual de F5 sobre el estado de la entrega de aplicaciones.
Estado de la entrega de aplicaciones en 2017: automatización, API y DevOps
Descubre el informe sobre el estado de la entrega de aplicaciones de 2017. Lee el blog retrospectivo de F5 sobre los inicios del auge de las redes declarativas y los flujos de DevOps.