Un outil pour déplacer une Machine Virtuelle Hyper-V sans l'exporter
This post is available in english here.
Hyper-V est un magnifique outil, avec lequel la performance et la stabilité sont au rendez-vous. Mais coté administration, les outils laissent un peu à désirer, et malgré qu'une bonne partie des opérations courantes que l'on pourrait espérer avoir sont disponibles, elles n'en sont pas moins difficiles d'usage. On peut espérer que tout cela sera amélioré avec Windows Server 2008 R2.
Mais en attendant, les outils d'administration d'Hyper-V ne permettent que l'import d'une VM qui a au préalable déjà été exportée. Bien entendu, cela ne peut ne peut se faire que si la machine hôte originale est encore en fonctionnement. Dans le cas d'un serveur qui crash, exporter une VM deviens immédiatement plus complexe... voir impossible.
Il existe, ça et la, quelques techniques qui expliquent, à grand coup de mklink et icacls, comment recréer les liens symboliques et les permissions pour les fichiers de configuration de la VM. Mais cela reste particulièrement complexe et fastidieux, puisqu'il ne faut pas en oublier, et respecter un ordre bien précis, surtout si l'on veut effectuer l'opération d'attachement d'une VM sur un serveur live.
Après avoir trituré Hyper-V, ses symlinks et son interface WMI, j'ai donc créé un petit outil en mode GUI qui permet d'attacher et de détacher une VM qui n'a pas été exportée.
Quelques notes à son propos :
-
Une VM ne peut être détachée que si elle est en mode "Saved" ou "Stopped".
-
Il n'est pas nécessaire d'arrêter le service Hyper-V, toutes les modifications sont détectées en live par Hyper-V.
-
Une VM ne peux être importée que si elle comporte au moins un disque dur sur le controlleur IDE 0.
-
Tous les fichiers de la VM doivent être sous la même racine, HDD et Snapshots.
-
Tous les fichiers qui sont modifiés sont sauvegardés à coté des originaux, les fichiers de données ne sont pas modifiés, ni déplacés.
-
.NET 3.5 doit être installé.
Je mettrais à disposition les sources sous peu, ainsi qu'une version console.
Il y aura forcément des bugs, n'hésitez pas à m'en faire part. Je ne pourrais peut-être rien y faire, puisque il s'agit d'un outil qui effectue une opération qui (à priori) n'est pas prévue ou supportée par Microsoft.
L'outil est à télécharger ici.
Les 10 derniers blogs postés
-
Les actualités de la semaine sur c2i.fr (14 mai - 20 mai) par
Richard Clark le il y a 4 heures et 18 minutes
-
Reactive Extensions : Consommer des services avec Rx Partie 3, les pièges à éviter par
Léonard Labat le il y a 13 heures et 23 minutes
-
SharePoint Blog Site, problème d’archives par
Le Blog (Vert) d'Arnaud JUND le il y a 23 heures et 59 minutes
-
Soirée ALT.NET Mai - 3 présentations par
#Rui le 05-18-2012, 11:59
-
[ #SharePoint 2010][ #SQLServer 2012] AlwaysOn pour SharePoint (2/4) : Configuration (2e partie)… par
Le blog de Patrick [MVP SharePoint] le 05-18-2012, 11:31
-
Team Foundation Server 11: tous les trésors cachés du site d’équipe par
Philess le 05-16-2012, 19:01
-
[PowerShell 3] Télécharger et installer la documentation en ligne par
Blog de SPBrouillet (Pierrick BROUILLET) le 05-16-2012, 17:36
-
[#SharePoint 2010][#SQLServer 2012] AlwaysOn pour SharePoint (1/4) : Configuration (1ère partie)… par
Le blog de Patrick [MVP SharePoint] le 05-16-2012, 12:10
-
Job Day @MIC Brussels - .Net Developers on Mobile applications par
Le Blog (Vert) d'Arnaud JUND le 05-15-2012, 20:26
-
[SharePoint 2010] – SharePoint 2010, Windows (Server) 8 et des erreurs IIS sont dans une VM… par
Blog de SPBrouillet (Pierrick BROUILLET) le 05-14-2012, 12:10