sabato 4 aprile 2015

Virtualizzare con XenServer

In passato avevo già provato XenServer e non ne ero rimasto particolarmente soddisfatto, almeno confrontandolo con VMWare ESXi, adesso torno alla carica con l'ultima versione.
L'installazione è molto semplice e lineare, una volta riavviato ci si trova davanti ad una videata di configurazione con un numero di possibilità ed opzioni decisamente superiore a quanto offerto da ESXi, però poi la vera gestione del server si fa da Windows, tanto per cambiare, usando il client dedicato XenCenter.

Importazione da altre soluzioni di virtualizzazione.
La prima cosa che faccio dopo essermi loggato al server è tentare di importare una VM creata in VirtualBox dopo averla esportata in formato OVA, e manco a dirlo il file viene sempre indicato come corrotto, quindi questo formato OVA/OVF che dovrebbe rappresentare una sorta di standard non funziona quasi mai, anche se con VMWare Workstation, nonostante un warning l'importazione sia possibile.
A questo punto invece che usare il file OVA generato da VirtualBox ho eseguito l'export in OVF da VMWare Workstation e in questo caso XenServer sembra abbia gradito ed è partita l'importazione .... che non è mai terminata, infatti nonostante il file OVA fosse di solo un centinaio di mega la barra di progressione dell'importazione del disco è rimasta ferma per buoni 30 minuti, fino a quando ho deciso di fermare tutto.
Bell'inizio non c'è che dire, se la prima impressione è quella che conta siamo messi proprio bene, ma forse il problema è nella VM che volevo importare, uno SCO OpenServer, notoriamente ostico alla virtualizzazione e di certo non supportato da XenServer.
Il secondo tentativo lo ho fatto esportando una VM Windows 2003, sempre da VMWare Workstation, ma il risultato è stato lo stesso, a questo punto mi è sorto il sospetto che non ho capito come funzioni l'importazione, infatti se nel menù view abilito hidden objects appaiono delle strane VM tra cui anche quella che tento di importare che risulta non avere un disco fisso agganciato e un'altra in esecuzione con nome "Transfer VM for VDI" che non capisco cosa faccia, immagino che si occupi dell'importazione ma come operi e se stia effettivamente facendo qualcosa non lo capisco.

