En la infraestructura de red tradicional generalmente hay tres planos arquitectónicos asociados con la infraestructura de red: datos, control y gestión.
Las definiciones exactas de estos pueden variar dependiendo del género y la implementación específica de la infraestructura, pero los arquetipos son en gran medida precisos para la mayoría de las infraestructura de red.
Pero hay otro tipo de orquestación en funcionamiento, que está bajo el capó y en gran medida pasa desapercibida para los operadores. No tiene nada que ver con la gestión, excepto que se trata de apropiarse de algunas responsabilidades de los operadores humanos.
La distinción aquí es que las acciones se activan automáticamente por cambios en el entorno durante la ejecución en lugar de como un evento de implementación. Pero la información sobre lo que ha cambiado es vital y eso significa que debe obtenerse de alguna parte.
En un modelo operativo tradicional, esa información generalmente proviene de tickets o solicitudes de cambio. En el caso de los modelos operativos modernos, y en concreto de los contenedores, esta información procede de los registros de servicio a través de un mecanismo de descubrimiento.
La naturaleza de los entornos de contenedores incluye el supuesto de que las direcciones IP efectivamente no importan para el entorno de la aplicação . Pero sí son importantes para la infraestructura porque los datos todavía tienen que enrutarse y reenviarse de un dispositivo a otro para poder recorrer la ruta entre el cliente y la aplicação. En entornos modernos, esas direcciones IP a menudo existen durante períodos cortos de tiempo (la vida útil de un contenedor/servicio).
Considere estos hallazgos de DataDog (énfasis añadido):
La rápida adopción de orquestadores ( ver hecho 4 ) parece estar llevando a los contenedores hacia vidas útiles aún más cortas, ya que el inicio y la detención automatizados de los contenedores conducen a una mayor tasa de abandono. En las organizaciones que ejecutan un orquestador, la vida útil típica de un contenedor es de aproximadamente 12 horas. En organizaciones sin orquestación, el contenedor promedio vive seis días.
Desde < https://www.datadoghq.com/docker-adoption >
Imagínese si usted, como operador, tuviera que actualizar las tablas de enrutamiento o los grupos de equilibrio de carga cada seis días, y mucho menos cada doce horas. No harías mucho más. El potencial de una configuración incorrecta sería significativo y probablemente aumentaría cuanto más tiempo estuviera obligado a operar en modo manual para administrar los cambios en un clúster de contenedores.
Un registro de servicios, como Consul , se convierte en un componente crítico de la implementación de su contenedor. Los registros de servicio realizan un seguimiento de las instancias y los servicios y sus direcciones IP asociadas. En este sentido podrían compararse con un «DNS para contenedores y servicios».
De este modo, el registro de servicios realiza un seguimiento de las características actuales de los contenedores en el clúster. El descubrimiento es el proceso de conexión al registro de servicio (a través de API o suscribiéndose a una cola de mensajes) de instancias coincidentes con direcciones IP.
Esto significa que para la infraestructura que necesita enrutar tráfico a un servicio o instancia específica dentro de un clúster de contenedores, debe poder recuperar una dirección IP. Porque por mucho que los contenedores oculten la red a la aplicação, aún dependen de ella para trasladar datos de un lugar a otro.
Lo que esto hace es introducir una nueva capa arquitectónica en la infraestructura que interactúa con los entornos de orquestación de contenedores. Esta capa (la capa de orquestación) se integra con el entorno de contenedores y utiliza capacidades como el descubrimiento de servicios para automatizar el descubrimiento de servicios e instancias. Esto significa que un balanceador de carga puede descubrir automáticamente los miembros de un grupo y actualizarlo continuamente en función de los cambios en el entorno. Esto alivia la carga de operaciones para actualizar manualmente los grupos de equilibrio de carga, una tarea cada vez más tediosa cuando los contenedores viven en promedio menos de una semana.
Este avión no está diseñado para interactuar con operadores. La configuración, la supervisión y la operación todavía se realizan a través de un plano de gestión. La ubicación de un registro de servicio se configuraría a través del plano de administración, pero sería utilizada por el plano de orquestación para conectar y comunicar cambios al plano de control.
Podemos definir el plano de orquestación de la siguiente manera.
Aún quedan dudas sobre si este plano se debe integrar en el dispositivo junto con los planos de control y datos o si es simplemente una capa sobre el plano de administración (lo que cambiaría ligeramente nuestro diagrama pero por lo demás no afectaría la interacción entre planos y componentes). Muchos dispositivos tradicionales ya admiten este plano emergente al proporcionar extensiones que se integran con entornos de contenedores y realizan cambios a través del plano de administración. Este es un buen ejemplo de refactorización de arquitecturas tradicionales para ampliar la funcionalidad en entornos modernos. Pero en última instancia puede que no sea la solución ideal.
Al principio puede parecer que la introducción de un cuarto plano para infraestructura no tiene importancia. Después de todo, su función es quitarle a los operadores parte de la responsabilidad de las tareas tediosas. Eso no puede ser malo
No está mal, pero es importante entender que este paso de la configuración estática a la dinámica tiene consecuencias para algunas de las funciones más importantes del plano de control. La criticidad del descubrimiento de servicios llega a ser tal que su disponibilidad y seguridad deberían ser un imperativo. Se convierte, de hecho, en el único punto de fallo sobre el que se apoya toda la infraestructura de aplicaciones .
Los registros de servicio se basan en las mismas premisas que la mayoría de las aplicações modernas: están diseñados para manejar fallas. Puede terminar en una situación en la que la dirección IP que acaba de descubrir desaparezca antes de que pueda reenviar tráfico a su instancia. La mayoría de la infraestructura es capaz de retransmitir en ese momento, pero el proceso lleva tiempo. Los microsegundos importan en la economía digital, por lo que las opciones tradicionales, como los tiempos de espera y los intervalos de descubrimiento, marcarán una diferencia en las arquitecturas modernas que dependen del descubrimiento. El monitoreo también se vuelve mucho más crítico, ya que la capacidad de determinar la salud y la disponibilidad lo más rápido posible puede marcar la diferencia entre que un usuario esté satisfecho o que se desvincule. Ambas son preocupaciones de nivel empresarial que todos en una organización moderna deberían conocer y tener en cuenta en sus propias métricas y expectativas.
La implementación del plano de orquestación en su infraestructura, así como la elección del registro de servicios, se convierten en factores importantes en su proceso de toma de decisiones con respecto a qué tecnología utilizar. Considere cuidadosamente sus elecciones, ya que afectan tanto la disponibilidad como el rendimiento de las aplicações entregadas a través de arquitecturas basadas en contenedores.