En el mundo de los contenedores hay tanta confusión como caos. Cada día parece traer alguna nueva funcionalidad o componente al ámbito de los entornos de orquestación de contenedores. Es algo necesario, porque este ámbito aún está madurando a medida que el uso de contenedores deja de ser experimental para convertirse en algo esencial.
La velocidad y la escalabilidad son dos de los principales factores que impulsan las implementaciones de contenedores. La primera tiene que ver tanto con el desarrollo como con la entrega, de ahí el énfasis en la escalabilidad. Pero no hablamos solo de la escalabilidad básica de los protocolos, sino de la escalabilidad de las aplicaciones .
La distinción es importante. Los contenedores se consideran la opción más probable para alojar microservicios, y una de las reglas fundamentales de los microservicios es que la comunicación se realice exclusivamente mediante API. Una API basada en HTTP —no en TCP— requiere, por tanto, una solución más inteligente para escalar.
La mayoría de los entornos de orquestación de contenedores incluyen de serie proxies con capacidades básicas de escalado. Esto se traduce en balanceo de carga convencional (POLB) en la capa TCP. Las direcciones IP y los puertos son la lengua franca de estos proxies. Aunque funcionan bien en entornos donde los servicios se diferencian mediante una combinación de dirección IP y puerto, no ofrecen tan buenos resultados con aplicaciones (servicios) que se diferencian por características de la capa HTTP, como la versión de la API, el URI o el nombre de host. Estos son elementos de la capa de aplicación (HTTP) y requieren proxies más inteligentes para enrutar y escalar a la velocidad deseada. Estos elementos deben tenerse en cuenta al recibir una solicitud de una entidad del lado del cliente, algo que la mayoría de las soluciones básicas de escalado para contenedores no pueden ofrecer.
Como respuesta a esta necesidad surge el concepto de control de Ingress*. El control de Ingress consiste básicamente en el enrutamiento de aplicaciones o HTTP también denominado conmutación de capa 7, conmutación de contenido o cualquiera de los muchos otros nombres que ha recibido esta funcionalidad desde principios de siglo. El control de Ingress presupone la diferenciación de servicios en la capa de aplicación (HTTP) y actúa en consecuencia al tomar decisiones de enrutamiento y escalado dentro del entorno de contenedores.
Pero no basta con colocar un F5 BIG-IP delante de un entorno de contenedores y llamarlo control de Ingress. Esto se debe a que un controlador de Ingress también debe estar integrado con el entorno de orquestación de contenedores para lograr la escalabilidad y la velocidad deseadas. Para ello, se necesita algo que resida dentro del entorno de contenedores y sea compatible de forma nativa con la orquestación de contenedores y BIG-IP.
Eso es lo que hace el controlador BIG-IP para Kubernetes. Es un contenedor Docker que se ejecuta en un pod de Kubernetes y permite utilizar BIG-IP como controlador de entrada de Kubernetes. Esto significa que puede leer el recurso Ingress de Kubernetes y configurar automáticamente BIG-IP con los objetos adecuados para garantizar que las solicitudes se escalen según las estructuras de la capa de aplicación que desee.
Antes de que este controlador estuviera disponible, se solía utilizar BIG-IP para «distribuir» el tráfico entre una segunda capa de proxies que se ejecutaban dentro del entorno de orquestación de contenedores. Esos proxies proporcionaban el control de Ingress. Hay varias buenas razones para dejar de hacerlo, entre ellas el quebradero de cabeza recurrente que supone ejecutar el servicio de disponibilidad dentro de aquello cuya disponibilidad debe garantizar.
Otros buenos motivos son:
- Habilitar la mitigación de ataques DDoS
- Aproveche un firewall de aplicaciones web para proteger las API y las aplicaciones
- Permite que los clientes IPv6 utilicen aplicaciones en contenedores IPv4
- Descargar TLS en BIG-IP y volver a cifrar con certificados autofirmados
- Utilice las opciones de aceleración de aplicaciones para mejorar el rendimiento
Sea cual sea el motivo, la realidad es que puede utilizar un BIG-IP como controlador de Ingress para Kubernetes. No necesita dos niveles diferentes para escalar. Eliminar ese segundo nivel de escalado mejorará la velocidad (tanto de entrega como de despliegue) y simplificará los despliegues, al tiempo que proporcionará una plataforma en la que podrá habilitar una amplia variedad de servicios avanzados de seguridad, velocidad y escalabilidad.
Puedes obtener más información sobre BIG-IP Controller for Kubernetes aquí, descargarlo desde Docker Hub, aquí o simplemente obtenerlo directamente:
docker pull f5networks/k8s-bigip-ctlr
Continúe escalando.
* Sí, la «I» mayúscula es importante, ya que permite distinguirlo del término de red tradicional «ingress», que simplemente hace referencia al «acceso al entorno», mientras que «Ingress» se utiliza para referirse al «enrutamiento HTTP». Sí, tendemos a complicar las cosas más de lo necesario, pero así es el mundo en el que los desarrolladores implementan elementos de red y redefinen mucho más que la forma en que se entregan las aplicaciones.
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.