fbpx

Nous vivons dans un monde où les frontières du réel se fragilisent de plus en plus, si tant est que nous ayons jamais vécu dans un univers réel. Loin de moi l’envie de vous proposer ici une thèse de philosophie. Mais aujourd’hui, nous regarderons de plus près au phénomène appelé virtualisation, plus particulièrement la Virtualisation en Local, sur un poste de travail à usage domestique.

#KezakoKeDa

Pour faire simple, virtualiser c’est rendre virtuel :-D. Sans vouloir faire de l’ironie, la virtualisation sera donc une opération au cours de laquelle des données, des fonctions, du matériel ou des logiciels vont être émulés dans un environnement contrôlé, dans le but de les

  • étudier
  • isoler
  • optimiser
  • sécuriser
  • standardiser
  • déployer

On peut dès lors parvenir à de très importants bénéfices, lorsque ce processus est pensé de manière cohérente.

Virtualisation En Local Architecture Isolateur

By Primalmotion – Own work, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=4587937

Autrement dit, cela pourrait permettre d’avoir, au sein d’une seule et même unité centrale ou machine, plusieurs autres machines qui, dans leur “esprit”, pensent être de vraies machines ou ordinateurs, alors qu’en réalité, elles ne sont qu’un souffle. Un peu comme dans la Matrice. Ou Truman Show.

Pourquoi virtualiser en local ?

Les bénéfices potentiels de la virtualisation peuvent être nombreux, surtout à grande échelle, comme dans le cas d’un hébergeur Web. Imaginons un hébergeur modeste, n’ayant que 1000 clients ou sites web. Dans un modèle ultra simpliste, il lui faudrait 1000 unités centrales, chacune dédiée à un site web. Je vous laisse imaginer les tracas en matière d’espace, de maintenance, de consommation électrique, etc. Avec la virtualisation, quelques machines suffisamment puissantes pourraient suffire. Chaque unité centrale contiendrait des dizaines de systèmes virtuels, et le tour serait joué.

Mais à plus petite échelle, par exemple chez vous, quelles pourraient être les avenues?

Diviser pour mieux régner

Les applications sont innombrables de nos jours. Il y en a de tout genre, pour tous les goûts, pour tous les prix. L’offre est tellement vaste que parfois, le souci ne consiste pas à trouver une application pour effectuer la tâche désirée, mais plutôt à déterminer laquelle nous allons utiliser. Et dans cette joyeuse cacophonie, il devient de plus en plus facile de fragiliser son système.

Voyez par vous-mêmes :

  • (dés)installations répétées : à force de ne pas savoir laquelle choisir, on se retrouve bien souvent entrain d’en essayer plusieurs, avant, si l’on est chanceux, de tomber sur la perle rare
  • incompatibilités : les applications sont nombreuses, les standards et méthodes de conception aussi, dans certains cas. Il en résulte des applications ou systèmes pas toujours amis-amis avec les autres. Il n’est donc pas impossible que l’installation (ou désinstallation) d’une application affecte négativement une autre ou carrément le système entier.

Dans des cas comme ceux-là, avoir des environnements séparés, cloisonnés, peut s’avérer être salutaire. On installe une application dans un environnement virtuel. Si les choses vont bien, alors tout va bien. Si les choses vont mal, elles n’iront alors mal que dans ce seul environnement virtuel. Pas de crainte d’affecter les configurations, les compatibilités et la stabilité des autres systèmes, et de l’hôte en particulier. L’échec d’un système clos n’a aucune influence sur les autres. C’est parfait!

  • Cela ouvre la porte aux essais : on ne sait pas si une application ou un système fera notre affaire. Dans une machine virtuelle, on le/la déploie. Si l’expérience est fabuleuse, on réitère l’expérience à une échelle plus réelle. Ou on conserve la machine virtuelle telle quelle. Si l’expérience est désastreuse, on tourne la page, et la machine virtuelle avec.

Citoyens du monde

