Iteam
GitHub

Konvertera fysisk maskin till virtuell (P2V) för Hyper-V med XenConvert

Jag stod nyligen inför uppdraget att konvertera några äldre fysiska maskiner till virtuella. Kunden kör Microsoft Hyper-V så mina tankar gick till System Center Virtual Machine Manager, SCVMM. Jag har tidigare använt det verktyget för konvertering men drog mig lite för att göra om det, då installationen är ganska omständlig.

Jag bestämde mig därför för att använda Citrix XenConvert istället, ett gratisverktyg från Citrix avsett att användas främst mot deras XenServer. Det går också att ställa den till att skapa VHD filer, något som passar mig utmärkt. XenConvert finns att ta hem från Citrix, logga in på ”MyCitrix” först och leta under XenServer downloads – det är inte lätt att hitta.

Tidigare versioner har varit begränsade av att bara kunna konvertera hårddiskar med en partition, något som snabbt ställer till problem. Med nuvarande 2.1 går det utan problem med fler. Bra att veta är att om din ursprungsserver har flera partitioner eller hårddiskar får du ändå bara en VHD fil, alltså inte en VHD per disk.

Några punkter att tänka på innan man börjar konvertering:

  • Endast Server 2003, XP eller äldre går att konvertera
  • Endast Basic disks, ej Dynamic
  • Autorun måste stängas av i registret. Mer om det här.
  • Uppmappade nätverksdiskar får inte ha enhetsbokstäver direkt efterföljande dina fysiska diskar eller optiska enheter.

När jag konverterade körde jag till en USB-disk, att konvertera över nätverket var väldigt långsamt, trots bra hårdvara.

När konverteringen är klar och vi startar upp maskinen kommer rester av det fysiska nätverkskortet finnas kvar. Detta kommer att märkas genom att maskinen klagar när du sätter samma IP adress på det nya virtuella kortet som det gamla fysiska hade. Jag råkade också ut för att maskinerna fastnade på ”Applying computer settings” i tio minuter, tills de når timeout för GPO inställningar.

Att ta bort det spökande nätverkskortet är lite svårare än förväntat. Det går inte att se i ”Device Manager” trots ”Show hidden devices”

Istället behöver man använda verktyget Devcon. Det går att ta hem härifrån.

Använd sedan kommandot devcon findall  =net för att få fram en lista på installerade nätverksadaptrar. Hitta ID för de fysiska adaptrar som tidigare användes. Ditt ID kan se ut exempelvis så här:

PCI\VEN_14E4&DEV_167A&SUBSYS_01DA1028&REV_02\4&19633CA3&0&00E4

För att ta bort adaptern ovan skriver man:

Devcon remove ”@PCI\VEN_14E4&DEV_167A&SUBSYS_01DA1028&REV_02\4&19633CA3&0&00E4” - Missa inte @-tecknet i början.

Efter en omstart ska inga nätverksproblem kvarstå och din nya virtuella maskin är klar för användning.

Mats Egardt
2010-03-10