XenOnEtchHowto » Cronologia » Versione 9
Versione 8 (Amministratore Truelite, 06-12-2006 16:27) → Versione 9/11 (Amministratore Truelite, 07-11-2007 08:57)
[[TracNav(TOC)]] = Installazione del sistema di virtualizzazione Xen e di una immagine di Debian Etch = Occorre anzitutto avere installato una distribuzione Debian Etch, i prerequisiti per l'installazione dei sorgenti, secondo quanto indicato sul sisto di [http://www.xensource.com Xen] sono i seguenti: * A working Linux distribution using the GRUB bootloader and running on a P6-class or newer CPU. * The iproute2 package. * The Linux bridge-utils2.1 (e.g., /sbin/brctl) * The Linux hotplug system2.2 (e.g., /sbin/hotplug and related scripts). On newer distributions, this is included alongside the Linux udev system2.3. * Build tools (gcc v3.2.x or v3.3.x, binutils, GNU make). * Development installation of zlib (e.g., zlib-dev). * Development installation of Python v2.2 or later (e.g., python-dev). gran parte di tutto ciò è già disponibile nell'installazione del sistema base, il solo pacchetto che va agggiunto a mano è {{{bridge-utils}}}, questo lo si farà, dopo aver aggiornato l'indice dei pacchetti e tutte le dipendenze, con i comandi: {{{ apt-get update apt-get dist-upgrade apt-get install bridge-utils }}} fatto questo si dovranno installare i pacchetti specifici per poter utilizzare Xen: {{{ apt-get install xen-utils-3.0-unstable-1 \ xen-hypervisor-3.0.3-1-i386 \ xen-ioemu-3.0-unstable \ xen-docs-3.0-unstable \ linux-image-2.6.18-2-xen-686 \ linux-modules-2.6.18-2-xen-686 \ libc6-xen \ xen-tools \ sysfsutils \ file \ }}} in particolare {{{libc6-xen}}} è fondamentale nelle macchine virtuali Xen con Debian, in quanto il supporto delle GLIBC ordinarie da luogo a problemi sugli indirizzi virtuali. Una volta fatto questo si dovrà modificare il file di configurazione di Xen che si trova in {{{/etc/xen/xend-config.sxp}}} per inserire le corrette impostazioni di rete; si devono decommentare le seguenti righe: {{{ (network-script network-bridge) (vif-script vif-bridge) }}} mentre si devono commentare tutte le restanti impostazioni relative a '''vif-script''' and '''network-script'''. == Creazione delle macchine virtuali == In rete si trovano varie immagini di distribuzioni già pronte per l'uso con Xen, che si possono utilizzare direttamente. Si tenga presente però che per ciascuna di esse sarà comunque utilizzato il kernel installato a ''ring 0'' (vale a dire sulla distribuzione ospite). Questo può dare luogo a problemi qualora poi all'interno della distribuzione si debbano utilizzare delle funzionalità che necessitano di moduli aggiuntivi rispetto a quelli caricati all'avvio dal RAM-disk iniziale. In tal caso infatti la distribuzione eseguita a ''ring 1'' non disporrà dei necessari file sotto {{{/lib/modules}}}, pertanto sarà opportuno copiare la relativa directory (nel caso dei pacchetti citati in questo esempio {{{/lib/modules/2.6.18-2-xen-686}}}) dal sistema ospite sul filesystem radice della macchina virtuale (che si sarà opportunamente montato in loopback a macchina virtuale spenta). Per gestire le immagini delle macchine virtuali si utilizzeranno i programmi del pacchetto {{{xen-tools}}}; anzitutto si dovrà creare una directory che ospiterà i files della immagine da creare: {{{ mkdir /home/xen }}} poi occorrerà modificare il file {{{/etc/xen-tools/xen-tools.conf}}} perché sia compatibile con la nostra installazione nel seguente modo: {{{ dir=/home/xen #opzione per usare debootstrap per creare l'immagine debootstrap = 1 size = 4Gb memory = 128 Mb swap = 128Mb fs = ext3 è dist = etch image = sparse #imposta gateway e netmask secondo le tue impostazioni di rete gateway = 192.168.1.1 netmask = 255.255.255.0 dhcp = 1 passwd = 1 #Kernel e ramdisk da usare con i server virtuali #controlla che esistano realmente altrimenti creali kernel = /boot/vmlinuz-2.6.17-2-xen-686 initrd = /boot/initrd.img-2.6.17-2-xen-686 mirror = http://ftp.us.debian.org/debian/ }}} Per creare una immagine si potrà utilizzare il seguente comando: {{{ xen-create-image --hostname=nomeImmagine --passwd }}} e l'utente dovrà inserire una password di root. Dopo che l'installazione è terminata è possibile fare il boot dell'immagine col seguente comando: {{{ xm create /etc/xen/nomeImmagine.cfg -c }}} dove l'opzione {{{-c}}} serve ad agganciare una console al sistema che è stato fatto avviare. == Amministrazione dei sistemi virtuali == Si tenga presente che benché molto simili ad un sistema reale, i sistemi virtualizzati presentano comunque delle differenze rispetto ad un sistema ordinario, in particolare va tenuto presente che il tempo di sistema viene gestito in maniera unica a ''ring 0'', cioè non sarà possibile impostare il tempo o la data nei vari sistemi virtualizzati, ma soltanto nel sistema ospite che appunto viene eseguito a ''ring 0''. E' una buona regola dopo avere creato la macchina creare uno standard file debian {{{/etc/hosts}}} /etc/hosts usato per convertire i nomi degli elaboratori in numeri IP e viceversa (nel quale inserire il nome della macchina).