La ironía resulta deliciosa con la palabra de moda del momento: nativo de la nube.
Lo primero que hay que señalar es que el enfoque nativo de la nube, pese a su nombre, no requiere la nube. Curioso, ¿verdad? El nombre proviene del enfoque arquitectónico consistente en crear una aplicación que depende de la infraestructura y está diseñada en torno a los conceptos de la nube: elasticidad, economía de escala y computación distribuida. Es indiscutible que la computación en la nube ha llevado estos conceptos a todos los aspectos de la entrega de aplicaciones: desde la arquitectura de las aplicaciones hasta la automatización, y desde la integración basada en API hasta la infraestructura. La computación en la nube ha cambiado la forma en que desarrollamos, creamos e implementamos aplicaciones. Las aplicaciones que nacieron en la nube pública adoptaron de forma natural muchas de esas mismas dependencias y características. Por tanto, el nombre representa fielmente la etimología de este estilo arquitectónico.
También existe, indiscutiblemente, una relación entre las aplicaciones nativas de la nube y los contenedores. Esto las diferencia de las aplicaciones creadas en la nube, que dependen principalmente de máquinas virtuales y servicios nativos de la nube para alcanzar objetivos similares. Las aplicaciones nativas de la nube y los contenedores están estrechamente vinculados porque los orquestadores de contenedores asociados (Kubernetes) son el medio más sencillo y extendido para conectar las aplicaciones con la infraestructura necesaria a fin de proporcionar elasticidad y, gracias a ella, lograr la economía de escala deseada.

En una aplicación nativa de la nube, los componentes se dividen en unidades mínimas para favorecer las economías de escala. De ahí que los conceptos de aplicaciones nativas de la nube y contenedores sean prácticamente sinónimos. Es necesario poder escalar bajo demanda únicamente las funciones que lo requieran. Tradicionalmente, este tipo de partición funcional y elástica de las aplicaciones se ha logrado mediante arquitecturas basadas en el enrutamiento de capa 7 (HTTP), y las aplicaciones nativas de la nube no son una excepción. Estos mismos principios se aplican a las aplicaciones modernas, que suelen utilizar un controlador de entrada (un servicio de aplicaciones de infraestructura) para gestionar la distribución de las solicitudes entrantes a la instancia adecuada, basada en contenedores, de un componente de la aplicación.
Esta partición suele realizarse en el nivel de la API, donde los URI se asocian a llamadas a la API que, a su vez, se vinculan con servicios de contenedor específicos. El controlador de entrada dirige las solicitudes al servicio de contenedor correspondiente y este, a su vez, las distribuye entre un conjunto de instancias del componente o de la aplicación. Se trata de una arquitectura de dos capas, en la que el controlador de entrada de capa 7 (HTTP) distribuye las solicitudes a un balanceador de carga convencional (POLB) para su entrega y procesamiento.
Además, existe una dependencia de los registros de servicios, que, entre bastidores, constituyen otro servicio de aplicaciones de infraestructura necesario para facilitar la elasticidad de las aplicaciones nativas de la nube. Sin un mecanismo de descubrimiento de servicios, el balanceo de carga y el control de entrada dejan de funcionar, lo que a su vez impide que la aplicación funcione.
Esta relación —entre componentes, servicios, registros de servicios, balanceadores de carga y control de entrada— encarna los principios de las aplicaciones nativas de la nube. Los componentes de las aplicaciones y la infraestructura están estrechamente vinculados, pero sin un acoplamiento fuerte. Los componentes no pueden lograr economías de escala ni distribuirse entre distintos entornos sin las capacidades de enrutamiento de capa 7 y de balanceo de carga convencional. La dependencia entre la infraestructura y las aplicaciones es real y resulta fundamental para el imperativo empresarial de ofrecer aplicaciones.
Nada de esto depende de ningún tipo de entorno de computación en la nube ni lo requiere. Una aplicación nativa de la nube puede implementarse —y a menudo se implementa— de forma independiente. De hecho, si analizamos los datos sobre los contenedores y dónde se ejecutan, observamos que los entornos «locales» siguen predominando sobre los de nube pública.

Ahora bien, aunque es cierto que se pueden desplegar contenedores en una nube privada (en las propias instalaciones), nuestras investigaciones siguen demostrando que la nube privada local continúa siendo el modelo de nube más utilizado. Más de tres cuartas partes (79 %) de los encuestados en nuestro informe «Estado de los servicios de aplicaciones 2019» tienen aplicaciones en una nube privada local, mientras que la nube pública sigue sin lograr alcanzar una mayoría, con un 45 %.
Las aplicaciones nativas de la nube constituyen una arquitectura en rápida expansión que, con toda seguridad, seguirá creciendo durante los próximos cinco años. Comprender su relación con los servicios de aplicaciones de infraestructura —y su dependencia de ellos— es un aspecto fundamental para desplegar (y proteger) con éxito estas aplicaciones modernas.
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.