Installazione di OpenMosix

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
bunzip2 openMosix-2.4.22-3.bz2
cd /usr/src/linux
patch –p1 < /tar/ openMosix-2.4.22-3
make menuconfig

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.
openmosix1

Questa è la seconda schermata di cui parlavamo in precedenza, dove dovremo selezionare le voci proprio come qui in figura
openmosix2.png
Una volta completata la selezione delle voci premiamo Esc, e ci comparirà una schermata che ci chiede se salvare le modifiche o meno
openmosix3
Adesso siamo pronti per compilare in il nuovo kernel col supporto per OpenMosix.

make dep && make && make modules && make modules_install
make bzImage
make install
mv System.map /boot
mv vmlinuz /boot/openmosix

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

image = /boot/openmosix root = /dev/hda1 label = OpenMosix read-only

lilo

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
bunzip2 openmosix-tools-0.3.5.tar.bz2
cd openmosix-tools-0.3.5
./configure –with-kerneldir=/usr/src/linux
make && make install
mkdir /mfs
cp scripts/openmosix.map /etc
vi /etc/fstab

aggiungete la seguente riga per attivare la directory di sistema per OpenMosix

mfs     /mfs    mfs     odfsa=1         0       0
vi /etc/openmosix.map

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/
chmod +x /etc/rc.d/openmosix
/etc/rc.d/openmosix start

Adesso rendermo automatici le procedure di start e stop dei OpenMosix

vi /etc/rc.d/inet2
vi /etc/rc.d/rc.6

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

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.

  • Facebook
  • Google Bookmarks
  • Windows Live Favorites
  • LinkedIn
  • Delicious
  • Hotmail
  • Twitter
  • Windows Live Spaces
  • Yahoo Bookmarks
  • Yahoo Messenger
  • Share/Bookmark
  1. Nessun commento ancora...
  1. Nessun trackback ancora...

Spam Protection by WP-SpamFree