Le projet Cloud Hypervisor, un moniteur de machines virtuelles (VMM) open source écrit en Rust et destiné aux charges de travail modernes dans le cloud, a annoncé le lancement de sa version 48.0. Cette mise à jour regorge d’améliorations techniques, avec un accent particulier sur la sécurité, la performance et l’efficacité.
Soutenu par la Linux Foundation et par des organisations telles qu’Alibaba, AMD, Intel, Microsoft, ARM, ByteDance, Tencent Cloud ou Cyberus Technology, cet hyperviseur s’est imposé comme une alternative robuste pour exécuter des machines virtuelles Linux et Windows, grâce à sa conception minimaliste qui évite la plupart des problèmes de sécurité liés à l’émulation matérielle traditionnelle.
Qu’est-ce que Cloud Hypervisor ?
Cloud Hypervisor se définit comme un hyperviseur léger conçu pour le cloud computing, avec une orientation claire sur :
- Sécurité : codé en Rust avec un nombre minimal d’appareils émulés, réduisant ainsi la surface d’attaque.
- Vitesse : démarrage direct dans l’espace utilisateur en moins de 100 ms grâce au direct kernel boot.
- Compatibilité : support pour les invités Linux et Windows modernes, ainsi qu’une intégration avec des projets comme Kata Containers pour exécuter des conteneurs avec un niveau d’isolation accru.
- Efficience : consommation minimale de mémoire, idéale pour les déploiements densifiés.
- Portabilité : disponible sur architectures x86-64 et aarch64, avec un support étendu pour riscv64 dans cette dernière version.
- Opération : contrôle programmatique via une puissante API REST permettant d’automatiser le cycle de vie des machines virtuelles.
- Flexibilité : support pour les périphériques paravirtualisés et le passthrough de matériel physique, avec des fonctionnalités avancées comme la migration en direct pour déplacer des VMs entre hôtes sans interruption.
Principales nouveautés de la version 48.0
La dernière version de Cloud Hypervisor introduit plusieurs améliorations renforçant la performance ainsi que les capacités de compatibilité et de scalabilité :
- Support expérimental pour les dispositifs fw_cfg : permet de transmettre la configuration et des fichiers (kernel, paramètres, cartes mémoire, tables ACPI) de l’hôte vers l’invité.
- Support expérimental pour ivshmem : active la mémoire partagée entre machines virtuelles, utile dans des scénarios de haute performance et de coordination inter-VM.
- Démarrage via firmware sur riscv64 : en complément du démarrage direct du kernel, il est désormais possible de démarrer avec un firmware sur les hôtes riscv64.
- Augmentation de la limite de vCPUs sur x86-64/KVM : le maximum passe de 254 à 8 192 vCPUs, une avancée cruciale pour les charges de calcul intensives.
- Améliorations de la performance en virtio-blk pour les petits blocs : optimisation pour des tailles de bloc de 16 Ko ou moins, via des requêtes asynchrones par lots.
- Démarrage plus rapide des machines virtuelles : notable notamment dans des environnements avec un grand nombre de vCPUs.
- Documentation enrichie pour les invités Windows : inclut désormais des instructions pour faire fonctionner Windows 11, en plus de Windows Server.
- Suppression du support SGX : conformément aux annonces précédentes, le support pour Intel SGX est abandonné suite à sa dépréciation.
- Politique sur le code généré par IA : toute contribution contenant du matériel dérivé de modèles de langage génératif sera rejetée.
- Corrections importantes : notamment des améliorations des filtres seccomp pour glibc 2.42 et divers ajustements pour renforcer la stabilité.
L’importance de Rust et la philosophie minimaliste
L’adoption de Rust pour l’implémentation n’est pas anodine. Rust est réputé pour sa capacité à prévenir les erreurs de mémoire courantes en C/C++, responsables de nombreuses vulnérabilités historiques dans les hyperviseurs et systèmes de virtualisation.
La philosophie de Cloud Hypervisor est claire : moins c’est plus. En réduisant le nombre d’appareils émulés et en se concentrant sur l’essentiel pour le cloud, le projet diminue la surface d’attaque et offre une meilleure prévisibilité des performances, deux facteurs critiques en environnement multi-locataires.
Une communauté ouverte et en croissance
Développé sous un modèle open source au sein de la Linux Foundation, Cloud Hypervisor bénéficie d’un écosystème de collaborateurs comprenant aussi bien de grandes entreprises technologiques que des développeurs indépendants. Parmi les contributeurs à la version 48.0 figurent des ingénieurs de Google, Microsoft, Cyberus Technology, Crusoe AI et Tencent, illustrant la diversité et la portée du projet.
L’équipe maintient des canaux de communication ouverts, comme Slack et des listes de diffusion, ainsi qu’un dépôt sur GitHub où chacun peut consulter la feuille de route, soumettre des correctifs ou signaler des bugs.
Comparaison avec d’autres hyperviseurs
Le paysage de la virtualisation propose plusieurs options, chacune avec ses spécificités :
- KVM/QEMU : très flexible et compatible, mais avec une complexité et une surcharge plus importantes liées à l’émulation complète du hardware.
- Xen : hyperviseur historique très adopté dans le cloud, mais plus lourd à maintenir et moins moderne dans sa base de code.
- Firecracker : également minimaliste et développé par AWS en Rust, mais principalement orienté microVMs pour conteneurs sans serveur.
- Cloud Hypervisor : vise un équilibre entre performance, sécurité et compatibilité avec les charges modernes, en ciblant à la fois les VM polyvalentes et les environnements de conteneurs sécurisés.
Conclusion
Avec sa version 48.0, Cloud Hypervisor confirme son engagement en faveur de la sécurité, de l’efficacité et de la scalabilité dans le cloud. Le support étendu pour riscv64, l’augmentation du nombre maximum de vCPUs, ainsi que les optimisations de performance en font une solution incontournable pour les entreprises et les fournisseurs de cloud en quête d’une virtualisation moderne, légère et fiable.
Dans un contexte où la frontière entre machines virtuelles et conteneurs devient floue, des initiatives comme Cloud Hypervisor tracent la voie vers une infrastructure où sécurité et performance sont intégrées dès la conception.
Questions fréquentes
Qu’est-ce que Cloud Hypervisor ?
Un hyperviseur open source écrit en Rust, dédié aux charges de travail modernes dans le cloud, avec une émulation matérielle minimale pour renforcer la sécurité et l’efficacité.
Quelles sont les nouveautés de la version 48.0 ?
Support pour ivshmem, démarrage via firmware sous riscv64, limite de 8 192 vCPUs sur x86-64/KVM, améliorations en virtio-blk, et documentation pour Windows 11, entre autres.
En quoi se distingue-t-il de QEMU ou Xen ?
Cloud Hypervisor privilégie un design minimaliste et sécurisé, en diminuant l’émulation hardware et en se concentrant sur l’exécution efficace des charges modernes, alors que QEMU et Xen offrent une compatibilité plus large mais plus complexe.
Qui soutient Cloud Hypervisor ?
Il est dirigé par la Linux Foundation, avec le soutien de sociétés telles qu’Intel, Microsoft, AMD, ARM, Alibaba, ByteDance, Tencent et d’autres.