Cómo realojar aplicaciones

​​Para realojar una aplicación, migrarla entre entornos, por lo general, de un entorno local a la nube, o en algunos casos, nuevamente a un entorno local para cargas de trabajo especializadas, sin alterar la arquitectura central o el código.

Metas de aprendizaje

Después de leer este artículo podrás:

  • Identificación de los escenarios ideales para realojar aplicaciones en la nube
  • Conoce las prácticas recomendadas para planificar y ejecutar el realojamiento
  • Entender las necesidades de infraestructura más allá de la informática durante el realojamiento

Contenido relacionado


¿Quieres saber más?

Suscríbete a theNET, el resumen mensual de Cloudflare sobre las ideas más populares de Internet.

Revisa la política de privacidad de Cloudflare para saber más sobre cómo Cloudflare gestiona tus datos personales.

Copiar el enlace del artículo

¿Qué es el realojamiento de aplicaciones?

El realojamiento de aplicaciones, también conocido como "traslado directo", es el proceso de trasladar una aplicación de un entorno local a la nube con poca o ninguna modificación en su arquitectura subyacente. Este enfoque permite que las organizaciones migren rápidamente cargas de trabajo sin tener que rediseñar o modificar profundamente sus aplicaciones.

Al trasladar las aplicaciones a plataformas en la nube, las empresas pueden reducir su dependencia del hardware físico, reducir los costos operativos y mejorar la escalabilidad y la resiliencia.

Por qué las organizaciones migran las aplicaciones a la nube

Hay varios factores clave detrás del cambio a los entornos de nube :

  • Escalabilidad: las plataformas en la nube ofrecen recursos flexibles que se ajustan a la demanda
  • Rentabilidad: migrar a la nube reduce los gastos generales y traslada el gasto a un modelo más flexible de pago por uso
  • Resiliencia y disponibilidad: la infraestructura en la nube suele ofrecer funciones integradas de redundancia y recuperación ante desastres
  • Seguridad y cumplimiento normativo: los principales proveedores de servicios en la nube ofrecen funciones de seguridad y certificaciones para satisfacer las necesidades de cumplimiento normativo
  • Innovación: la migración a la nube permite ciclos de desarrollo más rápidos, integraciones más sencillas y acceso a servicios como IA, análisis e informática sin servidor

Si bien la mayoría de las organizaciones migran a la nube para aprovechar estos beneficios, una minoría importante, generalmente grandes empresas con cargas de trabajo especializadas, están realojando ciertas aplicaciones en entornos locales para cumplir con consideraciones únicas de rendimiento, cumplimiento normativo o costos.

Cómo el realojamiento es compatible con la modernización de aplicaciones

La modernización de aplicaciones hace referencia al proceso de actualización y migración de las aplicaciones de software existentes, y su infraestructura subyacente, para satisfacer mejor las necesidades de seguridad, rendimiento y escalabilidad de una organización. Un enfoque común dentro de esta iniciativa más amplia es el realojamiento.

Si bien el realojamiento no implica cambios significativos en la aplicación en sí, aprovecha los beneficios de la nube y ayuda a respaldar las iniciativas de modernización adicionales, como la contenedorización, la adopción de microservicios o la restructuración.

En algunos casos, el realojamiento es el último paso para las aplicaciones heredadas que no requieren actualizaciones importantes. En otros casos, sirve como etapa de transición antes de una transformación más profunda.

Realojamiento vs. cambio de plataforma vs. refactorización

Hay varias formas de abordar la modernización de las aplicaciones, entre las que se incluyen:

  • Realojamiento: trasladar una aplicación a la nube (con cambios mínimos)
  • Cambio de plataforma: hacer algunos cambios optimizados para la nube, como pasar de una base de datos autogestionada a un servicio en la nube gestionado, sin alterar el código principal de la aplicación
  • Refactorización: rediseño o reescritura de una aplicación para aprovechar las funciones nativas de nube, como contenedores o informática sin servidor

Cada enfoque tiene sus ventajas y desventajas en cuanto a tiempo, costo y complejidad. El realojamiento ofrece velocidad y simplicidad, lo que lo transforma en una opción práctica para las organizaciones que buscan reducir el riesgo y acelerar la adopción de la nube.

