Está en la página 1de 4

PRCTICA

Departamento Acadmico
Programa Acadmico

Plan de Estudios

Formato

Ing. en Sistemas Computacionales

ISIC-2010-224

SyC-01-2013-P

Asignatura

Clave de la Asignatura

Crditos SATCA

Taller de Sistemas Operativos

SCA-1026

No. de Prctica
P_SCA1026_02

Sistemas y Computacin

0-4-4

Semestre
4

Nombre de la Prctica
Configuracin de un clster usando MPI (1a. Parte)

Competencia de la Prctica
Administracin de las aplicaciones de un SO tipo Unix

1. INTRODUCCIN
Un clster es un conjunto de computadoras interconectadas a travs de una red y que se programa
para que funcionen conjuntamente en un mismo objetivo de cmputo. Cada computadora se
constituye en un nodo del clster. Un clster es una propuesta al concepto high-performancecomputing (HPC) que consiste en aumentar la capacidad de una computadora con el fin de resolver
problemas complejos de ciencia, negocios o de ingeniera, de manera econmica.
Un clster presenta ventajas en alto rendimiento (pueden llegar a 100 Teraflops 1), disponibilidad,
balanceo de cargas y escalabilidad a menor costo, lo que lo ha vuelto atractivo para empresas
pequeas y medianas. Los puntos crticos son la fiablidad (prdida de mensajes entre nodos) y la
seguridad (existen varios nodos a supervisar)
Uno de los esquemas empleados en la configuracin de un clster es el de cliente-servidor, donde uno
de los nodos es el maestro y los dems nodos (PC's) funcionan como esclavos.
En 1994, surge MPI (message passing interface) como un protocolo de comunicacin estndar e
independiente del lenguaje de programacin utilizado. Es el modelo dominante en computacin de alto
rendimiento (supercmputo). MPI consiste de un conjunto de rutinas utilizables desde C, C++, Fortran,
C#, Java o Python. MPI proporciona la sincronizacin y comunicacin entre procesos que se
encuentran en los diferentes nodos, intercambiando datos y resultados, as como informacin para su
administracin.
Existen varias implementaciones de MPI; entre otras:
MICH del laboratorio de investigacin del Depto. de Energa (http://www.anl.gov/aboutargonne),
LAM/MPI, del Centro de Supercmputo de Ohio (https://www.osc.edu/),
MPI for Python: pyMPI de Lawrence Livermore National Laboratory
(http://sourceforge.net/projects/pympi/),
1

Teraflop = 10^12 flops, aproximadamente 1000 veces ms que una PC.

OcamlMPI (https://forge.ocamlcore.org/projects/ocamlmpi/ )
mpiJava, http://www.hpjava.org/mpiJava.html
Matlab tiene su extensin paralela usando MPI
(www.mathworks.com/products/matlab/)

2. REQUERIMIENTOS
Equipo, herramientas y material.
Cuaderno de la asignatura,
Pluma,
Computadora

Software
SO xNix
Shell
NFS-kernel-server
OcamlMPI

3. DESCRIPCIN DE LA PRCTICA.
Configuracin de un clster de PC's, de un servidor y dos esclavos.
1a. Parte: Instalacin del servicio de archivos de red (NFS)
1) Aadir las direcciones de los 3 equipos en /etc/hosts de cada nodo
2) Instalar NFS (Network File System) en el nodo maestro
3) Agregar directorio /mirror en todos los nodos (maestro-esclavo)
4) Se indican las carpetas que se comparten en el clster para todos los nodos.
5) Se configura montaje de la carpeta compartida en cada nodo esclavo.
6) Realizar pruebas de acceso al directorio remoto

Descripcin 1. Aadir las direcciones de los 3 equipos en /etc/hosts edn cada nodo.
El archivo /etc/hosts se emplea en los SO para guardar la correspondencia entre los nombres de un
dominio y su correspondiente IP. Actualmente se emplea en lugar de este archivo, el DNS (Domain
Name System).
Por ejemplo, si nuestros dominios e IP son los siguientes:
ars@10.9.26.186
ars-esclavo1@10.9.26.235
ars-esclavo2@10.9.26.170
Con clave de administrador, se agregan al arhivo /etc/hosts con un editor de texto en cada uno
de los equipos que formarn el cluster.
/etc/hosts tambin se puede emplear para bloquear sitios de internet, por ejemplo, si agregamos estas
lneas:

