P2V di CentOS 7 su VMware


In un precedente articolo abbiamo visto come trasformare un’installazione di Ubuntu su hardware reale in una virtual machine da caricare su un host VMware ESXi. In questo, invece, vediamo come virtualizzare, ossia fare P2V, di un sistema CentOS 7 su VMware.

La procedura è analoga a quella di Ubuntu, o forse è ancora più semplice.

Basta installare VMware vCenter Converter Standalone, il software messo a disposizione in maniera gratuita da VMware, che può essere scaricato gratuitamente da qui: https://my.vmware.com/group/vmware/details?downloadGroup=CONV62&productId=701&rPId=20180#, noi facciamo riferimento alla versione 6.2.0.1.

Il tool può essere installato su Linux o su Windows. Se non si dispone di una GUI sul proprio server CentOS è conveniente installare VMware vCenter Converter su un portatile o su una workstation con interfaccia grafica.

La virtualizzazione P2V di CentOS viene fatta a sistema operativo acceso, conviene però fermare applicativi e database presenti sulla macchina. La versione 6.2.0.1 del Converter supporta tutte le versioni di CentOS 6 e le versioni CentOS 7.0, 7.1, 7.2, 7.3, 7.4, 7.5 (64-bit), non la 7.6 e successive; in questi casi è possibile fare P2V su CentOS però ci sono delle cose da fare dopo aver trasformato il sistema in virtual machine.

Quindi aprendo il tool di conversione, lanciare il comando Convert machine e selezionare come Source Type “Powered on” e poi “Remote Linux Machine”. Indicare l’indirizzo IP o l’hostname del server CentOS, immettere l’username root e la sua password.

Indicare i parametri dell’host ESXi sul quale importare la nuova virtual machine.

Indicare il nome con cui verrà chiamata la virtual machine sul host ESXi. Se sono presenti altre VM sull’host, essere verranno elencate.

Se sono presenti più datastore sull’host ESXi, selezionare quello con spazio sufficiente o quello desiderato.

In seguito apparirà un riepilogo delle caratteristiche della futura VM.

Cliccando su Finish nella schermata precedente comincia subito il P2V di CentOS 7.

Il tempo necessario alla conversione dipende da diversi fattori tra i quali la banda e la dimensione della VM. In questo caso la trasformazione in virtual machine di CentOS è stata rapida.

Ora è possibile spegnere il server fisico con CentOS e accendere la virtual machine.

Risoluzione degli errori

All’avvio del sistema virtualizzato compare questa schermata “error: can’t find command ‘:’.”

E’ sufficiente premere INVIO alcune volte in modo che il sistema proceda con l’avvio.

Una volta che il sistema è avviato lanciare come utente root i seguenti comandi:

sed -i '/^:/d' /etc/grub2.cfg
sed -i '/^:/d' /boot/grub2/grub.cfg
grub2-mkconfig -o /boot/grub2/grub.cfg

Riavviare il sistema.

Questa anomalia si verifica se si utilizza una versione non supportata es. CentOS 7.7 da VMware Converter. In questo caso i file con la configurazione del bootloader Grub2 risultano “rovinati” da un errore: molte righe cominciano con il carattere due punti. Questi vanno eliminati e la configurazione rigenerata.

Migrazione P2V di Ubuntu 16.04

In questo articolo vedremo come convertire un sistema Linux Ubuntu 16.04 server installato direttamente sull’hardware in una virtual machine che andrà a girare su un host VMware ESXi.

Tale conversione, ossia la migrazione da un sistema fisico ad uno virtuale, prende il nome di P2V (Physical to Virtual).

Un sistema Ubuntu 16.04 può essere facilmente spostato su un virtualizzatore in relativamente poco tempo: la migrazione del sistema può essere fatta con il server Ubuntu acceso fino al completamento della conversione. Poi il vecchio server Ubuntu può essere spento e la nuova virtual machine accesa in pochi minuti.