Les environnements virtuels peuvent, sous réserve du respect des licences associées aux produits concernés, bénéficier de portabilité. En effet, ces environnements clos peuvent être relativement facilement dupliqués, déplacés, copiés vers d’autres environnements ou hôtes. Idéal pour reproduire un environnement en tout point conforme aux spécifications originales, sans nécessairement traîner de gros matériel, ou perdre du temps à tout refaire depuis le début.

Les conséquences de cette flexibilité seront par exemple

  • la facilité de sauvegarde
  • la standardisation des environnements
  • la simplification des reprises après incident
  • l’optimisation et l’accélération des déploiements de systèmes à moyenne ou grande échelle

Quelques cas d’utilisation

Virtualisation En Local

On pourrait s’amuser à créer des machines virtuelles sur son poste local pour

  • tester des applications ou systèmes dans un environnement clos, et éviter ainsi d’affecter les configurations et la stabilité du système principal
  • créer des environnements extrêmement spécifiques aux tâches que l’on effectue
    • traitement de texte,
    • graphisme,
    • développement web,
    • développement mobile,
    • multimédia,
    • jeux,
    • etc.
  • simuler un réseau local avec peu ou pas de machines réelles
  • avoir à portée de clic, voire en simultané, plusieurs systèmes d’exploitation différents (MacOS, Linux, Windows)
  • pousser son poste principal dans ses derniers retranchements, et voir jusqu’où il est capable de se rendre, côté performances.

Les limites

C’est bien beau tout cela, mais un gros plafond de verre subsiste, comme c’est le cas avec la plupart des environnements virtuels. Pour que ça marche, vous aurez besoin d’un hôte, une machine physique réelle, qui servira de berceau nourricier aux autres.

Il sera souvent possible de créer autant de machines virtuelles qu’on le souhaite, à condition que ces dernières soient en mesure de fonctionner dans les limites inhérentes à l’hôte.

  • Si vous avez un très large espace de stockage, vous pourriez créer et abriter des dizaines, des centaines de machines virtuelles.
  • Si vous avez beaucoup de mémoire RAM et de puissance processeur, vous pourriez faire tourner ensemble, en simultané plusieurs d’entre elles.

Le serviteur n’est pas plus grand que le maître

Il n’est donc pas envisageable d’avoir une machine virtuelle comportant 4Go de RAM, lorsque la machine physique qui l’abrite, elle, n’en a que 2Go. Ou encore avoir une machine virtuelle plus rapide que son hôte.

Au contraire, plus vous aurez de machines virtuelles, surtout si celles-ci sont en fonctionnement, et moins votre hôte va bien se porter. Alors oui c’est vrai, nous avons dit plus haut qu’un des grands avantages de la virtualisation était le fait que les machines ne s’influencent et ne se combattent pas. Mais ce qui est vrai dans les rapports existants entre machines virtuelles ne l’est pas tout à fait, lorsqu’il s’agit du rapport entre l’hôte et ses invitées.

Pour un mariage réussi

Il est important de bien dimensionner votre projet de virtualisation en local. Avec à peu près n’importe quelle configuration, il sera possible de bénéficier de la virtualisation. Mais pour que cela fonctionne, il faudra s’assurer que

  • l’hôte (machine physique) comporte les capacités nécessaires pour accueillir les machines virtuelles envisagées (stockage, mémoire vive, puissance/vitesse du processeur)
  • l’application ou le système d’exploitation invité peut
    • s’exécuter dans un environnement virtuel
    • se déployer et fonctionner comme attendu dans les configurations (stockage, mémoire, processeur) disponibles

Les outils

Sur le marché, deux principaux outils retiendront notre attention : VirtualBox et VM Workstation Player. Ils sont

  • gratuits,
  • disponibles sur toutes les plateformes de bureau populaires
  • faciles d’utilisation

Certains de nos prochains didacticiels et démonstrations seront donc basés là-dessus.

Soka!