Virtualizzazione VmWare su mini PC

Capita a volte di dover virtualizzare un sistema fisco (P2V conversion) appoggiato su hardware basilare (in questo caso un mini PC Foxconn nt-i1000) con a bordo un sistema linux based.

Il vantaggio della virtualizzazione in questo caso è la possibilità di effettuare snapshot pre aggiornamenti o backup dell’intera macchina virtuale, molto utile in particolare se il sistema in questione è mission critical.

Ma è possibile installare VmWare ESXI su un mini PC? Si! E con buone performance.

Conversione P2V

Il primo passo per virtualizzare il mini PC è effettuare la conversione da fisico a virtuale.

Essendo il sistema linux based è possibile utilizzare Clonezilla per effettuare un’immagine del sistema fisico.

Successivamente tale immagine viene ripristinata su una macchina virtuale con medesime caratteristiche di quella fisica (stessa dimensione HDD, RAM e numero processori) localizzata su una infrastrutture ESXI preesistente.

Riduzione disco VMDK

La macchina virtuale avrà dimensioni notevoli (pari alla dimensione del disco di partenza), nonostante magari l’occupazione reale del sistema sia molto minore: è possibile ridurre il disco VMDK tramite la seguente procedura:

  • fare in modo che sulla macchina virtuale tutto lo spazio libero di ogni mount point sia riempita di bit zero, quindi lanciare per ogni partizione il comando
    dd if=/dev/zero of=/[mounted-volume]/zeroes
    ##Cancellando successivamente il file
    rm -f /[mounted-volume]/zeroes
  • per Windows il comando è
    sdelete.exe -z [drive:]
  • reclamare lo spazio libero del VMDK facendo l’operazione di “punching out”, spegnendo dapprima la macchina virtuale, collegandosi in SSH all’host ESXI e lanciando il comando
    vmkfstools -K [disk].vmdk

    terminata questa operazione tutti i blocchi scritti con zero dall’interno della macchina virtuale vengono tolti dal VMDK

La procedura qui descritta funziona nel caso il disco sia thin provisioned, nel caso in cui il disco non sia stato creato come thin oppure la procedura non funzioni è possibile procedere nel seguente modo:

  • avviare la macchina virtuale tramite Gparted live CD e ridurre le partizioni avendo cura di lasciare lo spazio libero tutto in fondo al disco
  • annotarsi quindi la dimensione dello spazio occupato sul disco fisso (eventualmente approssimandola per eccesso al GB successivo), ad esempio facendo: spazioOccupato = (dimensione disco) – (spazio libero alla fine)
  • collegarsi all’host ESXI via SSH e navigare fino alla cartella della macchina virtuale
  • aprire in editing il file VMDK (vi nomeDisco.vmdk) e individuare la riga seguente
    #Extent description
    RW 83886080 VMFS "nomeDisco-flat.vmdk"

    il numero indicato è ottenuto mediante questo calcolo: 40 GB = (40*1024*1024*1024)/512 = 83886080

  • modificare il numero con quello che si ottiene facendo il calcolo con la dimensione dello spazio occupato sul disco: spazioOccupato*1024*1024*1024/512
  • lanciare la procedura di conversione da thick a thin con il seguente comando (oppure effettuare una vMotion)
    vmkfstools -i nomeDisco.vmdk -d thin nomeDiscoRidotto.vmdk

Installazione ESXi su mini PC

Ottenuta la macchina virtuale con dimensioni ridotte è ora possibile passare a installare l’hypervisor sul mini PC, l’installazione si effettua in modo classico collegando un lettore CD o una chiavetta USB con all’interno l’installer dell’ESXI.

Nel caso del mini PC Foxconn nt-i100 l’installazione è stata bloccata a causa della mancanza dei driver della scheda di rete (Realtek 8168 Gigabit Ethernet), questo perchè VmWare dalla versione 5.5 dell’ESXI ha deciso di rimuovere alcuni driver di schede di rete dal kernel.

In questo caso è possibile creare una ISO dell’hypervisor personalizzata che contenga i driver necessari, utilizzando lo script Powershell ESXi-Customizer-PS (https://www.v-front.de/p/esxi-customizer-ps.html):

  • su un PC Windows installare Powershell 2.0 o superiore e VMWare PowerCLI
  • scaricare dal sito indicato lo script ESXi-Customizer-PS
  • lanciare il seguente comando
    .\ESXi-Customizer-PS-v2.5.ps1 -v65 -vft -load net-r8168 -outDir C:\
  • verrà creata in C:\ la ISO comprendente i driver mancanti della scheda di rete

Per gli altri pacchetti disponibili è possibile far riferimento al wiki https://vibsdepot.v-front.de/wiki/index.php/Welcome

Terminata l’installazione sarà possibile avviare la macchina virtuale esportandola dall’host ESXI precedente e caricarla su quello del mini PC.

Aggiungi ai preferiti : permalink.

I commenti sono chiusi.