L'hyperviseur Open Source Xen se prépare au jour où les processeurs ARM pourront faire tourner les machines virtuelles. « La virtualisation sous ARM présente un grand nombre d'avantages, à la fois pour les micro serveurs et les systèmes intégrés », a déclaré George Dunlap, l'un des contributeurs au projet Xen.

Les versions précédentes de Xen pouvaient déjà fonctionner sur des puces ARM, mais cette version est la première à offrir une ABI stable. Cette stabilité de l'interface binaire d'application, qui fait le lien entre l'hyperviseur, le système d'exploitation et le matériel sous-jacent, est un gage de compatibilité future. « Tout client capable de tourner sous ARM dans Xen 4.4 pourra tourner sur les futurs hyperviseurs Xen », a déclaré le contributeur.

Microsoft et VMware regardent aussi du coté d'ARM

Xen est l'un des principaux hyperviseurs utilisés aujourd'hui pour la virtualisation des serveurs à côté de VMware ESX, Microsoft Hyper-V et de l'hyperviseur libre Red Hat KVM (Kernel-based Virtual Machine). Parmi ces concurrents, KVM est le seul à proposer une version qui fonctionne avec des serveurs ARM. Mais dans leurs laboratoires, Microsoft et VMware sont peut-être aussi en train de mettre au point des produits de virtualisation compatibles avec les systèmes ARM. Dans ce travail autour de ARM, le projet Xen profite de la contribution du Linaro Enterprise Group (LEG) qui s'emploie à adapter l'architecture ARM aux serveurs. « Les utilisateurs de Xen devraient trouver beaucoup de similitudes entre l'interface de commande en ligne et la pile d'outils sous ARM et leurs équivalents x86 », a déclaré George Dunlap. Par ailleurs, pour la première fois, Xen 4.4 peut également être utilisé pour créer des machines virtuelles 64 bits compatibles ARMv8, la prochaine génération de processeurs ARM, même si pour l'instant on ne trouve encore aucun processeur de ce type dans le commerce.

D'autres entreprises comme Microsoft et Hewlett-Packard étudient la possibilité de mettre des processeurs ARM dans des serveurs, notamment pour gérer des tâches qui demandent peu de ressources, comme servir des pages web ou des services cloud individuels, tout en apportant une meilleure efficacité énergétique. « Ces hyperviseurs pourraient également être utiles pour les systèmes intégrés», a ajouté le contributeur. « Chaque fois que vous voulez cloisonner des environnements proprement et en toute sécurité, la virtualisation est, à n'en pas douter, la meilleure solution », a déclaré George Dunlap. Par exemple, pour un système embarqué dans un véhicule, il serait préférable de séparer les fonctions essentielles, comme l'affichage de la vitesse, des autres fonctions, de sorte que, si un programme tombe en panne, il ne met pas en péril d'autres programmes critiques. « Si l'on a besoin de créer des cloisonnements, alors la virtualisation est la réponse la plus évidente », a insisté le contributeur.

Plusieurs milliers de VM par serveur

La version x86 de Xen 4.4 comporte aussi quelques améliorations. En particulier, Xen 4.4 n'est plus limité à 200 machines virtuelles par serveur unique. « Cette limitation ne posait pas de problème majeur jusqu'à récemment », a expliqué George Dunlap. « Mais, avoir la possibilité de créer des milliers de machines virtuelles sur un hôte unique est de plus en plus la norme», a-t-il ajouté. Par ailleurs, de plus en plus d'entreprises utilisent la technologie VDI (Virtual Desktop Infrastructure), qui permet de délivrer des milliers de postes de travail à des utilisateurs multiples. De plus, aujourd'hui, certains serveurs peuvent intégrer de 128 à 256 coeurs processeurs. Ce sont donc des matériels très adaptés pour faire tourner des milliers de machines virtuelles. Enfin, les derniers systèmes d'exploitation cloud, comme MirageOS et OSV, trouveraient aussi avantage à faire tourner des milliers de machines virtuelles sur chaque serveur. « Ces systèmes d'exploitation ont été conçus pour faire tourner des milliers de petites machines virtuelles avec chacune une tâche bien précise plutôt qu'un petit nombre de machines virtuelles polyvalentes », a déclaré le contributeur.

Autre nouveauté : dans cette version, Oracle offre en preview un nouveau mode de virtualisation rapide. Il élargit la paravirtualisation (PV) naturelle de Xen en permettant à la machine virtuelle de communiquer directement avec le matériel sans passer par la couche d'émulation qui peut ralentir les autres hyperviseurs. La version PV d'Oracle, appelée PVH, utilise les extensions de virtualisation matérielle natives des processeurs Intel x86 pour accélérer les appels système, les accès aux tables, les opérations de boot et I/O.