Cluster Beowulf/MPI en Debian



Documentos relacionados
Redes de área local Aplicaciones y Servicios Linux NFS

Crear servidor NFS en Debian

LABORATORIO No 3. Realizar las lecturas que se requieren para el desarrollo del laboratorio.

Servidor DNS sencillo en Linux con dnsmasq

Instituto Tecnológico de Las América. Materia Sistemas operativos III. Temas Clúster. Facilitador José Doñe

INSTALACIÓN DE GITLAB

Manual básico NFS. INSTALANDO Los paquetes necesarios para montar el servidor NFS son: nfs-kernel-server. nfs-common. portmap

Instalación Hadoop. Guía para Debian y derivados

Software de Comunicaciones. Práctica 7 - Secure Shell. SSH

PRÁCTICA 1-2: INSTALACIÓN Y ADMINISTRACIÓN DE UN SERVIDOR DNS (PRIMARIO Y ZONA DE RESOLUCIÓN DIRECTA E INVERSA EN WINDOWS 2008 SERVER)

CASO PRÁCTICO 3. Beatriz Vadillo Lavisier. Primero vamos al gesto de paquetes de Synaptic y nos instalamos el openssh-server

Ficheros de configuración de Nagios (ejemplo con nrpe y snmp)

4.2- Instalación y Configuración de un Servidor DNS Dnsmasq en Ubuntu sin DHCP

Acceso a máquinas usando el SSH sin contraseña

Instituto Tecnológico de Las América. Materia Sistemas operativos III. Temas. Facilitador José Doñe. Sustentante Robín Bienvenido Disla Ramirez

Instalación de OpenMPI

Instituto Tecnológico de Las Américas (ITLA)

Practica Extra: Creación de BACKUP+CRONTAB+NFS

Prácticas A.S.O./A.S.O.P. - Boletín L08 NFS y NIS

DOCENTES FORMADORES UGEL 03 PRIMARIA

Explotación de Sistemas Informáticos IES Murgi PRÁCTICA 9: SERVICIO WEB Y FTP DE INTERNET INFORMATION SERVICE

Oprima el enlace "Hosts" hacia la izquierda de la página inicial de Nagios para ver lo que se ha configurado por defecto.

Profesor: José Luis Di Biase

SISTEMA CABILDO MANUAL DE INSTALACIÓN CLIENTE ERP CABILDO LA SOLUCIÓN TECNOLÓGICA MÁS COMPLETA E INTEGRAL PARA GOBIERNOS LOCALES

TS RemoteApp Manager

UNIDAD DIDACTICA 13 INICIAR SESIÓN EN LINUX DE FORMA REMOTA

Ubuntu Server HOW TO : SERVIDOR VPN. EN ESTE SE REALIZA LO SIGUIENTE: En este how to se le va a enseñar como usar vpn. Qué es una VPN?

Ubuntu Server HOW TO : SERVIDOR FTP EN ESTE SE REALIZA LO SIGUIENTE: En este how to se le va a enseñar como compartir datos en un servidor ftp..

PRACTICA NO.4: HOW TO INSTALL NFS

Y añado también los 2 profesores al grupo de profesores mediante el comando:

qwertyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyuiopasd fghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq

INSTALACIÓN DE PROFTPD

Instalación y configuración de un servidor de streaming con Icecast en Linux. Vicente Sánchez Patón I.E.S Gregorio Prieto.

Conexión Remota Usando OpenSSH Con Claves Publicas Integrante: Felix Taborda.

Vielka Mari Utate Tineo Instituto Tecnológico de las Américas ITLA. Profesor José Doñé PRACTICA NO. 7, SAMBA COMO GRUPO DE TRABAJO

PROCEDIMIENTO DE PXES

Guía rápida de instalación y puesta en marcha del Agente ADSL

Servidor FTP. JEAN CARLOS FAMILIA Página 1

PRESENTACIÓN NOMBRE: Kelvin José Jiménez Matos MATRÍCULA: SECCIÓN: (1) CENTRO DE ESTUDIOS: INSTITUTO TECNOLÓGICO DE LAS AMERICAS (ITLA)

Actualizaciones de GateDefender Performa desde un servidor web local

5.2.- Configuración de un Servidor DHCP en Windows 2003 Server

DBSURE. Disponemos de una copia de la base de datos de forma remota, que podemos contabilizar como segundo juego de copias.

UNIDAD DIDACTICA 4 INTEGRACIÓN DE CLIENTES WINDOWS EN UN DOMINIO

