ReInvent 2021 : AWS lance son kit de migration des mainframes en cloud
AWS Mainframe Modernization comprend une série d’outils pour convertir du code Cobol en Java et le publier sur des instances EC2 spéciales, ainsi qu’un accompagnement par Micro Focus.
AWS veut faire venir dans son cloud public les entreprises qui souhaitent moderniser leurs applications sur mainframes. À l’occasion de son événement ReInvent 2021, qui se tenait début décembre, l’hébergeur a dévoilé dans ce sens un nouveau service AWS Mainframe Modernization. Il permet soit de recompiler les applications en un exécutable compréhensible par le cloud, soit de convertir le code Cobol original en un code Java que les développeurs peuvent plus facilement moderniser.
« Les entreprises clientes de mainframes ont généralement deux approches pour faire entrer leurs applications à l’ère du cloud. Soit, elles les laissent telles quelles dans leurs datacenters et leur ajoutent des modules inédits qui, eux, s’exécutent en cloud. Soit, elles les réécrivent complètement sous la forme de containers. Dans les deux cas, cela prendra des mois, des années. Nous proposons aujourd’hui de réduire ce délai de deux tiers », a lancé sur scène Adam Selipsky, le nouveau patron d’AWS depuis que son prédécesseur, Andy Jassy, a pris la place de Jeff Bezos à la tête d’Amazon.
AWS Mainframe Modernization fait partie du catalogue de services Migration Acceleration Program d’AWS, qui consiste en une boîte à outils pour convertir les applications, et de l’accompagnement, généralement prodigué par des partenaires comme Accenture, Infosys ou Atos. Celui choisi ici par AWS est manifestement Micro Focus, un prestataire historique des mainframes.
AWS cite trois entreprises qui auraient d’ores et déjà lancé un chantier de migration de leurs applications mainframe vers son cloud : le New York Times, l’US Air Force et la chaîne de distribution Kmart en Australie.
L’enjeu d’apporter une dimension cloud aux applications Cobol
La modernisation en cloud des applications mainframes – le plus souvent des moteurs de gestion des clients et des actifs sur les marchés de la distribution, du tourisme, des médias ou de l’assurance – porte la promesse de rendre les traitements plus élastiques, de les interfacer avec des outils derniers cris, qu’il s’agisse d’apps sur smartphones, comme de sondes sur les lieux de production.
C’est sur cette transformation qu’IBM, le fabricant historique des mainframes, a axé toute sa stratégie concernant Red Hat. L’environnement OpenShift est livré avec des outils de développement semi-automatisés et un système d’exécution en containers qui sont censés assurer la conversion de l’Ancien Monde vers le monde moderne.
Pour autant, la tâche, qui reste essentiellement manuelle, est ardue. Les entreprises rechignent à mettre les mains dans des codes Cobol qui font leur office depuis des décennies et dont elles ne sont pas certaines de comprendre encore les subtilités. Et pourtant, il faut bien toucher au code, car il n’est compatible avec aucune des machines virtuelles Linux ou Windows qui forment les briques de base du cloud.
Une boîte à outils qui convertit et publie
Tout comme Red Hat, AWS propose d’alléger toute la partie mise en production. AWS Mainframe Modernization comprend ainsi un « pipeline DevOps » qui s’occupe de valider, tester et déployer chaque segment d’application en container, à savoir de l’intégration et de la fourniture en continu (CI/CD).
En amont, un module « Analyze » est censé dresser automatiquement la liste de toutes les dépendances avant la transformation. Cet outil peut aussi servir a posteriori à la maintenance des applications déployées en ligne, notamment concernant la performance des interactions entre les différents containers.
La pièce la plus importante du puzzle semble être l’environnement de développement graphique (appelé sobrement « Developer » dans la documentation qui accompagnait la présentation d’Adam Selipsky). C’est à partir de cet IDE que les développeurs pourront lancer les outils de conversion du code vers du Java. Outre le code Cobol, du PL/I, du JCL et du CICS sont supportés en entrée. Le code est ensuite exporté vers le pipeline DevOps qui le publie sur des instances EC2. Manifestement, celles-ci sont préconfigurées pour simuler un environnement mainframe.
En attendant que de la documentation soit officiellement fournie, LeMagIT a pu trouver une page sur laquelle AWS a commencé à regrouper les différents scénarios possibles de migration.