:: Cluster ad Alta Disponibilità   :: Partnership LXE   :: Linux Real Time - RTAI   :: Partnership Endian   :: Visione Artificiale nelle linee produttive MTS   :: Tag RFID ed Esempi Applicativi   :: TimePro Project   :: TimePro Zinco   :: TimePro TeleControl   :: TimePro Production   :: Progetto di Ricerca - Analisi e Supervisione Guasti   :: Integra Agent Framework   :: TimePro TeleMetry   :: TimePro Evolution   :: Linux su HP dv6000
Friday, 03 September 2010
VServer - Guida Pratica per Debian Print E-mail
User Rating: / 0
PoorBest 
Linux VServer è un progetto open-source che permette di far girare linux all'interno di linux. Ogni VServer è una macchina virtuale a  parte, con i suoi pacchetti, i suoi servizi ed il suo indirizzo IP. Il vantaggio di VServer è che, contrariamente ad altre soluzioni di virtualizzazione, ogni macchina virtuale sfrutta il kernel del sistema operativo principale, riducendo così drasticamente il carico di lavoro.
VServer-Logo

Ogni server virtuale è completamente indipendente dagli altri e dal sistema principale; qualsiasi modifica o tentativo di attacco ad un VServer, non pregiudica in nessun modo il funzionamento e la stabilità degli altri VServer e del sistema principale.
Il seguente tutorial è stato scritto per facilitare la configurazione del primo VServer debian all'interno di un sistema debian, appunto. I test sono stati effettuati con l'ausilio di VmWare ™.
Saranno trattati i seguenti argomenti:

 1. Compilazione del Kernel 2.4.30 e patch vserver 1.2.10

Tutti i comandi elencati verranno eseguiti come root

Download e decompressione del kernel 2.4.30 nella cartella dei sorgenti

cd /usr/src
wget ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.30.tar.gz
tar -xzvf ./linux-2.4.30.tar.gz

Creazione di un link simbolico che punti al nuovo kernel

ln -s ./linux-2.4.30 ./linux


Download e patch del nuovo kernel con le estensioni VServer

wget http://www.13thfloor.at/vserver/s_release/v1.2.10/patch-2.4.30-vs1.2.10.diff
cd linux
patch -p1 < ../patch-2.4.30-vs1.2.10.diff

Non dovrebbe essere restituito nessun codice di errore o warning.

Installazione dei pacchetti necessari alla configurazione del nuovo kernel in modo visuale. L'utilizzo di apt-get è relativo a distribuzioni Debian.

apt-get install libdb3-dev
apt-get install ncurses-dev
apt-get install initrd-tools

Copiamo la configurazione attuale del Kernel per accertarci che tutti i driver siano selezionati di default

cp /boot/config-x.y.zz .config
make oldconfig

dove config-x.y.zz indica il file di configurazione per il kernel attuale.

Configurazione visuale del Kernel.
IMPORTANTE: Selezionare tra le voci:
  • Block devices -> Virtual root device support
  • Il Driver della scheda di rete; nel caso utilizziate VmWare, selezionare i driver per la scheda emulata (AMD PC104) che dovrebbe già essere incluso

make menuconfig
cp .config /boot/config-2.4.30

Compilazione del Kernel

make dep
make bzImage
make modules
make modules_install


Creazione dell'immagine del sistema iniziale e copia dei binari del kernel

mkinitrd -o /boot/initrd.img-2.4.30-vs1.2.10 /lib/modules/2.4.30-vs1.2.10
cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.30-vs1.2.10
cp System.map /boot/System.map-2.4.30-vs1.2.10


Il nuovo kernel è pronto, l'ultimo passo coniste nell'aggiungere la voce relativa al nuovo kernel, nel proprio boot loader manager.


 2. Configurazione del boot-manager e primo riavvio con il nuovo kernel

Se si utilizza GRUB, aggiungere al file di configurazione /boot/grub/menu.lst le righe seguenti, sostituendo a /dev/hda1 il device che identifica il proprio disco:

title Linux_2.4.30_vserver_1.2.10
root (hd0,0)
kernel /boot/vmlinuz-2.4.30-vs1.2.10 root=/dev/hda1 ro single
initrd /boot/initrd.img-2.4.30-vs1.2.10
savedefault
boot

