La transformación digital avanza a toda velocidad y la nube se consolida como el centro de operaciones: su flexibilidad, su capacidad de escala, la facilidad con la que permite adoptar nuevas tecnologías, su ubicuidad, su resiliencia (demostrada al extremo durante la pandemia, cuando fue clave para garantizar la continuidad de los negocios) y la posibilidad que ofrece de mantener los costos bajo control la posicionan como la alternativa ideal para correr todas las cargas de trabajo críticas.
Sin embargo, aparecen algunos obstáculos que, en la medida en que los entornos se complejizan, tienen efectos más notorios: herramientas heredadas, muchas veces esenciales para el negocio, como motores de gestión de bases de datos o herramientas de backup, son difíciles de migrar y ofrecen un rendimiento alejado del óptimo cuando corren sobre infraestructura cloud. En estos casos nuestro equipo de arquitectura trabaja en conjunto con los clientes para buscar las mejores opciones de evolución sin afectar la productividad de sus ecosistemas de IT. Es muy importante contar con un equipo consultivo que ayude en estas decisiones y analice todos los casos.
La respuesta a este desafío es el concepto de plataformas nativas en la nube. Elegida por la consultora de mercado especializada en IT Gartner como una de las doce principales tecnologías estratégicas para 2022. Entre sus principales características, evita el enfoque tradicional de realojamiento de aplicaciones, que en líneas generales agrega complejidad al mantenimiento, dificulta la actualización y la modernización y, lo más importante, no aprovecha todos los beneficios que la arquitectura de nube ofrece.
Un futuro nativo en la nube
Las plataformas nativas en la nube son una pieza clave para acelerar las iniciativas digitales de las empresas. Los números hablan por sí solos: en 2021, según la mencionada Gartner, apenas el 40% de las organizaciones las consideraban como base para sus estrategias de transformación. Para 2025 lo hará el 95%.
Este concepto está asociado además con el de cloud native application (aplicación nativa de la nube): software diseñado especialmente y desde un primer momento para funcionar de manera óptima en este entorno, que se desarrolla en el formato de microservicios independientes unos de otros y de la infraestructura correspondiente que se ejecutan en plataformas dinámicas basadas en contenedores.
Cada microservicio cumple exactamente una función, aunque tiene la capacidad de combinarse con todos los elementos necesarios para ejecutarse en el contenedor y entregar la funcionalidad esperada. La comunicación entre ellos se lleva a cabo a través de API (siglas en inglés por interfaz de programación de aplicaciones) estandarizadas que permiten que el usuario final tenga la sensación de interactuar con una sola aplicación.
Los microservicios pueden combinarse y copiarse en otras aplicaciones y reutilizarse si es necesario. Las plataformas nativas en la nube proveen malla de servicios para gestionarlos, coordinarlos, mantenerlos y escalarlos.
La importancia de DevOps y de la automatización
Los contenedores, por su parte, son portátiles y ofrecen a los equipos de desarrollo un alto grado de flexibilidad. Por ejemplo, permiten comprobar la funcionalidad de cada nuevo servicio. Las plataformas nativas ofrecen entre sus capacidades gestión de contenedores.
Desde el punto de vista estratégico, cobra particular importancia el modelo conocido como DevOps, en el cual los equipos de desarrollo y de operaciones deben mantener una comunicación fluida y compartir metodologías ágiles para incorporar de manera continua características a los microservicios, validándolos con los usuarios a través de releases entregados relativamente rápido y apuntando en todo momento en dirección al producto final.
Otra característica destacada es que las NCA se ejecutan con un alto grado de automatización: a diferencia de lo que ocurre en las aplicaciones que corren en entornos de servidor clásicos, aquí el rendimiento se adapta a las condiciones y a las necesidades. Además, los cambios y las actualizaciones se pueden implementar en tiempo real, sin que sea necesario ningún tiempo de inactividad, y los usuarios acceden a la nueva versión de manera transparente.
Por último, incorporan mecanismos de recuperación distribuidas para que los errores del servicio o de la infraestructura no afecten (o afecten lo menos posible) a los usuarios.
La nube llegó para que los negocios alcanzaran el máximo de su potencial. Las plataformas y las aplicaciones cloud native se suman ahora para que también la nube llegue a su cenit.