Creazione di una nuova VM.
OK lasciamo perdere l'importazione che nonostante dovrebbe essere operazione alla portata di tutti a me risulta impossibile da comprendere, creiamo una nuova macchina virtuale allora, e anche qui i problemi non mancano.
Per prima cosa sul server XenServer non ho il lettore DVD, perchè al posto del lettore c'è proprio il disco su cui è installato XenServer, poco male uso una ISO per l'installazione, già ma l'unica possibilità offerta da XenServer è quella di creare una "ISO library" puntando su un'altra macchina utilizzando per esempio una share CIFS/SAMBA.
Ora, colpa di Windows 8.1 di sicuro, ma nonostante nelle risorse di rete vedessi il NAS ho dovuto usare come path alla share l'indirizzo IP dello stesso e non il nome come appare nelle risorse di rete, mistero sul quale non penso valga la pena di indagare.
In ogni caso, avendo già buttato su qualche ISO queste sono apparse nella libreria e quindi posso provare l'installazione di qualche OS, tra l'altro aggiungendo nuove ISO via FTP sul NAS queste vengono viste in automatico nella libreria, certo ci mancherebbe pure che non fosse cosi.
Come primo test ho pensato di installare Windows 2003 che è tra i sistemi guest supportati da XenServer per cui non dovrei avere problemi di sorta.
Il wizard per creare una VM, come detto, prevede già Windows 2003 quindi mi sono limitato solo alla personalizzazione di alcuni parametri, tipo 1 giga di RAM e 40 giga di disco, poi ho avviato l'installazione usando la ISO dalla libreria e dopo aver selezionato il tab "console" ho proceduto come di consueto con l'installazione come se si trattasse di una macchina reale.
L'installazione mi è sembrata un pò lenta e al termine ho deciso di installare subito gli "XenServer Tools" che dovrebbero migliorare le prestazioni e l'usabilità della VM, e cominciano i problemi, per prima cosa bisogna installare il NET Framework 4 che per fortuna è sulla ISO dei Tools, però questo non si installa perchè manca il componente WIC di Windows che non è presente nella ISO e va scaricato a parte.
Lavorare nella console è di una lentezza allucinante, considerando che la versione di IE che c'è in Windows 2003 è cosi vecchia da non essere utilizzabile ho dovuto scaricare il file dal PC client, caricarlo sul mio server FTP e poi dalla VM usare il client a caratteri FTP per scaricare e installare il file. Per qualche motivo se provavo a usare Explorer per scaricare il file dal mio server FTP mi diceva che non lo potevo salvare.
Alla fine dopo aver installato WIC, NET Framework ho potuto installare i Tools e dopo un riavvio devo dire che non mi pare di notare grandi miglioramenti a livello di prestazioni.
Ho provato anche l'installazione di Debian Wheezy e pure qui la lentezza della console è stata allucinante, innanzitutto l'interfaccia a carattere classica dell'installazione è andata su per il camino, infatti l'interfaccia utilizzata era quella da console seriale, solo molto piu' lenta.
Per fortuna ho fatto un'installazione minimale per ridurre i tempi che comunque mi sono sembrati superiori a quelli di una installazione reale o anche in VirtualBox.
Ho provato a installare OpenBSD 5.6 ma sebbene l'installazione sia andata a buon fine non è stato possibile configurare l'interfaccia di rete, al primo riavvio però sembrava funzionare, o quasi, in quanto l'interfaccia re0 ha ottenuto un indirizzo IP ma continuava ad apparire il seguente messaggio :
re0 : watchdog timeout
e provando a pingare altri PC sulla rete non si otteneva risposta.
Il problema della rete sembra legato al fatto che viene emulata una "Realtek r8139", sicuramente non supportata "out of the box" da SCO, anche se OpenBSD non dovrebbe avere problemi, purtroppo non c'è, o non ho trovato, il modo per cambiare il tipo di scheda da emulare, una classica PC-Net dovrebbe risolvere il problema.
A dire il vero qui viene indicato un "hack" per usare una scheda e1000, io ho provato a fare la stessa cosa, usando una pcnet, scheda vecchia ma supporata da qualsiasi OS di questo mondo, SCO Unix compreso, ed infatti il riavvio di OpenBSD, e le opportune modifiche, hanno permesso a questo OS di vedere la rete senza problemi.
Purtroppo con l'installazione di SCO le cose sono andate piuttosto male, l'installazione è stata perfetta, e con la modifica della scheda di rete questa è stata rilevata senza problemi però al primo riavvio la VM si blocca con questo messaggio :
not a directory
boot not found
cannot open
stage 1 boot failure: error loading hd (40)/boot
che a spanne vuol dire che il disco della VM risulta corrotto. Ho rifatto l'installazione da zero ma il problema si è presentato ugualmente, immagino che il supporto non sia proprio completo da parte di qemu, almeno in XenServer.

Creazione di una VM con XenConvert.
XenConvert è un'applicazione Windows che va installata su un PC che si vuole importare in XenServer, quindi trasforma una macchina fisica in una virtuale.
Come test ho però usato una VM Windows XP in VirtualBox, una volta installato il programma basta lanciarlo e seguire le semplici schermate proposte, l'unica cosa da notare è che nella videata in cui si impostano i parametri di accesso a XenServer, indirizzo IP, utente e pssword, bisogna indicare anche un workspace, che altro non e' che un'area di storage temporaneo.
Ecco, questa è una cosa che non mi aspettavo ad essere sincero, in pratica serve un disco dove far transitare i dati prima di mandarli sul server, almeno così immagino, ora nel mio caso usando una VM non ho fatto altro che abilitare da VirtualBox una cartella condivisa con una cartella del PC host e poi la ho mappata come unità di rete e data come area di workspace e così ho potuto procedere con il passo successivo che altro non è che la richiesta di un nome per la nuova VM e l'area di storage sul server dove salvarla.
A questo punto inizia la procedura vera e propria di importazione, vedo che viene creata una nuova unità, E: nel mio caso, che sembra una copia esatta dell'unità C:, immagino sia una sorta di immagine con i dati congelati al momento in cui inizia l'importazione in modo che se continuo ad usare il PC non si creino problemi di sincronia, ma è solo una supposizione.
Sull'unità di workspace intanto si sono creati 3 file, un OVF e un PVP di qualche kb che immagino contengano informazioni relative al ben più grande file VHD, non resta che attendere.
Sono passate 5 ore e la barra di progressione non è nemmeno ad un terzo, ovviamente non c'è la visualizzazione del tempo trascorso e soprattutto di quanto manca alla fine, ma il file VHD non è nemmeno di 8 giga e in 5 ore non ha completato che un terzo dell'operazione.
Se è così che funziona l'import di una macchina fisica in virtuale direi che è meglio prendersi per tempo, nell'ordine di qualche giorno o settimana se si dovesse trattare di virtualizzare un server con qualche 10 di gigabyte di dati.

