Xen ne sera pas l'hyperviseur exclusif de Linux
L'adoption prévisible de VMI, une interface de programmation qui permettra d'abstraire le noyau Linux de la couche d'hypervision sous-jacente est une défaite pour Xensource qui entendait imposer Xen comme la couche d'hypervision de Linux. Avec VMI, tout hyperviseur compatible pourra être utilisé sous la version paravirtualisée de l'OS libre
Les développeurs du noyau Linux travaillent actuellement à l'écriture d'une couche d'abstraction qui va permettre de décorréler le noyau des hyperviseurs sous-jacent. La conséquence à court terme de ces travaux est, qu'il sera possible pour les clients de choisir l'hyperviseur qu'ils préfèrent sous Linux, tout en conservant les avantages de la paravirtualisation en termes de performances.
Décorréler les travaux sur le noyau des travaux sur les hyperviseurs.
L'interface de programmation VMI (Virtual Machine Interface), devrait permettre de décorréler les travaux menés sur le noyau et ceux menés sur les couches d'hypervision, permettant ainsi aux développeurs du noyau de se concentrer sur les évolutions de Linux tout en laissant les développeurs de solutions de virtualisation innover pour enrichir les capacités de leurs environnements. Ponctuellement l'interface VMI sera révisée et enrichie de façon à prendre en compte les évolutions des hyperviseurs.
Cette séparation a largement été inspirée par VMWare (voir à ce propos le point de Zachary Amsden sur la mailing list du noyau Linux) mais aussi par les conclusions menés par les développeurs du noyau après leur première expériences d'intégration de Xen dans linux. Si ces travaux sont aujourd'hui arrivés à maturité, ils ont aussi montré les dangers d'une trop grande intégration entre la couche de virtualisation et l'OS. Ainsi, les noyaux XenoLinux conçus pour fonctionner avec Xen 2.0.2 ne fonctionnent pas avec Xen 3.x, du fait des évolutions d'API de ce dernier. De même, les noyau XenoLinux les plus récents ne fonctionnent pas avec les vieux hyperviseurs Xen de la série 2.x. De tels inconvénients auraient été évités avec une interface de type VMI, permettant aux entreprises de faire évoluer leurs environnements de virtualisation sans toucher à leurs distributions linux et vice-versa.
Pour l'instant VMWare a contribué une implémentation 32 bit de VMI pour le noyau linux 2.6.16-rc6 et indique que son impact sur les performances est négligeable. Des travaux sont en cours avec XenSource pour que l'hyperviseur libre supporte lui aussi VMI, ce qui pourrait être le cas dès la fin du premier semestre. VMI deviendrait alors l'interface par défaut de virtualisation du noyau permettant à Linux de s'intégrer avec l'ensemble des hyperviseurs du marché compatibles avec l'API. De quoi mettre aux rêves d'hégémonie de Xensource sur l'hypervision Linux, mais aussi de quoi encourager la concurrence entre fournisseurs d'hyperviseurs et accélérer le développement de la virtualisation dans le monde libre. De quoi aussi simplifier à terme l'encapsulation de la virtualisation dans le firmware des serveurs x86, un pas qui les rapprocherait encore un peu plus des grands serveurs Unix...