#Dominios de Internet bloqueados


255.255.255.0 www.paginabloqueada1.com
255.255.255.0 www.paginabloqueada3.com

www.paginabloqueada2.com

Descripcin 2. Instalar Network File System (NFS) en el nodo maestro.


NFS es un protocolo de aplicacin del modelo OSI para compartir archivos y directorios en la red (en
Windows, se emplea SAMBA https://www.samba.org/). NFS se instala en el nodo maestro. En los SO
basados en Debian como Ubuntu, NFS forma parte de su ncleo y solo requiere instalarse nfs-kernelserver
Puede emplear para su instalacin el comando apt-get: sudo apt-get install nfs-kernel o
mediante synaptic.
Descripcin 3. Agregar directorio /mirror en todos los nodos (maestro-esclavo)
Se establece una carpeta para compartir para el clster por cada usuario, que llamaremos mirror en
cada uno de los nodos del clster, dentro de la carpeta de cada usuario.
Siguiendo con el ejemplo, los comandos seran
mkdir /home/ars/mirror, en el nodo maestro
mkdir /home/ars-esclavo1/mirror, en el nodo esclavo1
mkdir /home/ars-esclavo2/mirror, en el nodo esclavo2
Descripcin 4. Se indican las carpetas que se comparten en el clster para todos los nodos.
NFS tiene un archivo de configuracin /etc/exports, donde se indican las carpetas compartidas y los
usuarios que pueden accesarlas.
La sintaxis es:
/carpeta/compartida mquina1(option1,option2,...) mquina2(...) ...
Las opciones pueden ser rw para leer/escribir (el valor por default es solo lectura), insecure
para indicar que cualquier usuario que no sea root puede acceder a la carpeta compartida.
Siguiendo con el ejemplo, podemos permitir que cualquier mquina esclava pueda leer/escribir en la
carpeta compartida en el nodo maestro, escribiendo en el archivo /etc/exports:
/mirror *(rw)
(el asterisco indica que se aplica a todas las mquinas).
Se debe reiniciar el nodo maestro para que tengan lugar los cambios.
Descripcin 5. Se configura montaje de la carpeta compartida en cada nodo esclavo.
Para poder accesar la carpeta que se comparte del nodo maestro, se debe montar en el sistema de
archivos de cada nodo esclavo.
El montaje se puede realizar de manera manual en cada nodo esclavo, mediante el comando:
mount -t nfs -o rw,nosuid direccin-IP:/home/ars/mirror /carpeta/esclavo/mirror

que monta la carpeta /home/ars/mirror de la mquina con direccin-IP en la carpeta /mirror del usuario
esclavo.
Siguiendo con el ejemplo, sera
mount -t nfs -o rw,nosuid 10.9.26.186:/home/ars/mirror /home/ars-esclavo1/mirror
El comando mount se tendra que aplicar cada que se encienda la computadora. Si se desea que esta
configuracin sea permanente, se tendra que editar el archivo /etc/fstab, que contiene la
configuracin de las particiones de los discos de almacenamiento. Por ejemplo,
# Sistema de archivos de red, NFS
192.168.1.1:/home/usuario/Escritorio /mnt/remoto nfs defaults,auto,rw 0 0
indicara que se monta la carpeta Escritorio en la carpeta /mnt/remoto del equipo local.
Descripcin 6 . Realizar pruebas de acceso al directorio remoto
a) Verificar que se tiene el archivo del nodo maestro como parte del sistema de archivos local
b) Copiar archivos entre los equipos usando la carpeta compartida del nodo maestro.
c) Investigar los conceptos alto rendimiento, disponibilidad, balanceo de cargas y escalabilidad.
Mostrar comparaciones entre una PC normal y un clster.
d) Para cada uno de estos conceptos del inciso c), existen versiones de software libre y propietario.
Investigar y mostrar en una tabla con estos productos y sus principales caractersticas.

4. FUENTES DE INFORMACIN.
1. http://ubuntucluster.blogspot.mx/ ; Publicado por Sistemas Operativos Distribuidos
2. http://estudiantesnerd.blogspot.mx/

Pueden utilizar la bibliografa de la asignatura, libros electrnicos, revistas, documentos


electrnicos con referencias fidedignas.
Las contigencias que se tengan en el desarrollo de la prctica, reportarlas con la solucin dada.

También podría gustarte