Il y a quelques jours, une nouvelle a fait surface : ByteDance ( créateur de TikTok) a surpris la communauté du logiciel libre avec la sortie de Parker (PARTitationed KERnel), une technologie expérimentale qui permet à plusieurs noyaux Linux de fonctionner simultanément sur une seule machine physique, sans avoir recours à des solutions de virtualisation traditionnelles comme KVM.
Cette avancée, proposée via la liste de diffusion des développeurs du noyau Linux, vise à résoudre l’un des défis les plus importants des systèmes modernes : l’évolutivité sur les ordinateurs dotés d’un grand nombre de cœurs de processeur.
Bonjour à tous,
Parker est une fonctionnalité proposée dans Linux pour permettre à plusieurs noyaux Linux de fonctionner.
simultanément sur une seule machine, sans virtualisation KVM traditionnelle. Ceci
Il est possible de partitionner les cœurs du processeur, la mémoire et les périphériques pour
Noyau Linux prenant en charge les partitions.
Parker, une solution sans hyperviseurs ni machines virtuelles
L'approche de Parker repose sur un concept de partitionnement physique du matériel , divisant les cœurs du processeur, la mémoire et les périphériques d'entrée/sortie en régions indépendantes. Chaque instance de noyau (appelée noyau d'application) fonctionne sur ses propres ressources allouées , tandis que le noyau de démarrage gère la configuration initiale du système et l'allocation matérielle.
Contrairement à la virtualisation traditionnelle, toutes les instances Parker partagent la même image noyau , ce qui simplifie le déploiement et réduit la charge d'exécution. Cependant, chaque instance peut avoir ses propres optimisations, configurations et paramètres de performance, s'adaptant ainsi à différentes charges de travail ou cas d'utilisation.
Fonctionnement interne et gestion des ressources
Le mécanisme principal de Parker utilise kexec pour charger dynamiquement de nouvelles instances du noyau dans des régions de mémoire réservées. Avant d'initialiser ces instances, le noyau principal libère les cœurs du processeur, alloue la mémoire physique à l'aide de CMA (Contiguous Memory Allocator) et détache les périphériques PCI qui seront dédiés aux noyaux secondaires.
Chaque partition nécessite ses propres périphériques PCIe, tels que des disques NVMe ou des cartes réseau dédiées, garantissant ainsi un environnement d'E/S totalement indépendant. Parker propose également une interface de gestion basée sur kernfs , permettant de gérer les partitions et de surveiller l'état de chaque noyau en cours d'exécution.
Limitations actuelles et feuille de route future
Dans cette première version, toutes les instances du noyau partagent le même domaine d'isolation, ce qui signifie qu'une défaillance dans l'une d'elles peut affecter l'ensemble du système . ByteDance reconnaît cette limitation comme un choix de conception initial, privilégiant la simplicité et une faible surcharge à une isolation complète.
Cependant, les développeurs prévoient déjà d'exploiter les capacités d'isolation au niveau matériel , telles que les technologies de virtualisation assistée par le processeur, afin d'améliorer la tolérance aux pannes et de permettre à chaque noyau de fonctionner de manière totalement autonome et sécurisée.
Bien que Parker partage le même objectif que le projet Multikernel (récemment introduit par d'autres développeurs de l'écosystème Linux), ils diffèrent considérablement par leur architecture et leur approche technique . Parker adopte un modèle de noyau partagé avec des ressources physiquement segmentées, tandis que Multikernel vise un environnement coopératif entre plusieurs noyaux coordonnés.
ByteDance souligne que sa mise en œuvre est totalement indépendante et espère que la communauté des développeurs fournira des contributions et des commentaires pour affiner cette technologie.
Il convient de noter que Parker s'annonce comme une expérience prometteuse susceptible de redéfinir la manière dont le noyau Linux évolue sur les serveurs multicœurs. En éliminant la couche de virtualisation traditionnelle et en exploitant directement les ressources physiques, cette technologie ouvre la voie à une efficacité accrue, une latence réduite et des configurations plus flexibles dans les systèmes hautes performances.
Bien qu'encore à ses débuts, l'initiative de ByteDance démontre l'intérêt croissant des grandes entreprises technologiques pour l'innovation au sein du noyau Linux, consolidant leur rôle non seulement en tant qu'utilisateurs du système, mais aussi en tant qu'acteurs actifs de son évolution.
Enfin, si vous souhaitez en savoir plus, vous trouverez les détails en suivant ce lien.