0% encontró este documento útil (0 votos)
164 vistas2 páginas

How To Cluster With openMPI

El documento describe los pasos para configurar un cluster MPI usando OpenMPI en Linux. Incluye la instalación de paquetes necesarios, configuración de cuentas SSH y llaves públicas/privadas para acceso sin contraseña, compartir directorios mediante NFS, y probar la ejecución de un programa MPI en el cluster especificando el archivo de host y número de procesos.

Cargado por

Marlenne Mendoza
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
164 vistas2 páginas

How To Cluster With openMPI

El documento describe los pasos para configurar un cluster MPI usando OpenMPI en Linux. Incluye la instalación de paquetes necesarios, configuración de cuentas SSH y llaves públicas/privadas para acceso sin contraseña, compartir directorios mediante NFS, y probar la ejecución de un programa MPI en el cluster especificando el archivo de host y número de procesos.

Cargado por

Marlenne Mendoza
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 2

# descargar los paquetes openmpi-bin openmpi-common libopenmpi1.

3 libopenmpi-dev nfs-kernel-server nfs-co mmon portmap ########## configuracin de las cuentas ssh ######################### # crear usario para el cluster en la mquina maestro y en la mquina esclavo (mismo nombre en ambas) # entrar en cada mquina con la cuenta del nuevo usario # permitir acceso del cluster a los esclavos y visceversa, en todas las mquinas a gregar al archivo /etc/ssh/sshd_config la sig lnea AllowUsers cluster # reiniciar el servicio ssh para que los cambios realizados sean vlidos # sudo service ssh restart # cada usario debe hacer una carpeta oculta llamada "ssh" en la carpeta personal de la cuenta del cluster mkdir .ssh # en el nodo maestro # crear un par de llaves tipo dsa para evitar usar passwords ssh-keygen -t dsa # la llave generada se localiza en el directorio .ssh en el nodo maestro # copiar llave pblica del maestro a cada esclavo, o compartirla, o va USB scp .ssh/id_dsa.pub [email protected]:/home/cluster/.ssh # en cada esclavo # concatenar la llave al archivo id_dsa.pub al archivo authorized_keys2 cat id_dsa.pub >> authorized_keys2 # cambiar los permisos del archivo authorized_keys2 chmod 600 authorized_keys2 # conectarse del maestro a cada uno de los esclavos ssh [email protected] # escribir la frase utilizada para crear la llave dsa, listo!!! ########## configuracin de network file system ######################### # instalar nfs (network system file) # instalar nfs-kernel-server nfs-common portmap # solo en el maestro gedit etc/exports #poner la linea /home/cluster 192.168.10.0/24(rw,no_subtree_check,async,no_root_squash) # reiniciar el servicio service nfs-kernel-server restart # en los esclavos... # instalar los paquetes nfs-common portmap sudo apt-get install nfs-common portmap # Una vez que termino la instalacion probaremos si el directorio compart ido es accesible desde el nodo: showmount -e 192.168.10.100 (la direccin del maestro) # debemos obtener Export list for 192.168.0.100: /home/cluster 192.168.10.0/24 # montar el recurso desde linea de comando sudo mount -t nfs 192.168.10.100:/home/cluster /home/cluster # comprobar mediante el siguiente comando mount # obtendremos 192.168.10.100:/home/cluster on /home/cluster type nfs (rw,addr= 192.168.0.100) ########## probar el cluster #########################

#crear archivo /user/cluster/.mpi_hostfile # The Hostfile for Open MPI # The master node, 'slots=2' is used because it is a dual-processor mach ine. localhost slots=1 # The following slave nodes are single processor machines (poner las dir ecciones de los esclavos): slave1 slave2 slave3 # crear el archivo "prueba.c" con el sig cdigo #include <stdio.h> #include <mpi.h> int main(int argc, char *argv[]) { int numprocs, rank, namelen; char processor_name[MPI_MAX_PROCESSOR_NAME]; MPI_Init(&argc, &argv); MPI_Comm_size(MPI_COMM_WORLD, &numprocs); MPI_Comm_rank(MPI_COMM_WORLD, &rank); MPI_Get_processor_name(processor_name, &namelen); printf("Process %d on %s out of %d\n", rank, processor_name, numprocs) ; MPI_Finalize(); } # compilarlo mpicc prueba.c -o prueba # ejecutarlo, donde "-np num" indica el nmero de procesos. mpirun -np 3 --hostfile .mpi_hostfile ./prueba # obtendremos [email protected]'s password: Process 1 on debian-off-line out of 3 Process 2 on debianOff out of 3 Process 0 on debianOff out of 3

También podría gustarte