Introduzione
In questo articolo illustrerò come effettuare l’importazione di una VM in formato OVF (Open Virtualizaton Format) su una VMware ESXi 4.1.0 (build 260247) attraverso l’ausilio dell’utility da linea di comando denominata OVF Tool 2.0.1 (build 260188) che serve proprio al nostro scopo (ricordando che è utilizzabile con diversi prodotti VMware).
Iniziamo
Prima azione (premettendo che la faze zero è il download e l’installazione del tool sul proprio OS windows o linux che sia) da eseguire consiste nella creazione del nostro file OVF a partire dal file .vmx della VM:
ovftool Debian.vmx Debian.ovf
l’output dell’elaborazione sarà il seguente (questa operazione ci impiegherà un pò di tempo):
Opening OVF source: Debian.ovf Opening VI target: vi://user@ip_esxi/ Deploying to VI: vi://user@ip_esxi/ Disk progress: 0%
alla fine di questo processo avremo il nostro file OVF pronto per l’importazione ma prima
eseguiamo il comando sottostante per ottenere un poco di info (niente di particolare):
ovftool Debian.ovf Opening OVF source: Debian. OVF version: 1.0 Name: Debian Download Size: 2.29 GB Deployment Sizes: Flat disks: 15.00 GB Sparse disks: 5.53 GB Networks: Name: bridged Description: The bridged Virtual Hardware: Family: vmx-07 Disk Types: SCSI-lsilog Completed successfully
Andremo adesso a importare la nostra VM con estensione .ovf da una cartella locale verso la nostra ESXi, faccio presente che l’ovf tool supporta protocolli quali Http, Https, Ftp quindi in via generale il nostro file ovf di origine potrebbe anche essere risiedere in una sorgente che non sia un path locale, in generale la sintassi da utillizare è la seguente:
protocol://utente:password@host:porta/
utilizzando la sintassi per i path locali utilizzeremo la nomenclatura file://path/nomefile.ovf
ovftool --machineOutput --datastore=Store_01 --network="VM Network" --powerOn file://path/Debian.ovf vi://user:passwordn@ip_esxi/
Spiegazioni sulle opzioni utilizzate all’interno del comando (ho utilizzato le opzioni con il loro nome per esteso in modo renderne subito chiaro il loro significato di utilizzo):
--machineOutput: mostra a video la progresssione dell'elaborazione per l'importazione del file .ovf --dataStore: specifica il Datastore nel quale caricare la nostra VM --network: specifica l'etichetta della rete alla quale dovrà essere connessa la nuova VM importata (per informazioni sulle reti disponibili sulla vostra ESXi, potete utilizzare il comando esxcfg-vswitch -l , il campo da noi interessato sarà quello riportato sotto il "Port Group Name"), a seguire l'esempio:
~ # esxcfg-vswitch -l Switch Name Num Ports Used Ports Configured Ports MTU Uplinks vSwitch0 128 9 128 1500 vmnic0 PortGroup Name VLAN ID Used Ports Uplinks Management Network 0 1 vmnic0 VM Network 0 6 vmnic0 Switch Name Num Ports Used Ports Configured Ports MTU Uplinks vSwitch1 128 2 128 1500 PortGroup Name VLAN ID Used Ports Uplinks VMNetwork2 0 0 VMkernel2 0 1
–powerOn : terminata l’importazione viene effettuato il powerOn della VM
file://path/Debian.ovf : file .ovf : path locale ove risiede il nostro file
vi://user:password@ip_esxi/ : il nostro server ESXi, precisamente la VM sarà creata nella
directory principale del nostro Inventory è possibile anche
crearla in un determinato “Resource Pool”.
questo sarà l’output sullo nostro standard output:
Progress: 0 Progress: 1 Progress: 2 . . . Progerre 97 Progress: 98 Progress: 99 Progress: 100 Target ID: vim.VirtualMachine:304
così si completa il processo di importazione della VM, se controllate il vostro Inventory o all’interno del path vmfs/volumes/vostro_datastore/ troverete la cartella contente i file della vostra VM.