Non ci sono particolari vincoli o restizioni nella migrazione P2V. E’ conveniente però fermare eventuali database sul server Ubuntu e servizi non essenziali.

Oltre ad un host ESXi, con un datastore VMware con sufficiente spazio per ospitare la virtual machine, ci serve un PC sul quale installare VMware VCenter Converter Standalone.

VMware VCenter Converter Standalone può essere scaricato gratuitamente da qui: https://my.vmware.com/group/vmware/details?downloadGroup=CONV62&productId=701&rPId=20180#, in questo articolo si fa riferimento alla versione 6.2.0.1 di VMware VCenter Converter Standalone.

Note: se il vostro sistema Ubuntu ha un kernel molto aggiornato, installate l’ultima versione disponibile altrimenti potreste incappare in incompatibiltà.

Questo software può essere installato sia su Linux sia su Windows. E’ importante, per semplificare le cose, che il PC sia sulla stessa LAN oppure che abbia completa visibilità sia dell’host ESXi sia del server Ubuntu.

Lato Ubuntu, prima di partire bisogna predisporre di un account Linux. E’ possibile utilizzare l’account di root ma deve essere abilitato a collegarsi tramite SSH oppure si può usare un utente sudo purchè possa eseguire tutti i comandi di sudo senza dover inserire una password.

Per abilitare quest’ultima cosa è sufficiente aggiungere la seguente riga “username ALL=(ALL) NOPASSWD: ALL” dove username è il nome dell’utente sudo nel file /etc/sudoers; il tutto usando l’editor visudo.

$ sudo visudo

Fortunatamente tale riga può essere rimossa al termine della migrazione p2v.

Ora per migrare P2V il sistema Ubuntu 16.04, basta avviare VMware VCenter Converter Standalone e cliccare su “Convert machine”

Apparirà la prima finestra della procedura guidata che ci invita a selezionare Remote Linux machine dal primo menù a tendina.

Poi di indicare l’indirizzo IP oppure l’hostname del server Ubuntu 18.04 da virtualizzare, nonchè nome utente e password. Queste possono essere le credenziali di root oppure dell’utente sudo predisposto prima.

Viene chiesto di verificare che l’impronta del server Ubuntu sia quella che ci si aspetti, confermando con YES, è possibile andare oltre.

Se l’utente inserito è corretto, viene chiesto di immettere le informazioni necessarie per collegarsi all’host ESXi, è sufficiente inserire l’IP, un utente amministrativo come root e la sua password.

Viene chiesto di dare un nome alla virtual machine di destinazione, di default viene preso l’hostname del server Ubuntu. E’ possibile cambiarlo. Nell’inventory sono presenti tutte le VM che sono già ospitate sull’host ESXi.

Viene data la possibilità di selezionare un datastore: scegliamo il datastore con spazio adeguato alle dimensioni della virtual machine che sarà creata durante il P2V del server Ubuntu.

In seguito vengono mostrati i dettagli di come verranno fatte le VM. In particolare si nota che lo spazio che sarà occupato dalla virtual machine è di circa 5 GB. Queste informazioni possono essere accomodate alle proprie necessità, basta cliccare sulla voce Edit.

Andando avanti, mantenendo inalterate le impostazioni precedenti, avremmo comunque un riepilogo dopo il quale partirà il job di P2V di Ubuntu.

Inizialmente la stima può essere anche molto maggiore del tempo effettivamente necessario; la prima parte prevedere la creazione della virtual machine nuova sull’host e poi parte la migrazione di Ubuntu.

Durante la migrazione possiamo vedere come vengono aggiornati dei log.

Nella fase di conversione della macchina fisica a virtuale, sul server Ubuntu di origine vengono lanciati dei comandi di copia e processi ssh: tar e sshd.

Al termine dell’operazione di P2V è possibile spegnere il server fisico e accendere la virtual machine. Ricordiamoci di rimuovere, se l’abbiamo aggiunta, la riga nel file sudoers.

