Linux counter

Cisco User Group

Accessi

TodayToday453
YeserdayYeserday565
This WeekThis Week4103
This MonthThis Month13751
All DaysAll Days520421
38.107.179.217
Guests 4
Registered Users 1
Registered Today 0

Mappa visitatori

Installazione di OpenMosix PDF Stampa E-mail
(0 - user rating)
Scritto da Alessandro Pensato   
Venerdì 31 Dicembre 2010 16:58

Premessa
In questo documento spiegherò come realizzare un nodo cluster utilizzando OpenMosix per condividere le risorse di più nodi (CPU, RAM, Accesso al disco, ecc) con la conseguenza di ottenre un bilanciamento del carico di ogni nodo aumentandone le prestazioni. Questo sistema viene utilizzato specialmente da chi sviluppa software ed ha bisogno di supercomputer per avere una certa velocità di compilazione dei software, ma viene utilizzato anche da Cilea che un grosso sistema di database contente milioni di articoli, riviste, abstract di riviste scientifiche a cui molti studiosi accedono. Il loro sistema utilizza molti nodi con caratteristiche hardware e software diverse ma con lo stesso scopo: offrire un servizio veloce ed affidabile. Quello che realizzeremo noi è un piccolo cluster composto da almeno 2pc ma nessuno ci vieta di  ampliarlo.

Risorse Hardware e Software
Per il mio scopo ho utilizzato due vecchi pc , composti da un processore Pentium 166MMX, 32MB di RAM, Hard Disk da 2GB ide, scheda di rete pci 3Com 905-b 10/100Mbit., e l’altro nodo con un processore Pentium 200MMX, 64MB di RAM, Hard disk da 2GB ide, scheda di rete Intel 810x 10/100Mbit, mentre dal lato software ho utilizzato Slackware 9.1 con Kernel 2.4.22 e OpenMosix specifico per questa versione del Kernel e OpenMisix Tool che regoleranno le funzioni del nodo. Usando versioni di Kernel diverse potrebbero sorgere seri problemi di incompatibilità fra i nodi del cluster.

Procuriamoci i pacchetti necessari
Per facilitarvi nell’impresa vi ho messo a disposizione il mio spazio web, da dove potere prelevare i pacchetti necessari senza andare in giro per la rete magari non trovando le versioni utilizzate in questo documento. Di seguito trovate i link per scaricare i pacchetti:

http://www.webalice.it/alepensato/openmosix/openMosix-2.4.22-3.bz2
http://www.webalice.it/alepensato/openmosix/openmosix-tools-0.3.5.tar.bz2
http://www.webalice.it/alepensato/openmosix/linux-2.4.22.tar.gz

Compilazione e installazione dei software sorgenti (come root)
Installazione dei OpenMosix
In questo caso più che un’installazione si tratta di applicare la patch al nostro kernel per attivare il supporto per OpenMosix. Per prima cosa controlliamo se abbiamo i file del kernel nella directory /usr/src/linux, in caso contrario scarichiamo il kernel dal link mostrato sopra e dopo aver decompresso il pacchetto procediamo all’applicazione della patch. Eseguite questi comandi passo passo:

cd /tar # entra nella directory dove ci sono i sorgenti
bunzip2 openMosix-2.4.22-3.bz2 # scompatta i file
cd /usr/src/linux # entra nella directory del kernel
patch –p1 < /tar/ openMosix-2.4.22-3 # prepara all’installazione nella directory specificata
make menuconfig # attiva la compilazione con schermata a menu per il kernel

Tramite questo comando comparirà una schermata come questa, dove la prima voce e OpenMosix, quindi premiamo Invio per etrare al suo interno dove selezioneremo delle voci per completarne la configurazione.

Questa è la seconda schermata di cui parlavamo in precedenza, dove dovremo selezionare le voci proprio come qui in figura.

Una volta completata la selezione delle voci premiamo Esc, e ci comparirà una schermata che ci chiede se salvare le modifiche o meno.

Adesso siamo pronti per compilare in il nuovo kernel col supporto per OpenMosix.