OpenXenManager
Questo dovrebbe essere un client per gestire XenServer utilizzabile anche in ambiente linux, il file da scaricare riporta la data di dicembre 2010 quindi non sembra un progetto molto attivo.
Dopo aver scaricato e scompattato il file, installato le dipendenze python necessarie eseguo il programma, mi collego al server e ...... resto qui a guardare una finestra vuota e tristemente bloccata.
Raggiunto il forum di supporto scopro che il problema è già stato segnalato e che, purtroppo, questo progetto non è più portato avanti in maniera continuativa.
Comunque ho provato a scricare i sorgenti con git :
git clone https://github.com/OpenXenManager/openxenmanager.git
poi su Debian ho dovuto aggiungere alcuni pacchetti, oltre a quelli già indicati nel link di cui sopra : 
sudo apt-get install python-glade2 python-configobj
A questo punto ho eseguito il programma di nuovo e questa volta la connessione a XenServer è avvenuta.
Ho subito provato ad avviare la VM con Windows 2003 e la prima cosa che ho notato è come una volta attivato il TAB della console si spostasse il focus sul TAB performance per conto proprio, un pò una seccatura
Altro problema è che non rileva l'installazione degli XenTools sulle VM, infatti in quella con Windows 2003 sono regolarmente installati ma OpenXenManager indica che non è così.
Comunque ho provato ad usarlo per installare Debian Jessie, in questo caso non partendo da un template, non ce ne è uno per Jessie, non è stato usato il parametro quiet console=hvc0 per l'avvio del kernel e infatti l'installer era quello classico di Debian a differenza di quanto avvenuto con l'installazione di Wheezy.
Altra cosa che ho notato, ma forse mi sbaglio, è che in questo caso sembra venga usato qemu per la virtualizzazione e non xen, almeno ho avuto questa impressione nel momento in cui è stato chiesto di partizionare il disco che risultava essere un ata-qemu mentre nella VM Wheezy era un xvd o qualcosa del genere, immagino che dipenda dal fatto che Wheezy è previsto nei template e quindi gestito con xen.
Purtroppo nell'installazione ho avuto problemi con la rete e da OpenXenManager non sono riuscito a configurare l'interfaccia di rete per la VM, infatti nel momento in cui confermavo l'operazione di "add" non appariva nessuna rete, usando XenCenter da Windows ho poi visto che a forza di prove di interfacce ne avevo aggiunte parecchie.
Ma il problema maggiore è che l'interfaccia di rete non otteneva un indirizzo dal DHCP del router, in pratica non era in bridge, e quindi non potevo andare in internet e quindi scaricare i pacchetti per continuare l'installazione di Debian.
Dopo aver cancellato la VM ho rifatto l'installazione questa volta con XenCenter e problemi con la rete non ce ne sono stati, può anche essere che abbia sbagliato io qualche settaggio nel primo tentativo con OpenXenManager.

Conclusioni
Insomma XenServer non mi aveva entusiasmato in passato e anche ora non mi pare di potermi dire particolarmente soddisfatto, non ho trovato nessuna funzionalità particolare e anzi mi pare siano più le mancanze ed i limiti che i pregi.
Voglio sottolineare che non sono un esperto in materia di virtualizzazione per cui valuto il prodotto in base a quelle che sono le mie semplici esigenze, più che altro finalizzate ad avere VM di test, ammetto che l'hardware a disposizione non è il più indicato, CPU Intel T7500, 8 giga di RAM e disco SATA da 320 giga a 7200 giri, ma nonostante questo l'impossibilità di importare da altre soluzioni di virtualizzazione, la lentezza assurda di XenConvert e il limitato numero di OS supportati, il problema con la scheda di rete emulata, non me lo fanno piacere in particolar modo.

Finisce qui questa mia breve e ben poco accurata disamina su XenServer.






Nessun commento:

Posta un commento