Ecco il sistema, su virtual machine, funzionante!

Risoluzione errori

Unable to query the live Linux source machine. Make sure that you can run sudo without entering a password when logged in to the source machine over SSH as ‘vale’.

L’utente vale, benchè abbia diritti di sudo, richiede la password via SSH. Disabilitarla inserendo la riga “vale ALL=(ALL) NOPASSWD: ALL” nel file sudoers.

FAILED: An error occurred during the conversion: ‘GrubInstaller::InstallGrub: /usr/lib/vmware-converter/installGrub.sh failed with return code: 127, and message: FATAL: kernel too old Error running vmware-updateGrub.sh through chroot into /mnt/p2v-src-root Command:

chroot “/mnt/p2v-src-root” /vmware-updateGrub.sh “GRUB2” “(hd0)” “(hd0,1)” /vmware-device.map “grub2-install” ‘

Questo errore compare attorno al 97-98% della fase di conversione della virtual machine e ciò è dovuto a una combinazione di kernel/grub non correttamente riconosciuta da VMware Converter, in questo caso Ubuntu 18.04. Questo errore per esempio si verifica con la combinazione Grub 2.02-2ubuntu8.14 e Linux 4.15.0-74-generic. Al momento non è risolvibile e Ubuntu 18.04 non funziona con questa versione di Converter.

Kernel Panic – not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

Kernel panic della VM Ubuntu 16.04

Al primo avvio (e ai successivi) la VM virtualizzata Ubuntu 16.04 continua ad andare in kernel panic. Per risolvere il problema, collegare il DVD/iso alla VM e avviare in modalità ripristino, ossia scegliendo la voce “Ripristina un sistema danneggiato”.

Se Ubuntu 16.04 era stato installato con le impostazioni di default (LVM) selezionare il filesystem di root che corrisponde al logical volume che termina con la parola root.

Inserire i comandi che compaioni sotto:

update-initramfs -u
update-grub
exit

Dopo exit, scegliere di riavviare il sistema.

Rimuovere il DVD/iso e avviare la virtual machine. Ora dovrebbe essere possibile collegarsi ad Ubuntu.

Aggiornare la build di VMware ESXi

08/02/2020 – Ci sono molti modi per aggiornare VMware ESXi installando le patch per raggiungere l’ultima build. Il metodo più semplice è quello via riga di comando. Se possedete un vCenter, è meglio aggiornare questo prima degli host ESXi associati.

Prerequisiti

  • Aggiornare il vCenter server (se presente).
  • Assicurarsi che l’host ESXi abbia connettività verso Internet per scaricare le patch
  • Migrare/spegnere le VM accese perchè l’host verrà riavviato.

Procedura

Prima di procedere è comunque meglio mettere l’host in manutenzione e spegnere o migrare altrove le virtual machine ospitate.

Attivare SSH andando su Actions, Services, Enable Secure Shell (SSH).

Aprire una shell usando un programma come Putty.

Produrre una lista di profili, cioè di bundle con gli aggiornamenti, filtrando per “ESXi-6.7”. In questo modo si può scegliere la build di ESXi preferita, quest’operazione può richiedere parecchi minuti per produrre l’output.

[root@esxi:~] esxcli software sources profile list --depot=https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep ESXi-6.7
ESXi-6.7.0-20180704001-standard   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20181104001-no-tools   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20181004001-no-tools   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-8169922-standard       VMware, Inc.  PartnerSupported  2018-04-03T22:07:05  2018-04-03T22:07:05
ESXi-6.7.0-20180804001-standard   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20180804001-no-tools   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20180604001-no-tools   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-8169922-no-tools       VMware, Inc.  PartnerSupported  2018-04-03T22:07:04  2018-04-03T22:07:04
ESXi-6.7.0-20181002001-no-tools   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20181001001s-no-tools  VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20181002001-standard   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20180604001-standard   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20181104001-standard   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20180704001-no-tools   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20181001001s-standard  VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18
ESXi-6.7.0-20181004001-standard   VMware, Inc.  PartnerSupported  2018-11-08T08:39:18  2018-11-08T08:39:18

