Las ventajas de las aplicaciones nativas en la «nube»
Mario Mendoza, arquitecto de soluciones en la multinacional Red Hat, explica a ABC los cambios estructurales que han experimentado en los últimos años la tecnología «cloud computing», uno de los pilares de la tranformación digital
Las aplicaciones empresariales han evolucionado de forma radical en un mundo cambiante e incierto. Necesitan producirse de forma muy rápida y económica. No pueden pasar meses entre que se detecta la necesidad de cambiar o desarrollar una aplicación. Y que ésta esté disponible. La tecnología llamada «cloud computing», tradicionalmente conocida como «nube», ha empujado a un nuevo ecosistema basado en productos y herramientas como servicios.
Mario Mendoza lleva años ayudando a las empresas a definir sus modelos de arquitectura con una visión a medio o largo plazo como arquitecto de soluciones en Red Hat, multinacional estadounidense de software de código abierto. Es un área que suscita mucho interés, pero generalmente es poco dado al público medio. Personas que cuando se les explica la definición de «aplicación nativa» pueden desconocer la respuesta. Pero este tipo de aplicaciones, señala este experto, están diseñadas «para sacar el máximo provecho a la nube» porque, entre otras cosas, «consume menos recursos, escala mejor ante picos de carga, es más flexible y puedo distribuir su ejecución».
Además, esta tecnología presenta otro componente interesa: se puede mover entre distintos entornos «cloud» haciendo uso de los llamados contenedores. «Utilizar aplicaciones nativas proporciona flexibilidad, reducción de consumo de recursos y resistencia a fallos, lo que lleva a una reducción de costes», explica Mendoza en una entrevista para ABC.
Y apunta: «En un centro tradicional, con 100 máquinas, el porcentaje de máquinas que tengo que tener sin usar es alto, preparadas para picos de demanda o posibles fallos. Además, tengo que virtualizar un sistema operativo que consume muchos recursos y tiene un coste asociado. En cambio los contenedores de código abierto aprovechan mejor el hardware y no necesitan de un sistema operativo virtualizado».
La clave para la optimización de recursos está en los llamados «contenedores» de aplicaciones. «Hoy en día nos parece natural que trenes, barcos y camiones lleven cualquier mercancía en contenedores estándar, todos iguales, con los mismos anclajes y medidas. El operador de la grúa gestiona contenedores, no sabe lo que hay dentro, da igual que sea un coche, enseres de cocina o fruta. Y esto ha sido una revolución en el transporte con barcos que pueden llevar hasta 30.000 contenedores, sin eso el transporte de mercancías sería un caos, y la eficiencia mucho más baja. Los contenedores para aplicaciones funcionan igual, un formato estándar de fichero con una aplicación dentro incluyendo sus necesidades de entorno y configuración», argumenta.
Hasta ahora para cada aplicación había que tener un cuidado especial. Necesitaba ajustar el entorno cuando eran instaladas, pero si se toman estos servicios y se introducen en contenedores, no solo se monitorizan de la misma manera, sino que en caso de querer extenderlas a otros territorios la propia plataforma genera el proceso de forma automática. «Los contenedores simplifican y escalan el proceso de despliegue de cualquier aplicación. Sólo hago el desarrollo, lo pongo en un contenedor, y ya está listo para que un tercero que no sabe que hay dentro la despliegue», manifiesta.
El mensaje del sector es que, con la «nube», se han inspirado en los tradicionales contenedores de mercancías, por lo que las empresas «necesitan una gestión aduanera, asegurar el contenido o monitorizar el estado y localización de las mercancías», añade. Peso ello implica un cambio en la cultura estratégica: «Requiere coordinar varias empresas o medios de transporte en diferentes fases del viaje. Es decir, el transporte puerta a puerta necesita muchas cosas que van más allá de las medidas del contenedor», reconoce.
Y asegura: «Permite empaquetar la aplicación en un contenedor y garantiza que este va a estar disponible en todas las nubes públicas, securizando, monitorizando y escalando los servicios de forma que las empresas pueden hacer un uso seguro de la tecnología. Ya no se puede entender el despliegue de una aplicación en la nube pública o privada sin utilizar contenedores».