XenOnLennyHowto » Cronologia » Versione 15
Amministratore Truelite, 28-08-2009 11:43
1 | 2 | Amministratore Truelite | [[TracNav(TOC)]] |
---|---|---|---|
2 | 1 | Amministratore Truelite | |
3 | 15 | Amministratore Truelite | h1. Installazione e gestione di Xen su Lenny |
4 | |||
5 | |||
6 | "Xen":http://www.xensource.com è un sistema di virtualizzazione basato sul |
||
7 | 3 | Amministratore Truelite | concetto di hypervisor, che consente sia di eseguire un sistema operativo |
8 | modificato per essere eseguito dall'hypervisor con perdite di prestazioni |
||
9 | minimali anche su processori che non supportano la virtualizzazione, che di |
||
10 | appoggiarsi alle estensioni presenti nei processori moderni per eseguire |
||
11 | sistemi non modificati. |
||
12 | 1 | Amministratore Truelite | |
13 | Nel primo caso occorre che il sistema ospite supporti le modifiche per essere |
||
14 | 3 | Amministratore Truelite | usato da Xen (nel caso di Linux occorre un kernel opportunamente modificato, |
15 | 15 | Amministratore Truelite | <pre> |
16 | 3 | Amministratore Truelite | nel secondo appoggiandosi alle estensioni del processore e ad una apposita |
17 | 15 | Amministratore Truelite | <pre> |
18 | 1 | Amministratore Truelite | qualunque versione di Linux ed anche Windows. |
19 | 3 | Amministratore Truelite | |
20 | 1 | Amministratore Truelite | Il meccanismo di funzionamento di Xen prevede che l'hypervisor lanci una |
21 | istanza privilegiata del sistema operativo ospite (una versione di Linux |
||
22 | 15 | Amministratore Truelite | modificata per essere eseguita dall'hypervisor) che viene chiamata *Dom0*, |
23 | 4 | Amministratore Truelite | da questa sarà poi possibile creare ed eseguire le varie macchine virtuali, |
24 | 15 | Amministratore Truelite | chiamate *DomU*. |
25 | 3 | Amministratore Truelite | |
26 | 1 | Amministratore Truelite | |
27 | 15 | Amministratore Truelite | h2. Installazione di base |
28 | |||
29 | |||
30 | 4 | Amministratore Truelite | Con Lenny il supporto per Xen è presente direttamente nella distribuzione che |
31 | 1 | Amministratore Truelite | fornisce i pacchetti necessari, pertanto una volta installato il sistema, si |
32 | potrà installare Xen ed i kernel con esso compatibili direttamente con il |
||
33 | comando: |
||
34 | 15 | Amministratore Truelite | <pre> |
35 | 1 | Amministratore Truelite | aptitude install xen-linux-system-2.6.26-2-xen-686 |
36 | 15 | Amministratore Truelite | </pre> |
37 | 3 | Amministratore Truelite | utilizzando il metapacchetto che installa tutte le parti necessarie, |
38 | 6 | Amministratore Truelite | dall'hypervisor ai kernel modificati ai vari programmi di ausilio. Si possono |
39 | poi installare anche i programmi ausiliari per Debian che consentono una |
||
40 | creazione rapida delle macchina virtuali con: |
||
41 | 15 | Amministratore Truelite | <pre> |
42 | 1 | Amministratore Truelite | aptitude install xen-tools |
43 | 15 | Amministratore Truelite | </pre> |
44 | 6 | Amministratore Truelite | |
45 | Una volta installato il nuovo kernel e l'hypervisor si riavvii la macchina, |
||
46 | 15 | Amministratore Truelite | <pre> |
47 | 7 | Amministratore Truelite | l'hypervisor. Una volta installato il tutto si potrà controllare che Xen è |
48 | 6 | Amministratore Truelite | attivo con il comando: |
49 | 15 | Amministratore Truelite | <pre> |
50 | 1 | Amministratore Truelite | xenhost:~# xm dmesg |
51 | 6 | Amministratore Truelite | ... |
52 | (XEN) System RAM: 1982MB (2030012kB) |
||
53 | 1 | Amministratore Truelite | (XEN) Xen heap: 9MB (10084kB) |
54 | (XEN) Domain heap initialised: DMA width 32 bits |
||
55 | (XEN) PAE enabled, limit: 16 GB |
||
56 | (XEN) Processor #0 15:11 APIC version 16 |
||
57 | 15 | Amministratore Truelite | (XEN) Processor #488 15:11 APIC version 16 |
58 | (XEN) IOAPICr0: apic_id 4, version 17, address 0xfec00000, GSI 0-23 |
||
59 | 6 | Amministratore Truelite | (XEN) Enabling APIC mode: Flat. Using 1 I/O APICs |
60 | 1 | Amministratore Truelite | (XEN) Using scheduler: SMP Credit Scheduler (credit) |
61 | (XEN) Detected 2304.832 MHz processor. |
||
62 | (XEN) AMD SVM: ASIDs enabled. |
||
63 | 6 | Amministratore Truelite | (XEN) HVM: SVM enabled |
64 | 1 | Amministratore Truelite | ... |
65 | 15 | Amministratore Truelite | </pre> |
66 | 1 | Amministratore Truelite | che mostra come sia stata riconosciuta la RAM totale, i processori e, |
67 | 15 | Amministratore Truelite | nell'ultima riga, come sia disponibile il supporto per HVM (_Hardware Virtual |
68 | Machine_) cioè la virtualizzazione hardware con il supporto del processore. |
||
69 | 1 | Amministratore Truelite | |
70 | Il passo successivo è configurare Xen per la gestione delle macchine virtuali, |
||
71 | questo viene fatto con il file di configurazione principale che è |
||
72 | 15 | Amministratore Truelite | <pre> |
73 | 8 | Amministratore Truelite | alla rete alle macchine virtuali, per questo occorre, rispetto alla |
74 | 15 | Amministratore Truelite | configurazione di default, attivare la gestione in modalità _bridge_, in cui |
75 | 8 | Amministratore Truelite | l'interfaccia fisica viene messa in bridge con le interfacce virtuali delle |
76 | 15 | Amministratore Truelite | varie macchine *DomU*, questo deve essere fatto modificando il file in |
77 | 1 | Amministratore Truelite | modo che le direttive di gestione della rete siano le seguenti: |
78 | 15 | Amministratore Truelite | <pre> |
79 | 1 | Amministratore Truelite | ... |
80 | (network-script network-bridge) |
||
81 | ... |
||
82 | #(network-script network-dummy) |
||
83 | 15 | Amministratore Truelite | </pre> |
84 | 1 | Amministratore Truelite | (nel default la prima è commentata e la seconda no), se l'interfaccia che si |
85 | 15 | Amministratore Truelite | <pre> |
86 | <pre> |
||
87 | 1 | Amministratore Truelite | (network-script 'network-bridge netdev=ethX') |
88 | 15 | Amministratore Truelite | </pre> |
89 | 1 | Amministratore Truelite | |
90 | Nelle precedenti versioni di Xen era necessario limitare la quantità di |
||
91 | 15 | Amministratore Truelite | <pre> |
92 | 1 | Amministratore Truelite | passata al bootloader, le versioni recenti liberano automaticamente la |
93 | memoria, ma si può impostare un limite minimo con la direttiva: |
||
94 | 15 | Amministratore Truelite | <pre> |
95 | 9 | Amministratore Truelite | (dom0-min-mem 128) |
96 | 15 | Amministratore Truelite | </pre> |
97 | 9 | Amministratore Truelite | (il valore è in Mb, ed il default è 196, eccessivo nella gran parte dei casi). |
98 | |||
99 | 1 | Amministratore Truelite | |
100 | 15 | Amministratore Truelite | h2. La gestione delle macchine virtuali con gli xen-tools |
101 | |||
102 | |||
103 | <pre> |
||
104 | 9 | Amministratore Truelite | consentono di creare in maniera veloce nuove macchine virtuali. Per farlo sono |
105 | 1 | Amministratore Truelite | disponibili due approcci, quello basato su immagini poste su file, e quello |
106 | 9 | Amministratore Truelite | basato su volumi logici di LVM; noi ci baseremo su questo. Si darà pertanto |
107 | 1 | Amministratore Truelite | per scontato che si sia installato LVM ed i relativi programmi ausiliari, |
108 | qualora questo non sia il caso sarà sufficiente farlo con: |
||
109 | 15 | Amministratore Truelite | <pre> |
110 | 9 | Amministratore Truelite | aptitude install lvm2 |
111 | 15 | Amministratore Truelite | </pre> |
112 | 1 | Amministratore Truelite | |
113 | Sarà poi necessario disporre di adeguato spazio disco da dedicare a LVM; a |
||
114 | 15 | Amministratore Truelite | questo scopo si ricordi che una partizione usata come _volume fisico_ di LVM |
115 | <pre> |
||
116 | 9 | Amministratore Truelite | è una partizione libera si potrà creare il gruppo di volumi (che chiameremo |
117 | 15 | Amministratore Truelite | <pre> |
118 | 9 | Amministratore Truelite | spazio disco per le macchine virtuali con i comandi: |
119 | 15 | Amministratore Truelite | <pre> |
120 | 9 | Amministratore Truelite | pvcreate /dev/sda3 |
121 | 1 | Amministratore Truelite | vgcreate xenvg /dev/sda3 |
122 | 15 | Amministratore Truelite | </pre> |
123 | 9 | Amministratore Truelite | ed in seguito aggiungere eventuali altri dischi con: |
124 | 15 | Amministratore Truelite | <pre> |
125 | 9 | Amministratore Truelite | pvcreate /dev/sdb1 |
126 | 10 | Amministratore Truelite | vgextend xenvg /dev/sdb1 |
127 | 15 | Amministratore Truelite | </pre> |
128 | 11 | Amministratore Truelite | (si consulti la documentazione di LVM o il relativo capitolo su |
129 | 15 | Amministratore Truelite | "Amministrare GNU/Linux":http://labs.truelite.it/http://svn.truelite.it/documenti/corso.pdf per i dettagli di gestione di LVM). |
130 | 12 | Amministratore Truelite | |
131 | 15 | Amministratore Truelite | <pre> |
132 | <pre> |
||
133 | 12 | Amministratore Truelite | una serie di parametri che controllano le modalità di creazione con una |
134 | 15 | Amministratore Truelite | <pre> |
135 | 1 | Amministratore Truelite | file per i dischi della macchina virtuale occorrerà anzitutto impostare l'uso |
136 | 11 | Amministratore Truelite | di LVM con: |
137 | 15 | Amministratore Truelite | <pre> |
138 | 1 | Amministratore Truelite | lvm = xenvg |
139 | 15 | Amministratore Truelite | </pre> |
140 | 11 | Amministratore Truelite | dove si è fatto riferimento al volume fisico appena creato; |
141 | occorrerà poi impostare le dimensioni di default per il disco, la RAM e la |
||
142 | 12 | Amministratore Truelite | swap assegnate a ciascuna macchina virtuale creata; questo si fà con |
143 | 15 | Amministratore Truelite | <pre> |
144 | 1 | Amministratore Truelite | presenti commentati nello scheletro di configurazione installato da Debian. |
145 | |||
146 | Si devono poi impostare gli indirizzi; in questo caso si hanno due scelte, |
||
147 | 15 | Amministratore Truelite | <pre> |
148 | 1 | Amministratore Truelite | del DHCP, o fornire un IP statico a riga di comando, in tal caso si dovranno |
149 | comunque impostare le altre proprietà della rete, ed in particolare i |
||
150 | parametri: |
||
151 | 15 | Amministratore Truelite | <pre> |
152 | 1 | Amministratore Truelite | gateway = 172.16.0.1 |
153 | netmask = 255.255.0.0 |
||
154 | 12 | Amministratore Truelite | broadcast = 172.16.255.255 |
155 | 15 | Amministratore Truelite | </pre> |
156 | 1 | Amministratore Truelite | |
157 | Per la creazione delle macchine virtuali esistono diversi metodi, ma fintanto |
||
158 | 15 | Amministratore Truelite | che ci si limita a Debian e Ubuntu è sufficiente usare _deboostrap_, e |
159 | 1 | Amministratore Truelite | questo lo si fa con il parametro: |
160 | 15 | Amministratore Truelite | <pre> |
161 | 1 | Amministratore Truelite | install-method = debootstrap |
162 | 15 | Amministratore Truelite | </pre> |
163 | 12 | Amministratore Truelite | in questo caso è poi possibile anche indicare la distribuzione di default da |
164 | usare con: |
||
165 | 15 | Amministratore Truelite | <pre> |
166 | 12 | Amministratore Truelite | dist = lenny |
167 | 15 | Amministratore Truelite | </pre> |
168 | 1 | Amministratore Truelite | Utilizzando questo metodo si potrà creare una macchina virtuale con il comando |
169 | 15 | Amministratore Truelite | <pre> |
170 | 13 | Amministratore Truelite | macchina stessa, con un comando come: |
171 | 15 | Amministratore Truelite | <pre> |
172 | 13 | Amministratore Truelite | xen-create-image --hostname=xentest.mydomain.it --ip=172.16.0.31 --role udev |
173 | 15 | Amministratore Truelite | </pre> |
174 | 12 | Amministratore Truelite | (dove --role è necessario per installare udev nell'ospite, che altrimenti non |
175 | 13 | Amministratore Truelite | sarà in grado di utilizzare una console). |
176 | 12 | Amministratore Truelite | |
177 | Si tenga presente che si potrà modificare uno qualunque dei parametri visti in |
||
178 | precedenza passando il valore voluto sulla riga di comando, esprimendo |
||
179 | l'assegnazione in forma di opzione estesa (cioè come |
||
180 | 15 | Amministratore Truelite | <pre> |
181 | 12 | Amministratore Truelite | |
182 | Una volta lanciato il comando questo stamperà una serie di informazioni |
||
183 | progressive sulla installazione, con qualcosa del tipo: |
||
184 | 15 | Amministratore Truelite | <pre> |
185 | 12 | Amministratore Truelite | General Information |
186 | -------------------- |
||
187 | Hostname : xentest.mydomain.it |
||
188 | Distribution : lenny |
||
189 | Partitions : swap 128Mb (swap) |
||
190 | / 4Gb (ext3) |
||
191 | Image type : full |
||
192 | Memory size : 128Mb |
||
193 | Kernel path : /boot/vmlinuz-2.6.26-2-xen-686 |
||
194 | Initrd path : /boot/initrd.img-2.6.26-2-xen-686 |
||
195 | |||
196 | [...] |
||
197 | |||
198 | Creating Xen configuration file |
||
199 | Done |
||
200 | All done |
||
201 | |||
202 | |||
203 | Logfile produced at: |
||
204 | /var/log/xen-tools/xentest.ittig.cnr.it.log |
||
205 | 15 | Amministratore Truelite | </pre> |
206 | 12 | Amministratore Truelite | |
207 | 15 | Amministratore Truelite | <pre> |
208 | <pre> |
||
209 | 12 | Amministratore Truelite | con: |
210 | 15 | Amministratore Truelite | <pre> |
211 | 12 | Amministratore Truelite | xm create xentest.ittig.cnr.it.cfg |
212 | 15 | Amministratore Truelite | </pre> |
213 | 12 | Amministratore Truelite | e verificarne l'avvio con: |
214 | 15 | Amministratore Truelite | <pre> |
215 | 12 | Amministratore Truelite | xm console xentest.ittig.cnr.it.cfg |
216 | 15 | Amministratore Truelite | </pre> |
217 | 12 | Amministratore Truelite | |
218 | Si tenga presente però che per un bug degli script di creazione sulla macchina |
||
219 | 15 | Amministratore Truelite | <pre> |
220 | <pre> |
||
221 | 1 | Amministratore Truelite | modificare lo stesso file a mano. Questo può essere fatto montando il volume |
222 | 15 | Amministratore Truelite | <pre> |
223 | <pre> |