Skip to content
2010/06/14 / vpourchet

Hyper-V (R2) : Les snapshots

  

NOTE : cliquez sur les images pour les agrandir.


 

    Les snapshots sont des captures de l’état d’une machine virtuelle à un instant T. Ils permettent de ramener l’état de cette machine ultérieurement à son état initial.
 

Prenons un exemple : je développe un super programme et souhaite le tester sur une machine virtuelle. Je prends donc un snapshot puis j’installe mon programme sur la VM, pas de bol la VM crash, heureusement, je rejoue le snapshot et ma VM ne garde aucune trace ni de l’installation du programme ni du plantage. Ce processus est illustré sur l’image ci-dessus.
 

    Le snapshot contient :
 

–     une copie de la configuration de la machine virtuelle (si on ajoute un controlleur après le snapshot, lors de la restauration du snapshot, le controlleur aura disparu)
 

–      une copie des données inscrites dans la mémoire RAM virtuelle
 

–     et tous les changements opérés sur le disque (le fichier .avhd représente le différentiel disque)
 

    Il est possible d’avoir une arborescence de snapshots, si tel est le cas et qu’un snapshot parent est restauré, tous les snapshots enfants sont d’abords restaurés.
 

    Les snapshots ne sont recommandés que pour les environnements de tests et de développement, pourquoi ? Tout simplement car les changements effectués sur la machine vont engendrer un grossissement du fichier du snapshot (.avhd). Là où il est possible de définir une taille maximale sur les disques durs virtuels, il n’est pas possible de faire de même sur les snapshots. Ainsi il arrive qu’un snapshot finisse par prendre un espace considérable et sature le disque (cas déjà rencontré). Ainsi, je le répete : pas de snapshots en production !!!
 

  

Processus de création d’un snapshot

  


 

    Détaillons maintenant le processus de création d’un snapshot.
 

    Première étape, la machine virtuelle se met en ‘pause‘.
 

Puis un fichier de snapshot (.avhd) est créé.
 

La configuration de la machine est changée.
 

La machine pointe vers le nouveau fichier
avhd.
 

La VM est à nouveau disponible.
 

———- le laps de temps pour effectuer les opérations précédentes n’est pas perceptible ———-
 

    Le contenu de la mémoire est enregistré sur le disque.
 

    Une fois les étapes complétées, les fichiers du snapshot (différentiel disque, mémoire et configuration de la VM) sont dirigés vers un nouveau dossier.
 

Processus de suppression d’un snapshot

  


 

    Lorsqu’un snapshot est supprimé, les fichiers de configuration créés au moment du snapshot sont supprimés, puis lorsque la machine virtuelle est éteinte, le contenu des fichiers .AVHD est intégré au fichier de disque VHD. Si une arborescence complète de snapshots est supprimée, les snapshotsenfants‘ sont intégrés au contenu du snapshotparent‘. Ainsi, supprimer un snapshot correspond à supprimer un point de retour, votre VM conservera son étatactuel‘ et ne pourra plus revenir à son état antérieur‘.
 

Processus d’application d’un snapshot

  


 

Appliquer un snapshot équivaut à remettre la machine virtuelle à l’état auquel elle se trouvait lorsque le snapshot à été pris. Concrètement, lors de l’application d’un snapshot, les fichiers de configurations de la machine sont copié, et un nouveau fichier de snapshot .avhd est crée. Le snapshotoriginalconserve son état, ce qui permet de restaurer le même snapshot de nombreuses fois. Le contenu de la mémoire et du fichier de configuration sont copiés, et le nouveau .avhd est lié au .avhd parent (rappel : les .avhd ne contiennent que les opérations différentielles du disque après que le snapshot ait été pris).
 

Processus du ‘revert’

  

    Le processus ‘revert‘ équivaut à appliquer le dernier snapshot dans l’arborescence de la machine virtuelle, c’est-à-dire le plus récent snapshot qui ait été effectué. On peut l’assimiler à une sorte de mode de démarrage ‘dernière bonne configuration connue’ pour les environnements de tests ou les retours en arrière sont fréquents.

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :