Machines virtuelles


Le concept des machines virtuelles existe depuis très longtemps en informatique (voir http://fr.wikipedia.org/wiki/Machine_virtuelle). Il devient aujourd'hui incontournable, à la fois sur les serveurs et sur les postes de travail.
Sur nos postes de développement, cela nous permet de reconstituer les environnements de nos clients, surtout pour des applications anciennes. Par exemple, j'ai un projet en Windev 9 qui utilise une base de données SQL Server 2000 et le logiciel SAGE GESCOM Ligne 100. Il s'agit d'un environnement très spécifique dont je n'ai pas besoin sur ma machine au quotidien. La machine virtuelle a été créée avec VMWare version serveur. Aujourd'hui la version VMWare Player permet aussi de créer des machines virtuelles pour les environnements courants.

Dans le cas de mon exemple, il s'agit de Windows XP. Autre exemple, nous avons créé une machine virtuelle sous Windows Serveur 2003 avec SharePoint 2007 de Microsoft pour pouvoir développer dans cet environnement, alors même que nous n'utilisons pas ce logiciel sur nos serveurs. Cela nous évite de « polluer » nos serveurs avec des applications que nous n'utilisons pas en exploitation.
Avec l'arrivée de Windows 7, qui intègre une machine virtuelle (VirtualPC), l'utilisation des machines virtuelles se banalise pour les anciennes applications qui ne fonctionnent que sous Windows XP. Cela nous permet par exemple de maintenir des applications en Windev 5.5 ou en Visual Basic 6.0 sans être obligé de démarrer un vieux poste. Il suffit d'installer l'outil de développement et le projet dans la machine virtuelle et le tour est joué.
Enfin, pour les nouveaux systèmes d'exploitation, cela nous permet aussi de tester ces environnements. Ainsi, j'ai installé une machine virtuelle Android en préparation de développements que nous devrons réaliser pour cette plateforme. Cela ne remplacera pas les tests sur une vraie machine, mais tout de même cela devrait nous faire gagner beaucoup de temps.
Les développements d'applications deviennent de plus en plus multi-plateformes (Windows, Linux, Web) et nous travaillons avec un « nuage » de machines (pour reprendre le terme à la mode de « clouds computing ») et un nuage de logiciels, auxquels nous accédons à distance de chez nous ou de chez nos clients et/ou partenaires comme n'importe quelle machine physique.

Commentaires