MANUAL DE INSTALACIÓN DEL COMPONENTE WEBSIGNER ACTIVEX. Versión 4.0

Administración de sistemas UNIX/Linux Ejercicios prácticos IV

Instala y configura un servidor SSH/SFTP. Transferir ficheros a dicho servidor con un cliente SFTP y SCP.

Facultad de Ciencias del Hombre y la Naturaleza SISTEMAS OPERATIVOS DE REDES CICLO II Materia: Sistemas Operativos de Redes Tema:

a) Instalación del servidor SSH en GNU/Linux

Existen tres configuraciones fundamentales para poder configurar correctamente nuestro servicio de NFS como servidor, estas son:

Servidor DNS. DNSmasq. Rocío Alt. Abreu Ortiz

Instalación de Tomcat7 en Ubuntu

UNIDAD DIDACTICA 16 USUARIOS SAMBA EN UN CONTROLADOR DE DOMINIO LINUX SERVER

qwertyuiopasdfghjklzxcvbnmqwertyuio pasdfghjklzxcvbnmqwertyuiopasdfghjk lzxcvbnmqwertyuiopasdfghjklzxcvbnm qwertyuiopasdfghjklzxcvbnmqwertyuio

ALL IN HOSTING. Guías de uso. Guía de inicio para servidores linux.

Guía de Instalación para clientes de WebAdmin

Guía de conexión a la red eduroam

EDITRAN/CL. Manual de Usuario e Instalación. Módulo de Cliente Departamental. Windows

Módulos: Módulo 1. Hardware & Arquitectura de sistemas - 20 Horas

Taller de GNU/Linux Instalación de servicios básicos

7º Unidad Didáctica. Protocolos TELNET y SSH. Eduard Lara

Instituto Tecnológico Las Américas (ITLA) Sistemas Operativos 3 (SO3) Daniel Alejandro Moreno Martínez. Matrícula:

Uso básico de la terminal

Gestor de Colas SGE. 1. Qué es? 2. Configuración actual en CICA 3. Comandos 4. Trabajos Paralelos 5. Entorno gráfico QMON

Servidor Apache. Instalación Configuración Apache con Webmin 24/03/2014. Vicente

MANUAL DE CONFIGURACION DE BIND 9

INSTALACIÓN DE UBUNTU SERVER 12.4 EN MÁQUINA VIRTUAL

Tipos de conexiones de red en software de virtualizacio n: VirtualBox y VMware

Instalación de cygwin-x. Pablo Sanz Mercado.

Laboratorio de Desarrollo Software

Instalación de la aplicación.

Configuración de la red

Tenemos que instalar los programas de los usuarios también (los anteriormente mencionados) y los siguientes que vamos a nombrar.

Sistema NFS para compartir archivos.

PRÁCTICA 8 CONFIGURACIÓN DHCP EN FEDORA, DEBIAN Y OPEN SUSE:

INSTALACIÓN DE MÚLTIPLES SUPERVISOR VS EN RED

How to Crear Servidor Samba

MANUAL DEL INSTALADOR

En caso de que el cliente nunca haya obtenido una concesión de licencia de un servidor DHCP:

Instalación de un nodo (cliente) - GIA

Creación Servidor FTP

RESOLUCIÓN DE INCIDENCIAS PROCURADORES

UNIDESYS UNIVERSAL BUSINESS SYSTEMS INSTALACIÓN NUEVO PUESTO DE TRABAJO

Instalar protocolo, cliente o servicio nuevo. Seleccionar ubicación de red. Práctica - Compartir y conectar una carpeta

Internet Information Server

labs Linux para Administradores de Elastix Elastix Certification ELASTIX CERTIFICATION

SAMBA y NFS GNU/Linux

IIS. Qué es? Instalación. Bruno Del Greco SRI

IBM SPSS Collaboration and Deployment Services (C&DS) versión 7

Cómo unir un equipo al dominio de las aulas tecnológicas

COMO INSTALAR Y CONFIGURAR UN SERVIDOR DNS

11º Unidad Didáctica. Conexión Remota a Ordenador. Eduard Lara

Servicio de acceso y control remoto SSH. carlos victoria casanova

Transcripción:

