Você está na página 1de 6

Tabladecontenidos

1. InstalandounClustertipoMOSIX
2. CmofuncionayparaquesirveMOSIX
3. PreparandolaInstalacin
4. Instalacin,configuracinypuestaenmarchadeunNodo
5. Losresultados
6. Conclusiones
7. Loquefaltprobar

1.InstalandounClustertipoMOSIX
MOSIXesunaextensindelkerneldeLinuxquepermiteejecutaraplicaciones"normales"(noparalelizadas)enun
Cluster.UnadelasposibilidadesdeMOSIXesla"migracindeprocesos",quepermitemigrarprocesosdenodoen
nodo.Siporejemplo,ciertoprocesoestdominandolacargadeunnodo,estesermovidoaotroquetienems
recursos.
AdiferenciadeotrostiposdeClusters,MOSIXpuedeserusadoenPCsdedistintascaractersticas,dehechoenla
instalacinrealizadaseutilizunAthlon,unDuronyunK62,todosprocesadoresAMD(fueunasimple
coincidencia...notenemosnadacontraIntel...exceptosusprecios).
Sepodra"planificar"alasestacionesdetrabajoquetieneMOSIX,paraqueestosseactivenperidicamenteacierta
hora.Porejemploenunaempresadondelasestacionesdetrabajosedejandeusardespusdelas(todassehanidoasus
casas...exceptolostrabajlicos)losnodospuedenserusadosporlosservidoresquerealizanalgn"procesonocturno"
(procesamiento,cargadedatos,reindexacin,etc.).

2.CmofuncionayparaquesirveMOSIX
UnadelascaractersticasdeMOSIXesque,adiferenciadeotrosclusters,noesnecesariomodificarlasaplicacionesni
tampocoutilizarlibrerasespeciales.Dehecho,tampocoesnecesarioasignar"amano"losprocesosalosdiferentes
nodosquecomponenelcluster.
Laideaesquedespusdelacreacindeunnuevoproceso(fork),MOSIXintentaasignarloalmejornododisponibleen
eseentonces.MOSIXestarconstantementemonitoriandolosprocesos,ysifueranecesario,migrarunprocesoentre
losnodosparamaximizarelrendimientopromedio.
MOSIXrealizatodoestoautomticamente,bajoelconceptode"forkandforget"aligualqueenunsistemaSMP.Esto
significaquesloalgunasaplicacionessebeneficiarndeunclusterMOSIX,bsicamente:

ProcesosquerequierendehartaCPU,aplicacionescientficas,deingeniera,etc.
Procesosparalelos,especialmentelosquetienentiemposdeejecucinimpredicibles.
Clustersconnodosdediferentesvelocidadesy/odistintascantidadesdememora.
Entornosmultiusuarioydetiempocompartido.
ServidoresWEBescalables.

MOSIXfuncionasilenciosamente.Susoperacionessontransparentesparalasaplicaciones.Losusuariosnonecesitan
saberdndeseestnejecutandolosprocesos,tampoconecesitanpreocuparsedeloqueestnhaciendootrosusuarios.
Como MOSIX est implementado en el kernel de Linux, sus operaciones son totalmente transparentes para las
aplicaciones.Estopermitedefinirdistintostiposdeclusters,inclusounclustercondiferentesCPU'sovelocidadesLAN.
OtracaractersticadeMOSIX,esquesusalgoritmossondescentralizadosestosignificaquecadanodopuedeserel
maestrodelosprocesoscreadoslocalmente,yunservidordelosprocesosremotosquemigrarondesdeotrosnodos.Esto
permiteagregaroremovernodosdesdeelclusterencualquiermomento.

