Cloudlets: donde la nube se encuentra con los dispositivos inteligentes

Las nubes públicas de hiperescala están bien establecidas como la nueva plataforma para sistemas de registro. Los proveedores de aplicaciones de ERP, cadena de suministro, marketing y ventas están hoy predominante o exclusivamente basados ​​en nubes públicas de hiperescala. Solo Oracle tiene miles de clientes para su SaaS de front-office y back-office. Y la lista de clientes está creciendo a un ritmo muy superior al de las aplicaciones tradicionales de front-office y back-office.

Las nubes públicas de hiperescala también son, por supuesto, un lugar adecuado para ejecutar nuevas aplicaciones nativas de la nube que mejoran o amplían esas aplicaciones de sistema de registro. Estas nuevas aplicaciones tienen una arquitectura diferente. Si bien los sistemas de registro suelen ser aplicaciones grandes y monolíticas que se ejecutan en máquinas virtuales en la nube, las aplicaciones nativas de la nube generalmente se escriben como microservicios, se empaquetan en contenedores y se organizan para entregar una aplicación completa a los usuarios. Entre los beneficios de este enfoque:

  • Innovación más rápida
  • La capacidad de proporcionar personalización específica para cada uso de la aplicación.
  • Reutilización mejorada de código
  • Ahorro de costos frente a la virtualización convencional debido a la mayor densidad de implementación de contenedores y al consumo más eficiente de recursos

Todo esto es de conocimiento común, se promociona sin cesar, ya no se debate.

Sin embargo, menos discutido es la galaxia de aplicaciones que no son necesariamente adecuadas para la implementación centralizada en la nube a hiperescala. En cambio, estas aplicaciones prosperan en entornos informáticos distribuidos, potencialmente basados ​​en servicios en la nube, en o cerca del borde de la red. Estas aplicaciones son sistemas de participación y sistemas de control.

Sistemas al límite

Los sistemas de participación han sido definidos, por una firma analista líder de la industria, como "diferentes de los sistemas tradicionales de registro que registran transacciones y mantienen la contabilidad financiera en orden: se enfocan en las personas, no en los procesos ... para entregar aplicaciones y productos inteligentes directamente en el contexto de la vida diaria y los flujos de trabajo en tiempo real de clientes, socios y empleados ". Los sistemas de participación, que están diseñados para facilitar las interacciones humanas, son inherentemente más descentralizados que los sistemas de registro.

Un tercer tipo de aplicación para distinguir es lo que llamaré sistemas de control. Estas aplicaciones proporcionan control en tiempo real entre dispositivos inteligentes. Quizás el ejemplo clásico sea el de los vehículos autónomos. Si dos automóviles circulan por la autopista a 65 millas por hora, no van a coordinar automáticamente su espaciado enviando datos sobre la velocidad y la posición a un centro de datos remoto para su procesamiento. Se comunicarán directamente entre sí, respondiendo en microsegundos. Ya sea para automóviles a alta velocidad, líneas de ensamblaje de fabricación o cirugía robótica, minimizar la latencia de la red es un tema clave para Internet de las cosas.

Los desarrolladores que están construyendo sistemas de participación y sistemas de control también están adoptando el modelo devops basado en microservicios y contenedores. Para este tipo de aplicaciones, los contenedores ofrecen:

  • Costo de implementación casi nulo en una gran cantidad de sistemas (piense en cientos de miles de vehículos)
  • Tiempos de inicio rápidos, con reproducción y reinicio instantáneos
  • Mayor portabilidad debido a problemas de compatibilidad de plataforma reducidos en posiblemente muchos tipos diferentes de computadoras en la red

¿Dónde se ejecutarán estos contenedores? Para los sistemas de control, los contenedores normalmente se ejecutarán en los propios dispositivos inteligentes, por ejemplo, dentro de un automóvil autónomo.

Para ejecutar sistemas de participación, las empresas deberán vigilar los bienes raíces digitales en el borde de la red cerca de sus clientes, empleados y socios, no en nubes de hiperescala, sino en nubes mucho más pequeñas adecuadas para aplicaciones ligeras basadas en contenedores. . Llámalos nubes.

Entrar cloudlets

Los cloudlets son una forma de acercar la capacidad de computación en la nube a dispositivos inteligentes en el borde de la red. Como los investigadores de Carnegie Mellon definen los cloudlets, son el nivel medio de una jerarquía de tres niveles: dispositivo inteligente, cloudlet y cloud. Los Cloudlets se pueden ver como un centro de datos en una caja, con el objetivo de acercar la nube al dispositivo. Sobre la base de las ideas del investigador de CMU, creo que los cloudlets deberían tener cuatro atributos clave:

  • Diseño de dispositivo pequeño, de bajo costo y sin mantenimiento, basado en tecnología de nube estándar
  • Potente, bien conectado y seguro
  • Mantiene solo un estado suave (creado para microservicios y contenedores)
  • Ubicado en el borde de la red, cerca de los dispositivos inteligentes con los que se comunicará

Las implicaciones son significativas. Por ejemplo, si bien muchas personas tienen una visión de la empresa virtual que ejecuta aplicaciones de forma centralizada en un único centro de datos de hiperescala en la nube, la realidad es que las empresas innovadoras desplegarán aplicaciones de participación y control en cientos o potencialmente miles de cloudlets a nivel mundial.

