Esperienze a Perugia
Installazioni Dom0
●Installazioni DomU
●Scientific Linux 3 domU
●Case study: Laboratorio didattico
●Test con Block Device remoti
●Test in corso
●
Mirko Mariotti – 22 Marzo 2006
1
Basic tests
Installazioni di Dom0
Abbiamo testato Xen con le seguenti distribuzioni come sistema Host:
● Xen 2.0.7 su
● Gentoo 2005.3 (x86)
● Ubuntu 5.10 (Breezy) (x86)
● Xen 3.0.2 su
● Gentoo 2006.0 (x86 e x86_64)
● Slackware 10.2 (x86)
Mirko Mariotti – 22 Marzo 2006
2
Basic tests
Installazioni di Dom0
Abbiamo testato Xen con varie modalita' di installazione:
● Da sorgenti (Slackware)
● Da ebuild (Gentoo)
● Da pacchetti binari (Ubuntu)
Mirko Mariotti – 22 Marzo 2006
3
Installazione dai sorgenti
Prerequisiti: iproute2, bridge­utils, zlib­dev, phyton­dev, grub
Installazione da sorgenti:
● wget ....
● tar zxvf xen­3.0.2­src.tgz
● make world
● make install
L'installazione e' stata provata su slackware 10.2 su un Pentium3 800Mhz e non ha rivelato particolari problemi.
Mirko Mariotti – 22 Marzo 2006
4
Installazione in Gentoo
Gentoo contiene gia ebuild pronti per xen sia per i kernel sia per i tool.
Questi non sono ancora inseriti tra gli ebuild stabili e quindi vanno installati dal ramo di sviluppo:
ACCEPT_KEYWORDS=”~x86” emerge =xen­
X.Y.Z
ACCEPT_KEYWORDS=”~x86” emerge =xen­
sources­A.B.C
(In modo analogo per amd64)
Mirko Mariotti – 22 Marzo 2006
5
Installazione in Gentoo: XenLinux
L'installazione di xen crea gli eseguibili necessari, l'hypervisor e un kernel tree con applicate le patch xen, quelo che resta da fare e' compilare il kernel per il domain0:
make ARCH=xen menuconfig
make ARCH=xen make ARCH=xen modules_install
Mirko Mariotti – 22 Marzo 2006
6
Installazione da binari
Esistono molte distribuzioni che forniscono pacchetti binari per xen.
Noi abbiamo testato xen su ubuntu 5.10 aggiungendo il repository
deb http://mirror.clarkson.edu/pub/distributions/xenophilia/xen­debs/ubuntu xen­stable main
e quindi procedendo all'installazione:
apt­get install xen
Mirko Mariotti – 22 Marzo 2006
7
Basic tests
Installazioni di DomU
Abbiamo testato come DomU vari sistemi operativi ed in varie distribuzioni GNU/Linux.
In particolare:
● GNU/Linux:
● Gentoo
● Ttylinux
● Scientific Linux 3
● Scientific Linux 4 (test in corso)
● NetBSD 2 e 3
● Plan9
Mirko Mariotti – 22 Marzo 2006
8
Il kernel del domainU
Trattandosi i paravirtualizzazione, l'installazione di una macchina virtuale non e' semplice come nel caso di una virtualizzazione reale (ad es. vmware)
I kernel per i domainU devono essere ricompilati e e' raro trovare distribuzioni che si installino direttamente su xen.
Mirko Mariotti – 22 Marzo 2006
9
Il filesystem di un domainU
Per installare una VM ci sono due possibilita':
Trovare (o creare) un kernel xenU compatibile con l'installatore e procedere con una installazione standard.
● Fare un dump di una installazione gia' fatta.
●
Mirko Mariotti – 22 Marzo 2006
10
Installazione di domU SL3
Per l'installazione di Scientific Linux 3 (ed ora 4) abbiamo scelto di fare un dump di un'installazione minimale gia' fatta e modificarla per renderla utilizzabile con xen nei seguenti punti:
kernel
● sostituzione delle modutils (per la serie 2.6)
●
Mirko Mariotti – 22 Marzo 2006
11
Installazione di domU SL3
Per realizzare una immagine di macchina virtuale SL3 abbiamo seguito i seguenti passi:
Dump via rete di una installazione minimale (usando un cd live)
Repos# nc ­l ­p 3333 | dd of=sl3.img
Live# dd if=/dev/hdaX | nc repos.foo.net 3333
● Mount in loopback dell'immagine
● Copia dei sorgenti del kernel xen
● Chroot nell'immagine
● Compilazione ed installazione del kernel xenU (In realta' servono solo i moduli)
● Sostituzione di modutils (per i kernel 2.6)
●
Mirko Mariotti – 22 Marzo 2006
12
Case study:
Laboratorio didattico con Xen
Lo scopo principale del setup e' stato quello di mettere a disposizione di ogni studente piu' VM per ogni postazione sulle quali poter lavorare.
L'obbiettivo del corso era quello di dare la possibilita' agli studenti di installare e configurare software tipicamente presente in farm di calcolo.
Mirko Mariotti – 22 Marzo 2006
13
Case study:
Laboratorio didattico con Xen
Il laboratorio didattico e'
cosi strutturato:
●
8 macchine fisiche con installato Gentoo 2005.3 e Xen 2.0.7
1 server (Gentoo 2005.3) che funge da:
● DHCP
● WEB server
● Server di controllo del laboratorio (tentakel).
●
Mirko Mariotti – 22 Marzo 2006
14
Case study:
Laboratorio didattico con Xen
Mirko Mariotti – 22 Marzo 2006
15
Case study:
Laboratorio didattico con Xen
Ogni macchina fisica contiene una serie di script che, gestiti dal server di controllo, regolano il comportamento della macchina fisica secondo vari aspetti. Ogni macchina fisica puo' funzionare in tre modalita':
● Normale
● Proiezione
● Esecuzione di virtual machine
Mirko Mariotti – 22 Marzo 2006
16
Case study:
Laboratorio didattico con Xen
Inoltre gli script regolano altri aspetti delle macchine virtuali quali il loro avvio, il check della consistenza dei filesystem nelle immagini e il controllo del loro networking.
Mirko Mariotti – 22 Marzo 2006
17
Laboratorio didattico con Xen
Mirko Mariotti – 22 Marzo 2006
18
Case study:
Laboratorio didattico con Xen
La macchina virtuale utilizzata prevalentemente nel laboratorio e' stata quella SL3.
Tutte le configurazioni vengono passata alla macchina virtuale n modo dinamico (o dal config file di xen oppure via DHCP).
Questa caratteristica rende possibile sostituire ogni volta se ne abbia necessita una VM con una pulita in pochissimo tempo.
Mirko Mariotti – 22 Marzo 2006
19
Case study:
Laboratorio didattico con Xen
Durante il corso sono stati installati in particolare i seguenti software:
● torque (da sorgenti)
● maui (da sorgenti)
● ganglia (da sorgenti)
i seguenti elementi INFN­GRID:
● CE 2_6_0
● WN 2_6_0
e un install server INFN­GRID 2_6_0
Mirko Mariotti – 22 Marzo 2006
20
Case study:
Laboratorio didattico con Xen
Risultati
l'infrastruttura ha garantito un'ottima stabilita'.
Si puo' ipotizzare un sistema di controllo simile a quello attuato per gestire la ridondanza di servizi su VM.
Mirko Mariotti – 22 Marzo 2006
21
Advanced tests:
Gnbd
Ulteriori test che abbiamo condotto riguardano il caricamento delle macchine virtuali direttamente da block device remoti.
Abbiamo utilizzato un server gentoo come repository di immagini esportate via GNBD:
# gnbd_serv ­n
# gnbd_export ­e ttylinux ­d /root/ttylinux ­c
Mirko Mariotti – 22 Marzo 2006
22
Advanced tests:
Gnbd
Successivamente importandoli nelle macchine reali
# gnbd_import ­i repos.foo.net ­c
Possiamo utilizzarli come filesystem delle VM.
Abbiamo testato su questa infrastruttura GNBD le feature di migrazione di domini di Xen.
Mirko Mariotti – 22 Marzo 2006
23
Test in corso
Attualmente abbiamo spostato tutti i test alla vesione 3 di xen.
Abbiamo realizzato una struttura di test composta da due 2xOpteron – Storage FC (disponibile per ancora poco tempo) – Fileserver su cui stiamo attualmente eseguento test sui backend FC e iSCSI per Xen
Mirko Mariotti – 22 Marzo 2006
24
All Tests
Abbiamo stilato una lista di possibili test aggiuntivi per comprendere le problematiche dell'uso di xen per realizzare sistemi HA con macchine virtuali:
­ Test di compatibilità tra kernel XEN e varie distribuzioni.
­ Test di caricamento di domU via Block Device Remoti (GNDB, iSCSI, FC).
­ Test di caricamento di domU via filesystem remoti (NFS).
­ Test di caricamento di domU via filesystem distibuiti (LUSTRE, GFS, GPFS).
­ Test su uso di partizioni locali, remote o mix delle due.
­ Monitoraggio dello stato delle Macchine Virtuali.
­ Installazione di servizi, sia GRID che non­GRID.
Mirko Mariotti – 22 Marzo 2006
25
Grazie
Mariotti Mirko
Dipartimento di Fisica – Universita' di Perugia
mirko<dot>mariotti<at>fisica<dot>unipg<dot>it
Mirko Mariotti – 22 Marzo 2006
26
Scarica

Esperienze a Perugia