3.PreparandolaInstalacin
Los nodos destinados a MOSIX deben tener instalados Linux (obvio...). La instalacin automtica de MOSIX es
compatible conRedHat5.1,6.0,6.2,7.0,7.1ySuSE6.0,6.1,6.2,6.3,7.0.Encasodepreferirotradistribucin,
simplementesedeberaseguirunprocedimientodeinstalacinmanualqueseencuentradocumentadoenlosfuentesde
MOSIX, siempre y cuando se cumplan los requisitos: make versin 3.77 o superior, gcc versin 2.95.3, 2.95.4 o
2.96.74+,ybinutils2.9.1.0.25osuperior.
Paralainstalacinnecesitamos:elparcheMOSIX+elcdigofuentedelkerneldeLinux.Engeneral,ciertaversinde
MOSIXrequieredeciertaversindeLinux.
LoidealesquetodoslosnodosdelclustertenganlamismaversindeMOSIX.Elrequisitomnimoesquelosprimeros
dosdgitosdelaversinseanlosmismosparatodoslosnodos.
Cuando hicimos las pruebas instalamos la versin 1.5.2 de MOSIX, que ocupa ~400Kb y se puede bajar desde
http://www.mosix.cs.huji.ac.il/ftps/MOSIX1.5.2.tar.gz.Estaversinrequieredelkernel2.4.13,cuyosfuentes(~28Mb)
sepuedenbajardesdeftp.mirror.psinet.cl.
SiserealizaunainstalacinautomticanoesnecesariodescomprimirlosfuentesdelkerneldeLinux,perosiporalgn
motivosedeseadescomprimirlosestopuedehacerseen/usr/src/linux2.4.13.
OBS!EsrecomendablehacerunrespaldocompletodelsistemaantesdeinstalarMOSIX.Dehechorecomiendoinstalar
denuevoLinuxenotraparticinodiscoduro,dondesepuedaprobarlibrementeyrecuerdenque"hechandoaperderse
aprende!".

4.Instalacin,configuracinypuestaenmarchadeun
Nodo
Instalacinautomtica:
1. DescomprimirelarchivoMOSIX1.5.2.tar.gz:
tarxzfMOSIX1.5.2.tar.gz

2. Ejecutar:
cdMOSIX1.5.2<br>
./mosix.install

