Reto
El Institut Obert de Catalunya (IOC) es el instituto de enseñanza a distancia del Departamento de Educación de la Generalitat de Catalunya, que pone en disposición de las personas una amplia oferta formativa que les permite estudiar de una manera flexible y adaptada a sus necesidades.
La Dirección del IOC quería aprovechar las ventajas del cloud público para mejorar la calidad y la escalabilidad de algunos de sus servicios. Los escogidos fueron los cuatro servicios relacionados con la Gestión Académica y la plataforma de Aprendizaje: el Portal web, el Campus, las Secretarías Académicas de los diferentes centros y el ePortfolio del estudiante.
En este contexto se nos planteó llevar a cabo este proyecto, que titulamos Proyecto de migración del servicio IOC a AWS, para aprovechar toda la experiencia previa satisfactoria que habíamos obtenido realizando la migración de otros servicios a la nube dentro del Departamento de Educación (ÀGORA, ODISSEA, etc.).
El nuevo servicio IOC tenía que disponer de una nueva arquitectura para poder adaptarse a:
- Las necesidades variables de carga del servicio (escalabilidad y coste).
- La calidad y el tiempo de respuesta del servicio (robustez, resiliencia y confiabilidad).
Proyecto
El objetivo final del proyecto era llevar a cabo una migración a AWS en modalidad Lift & Shift de los cuatro servicios del IOC (Portal, Campus, Secretarías y ePortfolio) con un mínimo de cambios en el software.
Para cumplir con este objetivo, desde IThinkUPC propusimos una estrategia de migración de los servicios del IOC a AWS, basada en las buenas prácticas de migraciones de servicios a la nube de AWS, que cuenta con las siguientes fases:
Fase 1. Analizar la conveniencia de migrar a AWS: en esta fase llevamos a cabo el asesoramiento necesario para escoger los servicios de AWS y diseñar la arquitectura que más se adecuara a las necesidades del IOC. Algunas de las tareas más relevantes fueron:
- Diseñar e implementar una arquitectura del servicio más adecuado a las necesidades reales del servicio y aprovechar toda la potencialidad de AWS sin cambios significativos en el software. En concreto, se usaron principalmente los siguientes servicios AWS: servidores EC2, almacenamiento EFS, bases de datos RDS Serverless y frontends en Auto-Scalling Groups (ASG).
- Analizar los costes de la nueva infraestructura en los diferentes perfiles de consumo identificados.
- Diseñar las adaptaciones necesarias del software.
- Identificar, planificar y ejecutar todas las POC (pruebas de concepto) necesarias, tanto técnicas como funcionales.
Fase 2. Trasladar los servicios a AWS: una vez validada la conveniencia y la viabilidad de la migración para abordar esta fase se decidió migrar primero en bloque los servicios Portal, Campus y ePortfolio y, justo a continuación, el servicio Secretaría. Algunas de las tareas más relevantes fueron:
- Crear la nueva infraestructura sobre AWS según el resultado de la Fase 1.
- Implementar las adaptaciones del software.
- Definir y validar la estrategia de migración hacia AWS.
- Hacer pruebas de migración de los cuatro servicios.
- Hacer pruebas de rendimiento de los cuatro servicios.
- Ejecutar la migración siguiendo la estrategia aprobada previamente.
Fase 3. Optimizar la plataforma IOC AWS: una vez los cuatro servicios estuvieron en marcha, seguimos monitorizando la infraestructura y sus costes y hemos identificado propuestas de optimización y reducción de costes de esta. El proceso de optimización debe ser un proceso constante después de la puesta en funcionamiento y en los años sucesivos.
Resultados
La nueva plataforma de servicios del IOC en la nube de AWS, administrada por IThinkUPC, tiene las siguientes ventajas:
- Capacidad de seguir creciendo en cuanto a volumen y nuevos servicios.
- Escalabilidad automática en función de la demanda.
- Reducción de los costes de mantenimiento.
- Adaptación a los nuevos estándares de integración continua.
- Mejora de la seguridad.