Search This Blog

lundi 21 avril 2014

Fonctionnement et configuration Dynamic memory Hyper-V

Bonsoir,

Toujours dans mes articles sur la virtualisation (Hyper-V) et le stockage, nous allons continuer à percer les mystères de notre hyperviseur, cette fois-ci nous allons voir la mémoire dynamique au sein d'une VM.

On va voir le fonctionnement , et la configuration.

C'est partie :)

Gestion de la mémoire sur Hyper-V :

Tout d’abord une définition, c’est quoi la mémoire dynamique au sein d’une VM sur Hyper-V ?

C’est une allocation dynamique de la mémoire à une VM, c’est à dire que la VM va consommer de la RAM selon ses besoins jusqu’à un certain seuil. Il y’a donc une mémoire de démarrage de la VM, ensuite il y’a deux valeurs minimal et maximal, la VM va ajuster sa consommation de mémoire entre ces deux valeurs la fixées au départ.

Cela permet de gérer efficacement la mémoire au sein d’un hyperviseur. Si on a plusieurs VMs avec la configuration de RAM dynamique, ces VMs-là vont prendre que la RAM nécessaire pour leur fonctionnement, le reste de la mémoire sera laissé à l’hyperviseur et donc à d’autres VMs.

Pour info la mémoire dynamique est disponible depuis la version 2008 R2 SP1.

Fonctionnement de la mémoire dynamique :

Rien de mieux qu’un exemple pour comprendre le fonctionnement de la mémoire dynamique, j’ai ici un serveur sur lequel j’ai installé Hyper-V dessus.

Le serveur dispose de 6 Giga.


J’ai une VM qui consomme 2 Giga de RAM, avec une configuration minimal de 2 Go de RAM.




Au fur à mesure, il y’a plus en plus de connexions sur la VM, donc elle a besoin plus de mémoire pour pouvoir fonctionner correctement et rendre les services qu’elle doit fournir aux utilisateurs, avec la mémoire dynamique, l’hyperviseur va lui allouer de l’espace mémoire supplémentaire de manière dynamique et transparente pour l’administrateur et utilisateur.

Cela ce fait grâce au pilote DMVSC, ce dernier va solliciter l’hyperviseur, et l’hyperviseur décide d’allouer de la mémoire supplémentaire à la VM de manière automatique et à chaud surtout, c’est-à-dire que nous ne sommes pas obligé de mettre hors tension la VM pour lui faire augmenter la mémoire.

Ici notre VM contient 3 G0 de RAM. è Après l’ajout d’un 1 Go de RAM:




Une fois qu’il aura moins de connexions par exemple sur la VM, celle-ci aura besoin de moins de mémoire, donc, il faut qu’elle libère la mémoire qu’elle a pris auparavant pour que d’autres VM puissent en bénéficier.

Pour cela,  une technique ==>  le ballooning, l’hyperviseur va faire croire à la VM que la partie de la RAM qu’elle a eu auparavant  n’est plus disponible donc la VM va abandonner cette partie de la RAM.

Avec cette technique, l’hyperviseur pourra allouer une autre VM. On a une vrai gestion automatisée de la RAM entre les VMs et l’hyperviseur, d’où le nom de mémoire dynamique.





Configuration de la mémoire dynamique :


Cliquez droit sur la VM et allez dans les paramètres de la VM, ensuite allez dans l’onglet mémoire :


Nous avons plusieurs données, je vais essayer d’expliquer au mieux.

Partie 1 :
C’est la quantité de RAM de la VM au démarrage.

Partie 2  ==> Mémoire dynamique :

Vous avez donc deux champs :

-          RAM minimale è  C’est le minimum de mémoire qui doit toujours être disponible afin que la VM fonctionne correctement

-          RAM maximale è C’est la mémoire maximale que la VM peut prendre en cas de besoin  mémoire, elle ne pourra pas dépasser cette valeur.


Partie 3 ==> Mémoire tampon :

La mémoire tampon est là pour allouer aux VMs de la mémoire de manière très rapide.

La configuration de cette mémoire est en fonction de la VM et de sa consommation, si vous avez une VM qui a des pics mémoires, c’est-à-dire une VM qui consomme durant un laps de temps une grosse quantité de mémoire puis ensuite cède cette mémoire, vaut mieux mettre une valeur importante au niveau de la mémoire tampon.

En revanche, si vous avez une VM qui demande sans cesse de la mémoire supplémentaire, vaut mieux mettre une valeur base au niveau de la mémoire tampon pour des raisons d’optimisation et de performance.

Partie 4 ==> Pois de la mémoire :

Ici, on configure la priorité au sens allocation de mémoire par l’hyperviseur, une VM qui aura une haute priorité sera priorisée par rapport à une machine qui a une priorité faible.

Il est très intéressant de configurer vos VMs en fonction de leur criticité afin d’avoir un environnement virtuel stable et optimisé cotés mémoire.

@ bientôt Seyfallah Tagrerout 

< >