mosix.installnosguiardurantelaconfiguracin,compilacindelkernelMOSIXylaposteriorinstalacin.
3. Durantelainstalacin,mosix.installmodificavariosarchivosdeconfiguracin.Paradeshacerestas
modificaciones,losarchivosoriginalessonguardadosconlaextensin".pre_mosix".Lossiguientessonlos
archivosmodificadosdurantelainstalacin:
/etc/inittab
/etc/inetd.confy/o/etc/xinetd.d/*
/etc/lilo.conf
/etc/rc.d/init.d/atd
/etc/cron.daily/slocate.cron

SisedeseadeinstalarMOSIX(usando"./mosix.installuninstall"),estosarchivossernrestauradosconsu
contenidooriginal.

5.Losresultados
LainstalacinquerealizamosfuedeunclusterMOSIXde3nodos,cadaunoconlassiguientescaractersticas:
Procesador

RAM

DD

Distro

AMDAthlon
RedHat
756MB 30GB
1.2Ghz
7.1
AMDDuron
RedHat
128MB 01GB
750Mhz
7.1
AMDK62350
RedHat
96MB 01GB
Mhz
7.1
El1ernodoqueseconfigurfueelAthlon.Seprocediainstalar(enunaparticinnueva)ladistroRedHat7.1
incluyendolospaquetesdedesarrollo.Luegosesiguieronlospasodescritosenlaseccin3.Parael2doy3ernodose
utilizaron 2 disco duros viejos de 1GB. Tambin se instalo la distro Red Hat 7.1 y se siguieron los pasos
correspondientes(estosepudohaberahorrado,verseccin6).
LainstalacinautomticaincluyelamodificacinalLILO,porloqueunavezfinalizadalainstalacinyreiniciadoel
equipo,bastaconelegirlaopcinlinuxmosixdesdeelmendelLILO,parapodercargarelkernelMOSIXrecin
compilado.
Las pruebas que hicimos fueron bastante bsicas, esto por razones de tiempo y de preparacin. Nuestro XTeam
programunapequearutina(elprocesoX!)quenicamenteejecutabauncicloinfinitosinmostrarnadaenpantalla.Al
serejecutadaenunLinux"normal",estarutinaocupael100%delaCPU.Laideaeraverquepasabasiesemismo
procesoseejecutaenuncluster...
DentrodelasaplicacionesquetraeMOSIX,seencuentraelprogramamonqueseejecutaenmodotexto(consola)yque
permitemonitoriarlacargadelosnodosdelcluster,obtenerinformacinacercadelasvelocidadesdelosnodos,cantidad
dememoria,etc.
Usandoelmonpudimosapreciarlosiguiente:

alejecutarnuestrarutinaX!enelnodomslento,MOSIXmigrabaelprocesohacaelnodomsrapido,
quedandoelnodolentosincarga(!).
alejecutarlarutinaenelnodomsrpido,todalacargasequedabaenelmismonodo,esdecir,MOSIXno
migrabaelprocesohaciaotrosnodos.
almodificarnuestrarutinaX!agregndoleunainstruccinprintf()yrepetirlaspruebasanteriores,nosepudo
apreciarningntipodemigracinentrenodos.Estotieneunaexplicacinbiensimple,comolainstruccin
printf()seencargademostrarunatextoenpantalla,estetextodebesermostradoenelnododesdeelcualseest
ejecutandolarutina,porlotantoelprocesonuncasermigradoyaqueelprocesamientoquerequiereesmnimo
(recuerdenquesloesuncicloinfinito)porlotantodedicartodosutiempoamostrartextoenpantalla...

Conestospocosresultadosylaexperienciadelainstalacin,hemosllegadoaciertasconclusiones...

6.Conclusiones
La instalacin de MOSIX es muy simple. Si se usa una distro como Red Hat se puede hacer uso del instalador
automtico,queademsdefacilitarlaconfiguracin,hacequetodoelprocesodeinstalacinseamsrpido.(Dehecho,
nosdemoramos~2hrsparaconfigurar,compilareinstalarlos3nodosdenuestrocluster).
Conlaspruebasquerealizamos,nosdimoscuentaqueMOSIXhaceunmuybuentrabajoalmigrarprocesosquerealizan
muchosclculosodichodeotramanerahacenmuchousodelaCPU.Losprocesosms"interactivos"nosacarnmucho
provechodeunclustertipoMOSIX.
Finalmente,creoqueMOSIXesunabuenaalternativaparaelmbitodelainvestigacin(dndeserequiereprocesasun
granvolumendedatos),elmbitoacadmico(dndeotrasalternativassonmuchomscomplejasdecomprender/usar)y
en general cuando se tiene bien claro los resultados que se desean y cmo lograrlos...(cuando teniamos el cluster
funcionandonosdimoscuentaqueenrealidadlomsdifcilesdarleunuso...).

7.Loquefaltprobar
Porrazonesdetiemponosfaltprobarlassiguientesherramientas(tenamoslosejecutablesperonoladocumentacin...)

Clump/OS.MinidistribucinLinux/MOSIXdiseadaparapermitiragregarrpidamentenodosauncluster
MOSIX.Laversinmsrecienteesla4yconstadeunaimgenISOde5.3MB.AlmomentodebootearelCDde
ClumpOSintentarautomticamentedetectarlatarjetaderedyconfigurarlamedianteDHCP.Sila
deteccin/configuracintuvoxito,secrearunarchivomosix.mapconlaconfiguracindetodoslosnodos
(suponiendoredclaseC)yluegosemostrarunapantallaSVGAindicandoelestadodetodolosnodosdel
cluster.
MosixView.Interfazgrfica(GTK)paralaadministracindeunclusterMOSIX.Sepuedenajustarlos
principalesparmetrosdelclustercomoporejemplolavelocidaddelosnodos.Esunfrontendparalos
comandos"mosctl".

Você também pode gostar