make dep && make && make modules && make modules_install # avvia la compilazione dei moduli e anche l’installazione
make bzImage # crea l’immagine da caricare al Boot
make install # completa l’installazione del nuovo kernel
mv System.map /boot # sposta il file nella cartella /boot
mv vmlinuz /boot/openmosix # sposta e rinomina l’immagine del nuovo kernel

Adesso dobbiamo modificare il file di configurazione di LiLo per poter avviare il sistema col supporto OpenMosix, aggiungendo alcune righe di configurazione

vi /etc/lilo.conf # apre con VI il file di configurazione di LiLo
image = /boot/openmosix
root = /dev/hda1
label = OpenMosix
read-only
lilo # aggiorna la configurazione di LiLo per i boot seguenti

Con questa procedura abbiamo completato la predisposizione del sistema col supporto per OpenMosix
Installazione di OpenMosix-Tools Questo pacchetto contiene degli script che, una volta installati, si occupererno della gestione dei processi relativi al cluster, delle funzioni di avvio, stop, restart a quelle sul bilanciamento del carico Eseguite questi comandi passo passo:

cd /tar # /tar è la directory dove tengo i sources
bunzip2 openmosix-tools-0.3.5.tar.bz2 # scompatta i file
cd openmosix-tools-0.3.5 # entra nella directory
./configure –with-kerneldir=/usr/src/linux # avvia la configurazione
make && make install # avvia compilazione ed installazione
mkdir /mfs # crea la direcory di sistema per openMosix
cp scripts/openmosix.map /etc # copia lo script con le informazioni sui nodi del cluster
vi /etc/fstab # apre con VI lo script con le informazioni sui device e FS
aggiungete la seguente riga per attivare la directory di sistema per OpenMosix
mfs /mfs mfs odfsa=1 0 0
vi /etc/openmosix.map # apre con VI lo script con le informazioni sui nodi del cluster aggiungete alla fine del file le informazioni relative ai nodi, al loro IP e a quale cluster appartengono.

Secondo questa sintassi potremmo trovarci col seguente esempiop:

# Nodo IP Address Cluster
1 192.168.0.10 1
2 192.168.0.11 1

Adesso dobbiamo copiare lo script per la gestione dei processi del cluster

cp scripts/openmosix /etc/rc.d/ # copia lo script per la gestione dei processi di OpenMosix
chmod +x /etc/rc.d/openmosix # assegna i permessi allo script
/etc/rc.d/openmosix start # avvia openmosix

Adesso rendermo automatici le procedure di start e stop dei OpenMosix

vi /etc/rc.d/inet2 # apre con VI lo script per la gestione dello startup dei servizi
vi /etc/rc.d/rc.6 # apre con VI lo script per la gestione dello shutdown dei servizi

aggiungete le seguenti istruzioni per rendere automatico lo startup di OpenMosix

if [ -x /etc/rc.d/openmosix ];then
echo “Avvio di OpenMosix”
/etc/rc.d/openmosix start
fi
vi /etc/rc.d/rc.6 # apre con VI lo script per la gestione dello shutdown dei servizi

aggiungete le seguenti istruzioni per rendere automatico lo shutdown di OpenMosix

if [ -x /etc/rc.d/openmosix ];then
/etc/rc.d/openmosix stop
fi

Avvio del sistema con OpenMosix
Adesso è tutto pronto alla prima esecuzione del nuovo kernel col supporto per OpenMosix. Riavviamo il sistema e nella tabella di avvio di LiLo scegliamo la voce OpenMosix. Così facendo avvieremo il sistema col kernel che abbiamo creato e quindi avremo il primo nodo abilitato. Eseguiamo le stesse operazioni su gli altri nodi per amplificare il nostro cluster. Dimenticavo di dirvi che entrando nella directory /mfs di qualunque nodo troveremo delle sottodirectory con del numeri, come /1 /2 /3, ognuna di esse rappresenta un collegamento di rete al filesystem del nodo rispettivo.

icon Installazione di OpenMosix

 

Aggiungi commento


Codice di sicurezza
Aggiorna