Aggiungere la build di VMware aggiornata, in questo caso la “ESXi-6.7.0-20181004001-standard”, al comando di update. Lanciando il comando inizierà l’aggiornamento

[root@esxi:~] esxcli software profile update -p ESXi-6.7.0-20181004001-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml

Se l’installazione ha avuto successo, apparirà il seguente messaggio:

Update Result
   Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
   Reboot Required: true

E’ necessario riavviare il server. E’ sufficiente digitare il comando “reboot”

[root@esxi:~] reboot

Quando l’host ESXi sarà nuovamente up, sarà possibile toglierlo dalla manutenzione.

Troubleshooting: [Errno 28] No space left on device

Qualora durante l’aggiornamento, ossia dopo aver lanciato il comando esxcli software profile update, appaia il seguente errore:

 [InstallationError]
 [Errno 28] No space left on device
       vibs = VMware_locker_tools-light_10.2.1.8267844-8941472
 Please refer to the log file for more details.

E’ opportuno attivare la swap su un datastore esistente. Lo si può fare tramite interfaccia grafica.

In quest’altro caso, è apparso il seguente errore:

 [OSError]
 [Errno 28] No space left on device
 Please refer to the log file for more details.

Qui, putroppo è necessario scaricare il pacchetto delle patch manualmente e caricarlo su un datastore libero. Per scaricare il pacchetto delle patch basta collegarsi al sito https://my.vmware.com/group/vmware/patch#search e scegliere la versione da scaricare.

Caricare il file .zip su un datastore tramite un tool come filezilla, winscp e poi lanciare l’upgrade facendo riferimento a tale file. Es.

esxcli software profile update -p ESXi-6.7.0-20191204001-no-tools -d /vmfs/volumes/5c277d58-2d936a73-3924-7085c273d6ae/ESXi670-201912001.zip

Dove /vmfs/volumes/5c277d58-2d936a73-3924-7085c273d6ae/ESXi670-201912001.zip è il percorso del file zip.

Come aggiornare Vmware ESXi 6.5 contro il bug Spectre


Questo articolo è superato, non è più valido.

VMware ha rilasciato un bollettino di sicurezza denominato VMSA-2018-0002 in merito alle vulnerabilità di Meltdown e Spectre. La nota riguarda però solo Spectre in quanto, secondo il produttore, i software VMware non sono vulnerabili al bug Meltdown.  Il risultato dello sfruttamento della falla di sicurezza Spectre potrebbe consentire il passaggio di informazioni da una macchina virtuale a un’altra macchina virtuale in esecuzione sullo stesso host.

Sono interessati diversi prodotti VMware:

  • ESXi 5.5, 6.0 e 6.5 (da installare sono rispettivamente le patch: ESXi550-201709101-SG, ESXi600-201711101-SG, ESXi650-201712101-SG)
  • Workstation 12.x (aggiornare alla 12.5.8 per risolvere)
  • Fusion 8.x (aggiornare alla 8.5.9)

Chiaramente non sono predisposte patch per sistemi fuori supporto, che comunque risultano vulnerabili.

Le patch sono disponibili già dal 19 dicembre 2017 come indicato nel bolletino VMSA-2017-0021

Come patchare un host Vmware ESXi 6.5

Per patchare un host ESXi, è essenziale spostare tutte le VM accese altrove e mettere l’host in maintenance mode.

Poi attivare, qualora non lo fosse, il deamon SSH.

Disattivare il firewall temporaneamente con il comando:

esxcli network firewall ruleset set -e true -r httpClient

Lanciare questo comando:

esxcli software sources profile list -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep -i ESXi-6.5

Individuare la patch da installare, che è ESXi-6.5.0-20171204001-standard.

