Internet è il postino dei nostri tempi che nessun cane azzannerà.

— Mario Muratore

Xenomania istruttiva

  • user warning: Table './stenoweb/node_comment_statistics' is marked as crashed and should be repaired query: SELECT last_comment_timestamp, last_comment_name, comment_count FROM node_comment_statistics WHERE nid = 137 in /home/stenoweb/public_html/modules/comment/comment.module on line 596.
  • user warning: Table './stenoweb/node_comment_statistics' is marked as crashed and should be repaired query: SELECT last_comment_timestamp, last_comment_name, comment_count FROM node_comment_statistics WHERE nid = 7 in /home/stenoweb/public_html/modules/comment/comment.module on line 596.
  • user warning: Table './stenoweb/node_comment_statistics' is marked as crashed and should be repaired query: SELECT comment_count FROM node_comment_statistics WHERE nid = 7 in /home/stenoweb/public_html/modules/comment/comment.module on line 1121.

http://www.stenoweb.it/files/blog/xen.png In questi giorni preprimaverili mi son dedicato anche alla lettura costruttiva. Da un po' volevo affronare l'argomento Xen, non per improbabili installazioni in vista, ma solo perchè sono un inguaribile curiosone. E allora cosa c'e' di meglio di un buon (e recente) libro sull'argomento ? In Italia non troveremo mai libri di informatica che vadano oltre ad un "Excel for dummies" o robe del genere, ma per fortuna esiste Amazon che in una decina di giorni vi recapita direttamente a casa tutto il sapere del mondo :D.
Ho trovato un libro eccellente che consiglio a tutti, leggibile da chiunque abbia una minima esperienza con Linux e voglia farsi una buona (e anche di più) idea di cosa sia l'universo virtualizzazione.

Il libro

Il libro in questione è Professional Xen Virtualization di William von Hagen ed è veramente scritto da Dio. Se amate, come me, un tono divulgativo ma approfondito, stile maestro/alunno non lasciatevelo scappare: nessun argomento buttato là, ma tutto spiegato con chiarezza e dovizia di particolari, con risposte a tutte le problematiche nell'allestire un ambiente virtualizzato di classe enterprise con strumenti open source. Una vera chicca.

Gli argomenti

Quello che sorprende in questo libro è la vastità di quanto descritto. Il libro è naturalmente Xen-centrico ma leggendolo capirete quanto è inflazionato il termine virtualizzazione: quanto sia improprio un confronto (perchè i fondamenti sono profondamenti diversi) tra prodotti system-level virtualization tipo OpenVZ, Virtuozzo o FreeVPS e prodotti full-level virtualization come Xen, KVM e VMWare ESX (non VMware server) o ancora come siano di una categoria ancora diversa (quella degli emulatori) prodotti come Microsoft VirtualPC e QEMU. O ancora cosa sia la paravirtualizzazione e la virtualizzazione hardware dei nuovi processori Intel e AMD.

E finalmente ho anche capito perchè ci sia andato KVM e non Xen nella mainline del kernel Linux.

Nel percorso di apprendimento niente viene lasciato al caso: vi viene spiegato anche come funziona il boot di un sistema Linux dato che se ci fossero dubbi su questo non si apprenderebbe bene il modus opereandi di Xen, vengono analizzate le problematiche di sicurezza (riguardo la continuità del servizio) in ambienti enterprise e proposte soluzioni, di come la virtualizzazione non sia la panacea di tutti i mali (anzi, dannosa se non viene ben pianificata e realizzata) e naturalmente non poteva mancare un percorso di installazione e configurazione passo passo.

Il libro è quasi distrognostico: nel senso che non è incentrato su una distro particolare. Vengono proposte le soluzioni adottando sia Debian/Ubuntu che RedHat/Fedora o Novell/Suse, mostrando, di volta in volta, gli strumenti disponibili.
Diciamo che copriamo il 99% delle installazioni server... (l' 1% rimanente sono installazioni Archlinux SBS :D), Il tutto svolto rigorosamente dalla shell (e cosa potevamo aspettarci dall'autore di Linux Server Hacks ?) come piace a me: poi potremmo anche usare una GUI, ma intanto impariamo a lavorare in modo serio ;)

Xen è un grande e libero prodotto, e leggere un libro del genere che non solo lo insegni ma che lo metta anche in relazione con le alternative presenti commerciali e non, è un vero piacere.

Giudizio

Positivo. Su tutta la linea, sia per l'affascinante argomento trattato sia per il come è stato affrontato e svolto. William von Hagen è un grande ed esperto autore, date un occhio a quello che ha scritto,di come passi agevolmente tra un argomento all'altro.

Azzarderei anche: un libro KISS alla Arch way ;)

Un po' di interesse ve l'ho suscitato ?

