Una delle sfide più interessanti nella virtualizzazione è la migrazione o conversione delle macchine virtuali
Stabilito che, in realtà, le principali piattaforme di virtualizzazione sono VMware e Microsoft Hyper-V (Citrix lo conosco poco e Virtualbox lo considero più come soluzione adatta ad ambiente desktop), una delle sfide principali consiste in come migrare queste piattaforme una verso l’altra.
Essendomi orientato quasi in maniera definitiva sulla soluzione Microsoft (in versione bare metal), in quanto più scalabile sia verso il basso che verso l’alto, mi trovo sempre più spesso a dovere migrare macchine fisiche o virtuali verso questa soluzione.
Diversamente da quanto si potrebbe credere i problemi nascono quando bisogna affrontare la migrazione V2V (da macchina virtuale a macchina virtuale), in quanto il tool di microsoft MVMC, scaricabile al link ha delle limitazioni non indifferenti.
La limitazione principale, nel mio caso spesso bloccante, è che, l’interfaccia grafica, riesce ad interagire solo connettendosi ad un sistema VCenter, cosa non possibile se bisogna fare una conversione da un host ESXi (versione free).
In tale situazione, l’unica via di uscita e usare gli strumenti a caratteri (powershell) e fare la conversione del disco da vmdk a vhd (o vhdx).
Ecco come fare.
Come prima cosa bisogna scaricare da datastore della macchina VMware il file del disco che bisogna convertire. Questa operazione viene fatta connettendosi con il browser all’indirizzo dell’host
o utilizzando il client VSphere.
Se sono presenti due file di disco con lo stesso nome ma di cui uno con estensione “-flat”, vanno scaricati entrambi nello stesso punto ma, nella sintassi del comando va specificato un solo file omettendo l’estensione -flat
A questo punto, dopo avere installato la MVMC, si apre una finestra powershell in modalità amministratore e si lancia il comando:
Import-Module “C:\Program Files\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1″ (per caricare il modulo necessario)
dopo di che si esegue:
ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath discovmware.vmdk -DestinationLiteralPath discoHyperV -VhdType DynamicHardDisk -VhdFormat Vhd.
Dove:
SourceLiteralPath = è il percorso del file vmeware .vmdk.
DestinationLiteralPath = è il percorso del nuovo file disco hyper-v.
VhdType = puoi scegliere tra FixedHarddisk o DynamicHarddisk.
VhdFormat = il formato del disco vhd o vhdx.
A questo punto è sufficiente creare una nuova macchina virtuale con Hyoer-V, specificando, nella configurazione di utilizzare un disco rigido creato in precedenza:
a questo punto basta avviare la macchina virtuale appena creata e verificare il buon esito della nostra migrazione, senza dimenticare di rimuovere i vmware tools e di installare, eventualmente, i tools di integrazione per Hyper-v.