1- Configuración de la red: Cluster Beowulf/MPI en Debian En este artículo utilizamos la topología estrella para la configuración del Cluster. La configuración lo haremos suponiendo que ya tenemos una red instalada y configurada, o sea con la tarjeta de red configurada con los respectivos IPs para cada nodo y pertenecientes aun grupo de trabajo. Para probar si un nodo tiene la red configurando correctamente, desde consola hacemos: ping <ip_nodo>, ejemplos: Ping al nodo local: ~$ ping 127.0.0.1 Ping a otra maquina: ~$ ping 192.168.1.40 Configuramos el archivo /etc/hosts para colocar un nombre a cada Nodo que participa en el cluster: edu@pc-10:~$ nano /etc/hosts Ejemplo: # Ip Grupo en Red nombre del nodo 127.0.0.1 localhost 192.168.1.40 PC-10.RM.NT PC-10 192.168.1.37 PC-09.RM.NT PC-09 192.168.1.35 PC-08.RM.NT PC-08 En el ejemplo anterior suponemos con tres nodos pertenecientes al cluster. Ahora hacemos: edu@pc-10:~$ ping PC-09 2- Compartir directorio: Para compartir el sistema de archivos lo haremos vía NFS. El directorio a compartir será ~/ del lado del maestro y los esclavos lo montaran en ~/. Ejemplo si el usuario es edu el directorio seria /home/edu, teniendo en cuenta que el usuario es el mismo para todos los nodos, en caso contrario crear un usuario común para todos los nodos. Esto se hace ya que para ejecutar mpirun, requiere que todos los nodos tengan un filesystem compartido. Desde el maestro configuramos: Instalamos el servidor de NFS. Seleccionamos al nodo PC-10 como servidor: edu@pc-10:~$ su edu@pc-10:~# apt-get install nfs-kernel-server

Editamos los permisos a los nodos: edu@pc-10:~# nano /etc/hosts.allow #nodos que se permiten el acceso por NFS portmap : 192.168.1.0/24 edu@pc-10:~# nano /etc/hosts.deny #nodos que no se permite el acceso portmap : ALL Directorios a exportar: edu@pc-10:~# nano /etc/exports #directorio requerido /home/edu 192.168.1.0/24 (rw, sync) Reiniciamos el demonio y el portmap edu@pc-10:~# /etc/init.d/nfs-kernel-server restart edu@pc-10:~# /etc/init.d/portamp restart En los nodos montamos el directorio compartido: Reportamos todos los directorios que comparte el servidor de NFS edu@pc-09:~# showmount e PC-10 ahora montamos el directorio compartido edu@pc-09:~# mount t nfs PC-10:/home/edu /home/edu Repetimos este paso para todos los nodos esclavos. En ocasiones es necesario instalar los binarios de NFS para el cliente: nfs-kernel-user 3- Habilitar SSH sin password: Para que el master pueda ejecutar comandos remotos en los esclavos, MPICH utiliza rsh (Remote Shell) o ssh (Secure Shell). En Debian el comando rsh es un enlace del sistema de alternativas que apunta a /usr/bin/ssh, por lo que MPICH y LAM/MPI utilizan por defecto conexiones seguras.

Para disponer de SSH instalaremos en los nodos el servidor SSH (paquete openssh-server) y los configuraremos para que acepten conexiones desde el master sin pedir password ni passphrase (utilizando el mismo usuario en todos los nodos). Para ello: crearemos una clave RSA en el master: edu@pc-10:~$ ssh-keygen -t rsa -f ~/.ssh/id_rsa activaremos ssh-agent en el master para que no nos pida la pass-phrase: edu@pc-10:~$ eval `ssh-agent -s` Agent pid 12297 edu@pc-10:~$ ssh-add Enter passphrase for /home/edu/.ssh/id_rsa: Identity added: /home/edu/.ssh/id_rsa (/home/edu/.ssh/id_rsa) copiaremos la clave pública (~/.ssh/id_rsa.pub) en todos los esclavos: edu@pc-10:~$ scp ~/.ssh/id_rsa.pub edu@pc-09:~/.ssh/id_rsa.pub la añadiremos al final del fichero ~/.ssh/authorized_keys en cada esclavo: edu@pc-09:~$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys y comprobaremos que podemos iniciar sesión SSH en los esclavos sin que nos pida password: edu@pc-10:~$ ssh PC-09 edu@pc-09:~$ 4- Beowulf con MPICH a. Instalar MPICH Es recomendable utilizar el administrador de paquetes para buscar la versión mas actual de MPICH para debían. En el lado del master es necesario instalar el paquete mpich-bin que nos proporciona los binarios para la ejecución, pero este paquete tiene dependencias con otros similares como libmpich para las librerías de desarrollo y la ultima versión de gcc y gcc (>4.0). Estos paquetes se les pueden buscar desde el administrador de paquetes del sistema. En el cliente se instala el paquete mpich-mpd-bin con sus respectivas librerías libmpich-mp. En ciertas ocasiones también es necesario tener instalado este paquete en el master.

