Progetto

Generale

Profilo

XenOnSargeHowto » Cronologia » Versione 4

Amministratore Truelite, 24-02-2006 17:22

1 1 Amministratore Truelite
 = Come creare un server di virtualizzazione usando Xen su una Debian Sarge =
2
3
Si considerino i presenti requisiti di base:
4
5
 * una distribuzione linux debian, release Sarge, installata;
6
 * una buona quantità di spazio su disco libero su una partizione;
7
 * almeno due interfacce di rete (eth0, eth1);
8
 * una quantità di memoria ram maggiore o uguale a 512MB.
9
10
Il primo passo è l'installazione del kernel xen e dei relativi tool che vanno presi da un repository esterno in quanto non presenti in sarge.
11
I seguenti comandi abilitano il repository esterno ed installano i pacchetti necessari.
12
{{{
13
echo "deb http://packages.debianbase.de/sarge/i386/xen3 ./" >> /etc/apt/sources.list
14
apt-get update
15 3 Amministratore Truelite
apt-get install iproute xen udev hotplug bridge-utils linux-xen0-2.6
16 1 Amministratore Truelite
cd /usr/src
17
dpkg -i kernel-xen0-2.6.12.6-xen_tha1_i386.deb
18 3 Amministratore Truelite
mv /lib/tls /lib/tls.disabled
19 2 Amministratore Truelite
}}}
20
21
Una volta installati i pacchetti, è necessario rigenerare l'initrd per il vostro sistema con il comando
22
{{{
23
mkinitrd -o /boot/xen-modules-2.6.12.6-xen 2.6.12.6-xen
24 1 Amministratore Truelite
}}}
25 2 Amministratore Truelite
26 3 Amministratore Truelite
e successivamente aggiungere a grub le voci necessarie per fare il boot con il kernel xen, nel file {{{ "/boot/grub/menu.lst" }}}
27 2 Amministratore Truelite
{{{
28
#
29 1 Amministratore Truelite
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST
30 2 Amministratore Truelite
31
title           Xen 3.0.1 - Linux 2.6.12.6-xen
32 3 Amministratore Truelite
                kernel      /boot/xen-3.0.1.gz
33 1 Amministratore Truelite
                module      /boot/xen-linux-2.6.12.6-xen root=/dev/hda1 ro
34
                module      /boot/xen-modules-2.6.12.6-xen
35 3 Amministratore Truelite
### BEGIN AUTOMAGIC KERNELS LIST
36
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
37
## by the debian update-grub script except for the default options below
38
39
## DO NOT UNCOMMENT THEM, Just edit them to your needs
40 1 Amministratore Truelite
}}}
41 3 Amministratore Truelite
42
Ipotizzando che ''eth0'' sia l'interfaccia di rete in ascolto sulla rete locale con dhcp e che ''eth1'' sia collegata ad uno switch per una rete interna di test, possiamo creare un nuovo bridge da fare usare alle macchine virtuali; di default xen crea un bridge sulla ''eth0'' per le sue interfacce virtuali.
43
44
Il file {{{ "/etc/network/interfaces" }}} dovrebbe quindi avere questo aspetto.
45
46
A questo punto è possibile riavviare il sistema nel nuovo domain0 xen.
47
48
Se il sistema si è avviato senza problemi possiamo creare una nuova istanza di debian sarge che girerà come ospite (guest) sul sistema host.
49 4 Amministratore Truelite
50
La prima cosa da fare è la creazione di due file da usare rispettivamente come partizione di root da 2GB e come swapfile da 512MB.
51
{{{
52
mkdir -p /home/vserver/images
53
cd /home/vserver/images
54
dd if=/dev/zero of=sarge-base.img seek=2048000k bs=1 count=1
55
dd if=/dev/zero of=swap.img seek=512000k bs=1 of=1
56
mkfs.ext3 sarge-base.img
57
mkswap swap.img
58
}}}
59
60
Una volta create e formattate le partizioni, è necessario installare debootstrap con {{{ "apt-get install debootstrap" }}} per poi procedere all'installazione di un sistema base.
61
62
{{{
63
modprobe loop
64
mount -o loop sarge-base.img /mnt
65
debootstrap sarge /mnt http://ftp.it.debian.org/debian 
66
}}}
67
68
Il passo successivo è l'installazione dei moduli del kernel xen sul nuovo sistema guest seguito da una serie di operazioni di ottimizzazione del sistema.
69
{{{
70
cp -a /lib/modules/2.6.12.6-xen /mnt/lib/modules
71
mv /mnt/lib/tls /mnt/lib/tls.disabled
72
chroot /mnt
73
}}}