
Microsoft déploie de gros efforts afin de faciliter l'utilisation de Linux dans Azure
En 2001, Steve Balmer, alors PDG de Microsoft, affirmait que "Linux est un cancer". Balmer faisait référence au fait que la licence open source de Linux (General Public License) exige que tous les logiciels sur lesquels le noyau est construit soient également transformés en open source. À l'époque, il était loin de se douter que 20 ans plus tard, Linux deviendra la pierre angulaire d'une des infrastructures les plus critiques de Microsoft, sa plateforme de cloud computing Azure. Aujourd'hui, c'est Linux, et non Windows, qui est le système d'exploitation le plus utilisé sur Microsoft Azure, avec des chiffres parfois impressionnants.
Mais c'est la demande des clients, et non la sévère désapprobation de Richard Stallman, qui a permis au projet de Linus Torvalds d'occuper une place prépondérante dans Microsoft Azure. Dans le cadre d'une conférence donnée au sommet Open Source de la Fondation Linux, deux responsables du programme Microsoft Azure Linux Platforms Group, Jack Aboutboul et Krum Kashan, ont déclaré que Microsoft déploie aujourd'hui des efforts considérables pour que Linux fonctionne aussi bien que possible sur Microsoft Azure. « Linux est le système d'exploitation numéro un dans Azure aujourd'hui », a déclaré Jack Aboutboul.
L'équipe a expliqué qu'aujourd'hui, Microsoft en sait à peu près autant que n'importe qui sur la manière d'exploiter Linux à grande échelle. Plus de 60 % des offres Azure Marketplace sont basées sur Linux, ce qui représente environ 20 000 services au total, et plus de 60 % des cœurs de machines virtuelles sont construits sur Linux.
À ce jour, il existe des centaines de services Azure et basés sur Azure fonctionnant sur Linux, notamment le service Azure Kubernetes (AKS), OpenAI, HDInsight et de nombreux autres services de base de données. « Une grande partie de l'infrastructure qui alimente tout le reste fonctionne sur Linux », a déclaré Aboutboul.
Aboutboul précise : « il s'agit de différentes saveurs de Linux qui tournent un peu partout ». Pour faire fonctionner ces services, Microsoft maintient son propre noyau et en 2023, l'entreprise a lancé sa propre version de Linux, Azure Linux. En outre, lors de la conférence, l'équipe a déclaré qu'Azure Linux n'est qu'une petite partie de toutes les autres saveurs de Linux fonctionnant sur Azure, avec lesquelles Microsoft doit travailler pour assurer le support.
Microsoft prend en charge un ensemble de distributions Linux tierces sur Azure
Dans l'ensemble, il existe environ 20 000 progiciels SaaS (Software as a Service) tiers sur Azure Marketplace qui s'appuient sur une distribution Linux. Et lorsque les choses tournent mal, ce sont les ingénieurs du service Azure qui reçoivent les tickets d'aide. L'entreprise conserve un ensemble de distributions Linux approuvées, parmi lesquelles Red Hat Enterprise Linux, Debian, Flatcar, Suse, Canonical, Oracle Linux et CentOS (gérées par OpenLogic, et non par Red Hat).
Aboutboul a expliqué qu'une approbation ne signifie pas une recommandation, mais chaque distribution dispose d'une base d'utilisateurs dédiée. Une fois qu'une distribution est approuvée, Microsoft doit consacrer du temps à l'ingénierie pour s'assurer qu'elle fonctionne correctement au sein d'Azure. Microsoft établit une relation contractuelle avec le distributeur. Périodiquement, Microsoft rencontre ces entreprises pour les informer des changements à venir et des problèmes en cours.
Enfin, Microsoft déploie des efforts considérables pour s'assurer que les paquets sont mis à jour en temps voulu, par l'intermédiaire de l'infrastructure miroir Azure. « Nous voulons nous assurer que lorsqu'un utilisateur souhaite une mise à jour, celle-ci est disponible sur le même réseau que votre ordinateur », affirme Aboutboul. Au total, Microsoft reçoit environ 1 000 images par mois rien que de ces partenaires agréés. De nombreuses distributions ont plusieurs images.
Selon Aboutboul, le principal défi pour Microsoft a été le calendrier de publication. Chaque distribution a son propre cycle de publication. L'une d'entre elles, Oracle Unbreakable Linux, n'a même pas de calendrier établi. « Nous recevons un courriel nous informant de la sortie prochaine d'une version et nous paniquons pendant les trois jours qui suivent en essayant d'aligner toutes les exigences de ce qui doit être fait », explique Aboutboul.
Une fois qu'un client a démarré une distribution, il doit obtenir les mises à jour, certains clients choisissant l'option de mise à jour automatique. Par sécurité, Azure testera les mises à jour avant qu'elles ne soient appliquées aux machines virtuelles des utilisateurs, afin de s'assurer qu'elles n'endommagent pas les systèmes. Au fil du temps, l'entreprise souhaite normaliser ces routines de correctifs sécurisés dans ce que Aboutboul appelle le service "Azure Guest Patching Service" (AzGPS).
Microsoft développe également sa propre distribution Linux appelée Azure Linux
Après avoir utilisé Azure Linux en interne pendant deux ans et l'avoir exécuté en préversion publique depuis octobre 2022, Microsoft a finalement rendu sa distribution généralement disponible en mai 2023. Azure Linux est un système d'exploitation hôte de conteneur open source pour Azure Kubernetes Service (AKS), optimisé pour Azure et visant à faciliter l'utilisation des outils Microsoft par les développeurs pour déployer et gérer les charges de travail de conteneur.
En clair : Azure Linux est conçu pour être déployé dans le cloud et exécuter plusieurs conteneurs. Selon le responsable principal du programme, Jim Perrin, la nature légère de la distribution est un point clef. La distribution comprend une image principale de 400 Mo et 300 packages, ce qui, selon Microsoft, fonctionne bien pour les performances et la sécurité. Il a déclaré dans un billet de blogue l'année dernière que la sécurité était au centre des préoccupations.
Selon Microsoft, Kashan surveille en permanence le noyau en amont, c'est-à-dire le noyau en cours de développement actif qui sera la prochaine version de la branche stable. La société effectue sa propre construction toutes les 12 heures et publie les résultats de la validation dans la base de données d'intégration continue du noyau Linux. Microsoft construit son propre noyau, le noyau Azure-tuned, optimisé pour les performances et pour le matériel Azure.
Lors de son exposé, les ingénieurs de Microsoft ont expliqué qu'Azure Linux fait tourner des millions de machines virtuelles à travers des milliers de SKU, chaque SKU répondant à une configuration spécifique ou à une optimisation des charges de travail : GPU, stockage et calcul haute performance. Toutes les combinaisons (couvrant 40...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.