Non tutti sanno che è possibile utilizzare la virtualizzazione nidificata per far girare VMware ESXi come una macchina virtuale su un host Hyper-V. Per alcuni, questa opzione potrebbe essere interessante per finalità di testing nel caso non sia possibile acquistare hardware certificato.
Sebbene questa procedura non sia ufficialmente supportata da VMware o Microsoft, è possibile creare un ambiente ESXi che si “regga” interamente su Hyper-V. La procedura è complessa e non proprio “user-friendly”.
Prima di iniziare è necessario preparare la ISO avendo cura di pre-caricare dei driver di rete compatibili con Hyper-V. In caso contrario il processo fallirà e non sarai in grado di connetterti al server ESXI.
VMware PowerCLI è richiesto. Per l’installazione fai riferimento al nostro precedente articolo.
Preparare l’immagine dell’Hypervisor ESXi
- Scarica il tool per customizzare ESXi da http://vibsdepot.v-front.de/tools/ESXi-Customizer-PS-v2.5.1.ps1 e salvalo sulla macchina locale (es. to C:\ESXi).
- Apri PowerShell e digita Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass. Seleziona [Y] Yes per lanciare. Questo ti consente di eseguire gli script scaricati:
- Assicurati di essere nella medesima directory degli script (es. C:\ESXi).
- Ora digita .\ESXi-Customizer-PS-v2.5.1.ps1 -v60 -vft -load net-tulip (Net Tulip è un pacchetto driver di rete compatibile con Hyper-V).
- Il processo richiederà alcuni minuti per essere completato:
- Se accedi alla cartella utilizzata (es. C:\ESXi), vedrai la tua ISO customizzata. Questa è l’immagine che dovrai utilizzare per il tuo server ESXi in Hyper-V:
Una soluzione alternativa per preparare l’immagine ESXi
Nota: al momento della redazione dell’articolo abbiamo incontrato problemi con l’applicazione per customizzare ESXi. Nello specifico, abbiamo riscontrato degli errori nella creazione dell’ISO che facevano pensare ad un problema alla repository di VMware, potenzialmente temporaneo. Nel caso il problema persista, ecco una via alternativa per installare manualmente i driver net-tulip:
- Questo metodo NON FUNZIONA su Windows 10. Nel nostro caso è stato completato su un portatile con Windows 7.
- Scarica e installa l’applicazione legacy ESXi Customizer
- Scarica l’hypervisor ESXi da MyVmware – nel nostro caso ho scelto la versione 5.1 in quanto è già presente nella mia rete:
- Scarica i driver Net-tulip e estraili sul tuo computer
- Esegui il comando ESXi-Customizer.cmd (come Administrator):
- Seleziona l’hypervisor ESXi, scegli il file Net-Tulip .vib e specifica la working directory – quindi clicca Run:
- Ignora il messaggio di errore – clicca NO:
- In pochi minuti l’immagine ISO sarà creata:
Installare ESXi su Hyper-V
- Assicurati di avere la feature Hyper-V installata sul tuo Windows 10 o Windows Server. Se la risposta è no, Hyper-V può essere aggiunto utilizzando la scheda del pannello di controllo Turn Windows Features on or off:
- Lancia Hyper-V Manager, clicca col destro e seleziona new > Virtual machine:
- Clicca next:
- Specifica un nome per la tua VM e scegli un percorso dove salvarla:
- Seleziona Generation 1:
- Specifica il quantitativo di RAM che desideri usare. Assicurati che non ci sia la spunta su Ensure Dynamic Memory usage:
- Verifica che non ci sia alcuna connessione selezionata alla schermata Configure Networking – parleremo di questo punto più avanti:
- Specifica la dimensione della VM e il nome del file .vhdx. 10GB sono più che sufficienti:
- Seleziona Intall an operating system from a bootable CD/DVD-ROM e scegli l’immagine ISO creata precedentemente:
- Al summary, verifica che la configurazione sia corretta e clicca Finish:
- Prima di avviare la VM clicca col destro e seleziona Settings:
- Alloca le vCPU in base alle risorse del tuo sistema:
- Rimuovi qualsiasi interfaccia di rete presente:
- Clicca add hardware e scegli Legacy Network Adapter, quindi premi Add – Verranno utilizzati i driver Net-Tulip installati precedentemente:
- Assicurati che il Legacy Network Adapter sia connesso alla tua rete fisica. Premi OK per applicare le modifiche:
- Ora è necessario preparare Windows per consentire la virtualizzazione nidificata. Questo viene fatto con PowerShell. Su GitHub è disponibile unos script open source che fa la parte dura del lavoro.
- Naviga su https://github.com/MicrosoftDocs/Virtualization-Documentation/blob/master/hyperv-tools/Nested/Enable-NestedVm.ps1 e scarica lo script Powershell Enabled-NestedVM.ps1. Salvalo nello stesso percorso della VM.
- Apri PowerShell (deve essere lanciata come Administrator) e al percorso dove hai salvato il file Enabled-NestedVM.ps1
- Digita Set-ExecutionPolicy -scope Process -ExecutionPolicy Bypass
- Questo consentirà di eseguire gli script PowerShell scaricati sul tuo sistema.
- Seleziona [Y] Yes per abilitare la feature.
- Ora digita .\Enabled-NestedVM.ps1 -vmname “YOUR VM NAME”:
- Rispondi [Y] alla richiesta di abilitazione del MAC Spoofing.
- Ora puoi avviare la VM.
- Partirà l’ESXi Installer – Premi subito TAB per configurare le opzioni di boot.
- Digita ignoreHeadless=TRUE (rispetta maiuscole e minuscole):
- Segui le indicazioni per installare ESXi. Ti verrà chiesto di specificare la destinazione dei file di installazione:
- Premi Enter per continuare e accetta i termini della licenza:
- Seleziona la partizione da 10GB creata precedentemente:
- Specifica le impostazioni del layout tastiera e configura la password di root:
- Premi F11 per iniziare l’installazione. Richiederà qualche minuto:
- Scollega il drive ottico virtuale e riavvia:
- Il server ESXi verrà avviato.
- Caricato ESXi dovresti vedere la shell e notare un indirizzo IP. Questo indica che la configurazione legacy della rete ha funzionato:
- Premi F2 e esegui il login come ROOT:
- Ora dobbiamo impostare l’opzione di boot “ignoreHeadless=TRUE” come permanente. Per farlo, dobbiamo abilitare la shell di ESXi. Accedi alle Troubleshooting options e abilita Enable ESXi shell:
- Premi ALT F1 per accedere la ESXi Shell.
- Fai il login.
- Digita esxcfg-advcfg –set-kernel “TRUE” ignoredHeadless:
- Riavvia il server.
- ESXi partirà senza bisogno di intervento manuale.
- E’ consigliabile disabilitare la ESXi Shell per ragioni di sicurezza:
- Ora puoi provare a connetterti all’indirizzo IP dell’host ESXi appena creato. Probabilmente non sarai in grado di pingare il server nonostante l’indirizzo IP Net-Tulip.
- Apri il Command Prompt (come administrator) e aggiungi uno static route per il tuo ESXi IP. Digita route add -p 192.168.1.240 192.168.1.1 (sostituisci con i valori della tua rete).
- Pinga nuovamente l’host e verifica la risposta:
- Apri il browser e collegati all’host ESXi.
- Scarica il vSphere Client e installalo:
- Apri il vSphere client e collegati al server ESXi usando le credenziali di root. Sei pronto per utilizzare l’host:
Read related articles
Come installare e configurare VMware PowerCLI version 10
VMware PowerCLI è un set di moduli Windows Powershell utilizzati per gestire e mantenere un ambiente virtualizzato VMware. PowerCLI è
Come configurare un failover cluster con Hyper-V
Hyper-V consente di abilitare la high-availability attraverso il cluster manager di Windows Server. Questo permette di creare delle infrastrutture virtuali
Convertire una VM VMware Workstation in una ESXi con vCenter Converter
Grazie al VMware vCenter Converter, non è difficile convertire una macchina virtuale Workstation in una ESXi . Le due piattaforme