Partagez l'article

Connexion






Mot de passe oublié ?
Identifiant oublié ?
Pas encore inscrit ? Créer un compte

Up-coming events

There are no up-coming events

Optimiser ses machines virtuelles sur son poste de travail Part-2 (Les disques différentiels) PDF Imprimer Envoyer
Note des utilisateurs: / 11
MauvaisTrès bien 

Optimiser ses machines virtuelles sur son poste de travail (Article 2/2).

Dans la première partie de cet article, nous avons vu comment créer un master de poste de travail optimisé pour la virtualisation en vue de son déploiement rapide et de manière semi-industrielle.

Dans cette seconde partie, nous allons voir comment améliorer encore les performances et économiser de l'espace disque en utilisant les disques différentiels.

Pour rappel, le but est ici de faire tourner le mieux possible une machine virtuelle sur son portable ou son poste de travail avec un outil de virtualisation (Virtual Pc en l'occurence).

Le matériel, le nerf de la guerre.

Bien évidemment, si votre machine physique a du mal à tourner toute seule, il y a peu de chance que vous soyez en mesure de virtualiser un second système d'exploitation. Les points ci-dessous récapitulent les minimas conseillés pour obtenir des bons résultats.

  • La mémoire.
    La mémoire est particulièrement importante pour virtualiser des machines sur son poste de travail. Un minimum de 2Go est souhaitable pour bénéficier du maximum de confort.
    La plupart des configurations actuelles disposent de cette quantité en standard pour un prix modique.

    Ne soyez pas trop gourmands !

    N'allouez pas plus de mémoire que nécessaire à vos machines virtuelles. Si votre machine physique vient à manquer de mémoire, aucune machine virtuelle ne pourra tourner correctement.

Exemple: un serveur Windows 2003 hébergeant Active Directory tourne parfaitement avec 128Mo de ram.

Le cas des systèmes d'exploitation client est différent, les applications bureautiques pouvant rapidement consommer beaucoup de mémoire.
D'une manière générale, commencez par allouer le minimum, quitte à ajuster par la suite.

  • Le processeur
    La plupart des processeurs multi-coeurs actuels sont largement assez puissants pour faire tourner plusieurs machines en même temps. Cependant un élément est primordial pour bénéficier de la meilleure expérience, la présence des instructions Intel-VT ou AMD Pacifica.
    Ces instructions sont généralement désactivées par défaut et vous devez les configurer dans le BIOS de votre carte mère, vérifiez sur le site du constructeur que votre processeur dispose bien de ces instructions.
  • Le disque dur.
    C'est d'une manière générale le maillon faible en matière de virtualisation.
    La faute à notre bonne vieille technologie mécanique qui supporte mal les accès concurrents et la plupart des portables ou des stations de travail ne possèdent qu'un seul disque.
    L'apparition de disques SSD (Solid State Disk) bien qu'encore confidentielle est porteuse de grands espoirs malgré quelques inconvénients et un prix encore élevé.

 

Améliorer les performances des disques virtuels.

Outre les actions visant à limiter l'utilisation du disque (désactivation de certains attributs NTFS, défragmentation etc.) il est possible d'améliorer encore un peu les performances de vos machines virtuelles.

Dans la première partie de cet article, nous avons réalisé un master capable de booter en environ 30 secondes sur un portable classique (un bon vieux D620 en l'occurrence).

Il existe un moyen très simple de réduire encore ce délai et d'améliorer de manière significative les performances de la machine virtuelle.

Utiliser la compression NTFS sur le fichier VHD.

La compression NTFS met en œuvre des mécanismes de cache qui vont grandement améliorer la lecture de vos fichiers VHD. En contrepartie, le CPU va subir un léger overhead, ce qui dans les configurations actuelles n'est plus vraiment un souci.

Les tests que j'ai pu effectuer sont assez impressionnants.
Sur le master produit dans la première partie de cet article (XP SP2, sans applications)

  • Temps de boot sans compression du VHD : 30 secondes
  • Temps de boot avec compression avec compression du VHD : 15 secondes

De là à affirmer que la compression multiplie par deux la performance des disques, il y a un pas que je ne franchirai pas.

On peut voir sur le petit benchmark ci-dessous qu'une fois le VHD compressé les mesures en lecture sont devenues "folles", probablement en raison de mécanismes de cache.

Attention : Les données de performances récoltées dans les machines virtuelles sont souvent faussées, la couche de virtualisation mettant en oeuvre des mécanismes complexes il faut rester prudent dans toute interprétation.

 

diskmarkuncompressdiskmarkcompress1
Benchmark du disque virtuel avant et après la compression

 

Si la compression améliore assez notablement la lecture, on peut voir qu'elle a tendance à pénaliser l'écriture, les données nécessitant d'être compressées avant d'être écrites sur le disque. On serait alors tenté de dire qu'il suffit de ne pas écrire sur ce disque... c'est effectivement possible.

Utiliser les disques différentiels pour répartir des I/O et économiser l'espace disque.

Les disques différentiels permettent de déporter les modifications effectuées vers un autre disque. De cette manière, le disque parent reste intact (il n'est accédé qu'en lecture).

diskdiff

Principe des disques différentiels

 

Il est ensuite possible de fusionner les disques (Enfant et parent) si l'on souhaite appliquer les modifications au disque parent.

Pour créer un disque différentiel dans Virtual PC, utilisez l'assistant création d'un nouveau disque. Rattachez ensuite ce disque à votre machine virtuelle.

Là où cela devient intéressant, c'est qu'il est possible d'assigner plusieurs enfants à un même disque (Le disque parent étant en lecture seule, il n'y a pas de risques de conflits).

En utilisant les disques différentiels, vous pouvez économiser plus de 2,5go par machines virtuelles et autant pour vos sauvegardes !

Bien sûr, plus on va associer de disque "enfant" à notre disque parent, et plus il y a des risques de "contentions" dans l'hypothèse ou l'on souhaite faire tourner plusieurs machines en même temps.

D'une manière générale, faire tourner deux machines sur deux disques est toujours mieux que de faire tourner deux machines sur un disque, c'est encore plus vrai dans le cas des disques différentiels grâce auxquels on va pouvoir répartir les opérations de lecture et d'écritures.

diskdiff2Utilisation des disques différentiels sur un portable
 

L'utilisation d'un disque différentiel déporté sur un disque USB externe ou sur une clef USB ne va pas améliorer vos performances, la redirection des I/O peut même les dégrader très légèrement. Cependant c'est parfois un mal nécessaire car vous allez améliorer votre capacité à faire tourner plusieurs machines en même temps (machine physique incluse).


En répartissant ainsi les I/O, votre machine physique aura moins tendance à pénaliser votre machine virtuelle et vice et versa.

 

Attention : Si vous choisissez de stocker vos VHD sur une clef USB vous devrez vous munir d'un modèle haut de gamme. Les clefs USB bénéficient de temps d'accès largement inférieurs aux disques durs et des performances en lecture très honorables (Ma clef GT offre des meilleurs performances en lecture que mon disque USB externe). Gardez cependant à l'esprit que les performances en écriture sont catastrophiques !

 

Pour conclure cet article, voici un petit résumé des points à suivre pour garantir de bonnes performances à vos machines virtuelles.

  • Déframentez régulièrement votre disque physique et vos disques virtuels.
  • Installez les pilotes virtuels
  • Pensez à activer les instructions VT dans le bios de votre carte mère.
  • N'allouez pas plus de mémoire que nécessaire à vos machines virtuelles.
  • Utilisez de préférence un stockage externe pour vos fichiers VHD.

 

N'hésitez pas à réagir à cet article sur notre forum.
A bientôt.

Cédric.

 

Mise à jour le Vendredi, 28 Décembre 2012 15:51
 
Bannière

Joomla! is Free Software released under the GNU/GPL License.