ed eseguire

grub-install /dev/hda1

dove /dev/hda1, nel mio caso, è il disco che contiene il boot-sector.

Se si utilizza LILO, aggiungere al file di configurazione /etc/lilo.conf le righe seguenti:

#default=li2425ctx
image=/boot/vmlinuz-2.4.30-vs1.2.10
    label=li2425ctx
    read-only
    initrd=/boot/initrd.img-2.4.30-vs1.2.10

e lanciare lilo per aggiornare la configurazione

Testare il corretto funzionamento del nuovo kernel riavviando e controllando che il PC vada in rete. Controllare che il kernel sia effettivamente quello configurato eseguendo:
uname -a

e controllando che l'output sia simile a:
Linux hostname 2.4.30-vs1.2.10 #1 ... ecc ...


 3. Installazione dei pacchetti necessari a VServer

Ora che il sistema è pronto per ospitare più server virtuali, preleviamo i pacchetti necessari a gestirli; nel caso si utilizzi Debian come sistema di base, si consiglia di scaricare il pacchetto vserver-debiantools che facilita al massimo di VServer Debian pronti all'uso

apt-get install util-vserver
apt-get install vserver-debiantools



 4. Creazione dei VServer

Finalmente possiamo creare il nostro primo VServer; in questo tutorial creeremo un VServer Debian Sarge con i pacchetti di base. Debian ci chiederà quali pacchetti installare e da quale fonte senza sapere minimamente di essere ospitato all'interno di un altro Debian
newvserver --dist sarge --mirror ftp://ftp2.it.debian.org/debian --vsroot /var/lib/vservers --hostname vserver1 --domain localdomain --ip 192.168.0.101


Ovviamente tutti i parametri possono essere modificati in base alle proprie esigenze; in qesto caso verrà creato un nuovo vserver Debian Sarge recuperando i pacchetti da ftp://ftp2.it.debian.org/debian configurando la rete attraverso i parametri --hostname, --domain e --ip



 5. Avvio e Test dei VServer

L'operazione precedente impiegherà circa 5 minuti con una normale connessione ADSL; al termine diamo un'occhiata a cosa abbiamo effettivamente creato.
In /var/lib/vservers/vserver1 è stata creata la base per un sistema operativo Debian funzionante; ci sono tutte le cartelle di base del sistema, come quelle che vediamo nella root /. Eseguendo il comando nano /etc/vservers/vserver1.conf possiamo editare le caratteristiche principali della nuova macchina virtuale tra cui l'indirizzo ip (IPROOT="192.168.0.122"), l'auto avvio come servizio del sistema principale (ONBOOT="yes") ecc..
Modifichiamo le impostazioni a nostro piacimento e facciamo partire il server virtuale:
vserver vserver1 start

La sensazione sarà quella di avviare dei servizi del nostro sistema principale, ma in relatà, quelli sono servizi virtuali, totalmente svincolati dal sistema operativo centrale. Entriamo nel nuovo server virtuale:
vserver vserver1 enter

E' come entrare via SSH su un host remoto, con la differenza che l'host è la macchina stessa. Quando si effettua lo shutdown del sistema principale, il servizio responsabile dei VServer installati (/etc/init.d/vservers-legacy), li fermerà simulando uno shutdown.

Credo sia abbastanza per iniziare a giocare con questo eccezionale strumento Open-Source; per qualsiasi chiarimento o informazione aggiuntiva, scrivetemi su This e-mail address is being protected from spam bots, you need JavaScript enabled to view it o inserite un commento sul form sottostante.

Per ulteriori informazioni, visitate il sito ufficiale di VServer (http://linux-vserver.org) che contiene, tra le altre cose, altre guide per iniziare a lavorare con i server virtuali.

{moscomment}

 
Main Menu
Home
Contatti
Dove Siamo
Documenti
Indicizzazione Riviste
Amministra Sito
Login
Partners

linux.png apache.png php.png mysql.png joomla.png siteground.png
  

Sito Ottimizzato per Firefox e risoluzione di 800x600 o superiore