¿Cuáles son algunas de las mejores prácticas para el realojamiento?

El realojamiento es algo más que mover el código de la aplicación de un servidor en un centro de datos a una máquina virtual en la nube. Es un proceso estructurado que incluye planificación, automatización, pruebas y escalamiento, no solo de los recursos informáticos, sino de toda la infraestructura de la aplicación.

Evaluación y planificación

Antes de realojar una aplicación en la infraestructura de la nube, tómate un tiempo para comprender qué se debe mover y cómo interactúa con otros sistemas.

Identificación de las dependencias de las aplicaciones

Durante la fase de descubrimiento, trazar los componentes clave de la aplicación y las dependencias, como un binario de aplicación monolítica (una única unidad desplegable que contiene toda la lógica, como un JAR, WAR o EXE), una capa de presentación renderizada por el servidor (p. ej., JSP, ASP.NET), la lógica empresarial integrada directamente en la aplicación y una base de datos relacional, a menudo un único RDBVS como Oracle, SQL Server o MySQL.

Considera también las dependencias comunes, que incluyen los servidores de aplicaciones (como Tomcat, WebLogic o IIS), las API externas, los sistemas de autenticación, las reglas de red, las direcciones IP o los puntos finales codificados, y cualquier otro servicio conectado. Esta lista no es exhaustiva, pero toma muchos de los elementos típicos que se encuentran en las arquitecturas de aplicaciones tradicionales.

Este paso ayuda a evitar sorpresas durante la migración y garantiza que se tengan en cuenta todas las partes móviles.

Evaluación de las necesidades de la infraestructura en la nube

Una vez asignadas las dependencias clave, evalúa lo que la aplicación necesita en su nuevo entorno:

  • Requisitos de proceso y almacenamiento
  • Sensibilidad a la latencia
  • Objetivos de la copia de seguridad y la recuperación
  • Zonas de disponibilidad regionales
  • Expectativas de ancho de banda en picos de carga

Este es también el momento de evaluar la pila de soporte: DNS, CDN, Protección DDoS y Observability. El realojamiento también es una oportunidad para modernizar esas capas.

Elección del proveedor de nube adecuado

Los proveedores de servicios en la nube desempeñan un rol importante en el éxito a largo plazo de las iniciativas de migración. Si bien el precio de los procesos suele ser el primer punto de comparación, hay que profundizar más.

Al evaluar a los socios de servicios de nube o de modernización, es importante buscar un proveedor que ofrezca un conjunto integral de funciones para respaldar el rendimiento, la seguridad y la eficiencia operativa. Esto incluye servicios de backend escalables que pueden crecer con la demanda sin generar picos de costos impredecibles, así como funciones de seguridad integradas a nivel de red como firewalls de aplicaciones web (WAF), protección DDoS y controles de acceso detallados.

Una red global de distribución de contenido (CDN) también es esencial para garantizar una distribución rápida y uniforme de recursos estáticos y dinámicos a usuarios de todo el mundo. Los proveedores deben ofrecer servicios de DNS integrados que no solo sean rápidos y fiables, sino también programables para admitir la automatización y la resiliencia.

Por último, las herramientas de observabilidad nativas, o la integración perfecta con las pilas de registro y supervisión existentes, son fundamentales para mantener la visibilidad y el control a medida que las aplicaciones escalan y evolucionan.

Pruebas y validación posteriores a la migración

Una migración es exitosa cuando la aplicación se ejecuta de forma correcta, segura y eficiente. Después del realojamiento, es importante comparar los indicadores clave de rendimiento, como la latencia y el rendimiento, con la referencia local para garantizar que la aplicación cumpla con las expectativas del usuario. La ejecución de pruebas de carga ayuda a simular la demanda del mundo real y a descubrir problemas que podrían no aparecer en condiciones normales. Revisar los registros y las alertas también es fundamental para identificar anomalías o configuraciones erróneas que podrían afectar la fiabilidad o la seguridad.