Giuro che non ho nessuna % :D

Byez.

Ho fatto la tesi per la triennale su Xen un annetto fa, prodotto veramente portentoso. Purtroppo per motivi di tempo non ho avuto la possibilità di approfondire troppo l'argomento e mi sono dovuto accontentare della documentazione online. Se dovessi scegliere ancora qualcosa di simile per la specialistica però mi procurerò sicuramente questo libro. Grazie della dritta.

Ciao e complimenti per il blog.

Hai avuto problemi nel farti recapitare il libro? ci sono accorgimenti particolari da seguire per comprare su amazon dall'italia?

Grazie

@monduz
//Ho fatto la tesi per la triennale su Xen un annetto fa [cut]//
Ehe, eh ... un po' ti invidio :). Cmq impara l'arte e mettila da parte...

@pastoreerrante
No, nessun problema. Paghi con carta di credito e loro spediscono. Variano un pochino le spese di spedizione (e le tasse, tipo IVA che a volte c'e' a volte no) in funzione del paese da cui ti spediscono il libro (che varia random tra europa, usa, nuova zelanda e australia, non ho ben capito il meccanismo :\).
Il prezzo, cmq, rimane conveniente considerando in nostro super-euro.

Mi hai fatto venire voglia di comprarlo. Rapidamente ti chiedo xò una cosa:

Mi hai incuriosito sulla faccenda XEN/KVM. Xchè non c'è xen nella mainline del kernel?

//Mi hai incuriosito sulla faccenda XEN/KVM. Xchè non c'è xen nella mainline del kernel?//

Per un motivo molto semplice e saggio: di Xen esistono versioni commerciali ([http://www.citrixxenserver.com/Pages/default.aspx Citrix] e [http://www.virtualiron.com/ VirtualIron]) e includere le sue patch nativamente nel kernel significava avvantaggiare in modo netto queste soluzioni a discapito di altre alternative concorrenti (in primis [http://www.vmware.com/products/server_virtualization.html VMWare ESX]).

Quindi a sorpresa è stato incluso il semisconosciuto ma "senza padroni" KVM.

Io sto facendo la tesi su Xen adesso. Se non ti dispiace mi invii un pò di materiale?
Grazie

Ottima recensione.
Comunque vorrei precisare che nel kernel vanilla sono presenti delle parti riconducibili a Xen (utilizzabili per il domU non dom0). Ritengo che Xen e KVM siano due prodotti distinti, di cui si può capire facilmente la differenza anche per il fatto che KVM sfrutti le primitive dei processori mentre Xen (normale) adoperi dei kernel modificati ad hoc e poi si appoggia a KVM per l'HVM.
KVM non è assolutamente senza padroni è stato creato da Qumranet partendo da progetti quali QEMU, BOCHS... però è vero che è rilasciato con licenza GPL.
I libri su VMware che spesso forniscono esempi solo con Red Hat (e se va bene con Fedora e Centos) mentre molti libri su Xen sono "distrognostico", perchè Xen può essere utile e conveniente in molteplici situazioni visto il suo costo, mentre VMWare ESX richiede un certo investimento non indifferente.
Per quanto riguarda invece l'approcio rigorosamente dalla shell, questo è l'ideale per gli amministratori mentre è penalizzante se le macchine virtuali devono essere gestite da utenti piuttosto impreparati.

Per quanto riguarda Xen nella mainline http://lwn.net/Articles/268778/ e anche http://wiki.xensource.com/xenwiki/Kernel.org_Linux_on_Xen

Complimenti per la recensione e per il blog

http://valent-blog.eu

Grazie per la precisazione, intessante quello che hai scritto e anche i link. Mi stai dicendo che Xen utilizza KVM per l' HVM ? Mmmmm, non sono informato e sul libro oggetto del post non viene specificato. Anzi KVM e Xen sono considerati come "alternativi" per quel che riguarda la virtualizzazione hardware con Intel VT/AMD Pacifica. Ma potrei aver capito male :D

Riguardo l' "approccio shell" non vorrei essere frainteso: anche io uso le GUI quando disponibili. Sono **comodissime**, utili e veloci... //quando si sà già cosa si stà facendo//. Per imparare (e stò parlando da sistemista e appassionato) è molto più istruttivo (e molto più faticoso) iniziare dalla shell. Chi impara dalla GUI alla prima difficoltà spesso formatta ... :D

Sì, per virtualizzare HVM utilizza kvm+qemu. Mentre per paravirtualizzare usa il codice Xen. Essendo entrambi progetti open source è normale ( e logico) che il codice venga riusato.

ecco un documento sulla questione: http://xen.org/files/xensummit_4/Liguori_XenSummit_Spring_2007.pdf

Come GUI mi trovo abbastanza bene con Convirt.