Para un minorista, puede ser obvio dónde colocar la infraestructura de cloudlet y los contenedores que ejecutan: en los puntos de venta del minorista. Para otras empresas que no tienen una presencia física local, los proveedores de telecomunicaciones ofrecen servicios en la nube en centros de datos metropolitanos o incluso tan geolocalmente como la torre de telefonía celular más cercana.

En efecto, en lugar de poseer cientos de centros de datos donde se desee una presencia, las empresas pueden alquilar una parte de una nube durante un período de tiempo, de hecho, una habitación de hotel para su aplicación en un centro de datos local. La aplicación entra y sale según sea necesario para las personas, dispositivos o sensores en el borde de la red.

Contenedores de pastoreo

Otra implicación importante: el enfoque manual tradicional para solucionar problemas da paso a la automatización. Con cientos o miles de contenedores enviados a una gran cantidad de cloudlets, los días de resolución de problemas en producción han terminado.

¿Tiene una falla de hardware? Los contenedores de ajuste de escala automático pueden iniciar automáticamente un nuevo contenedor en hardware de nube redundante según sea necesario. ¿Fallo del software del sistema? Los contenedores defectuosos pueden eliminarse y cargarse un contenedor nuevo. ¿Fallo del software de la aplicación? Arregle la fuente una vez y saque una nueva ola de contenedores a nivel mundial. Nunca parchee ni actualice contenedores en el campo.

Esto se denomina modelo de implementación y gestión de aplicaciones de “ganado versus mascotas”, tal como lo describe Gavin McCance del CERN. Las mascotas son únicas. Son criados a mano y cuidados con amor. Cuando se enferman, los cuida hasta que recuperan la salud. Lo mismo puede decirse de los sistemas OLTP tradicionales y de soporte de decisiones construidos con aplicaciones monolíticas masivas y complejas.

Por otro lado, los sistemas basados ​​en microservicios y contenedores se tratan más como ganado. Los bovinos son casi idénticos entre sí. Puede tener cientos o miles de ellos. Cuando uno se enferma, lo reemplaza por otro.

Por tanto, la visión fundamental de las operaciones de TI para los sistemas de interacción y control basados ​​en contenedores es diferente. TI producirá muchos contenedores y los enviará a cloudlets cercanos a los usuarios y los datos para un uso a corto plazo, generalmente horas o días. Si un contenedor tiene una falla o queda desactualizado, no se parchea ni se actualiza: se elimina y se envía un nuevo contenedor al cloudlet.

Para que una empresa funcione como un todo cohesivo, los sistemas de registro, los sistemas de participación y los sistemas de control deberán estar integrados. Se puede utilizar una infraestructura común para todo el ciclo de vida (desarrollar, construir, distribuir, monitorear y administrar) para construir e implementar servicios distribuidos en la nube en forma de contenedores. Las grandes aplicaciones SaaS monolíticas no desaparecerán, pero pueden ser la excepción, no la regla.

Se están enfocando las tecnologías necesarias para hacer realidad este concepto. Existe un creciente reconocimiento de la importancia de tener un conjunto de herramientas que simplifique el ciclo de vida del desarrollo, implementación y administración de contenedores.

El desarrollo de aplicaciones basadas en microservicios generalmente se basa en herramientas como lenguajes de scripting, marcos de desarrollo, repositorios de origen, herramientas de seguimiento de errores, herramientas de integración continua y repositorios binarios. Otras herramientas empaquetan e implementan microservicios como contenedores. Las herramientas de administración para implementación y configuración están diseñadas para implementaciones frecuentes de servicios idénticos en servidores idénticos. Las herramientas de orquestación se utilizan para crear colecciones lógicas de contenedores que pertenecen a una aplicación para la administración de clústeres, la programación, el descubrimiento de servicios, la supervisión y más.

Muchas empresas están ofreciendo estas herramientas y están comenzando a aparecer los estándares de la industria. En última instancia, estas herramientas y estándares pueden permitir a las empresas operar un centro de datos virtual compuesto por muchos servicios en la nube en potencialmente docenas o cientos de centros de datos físicos.

¿Cómo puede comenzar con esta visión más amplia de un centro de datos virtual? Hay dos pasos inmediatos. Primero, lleve sus sistemas de registro a la nube pública y libere sus recursos internos para enfocarse en nuevos sistemas innovadores de participación y control. En segundo lugar, establezca una disciplina de devops dentro de su organización de TI. Ambos pasos pueden ser largos y arduos, pero pueden pagarse por sí mismos sobre la marcha. Al final del viaje, se encuentra un centro de datos virtual con la escalabilidad, confiabilidad y capacidad de respuesta necesarias para una verdadera empresa en tiempo real.

Robert Shimp es vicepresidente de grupo de gestión de productos de virtualización y Linux en Oracle.

New Tech Forum proporciona un lugar para explorar y discutir la tecnología empresarial emergente con una profundidad y amplitud sin precedentes. La selección es subjetiva, basada en nuestra selección de las tecnologías que creemos que son importantes y de mayor interés para los lectores. no acepta material de marketing para su publicación y se reserva el derecho de editar todo el contenido contribuido. Envíe todas sus consultas a [email protected]