Más allá del rendimiento de la aplicación, los equipos también deben validar los componentes de la infraestructura de soporte, que incluye la resolución de DNS, el desempeño de la CDN, las configuraciones de TLS y las reglas de firewall, para confirmar que funcionan según lo previsto en el nuevo entorno.

Como parte del proceso de transición, la dirección del tráfico desempeña un rol clave para garantizar una transición sin problemas y sin tiempos de inactividad para el cliente. Técnicas como el cambio de tráfico basado en DNS, el equilibrio de carga ponderado y las implementaciones canary ayudan a migrar gradualmente a los usuarios del entorno local a la versión de la aplicación en la nube. Esto permite que los equipos supervisen el desempeño del sistema en tiempo real, identifiquen problemas a tiempo y reviertan los cambios si es necesario, sin interrumpir la experiencia del usuario final. La coordinación minuciosa de los TTL de DNS, las comprobaciones de estado y la cobertura de la supervisión es esencial para la continuidad del servicio durante esta fase crítica.

Supervisión y escalamiento de los recursos en la nube

El escalamiento debe ser proactivo. Considera los grupos de ajuste de escala automático o las opciones sin servidor si es apropiado para las cargas de trabajo actuales. Y supervisa el gasto en la nube: la optimización de costos en la migración a la nube no se detiene después de que se lanzan las aplicaciones en la nube.

Después de la migración, la observabilidad continua puede ayudar a:

  • Detecta los problemas de rendimiento de forma temprana
  • Gestionar la utilización de recursos
  • Identificar eventos de seguridad

Implementa la supervisión nativa de nube o de terceros para admitir:

  • Métricas de la aplicación (CPU, memoria, errores)
  • Flujo de red y anomalías de tráfico
  • Rendimiento DNS y frecuencia de aciertos de caché
  • Efectividad de la CDN (caché perimetral vs. extracción de origen)

Cuándo realojar las aplicaciones

El realojamiento suele ser ideal cuando las organizaciones necesitan migrar rápidamente, evitar un gran esfuerzo de desarrollo o ampliar la vida útil de un sistema heredado. También puede ser la opción ideal para las organizaciones que buscan reducir la dependencia de la infraestructura física y al mismo tiempo iniciar una transformación más amplia de la infraestructura informática.

Escenarios ideales para el realojamiento

El realojamiento es más eficaz en casos donde las organizaciones tienen aplicaciones heredadas estables pero costosas cuyo mantenimiento local se está transformando en una carga. También es una opción ideal cuando es necesario salir rápidamente de un centro de datos, o cuando la prioridad es migrar a la nube con una interrupción mínima del código base de la aplicación existente.

Para los equipos que planifican iniciativas de modernización más amplias en el futuro, el realojamiento puede servir como un primer paso estratégico, ya que permite cambios fundamentales hoy y al mismo tiempo conserva la flexibilidad para futuras refactorizaciones. En estos casos, el realojamiento ayuda a ampliar el valor de las aplicaciones heredadas sin necesidad de reescrituras inmediatas, lo que permite ganar tiempo para seguir modernizándose cuando la organización esté preparada.

Factores comerciales y técnicos que influyen en el realojamiento

Al evaluar el realojamiento como camino hacia la modernización de las aplicaciones, debes tener en cuenta lo siguiente:

  • Tiempo de llegada a la nube: la rapidez con la que la organización necesita migrar las aplicaciones a un nuevo entorno
  • Restricciones presupuestarias: si los recursos financieros actuales permiten las iniciativas de realojamiento o preparan el escenario para las iniciativas de cambio de plataforma o refactorización en el futuro
  • Continuidad operativa: la tolerancia de la organización a posibles interrupciones del servicio durante la migración
  • Dotación de personal: disponibilidad de las habilidades internas necesarias para respaldar iniciativas de modernización más profundas

El realojamiento ayuda a gestionar el riesgo y las limitaciones de recursos al proporcionar una ruta a la nube relativamente fácil.

Optimización de costos en la migración a la nube

