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 | }}} |