Outre le projet « Monterey » qui vise à déporter bien des fonctionnalités de l’hyperviseur sur des SmartNICs pour libérer davantage de temps CPU aux Workloads, VMware planche également sur le portage de ESXi sur ARM.

Au cœur de la plateforme de virtualisation vSphere trône un hyperviseur connu sous le nom de ESXi. Ce dernier a été pensé et conçu pour les processeurs Intel. Mais depuis quelque temps, VMware repense cette fondation pour un monde xPU.

Parmi les différents efforts de développement en cours, celui consistant à porter ESXi sur processeurs ARM 64 bits a été officialisé en février 2020. Répondant au nom de « ESXi-ARM Fling », ce portage s’est concrétisé en octobre 2020 par une première version « test drive », non officiellement supportée, et destinée aux expérimentateurs et développeurs.

Pour VMware, ce portage est devenu une priorité. D’abord parce que l’entreprise en a besoin pour proposer une version Apple M1 de son logiciel VMware Fusion pour macOS. Ensuite, parce que les processeurs ARM destinés aux serveurs commencent à se multiplier sur le marché et la technologie séduit les DSI technophiles. Enfin, parce que les serveurs à processeurs ARM commencent à se multiplier chez les fournisseurs de Cloud et que VMware ne peut laisser le champ libre aux hyperviseurs concurrents (comme KVM et dérivés) sur ce type d’architecture.

Cette semaine, VMware a dévoilé une nouvelle version de ESXi-ARM Fling, la version 1.4. Celle-ci n’est toujours pas destinée à un déploiement en production. Elle reste destinée aux expérimentateurs en tous genres. Elle supporte officiellement les Raspberry Pi 4 et Pi 400 ainsi que les processeurs d’Ampere et les cartes de développements de NVidia Tegra Xavier AGX et Tegra Xavier NX (des APU ARM avec GPU).

La version 1.4 officialise le support du NVMe mais aussi le support des serveurs bi-socket et notamment ceux s’appuyant sur le design « Mt Jade » d’Ampere. Ces serveurs embarquent deux processeurs Ampere Altra 80 cœurs, délivrant donc 160 cœurs. Toutefois, ESXi-ARM ne gère pas encore NUMA. Les machines virtuelles ne peuvent donc s’étendre sur les deux processeurs simultanément : autrement dit, même sur les machines bi-sockets, les VMs sont pour l’instant limitées à 80 cœurs max (en attendant l’introduction prochaine des Altra 128 cœurs), ce qui reste déjà très raisonnable. Bien sûr, ESXi-ARM n’est en réalité qu’un « work in progress » et le support NUMA est attendu pour de prochaines versions.

Parallèlement, VMware poursuit ses autres explorations technologiques pour faire évoluer ESXi. Outre les efforts déjà réalisés pour intégrer Kubernetes au cœur de vSphere 7 (et continuer de faire évoluer ESXi dans un monde mixant VMs et Containers), VMware intensifie sa R&D autour de son « Projet Monterey ». Celui-ci vise à décharger les CPU des serveurs executant ESXi de bien des tâches liées à la virtualisation en profitant de la puissance embarquée dans les cartes SmartNICs des serveurs. Or les SmartNICs embarquent des processeurs ARM. D’où l’importance d’accélérer le portage d’ESXi sur ARM pour continuer de faire avancer « Project Monterey ».