El realojamiento puede ofrecer una optimización de costos a corto plazo en la migración a la nube al reducir los costos de licencia y mantenimiento de hardware, los gastos generales de los centro de datos y el tiempo de aprovisionamiento de la infraestructura. Sin embargo, el realojamiento por sí solo puede no optimizar por completo los costos a largo plazo. Sin la refactorización o el cambio de plataforma, es posible que las aplicaciones no utilicen las eficiencias nativas de nube, como el escalamiento automático, los servicios sin servidor o los servicios gestionados.

En el corto plazo, las organizaciones pueden lograr una rápida rentabilidad si eliminan los gastos de capital y la necesidad de infraestructura física. Sin embargo, en el largo plazo, para lograr una verdadera rentabilidad se requiere una optimización más profunda, como ajustar el uso de procesos, redimensionar las instancias y desacoplar los servicios monolíticos para mejorar la escalabilidad y la asignación de recursos.

Gestión de los gastos en la nube posteriores a la migración

Si bien el realojamiento puede reducir algunos riesgos de seguridad, como la dependencia de la aplicación de parches a la infraestructura vulnerable y obsoleta, también genera otros nuevos. Las aplicaciones que estaban seguras en un entorno local controlado podrían quedar expuestas en un entorno de nube menos controlado, a menos que se tomen medidas para protegerlas adecuadamente a través de una plataforma de seguridad nativa de nube.

El costo es otra consideración clave. Sin una gestión proactiva, las aplicaciones realojadas pueden generar facturas de servicios en la nube más altas de lo esperado. Por ejemplo, las tarifas de salida (cargos por sacar los datos del entorno de un proveedor de servicios en la nube) pueden acumularse rápidamente, especialmente para las aplicaciones con un uso intensivo de datos.

Para evitar costos inesperados después de migrar a la nube, las organizaciones deben adoptar un enfoque proactivo para gestionar los recursos y los costos. Esto incluye supervisar de cerca las tendencias de uso para identificar patrones y anomalías, y establecer políticas claras de administración de costos para definir la propiedad y la responsabilidad. La automatización de tareas como el redimensionamiento y la programación de recursos infrautilizados ayuda a reducir el desperdicio y a optimizar el gasto. Además, la configuración de presupuestos y alertas en las plataformas en la nube ofrece señales de alerta temprana antes de que los costos superen los umbrales aceptables, lo que ayuda a los equipos a mantener el control a medida que los entornos escalan.

Consideraciones de seguridad en la migración

Cada estrategia de migración debe incorporar la seguridad como un aspecto central durante todo el proceso, lo que incluye:

Importancia de la preparación antes del realojamiento

Un realojamiento exitoso exige algo más que copiar una aplicación a la nube. Las transiciones mal ejecutadas pueden dar lugar a lo siguiente:

  • Experiencias de usuario interrumpidas
  • Tiempo de inactividad durante la propagación de DNS
  • Problemas de latencia o disponibilidad
  • Dependencias omitidas o configuración obsoleta

Un problema común: los clientes o socios pueden depender de direcciones IP estáticas vinculadas al anterior centro de datos de una aplicación. Si esas direcciones IP no se actualizan, el tráfico falla. Las organizaciones deben prever estas dependencias y coordinar de manera proactiva con las partes interesadas para garantizar una transición sin problemas.

Un realojamiento bien planificado incluye lo siguiente:

  • Planes de comunicación con clientes y socios
  • Entornos de prueba y opciones de reversión
  • Documentación clara de los cambios en los puntos de conexión o la infraestructura

Cómo Cloudflare apoya la modernización de las aplicaciones

Cloudflare acelera la modernización de las aplicaciones mediante la transformación de videos e imágenes, el equilibrio de carga de las aplicaciones y la resolución de DNS a nivel global para lograr un rendimiento rápido y confiable. La protección automatizada protege contra bots, DDoS y ataques zero-day, mientras que la observabilidad integrada garantiza el cumplimiento normativo en todos los entornos de nube. Con estas funciones, Cloudflare fortalece cada capa de la pila de aplicaciones para lograr una modernización segura, de alto rendimiento y preparada para el futuro.

Más información sobre la modernización de aplicaciones.