Installare la patch

esxcli software profile update -p ESXi-6.5.0-20171204001-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml

Al termine dell’installazione, riattivare il firewall:

esxcli network firewall ruleset set -e false -r httpClient

Riavviare l’host col comando:

reboot

 

 

Come installare i VMware Tools in Linux


I VMware Tools sono un insieme di utility che migliorano le prestazioni del sistema operativo guest di una macchina virtuale VMware e migliora la sua gestione. Senza VMware Tools installati nel sistema operativo guest, le prestazioni possono essere scarse (es. mouse “scattoso”, risoluzione video bassa…) ed alcune funzionalità sono assenti (manca l’audio). Normalmente inclusi nei software di virtualizzazione di VMware,  i VMware Tools a partire dalla versione 10 si possono scaricare dalla sezione MyVMware del sito del produttore.

Nelle ultime versioni di Debian, Ubuntu è già incluso un insieme di pacchetti chiamati open vm tools. Nel nostro caso preferiamo utilizzare i pacchetti forniti direttamente da VMware.

Continua a leggere

Installazione di VMware ESXi 6 U2 su ASRock AM1B-ITX con cpu AMD Athlon 5350


A distanza di oltre un anno dall’uscita di VMware ESXi 6.0.0 e dall’ultimo articolo specifico su VMware, arriva questo nuovo intervento. Ho deciso di acquistare una scheda madre economica con un CPU i quali consumi fossero decisamente contenuti.

Senza dilungarmi nelle discussioni la mia scelta è ricaduta su una cpu AMD Athlon 5350 (TPD 25 Watt) e una delle motherboard più economiche ma con buone funzionalità: ASRock AM1B-ITX.

Nel articolo vedremo come abilitare la scheda di rete integrata nella motherboard e alcune porte SATA che inizialmente non sono disponibili.

Continua a leggere

Aggiungere un datastore in VMware ESXi 6


Un datastore è un contenitore logico che può essere considerato come un disco con un suo filesystem adatto ad immagazzinare le immagini disco (i file .vmdk),  snapshot e i file di configurazione delle virtual machine. In VMware ESXi 6, sono presenti due tipologie di datastore: il classico datastore di formato VMFS e quello di tipo NFS.

Già VMware ESXi 5.5 ha introdotto il supporto per i dischi maggiori di 2 TB, anche con VMware ESXi 6 si possono avere dei dischi che eccedono i 2 TB: verranno creati più file vmdk in quanto il limite di dimensione massima di un file vmdk rimane 2 TB.

In particolare, con vmfs5 il formato GPT, che viene dato alla tabella delle partizioni, consente proprio di avere partizioni più gradi di 2TB.

In questo tutorial vediamo come aggiungere un datastore su un host VMware ESXi 6.

Continua a leggere

VMware ESXi 6


La scorsa settimana è stata resa pubblica, e scaricabile, la versione di VMware ESXi 6. Come per le ultime versioni dell’hypervisor, anche VMware ESXi 6 è disponibile gratuitamente, anche se con delle limtazioni rispetto alle licenze a pagamento. C’è da dire che per i primi 60 giorni, dall’installazione e attivazione della licenza gratuita, si possono provare tutte le funzionalità messe a disposizione dal software.

Continua a leggere

VMware ESXi 5


VMware ESXi 5 è l’ultima versione della serie di ipervisori leggeri di VMware. L’hypervisor VMware ESXi è uno dei software per la gestione di macchine virtuali di successo del mercato. Si installa direttamente sull’hardware infatti non occorre né Windows né Linux come sistema operativo ospitante. Ciò consente, tra l’altro, di ridurre l’overhead introdotto da servizi non necessari, cosa non da poco. Sfortunatamente VMware Esxi 5 è installabile soltanto su computer con processori a 64 bit, ma oramai non sembra un problema così rilevante come negli anni passati.

Continua a leggere