Red Hat industrialise les conteneurs

Red Hat annonce une distribution dédiée à l’exécution des conteneurs, Atomic Enterprise Platform, et lance un environnement, OpenShift 3.1, qui se base dessus pour rendre les développeurs autonomes.

Les conteneurs sont désormais aptes à une utilisation en entreprises. Après avoir créé le squelette de ces machines virtuelles allégées en 2014 sous le nom de code Atomic Project, puis avoir adopté le format Open Conteneur (OCF), Red Hat vient d’annoncer Atomic Enterprise Platform, une solution complète qui sert à déployer, administrer et orchestrer des conteneurs. « Avec notre Linux RHEL 7, il était déjà possible de lancer des conteneurs aux côtés des machines virtuelles standard. Mais le marché nous a réclamé une solution dédiée aux conteneurs, afin de pouvoir déployer massivement des applications en micro-composants. Sur un même serveur, nous pouvons ainsi exécuter 100 à 1000 fois plus de conteneurs que de machines virtuelles », explique Hervé Lemaître en charge de la stratégie commerciale chez Red Hat.

Plus légers et plus faciles que les machines virtuelles 

Contrairement à une machine virtuelle qui embarque sa propre copie du système d’exploitation, un conteneur n’héberge qu’une application avec les bibliothèques nécessaires à son fonctionnement, ce qui le rend bien plus léger. Il puise ses fonctions système dans l’OS de la machine hôte (physique ou virtuelle), lequel sert à tous les conteneurs.

« Outre la légèreté, l’intérêt du conteneur est sa portabilité : une application avec des bibliothèques Red Hat pourra fonctionner par dessus un Linux Debian et vice-versa », indique Hervé Lemaître qui précise que cette technologie permet de déployer sans contrainte des applications sur différentes infrastructures. Typiquement dans le datacenter de l’entreprise d’abord, puis sur un Cloud externe quelconque. En pratique, sans le fardeau d’un système serveur à préparer à chaque fois qu’il publie une application, le développeur est autonome dans la mise en production. Il peut ainsi mettre à jour plus souvent son application, la découper en outils indépendants selon la chronologie des fonctions à implémenter et être globalement plus réactif quant aux demandes des métiers qui évoluent au fil du temps. C’est ce que l’on appelle le mode DevOps, qui découle du fonctionnement dit agile.

Une solution universelle qui mélange Linux et Windows

Pour l’heure, seules les applications Linux peuvent fonctionner en conteneurs OCF. Néanmoins, Red Hat et Microsoft ont simultanément annoncé la prise en charge par RHEL de plusieurs composants de .Net en Open source. Selon des informations obtenues par LeMagIT.fr, ceux-ci autoriseraient en 2016 l’hébergement d’applications Windows dans des conteneurs Atomic exécutés au dessus d’un hôte Linux. Dans un premier temps, l’accord entre les deux éditeurs garantit surtout l’exécution de conteneurs Linux dans le Cloud Azure de Microsoft. « Ces composants .Net en Open Source n’ont rien à voir avec feu le projet Mono (de Suse, concurrent de Red Hat, ndr) qui visait à apporter la compatibilité Windows à Linux par retro-engineering. Ici, c’est Microsoft lui-même qui met les vrais composants applicatifs de Windows en Open Source. La compatibilité sera donc garantie », assure Hervé Lemaître.

L’Open Conteneur Format (OCF), sous la tutelle de l’Open Conteneur Initiative (OCI) et avec le soutien de la Linux Foundation, est censé incarner depuis cet été le standard en matière de conteneurs. Il succède aux formats Docker et CoreOS appc qui se faisaient initialement concurrence. Il est supporté par les éditeurs Microsoft, Red Hat et VMware, ainsi que par les clouds publics de Google, Microsoft, AWS et IBM. Pour leur part, Suse et Canonical privilégient le format LXC historique de Linux, par le biais d’un hyperviseur maison. A date, seul Red Hat a annoncé une distribution qui revendique l’exécution de conteneurs OCF. Tous les autres éditeurs Linux, ainsi que Docker et CoreOS, proposent d’exécuter des conteneurs au format Docker 2.0, ce qui serait techniquement à peu près la même chose, mais sous un nom plus connu.

Outre le Linux de base et l’hyperviseur servant à exécuter les conteneurs, Atomic Enterprise Platform dispose d’un connecteur pour être piloté depuis CloudForms, l’outil d’administration tout à la souris et orienté métier des Linux de Red Hat. Sans CloudForms, les conteneurs se pilotent grâce au jeu de commandes Kubernetes de Google. De plus, Red Hat intègre dans sa solution un système de signature qui permet d’authentifier une application en conteneur et l’autorise, par exemple, à s’exécuter sur Azure.

OpenShift 3.1, l’environnement de production

 Vendu de manière autonome dans les semaines à venir, Atomic Enterprise Platform sera le compagnon idéal d’OpenShift 3.1, la nouvelle solution PaaS de Red Hat concurrente, par exemple, de Cloud Foundry de Pivotal que Suse utilise désormais. OpenShift est censé permettre aux développeurs d’écrire leurs applications et de les mettre en ligne sans l’intervention d’un administrateur système. Il comprend l’environnement de développement (basé sur Eclipse), les composants applicatifs (PHP, Perl... ainsi que des connecteurs vers JBoss, le serveur d’application Java de Red Hat), la moulinette pour mettre l’application en conteneur et la poster sur un repository avec le protocole GIT. De là, il sera possible de récupérer le conteneur pour l’exécuter sur Atomic Enterprise Platform ou RHEL 7. A noter que Atomic Enterprise Platform peut lui-même être une machine virtuelle exécutée par RHEL, Microsoft Hyper-V ou encore VMware ESX.

Tout juste lancée, OpenShift 3.1 apporte un bus de connexion JBoss Fuse entre applications, un moteur JBoss BRMS de règles métier (pour changer le comportement des applications selon un besoin du marché, comme un changement de calcul d’un prix, par exemple, sans avoir à reprogrammer l’application), un moteur JBoss DataGrid de données partagées en mémoire entre tous les conteneurs et une ergonomie générale améliorée.

Selon Hervé Lemaître, OpenShift en version 3 serait déjà en production chez de grandes entreprises françaises, dont Amadeus ou AXA. « OpenShift sert à y fluidifier la mise en production des applications. Comme pour le Big Data, des petites équipes valident le produit sur des petits projets, puis elles intègrent d’autres équipes et la solution est adoptée de services en services au fur et à mesure. Ce phénomène devrait s’amplifier avec la version 3.1, puisque la nouvelle prise en charge d’OCP va permettre de déployer des clusters de conteneurs applicatifs sans nécessiter la mise en place d’une infrastructure dédiée », conclut-il. 

Pour approfondir sur Stockage de conteneurs