b. Configurar MPICH Configurar master: Listar los nodos que participaran en el cluster en el archivo /etc/mpich/machines.linux. Ejemplo: edu@pc-10:~# nano /etc/mpich/machines.linux #master PC-10 #esclavos PC-09 PC-08 Configurar esclavos También listamos los nodos en el archivo.mpd.hosts si no esta crearlo en el directorio del usuario común, ejemplo: edu@pc-09:~# nano /home/edu/.mpd.hosts #master PC-10 #esclavos PC-09 PC-08 Y en el archivo.mpd.conf insertar una palabra secreta para el cluster edu@pc-09:~# nano /home/edu/.mpd.conf #palabra secreta del cluster, secret es de eleccion WM_WORDSECRET=secret Ajustar Variables de Entorno: Si instalamos los paquetes desde el administrador de paquetes, las variables de entorno de las librerías se registran automáticamente, en caso contrario si se utiliza el comando apt-get install hacerlo manualmente. También para decirle a MPICH que use SSH debemos establecer la variable de entorno P4_RSHCOMMAND, editando.bashrc y añadiendo la línea:

export P4_RSHCOMMAND=ssh Cargamos.bashrc de nuevo y comprobamos: edu@pc-10:~$ source ~/.bashrc edu@pc-10:~$ echo P4_RSHCOMMAND Probar MPICH MPICH proporciona el comando tstmachines, que comprueba la disponibilidad de las máquinas listadas en /etc/mpich/machines.linux para ejecutar programas MPI. edu@pc-10:~$ tstmachines v Trying true on PC-10... Trying ls on PC-10... Trying user program on PC-10... E parámetro -v que indica al script informar sobre los pasos que va realizando. De otra manera, se espera que, si no hay problemas, no se reciba ningún mensaje. MPICH proporciona cuatro comandos para compilar programas MPI: mpicc: programas escritos en C. mpicc: programas escritos en C++. mpif77: programas escritos en Fortran 77. mpif90: programas escritos en Fortran 90. Por ejemplo, para compilar el programa hola.c haremos: edu@pc-10:~$ mpicc -o hola hola.c Para ejecutar programas MPI utilizaremos el comando mpirun. Por ejemplo, para ejecutar el programa hola en 3 procesadores haremos: 5- Beowulf con LAM/MPI a. Instalar LAM/MPI edu@pc-10:~$ mpirun -np 3 hola Proceso 0 de 3 en PC-10 Proceso 1 de 3 en PC-09 Proceso 2 de 3 en PC-08 Instalar el paquete lam-runtime y lam en el master y en los nodos, utilizar el administrador de paquetes para instalar la última versión.

b. Configurar LAM/MPI Configurar Nodos: La definición del cluster se encuentra en el fichero /etc/lam/bhost.def y /etc/lam/bhost.conf Debe contener todos los nodos del cluster, usuario de conexión (en nuestro caso, edu) y número de CPU's. El contenido debe ser parecido al siguiente: #master PC-10 cpu=1 user=edu #esclavos PC-09 cpu=1 user=edu PC-08 cpu=1 user=edu Ajustar Variables de Entorno: Si instalamos los paquetes desde el administrador de paquetes, las variables de entorno de las librerías se registran automáticamente, en caso contrario si se utiliza el comando apt-get install hacerlo manualmente. Probar LAM: Para comprobar si el cluster LAM/MPI puede activarse: edu@pc-10:~$ recon Para activar el cluster (lamboot lanza el demonio lamd en cada máquina listada en /etc/lam/bhost.conf): edu@pc-10:~$ lamboot -v Una vez activado el cluster, para comprobar el estado de los nodos: edu@pc-10:~$ tping N Para compilar hacemos: edu@pc-10: ~$ mpicc -c hola.c edu@pc-10: ~$ mpicc -o hellompi hellompi.c Ejecutamos igual como se hace con MPICH edu@pc-10:~$ mpirun -np 3 hola ejecutar en todos los nodos edu@pc-10:~$ mpirun C hola

c. Monitorización con xmpi LAM/MPI proporciona la herramienta XMPI (paquete xmpi), que permite ejecutar programas paralelos MPI y monitorizarlos. XMPI no puede activar el cluster, éste tiene que haber sido activado con lamboot antes de lanzar XMPI. Para arrancar XMPI ejecutaremos el comando: edu@pc-10:~$ xmpi

Ejemplos: Seoleccionar nodos