En ambientes tradicionales las empresas típicamente ejecutan las aplicaciones que soportan las operaciones de su negocio en servidores físicos o virtuales, para los cuales, las capacidades de computo, memoria y almacenamiento están soportadas por los componentes físicos instalados en el equipo.
Para una migración hacia un nuevo ambiente se deberán considerar para cada aplicación los recursos asignados, el nivel de utilización, el desempeño actual y los requerimientos específicos de negocio para dimensionar el servidor en el nuevo ambiente considerando sus requerimientos particulares.
Para lograr una experiencia de migración exitosa, te recomendamos que apoyarte en un socio de negocios AWS especializado en procesos de migración como lo es Andes Digital, y así guiarte en cada paso, garantizar que tus aplicaciones serán migradas siguiendo las mejores prácticas, de forma segura y con el mínimo riesgo para tu negocio.
Identificación de tus Requerimientos
Cada aplicación puede tener requerimientos diferentes, por lo cual, es recomendado analizar cada una de forma individual. Existen herramientas para determinar el uso actual de recursos y las interdependencias entre servidores, adicionalmente se recomienda identificar los requerimientos de negocio para definir la estrategia más adecuada de migración para cada servidor.
La estrategia recomendada para identificar los requerimientos es realizar las siguientes acciones:
- Determinar el uso actual de recursos. Las herramientas de migración ayudan a determinar el porcentaje de utilización de cada componente de computo durante un periodo representativo de un ciclo de negocio, lo cual, permitirá tener una recomendación de los recursos que deberán asignarse en el ambiente de nube para cada servidor.
- Identificar con el administrador del servidor cuales son las acciones de administración que ejecuta periódicamente. Las tareas periódicas que se ejecutan manualmente serán candidatas para ser instrumentadas como ejecución automática en el nuevo ambiente.
- Considerar con el responsable de la aplicación si existe alguna estrategia de negocio en plan que considere modificar las capacidades actuales asignadas.
- Distinguir las dependencias del servidor a servicios internos, externos y servicios que habilita. Se recomienda confirmar las dependencias identificadas el reporte de las herramientas de análisis.
- Reconocer la política de respaldo actual. Permitirá contar con una política de respaldos de referencia para definir la política del ambiente en la nube de AWS.
- Precisar los requerimientos de seguridad, para determinar los usuarios y aplicaciones con las que interactúa y cuál es el nivel de acceso requerido en cada caso.
- Identificar el tiempo máximo soportado fuera de línea de la aplicación para determinar los requerimientos de disponibilidad y la estrategia de migración más adecuada.
- Reconocer otros factores de la compañía que puedan influir en el proceso de migración como son decisiones sobre instalaciones, bienes inmuebles o cambios en acuerdos comerciales que afecten la infraestructura actual. Esto puede presionar para realizar la migración con el menor tiempo posible y ejecutar fases de optimización posteriormente en el ambiente de AWS.
Es importante destacar que estos datos son clave en implementaciones exitosas de migración de aplicaciones. Al trasladar los datos a la nube se deberá identificar el origen, el servicio destino a donde los serán migrados, los recursos de red disponibles y garantizar la seguridad de los mismos durante el proceso de migración.
AWS ofrece una amplia variedad de servicios y herramientas para migrar los conjuntos de datos, ya sean archivos, bases de datos, imágenes de máquinas, volúmenes de bloques o incluso copias de seguridad en cinta. Con base en el análisis de sus necesidades particulares se deberá definir la estrategia más adecuada para migrar tus aplicaciones e información.
Identificación de la Estrategia de Uso de Servicios de Nube
En la nube existen diferentes opciones de servicios que le pueden resultar intimidantes. Lo más adecuado es identificar tus requerimientos y objetivos de negocio actuales, para definir una estrategia de adopción de nube que le permita alcanzar los objetivos en el corto plazo y tener una ruta definida para las opciones de servicios que le pueden ayudar optimizar los procesos actuales o apoyar en el crecimiento del negocio en el futuro.
Con respecto a los servicios de computo, el servicio de Amazon EC2 proporciona una amplia selección de tipos de instancias para uso general, optimizadas en procesamiento, memoria y almacenamiento con varios tamaños para elegir el tipo de instancia más adecuada a la carga de trabajo y que represente la mejor relación de costo-beneficio. Se recomienda comenzar inicialmente con el tipo de instancia identificado en la fase de análisis y eventualmente sea ajustado de acuerdo al desempeño observado.
Para ejecutar servidores virtuales en la nube de AWS existen actualmente los siguientes modelos de compra:
Bajo Demanda
Con las instancias bajo demanda pagarás por la capacidad utilizada, sin tener un compromiso de contrato a largo plazo o pago inicial. Podrás aumentar o disminuir recursos e incluso cancelar el servicio en el momento que lo decidas.
Este esquema de pago es el recomendado en la fase inicial, posteriormente podrá ajustar el consumo de recursos cuando las cargas de trabajo sean estables y cambiar a otro esquema con mejor opción de precio
Instancias Spot
Son instancias EC2 no utilizadas y disponibles que podrás solicitar y te ayudarán a reducir los costos de Amazon EC2 considerablemente.
Este tipo de instancias es recomendado para ejecutar cargas de trabajo temporales, que permiten ser iniciadas, ejecutan procesos finitos y eventualmente pueden ser suspendidas en el momento que la instancia sea reclamada por el servicio de EC2.
Planes de Ahorro
Es un modelo de precios flexible que ofrece precios económicos por el uso del servicio de computo, a cambio de un compromiso por una cantidad constante de uso durante el término de 1 o 3 años.
Este modelo de precio es el más adecuado cuando se tiene un consumo identificado estable y se desea optimizar el precio del servicio, podrá cambiar los tipos de instancia y pagar por el consumo excedente que se genere cuando lo requiera.
Instancias Reservadas
Ofrecen una reducción costos de Amazon EC2 con compromiso de una configuración de instancia específica, incluido el tipo de instancia y la región, por un período de 1 o 3 años.
Esta opción garantiza una reserva de la capacidad solicitada y se recomienda para aplicaciones con estado constante que le permitan establecer un compromiso a un plazo de 1 o 3 años.
Servidores Dedicados
Pagas por un servidor host físico dedicado exclusivamente a ejecutar instancias de máquinas virtuales y utilizar tus propias licencias de software por conector, por núcleo o por máquina virtual para reducir costos. Esta opción te permitirá utilizar tus licencias existentes con restricción de software enlazado al servidor ayudando a reducir costos.
Podrás utilizar la combinación de modelos de compra que más se adecue a tus necesidades para maximizar la inversión en el servicio.
Almacenamiento
Para almacenamiento de la información, el servicio Amazon EBS te permitirá crear volúmenes de almacenamiento y asignarlos a instancias de Amazon EC2. Existen varias opciones que le permitirán optimizar el rendimiento del almacenamiento y los costos de su carga de trabajo de acuerdo a sus necesidades.
El servicio Amazon EBS tiene un esquema de pago por uso que puede ser ajustado de acuerdo a la demanda y también puede ser modificado el tipo de almacenamiento para optimizar el desempeño de acuerdo a sus necesidades.
Recomendaciones de Arquitectura
En una infraestructura tradicional existen diferentes componentes relacionados con un servidor de forma directa o indirecta. Se recomienda identificar el ecosistema actual y los nuevos requerimientos de negocio para considerarlos en diseño de la solución final esperada, con la finalidad de definir una arquitectura escalable que le permita ir adicionando servicios a la solución sin afectación a los servicios existentes definidos en etapas previas.
En la nube es más flexible modificar la configuración de los servicios, sin embargo, para tener una mejor experiencia de sus usuarios se recomienda establecer estrategias que maximicen la disponibilidad de sus aplicaciones, siendo la mejor estrategia es iniciar considerando el escenario final esperado.
Los principales aspectos a considerar son:
Seguridad
Implementar una política del mínimo privilegio para cada perfil de usuario y/o sistema, con la finalidad de limitar el acceso y proteger su información de agentes externos e internos.
Infraestructura Como Código
Modelar el conjunto de recursos relacionados de AWS y terceros para ser aprovisionados de manera rápida y consistente, facilitará la administración a lo largo del ciclo de vida, contarás con documentación los servicios utilizados y tendrás la opción de generar nuevos entornos equivalentes.
Observabilidad
En la nube de AWS existe una amplia variedad de servicios para monitorear y observar el comportamiento de las aplicaciones. Se recomienda implementar los mecanismos necesarios para notificar incidentes y automatizar las acciones de remediación que permitan identificar el desempeño de las aplicaciones y reducir la intervención humana.
Tolerancia a Fallos y Alta Disponibilidad
En función de la importancia de la disponibilidad de las aplicaciones para el negocio, se deberá determinar la arquitectura más adecuada para cumplir los requerimientos, teniendo en consideración que mantener la máxima disponibilidad posible significará una mayor inversión por la redundancia de componentes.
La estrategia mínima recomendada es implementar una política de respaldos y un plan de recuperación verificable que le permita recuperar la operación de sus servicios en un caso de falla.
Optimización de Recursos
AWS cuenta con herramientas que le notificarán recomendaciones de optimización de recursos, lo cual, te permitirá optimizar el costo y desempeño de tus aplicaciones.
Será importante analizar periódicamente el consumo de recursos para determinar acciones concretas que permitan optimizar los costos.
Preferencia por Uso de Servicios Gestionados
En AWS existen opciones de servicios que le permiten enfocarse en habilitar la lógica de su negocio y delegar la administración de los recursos de computo a AWS, como es el caso de las bases de datos, el servicio de RDS le permitirá configurar, utilizar y escalar una base de datos, sin tener que administrar los recursos de bajo nivel que la habilitan.
Plan de Migración
Existen varias opciones disponibles para realizar el proceso de migración de un servidor en sitio a un servidor virtual en la nube de AWS, las acciones generales a realizar son:
Preparación
- Análisis de aplicaciones: Identificar las aplicaciones de negocio, dependencias y requerimientos.
- Especificación de arquitectura de la solución: Especificar la arquitectura de la solución requerida para habilitar los servicios a migrar.
- Implementación de la arquitectura de nube: Habilitar los servicios de bajo nivel y configuraciones requeridas en el ambiente de AWS.
- Definir las fases de migración: Definir los grupos de servidores a migrar en cada fase.
- Especificar el plan técnico de migración de cada servidor: Definir el plan de migración específico para cada servidor de acuerdo a sus requerimientos particulares.
- Especificar el plan de validación de servicios: Tiene el propósito de especificar el plan de pruebas que deberá ser ejecutado para verificar la funcionalidad correcta de las aplicaciones en el nuevo ambiente.
- Implementación de pruebas de concepto: En caso de incorporar nuevos servicios a la solución, requerir verificar el desempeño de las aplicaciones en el nuevo ambiente o realizar pruebas para completar la especificación del plan de migración se recomienda instrumentar las pruebas de concepto necesarias que le permitan validar los servicios de AWS que desea utilizar.
Migración
- Habilitar la réplica de datos hacia AWS: Se habilita la configuración requerida para la transferencia hacia AWS.
- Transferencia inicial: Se inicia la transferencia de información.
- Suspensión de servicio: Se bloquea el acceso a los usuarios para migrar las aplicaciones a partir de un punto consistente.
- Transferencia de final: Se transfieren los cambios ocurridos después de la transferencia inicial.
- Configuración de servicios en el ambiente AWS: Se habilita la configuración final requerida en el nuevo ambiente.
- Verificación de servicios: Se ejecutan las pruebas unitarias de verificación de servicios y hacer ajustes en caso requerido.
- Ejecución de plan de pruebas de usuario: Se ejecutan las pruebas de usuario que permitan obtener la certificación por parte de los usuarios finales del correcto funcionamiento de las aplicaciones migradas.
Post-Migración
- Habilitar instrumentación para respaldos, monitoreo, alertas y automatización. Esta actividad tiene el objetivo de habilitar la instrumentación necesaria para las tareas administrativas con el máximo nivel de automatización posible.
- Deshabilitar el servicio en el punto origen. Cuando se determine que las cargas de trabajo se ejecutan en el nuevo ambiente se recomienda desactivar y decomisar los servidores origen.
- Optimización de ambiente. Con base en el comportamiento observado de las aplicaciones y las recomendaciones de optimización de AWS podrá ajustar la configuración de sus servicios buscando mejoras en el desempeño o reducir el costo.
Conclusión
Existen herramientas que permitirán realizar el análisis de su ambiente y ejecutar un proceso de migración con la menor suspensión del servicio de sus aplicaciones.
Sin embargo, definir una estrategia de migración con referencia a una arquitectura que integre todos servicios esperados y un plan de migración que considere los requerimientos particulares de cada aplicación, garantizará un ambiente con bases sólidas, con funcionalidad verificada y automatización de tareas administrativas desde sus primeros pasos en su viaje a la nube.
Desde Andes Digital hemos ayudado a distintos clientes tanto con sus estrategias, así como con planes de acción y ejecución de migraciones desde sus datacenters tradicionales hacia la nube de Amazon. Contáctanos hoy y te mostramos porqué somos tu mejor opción para moverte hacia la nube pública de AWS.