Clark's Home page

Tecnicismi vari di un Sysadmin Linux ma anche qualcosa della sua vita

Virtualizzazione di macchina fisica sotto XEN —

Nell’ultimo periodo mi sono trovato ad affrontare parecchie problematiche legate a fattori di varia natura sia umana che tecnologica, in parole più semplici mi sono visto costretto a virtualizzare delle macchine fisiche per poterle mettere sotto cluster e avere sia HA che backup che non esistevano.
Se di per se la cosa non è complessa con vmware anzi è addirittura facile la faccenda si complica e non poco per portare la macchina sotto XEN.
Vmware è senza dubbio il prodotto di punta per la virtualizzazione ma davvero non mi ci trovo, al di la del fatto che sia quasi totalmente grafico che tutto sommato è fondamentalmente solo spocchia da parte mia, quello che mi ha fatto capire che vmware non è il prodotto adatto alla nostra azienda è stato il fatto che io posso per fare un esempio spegnere le macchine guest di vmware schedulando lo spegnimento dalle macchine stesse ma non posso schedulare lo spegnimento della macchina host.
Ci siamo trovati a dover togliere tensione alla cabina del 15000V e per spegnere la macchina vmware ho dovuto collegarmi alle 4 di mattino da casa in ssh per poterlo fare, cosa che invece sulle macchine XEN ho schedulato con un banalissimo at.
La trasformazione da “ferro” a virtuale avviene in due passaggi, il primo è trasformare l ferro in un immagine vmware, per fare ciò e’ necessario usare  VMware vCenter Converter Standalone Client questo in buona sostanza creerà una directory contenente la virtualizzazione dell’intero disco nel caso in esame PC52.
in questa directory c’è  un file con estensione .vmdk, N.B. i files possono più d’uno in questo caso si procede come segue, copiare la directory sotto una macchina linux con XEN, entrare nella directory e dare questi comandi

# for i in `ls *[0-9].vmdk`; do qemu-img convert -f vmdk $i -O raw ${i/vmdk/raw} ; done
# cat *.raw >> pc52.img

Non ho provato avendone uno solo ma la fonte è questa:
https://wiki.xenproject.org/wiki/Migration_from_VMware

il passo due è dare in pasto a qemu la nostra immagine, quindi:

#qemu-img convert PC52.vmdk -O raw /home/xen/PC52.img
Creare il volume logico PC52 nel path desiderato nel mio caso /dev/virtual e a seguire:

dd if=/home/xen/pc52.img bs=10M dd of=/dev/virtual/PC52 bs=10M
nel mentre si copia creare sotto /etc/xen/virtual il file di configurazione per PC52 che sarà un qualcosa di questo tipo:
# start

name = “pc52″
boot = ‘d’
builder=’hvm’
device_model_version=”qemu-xen”
device_model_override = ‘/usr/bin/qemu-system-x86_64’
disk = [ ‘phy:/dev/testing/PC52,xvda,w’ ]
memory = 8192
vif = [ ‘mac=00:16:3E:B4:D4:47, bridge=xenbr0, model=e1000’]
vcpus = 4
cpus = “0-11”
on_poweroff = ‘destroy’
on_reboot   = ‘restart’
on_crash    = ‘restart’
vnc = 1
vnclisten = “0.0.0.0”
vncdisplay = 28
vncpasswd = ”
vncunused  = 0
stdvga = 1
videoram = 64
tsc_mode = “native”
serial = ‘pty’
keymap = ‘it’
usbdevice = ‘tablet’
Finita la copia con xl create pc52 lanciare la macchina e sul display 28 con vncviever controllare che la macchina parta.

Se si fare login come administrator e se richiesto di solito si perchè se cambia  l’HW lo chiede inserire il codice seriale del PC virtualizzato.

 


Categorised as: Linux | virtualizzazione | Work

Comments are disabled on this post


Comments are closed.


Hide picture