Muchas empresas tienen la tentación de renovar el alojamiento o la plataforma de las aplicaciones mínimamente para la nube. Los beneficios más considerables (incluido un ahorro de costos de hasta el 50 %) son para aquellos que renuevan la plataforma, refactorizan y renuevan las licencias de sus aplicaciones para aprovechar todo lo que ofrece la nube.
Renovar el alojamiento
La renovación del alojamiento consiste en trasladar los componentes de una aplicación de servidores físicos a máquinas virtuales en la nube. Esto se suele denominar migración "lift-and-shift". Trasladar sus aplicaciones a máquinas virtuales de esta manera le permite realizar una migración a la nube de forma sencilla, pero no implica renovar la arquitectura de la solución para utilizar servicios nativos de la nube. Se encontrará con las mismas limitaciones de escalabilidad y opciones de desarrollo futuro que en el centro de datos. Si debe trasladarse rápidamente de un centro de datos físico, no espera tener que actualizar sus aplicaciones con mucha frecuencia o en absoluto, o si es de menor importancia estratégica para el negocio, es posible que no desee dedicar sus esfuerzos en renovar las plataformas o refactorizarlas, por lo que terminan siendo buenas candidatas para una renovación de alojamiento.
Renovar las plataformas
La renovación de la plataforma implica trasladar una aplicación local a la nube mientras se realizan cambios mínimos en el código fuente para permitir una gestión más detallada de los componentes de la aplicación. Se trata de un enfoque rentable, pero que permite obtener ciertos beneficios nativos de la nube, como el ajuste de escala automático, la mejora de la seguridad y la resistencia, y el almacenamiento gestionado. Un método de renovación de plataforma es la creación automática de contenedores mediante las herramientas de migración de un hiperescalador. Este enfoque permite reducir los costos mediante el uso de una plataforma compartida en lugar de IaaS y proporciona una oportunidad para pasar de software comercial a contenedores de código abierto en la nube, lo que reduce aún más el costo total de propiedad. La renovación de la plataforma es ideal para cargas de trabajo con componentes sencillos, una deuda técnica controlada y sin problemas importantes de desempeño o seguridad. Quizás les haya dado prioridad a otras aplicaciones de su cartera para una modernización más amplia y tenga que ser pragmático con el resto. La renovación del alojamiento y la plataforma pueden ser complicadas.
Según indica un informe técnico reciente de IDC sobre la modernización de aplicaciones, la renovación de plataformas "podría dar lugar a sorpresas inesperadas (y no deseadas) que pueden afectar la estabilidad y el desempeño de las aplicaciones".
Refactorizar
La refactorización es el proceso de renovar la arquitectura y realizar cambios considerables en el código de una aplicación para que se adapte mejor a la nube. Una refactorización adecuada permite pagar la deuda técnica, descomponer monolitos, resolver problemas de desempeño y seguridad, y añadir servicios nativos de la nube. En general, las aplicaciones monolíticas (creadas con funcionalidades como una interfaz de usuario, una base de datos y lógica, todo en una sola unidad) se descomponen para usar servicios individuales en la nube de forma nativa. Esto le permite optimizar el uso de los servicios en la nube en función de los requisitos empresariales y técnicos, y las consideraciones de costos en cuanto a informática, almacenamiento, base de datos, etc. También abre todo el catálogo de servicios creados específicamente de los hiperescaladores para la innovación futura (como aprendizaje automático, IA, IoT, perímetros, cadenas de bloques, etc.). Por último, permite que los equipos de desarrollo y operaciones tengan formas de trabajo más ágiles y modernas. Dos patrones arquitectónicos modernos reconocidos son los microservicios (las funciones individuales se implementan en contenedores que funcionan como aplicaciones independientes) y las tecnologías sin servidor (se ejecuta código sin tener en cuenta la infraestructura subyacente). La refactorización se puede llevar a cabo de una sola vez o en etapas iterativas, en función del alcance de la refactorización requerida y la voluntad de invertir. Las aplicaciones centrales para su negocio y que se planea mejorar continuamente en el futuro se beneficiarán de la inversión en la refactorización.