Búscalo aquí:

Configuración de un Cluster en Linux


La estructura de un cluster esta formada por un grupo de computadoras, intercomunicadas entre si por medio de una conexión ya sea de red o por un bus interno. En este post se presentarán los pasos para la configuración de un cluster en Linux sobre una red local usando PVM (Parallel Virtual Machine) y el protocolo de seguridad SSH.

A continuación se presentarán los pasos para configurar un cluster sobre una red local usando la distribución Debian de Linux. El trabajo se realizará sobre la máquina que se desea convertir en MAESTRO del cluster.

Primer Paso
Primero debemos asegurarnos que contamos con un dominio estático de red. Asi suponiendo que el IP de nuestra máquina es 192.168.0.X (X puede ser por ejemplo 238), entraremos al fichero de interfaces y convertiremos nuestro dominio a uno de tipo estático. Para esto, usar los siguientes comandos en el shell:

> cd /etc/network //entramos al path del fichero de interfaces
> nano interfaces //accedemos al fichero de interfaces para modificarlo

Este ultimo comando nos presentará el fichero de interfaces, modificarlo y asegurarnos de que quede de la siguiente manera:
  1. # iface eth0 inet dhcp
  2. iface eth0 inet static
  3. addres 192.168.0.238
  4. netmask 235.255.255.0
  5. gate way 192.168.0.1

Es decir, suponiendo que solo contamos con una tarjeta de red (eth0), lo que hacemos en la linea 1 es comentar nuestro dominio de red mediante dhcp (pues no lo usaremos) y habilitar nuestro dominio estático de red (linea 2). Luego actualizamos nuestra dirección IP, máscar de red, y puerta de enlace. Guardamos los cambios y salimos del archivo interfaces.

Luego, nuevamente en shell tecleamos los comandos:

> ifup eth0 //actualizamos el cambio al dominio estático red
> ifconfig //si deseamos comprobar que todos los cambios se han realizado


Segundo Paso
Ahora debemos configurar los nodos de red del cluster. Es decir, contar con la información de los hosts de aquellas computadoras que queremos que formen parte de nuestro cluster (nodos del cluster). Para esto, usar los siguientes comandos en el shell:

> cd /etc //entramos al fichero etc
> nano hosts //accedemos al fichero de hosts

Este ultimo comando nos presentará el fichero de hosts, aquí colocaremos los hosts de las computadoras que formarán parte de nuestro cluster de la siguiente manera:

  1. 127.0.0.1 pc01.debian pc01
  2. 192.168.0.231 pc02.debian pc02
  3. 192.168.0.232 pc03.debian pc03
  4. 192.168.0.234 pc04.debian pc04

Por cada IP se coloca el identificador de la computadora (por ejm. pc01.debian) y el identificador con el que se le conocerá en el cluster (por ejm. pc01). En la linea 1 se coloca el IP local de la computadora en la que nos encontramos (computadora MASTER). Se pueden colocar todos los hosts que deseemos.


Tercer Paso
Ahora debemos de crear una cuenta de usuario para el acceso al cluster. De esta manera, en shell tecleamos los siguientes comandos:

> adduser cluster

El comando adduser sirve para crear un nuevo usuario, el cual, en este caso, tendrá el nombre de cluster. Al teclear la tecla INTRO (ENTER) aparecerán solicitudes de información acerca del usuario, siendo la información más importante la contraseña. Entonces, recordar siempre el nombre de usuario y la contraseña, pues son los requisitos necesarios para el acceso al cluster.


Cuarto Paso
Ahora debemos de configurar el protocolo de seguridad SSH para el cluster. La seguridad es sumamente necesaria en todo ámbito de la informática y uno de los protocolos de seguridad implementados para brindar la seguridad de acceso es el protocolo SSH. De esta manera, se le negará el acceso a cualquier computadora con un determinado host que no pertenece a la red de nodos del cluster.

De esta manera, cada vez que una computadora con un determinado host desea acceder, el protocolo SSH se encargará de verificar su autenticidad. Sin embargo, cuando los nodos de nuestra red deseen acceder (para brindar los resultados de su trabajo al master, por ejemplo), también serán verificados por SSH. Esto puede significar un problema en tiempos de acceso al momento de realizar tareas en el cluster, debido a que además del tiempo ocupado por las tareas de procesamiento, se le sumará el tiempo ocupado en verificación de autenticidad.

Esto puede ser solucionado configurando el protocolo SSH de manera tal que, conociendo a los nodos que pertenecen a la red (gracias al fichero hosts) se les otorgue autorización certificada para su acceso, y se evite su verificación en cada instante. Para esto, los comandos son:

//creamos una clave pública mediante el algoritmo RSA
> # ssh-keygen -t rsa
//enviamos la clave pública creada a todos los nodos del cluster (esclavos)
> # cd root /.ssh/
> ssh# scp id_rsa.pub root@pc_esclavo: ~/.ssh/claves.pcmaster

En el primer comando creamos una clave pública mediante el algoritmo de cifrado de clave publica RSA. En el segundo comando, se esta enviando dicha clave pública a la computadora esclavo con identificador pc_esclavo, dicha clave será almacenada en el directorio de autenticación de ssh en el archivo claves. SSH sabrá que el computador con identificador pcmaster ha enviado claves de seguridad a pc_esclavo. Hacer esto para todas las computadoras que pertenezcan a la red de nodos del cluster, colocando los identificador pc_esclavo usados en el archivo de hosts y el identificador pcmaster del computador en el que nos encontramos.

Ahora debemos autenticar a los esclavos, hacer:

> ssh# ssh pc_esclavo
pc_esclavo: ~# cd .ssh/
pc_esclavo: ~/ssh# cat claves.pcmaster >> authorized_keys
pc_esclavo: ~/ssh# exit

De esta manera, a la computadora con identificador pc_esclavo le decimos que permita el acceso autorizado de la computadora con identificador pcmaster. Realizar esta tarea también para todas las computadoras que deseemos que sean esclavos de la red de nodos (incluso para la máquina que es nuestro MASTER, ya que puede realizar ambas funciones).


Quinto Paso
Finalmente, debemos usar el software PVM para el manejo del cluster. Hasta el paso anterior, lo que logramos es la construcción y configuración de la arquitectura del cluster, sin embargo, ahora nos hace falta un administrador de esa arquitectura. on este objetivo, usamos el software PVM (Parallel Virtual Machine) , el cual se encargará del manejo del cluster, asignando las tareas que el MASTER envíe a sus ESCLAVOS, enviando al MASTER los resultados de las tareas que sus ESCLAVOS ejecuten, entre otras.

Para esto debemos tener instalado PVM. Una vez eso, lo único que debemos de hacer es acceder a PVM desde la computadora MASTER y agregar todos los identificadores de los esclavos que pertenecen a nuestra red de nodos del cluster de la siguiente manera:

> pvm
pvm > add pc_esclavo

Hacer esto con todos los esclavos. Para salir del entorno de PVM usar:

pvm > exit

Hasta este punto, ya tendremos armado nuestro cluster en nuestra propia red local, el cual cuenta con la seguridad brindada por el protocolo SSH y administrado por PVM. Ahora solo nos queda aprovechar de la capacidad computacional que nos ofrece un cluster.

Espero que les sea de utilidad.


Quieres leer más post como éste???...suscribete aquí!!!



8 comentarios:

  1. Formar tu propio cluster no es tan complicado como se puede creer, gracias man por la amnera didactica en que presentas las cosas y sobre todo con las razones del por que realizar cada paso (Y).

    ResponderEliminar
  2. hola jorge estoy implementando un cluster en mi facultad de informatica y sistemas pero tengo unos inconvenientes para la instalacion del pvm y poner red ojala me agregues este es mi correo men michael_ricky@htmail.com muchas gracias

    ResponderEliminar
  3. Hey muchas gracias se ve muy bn la informacion...estoy por intentarle...pero se te agradece la intencion que creo que si funcionara....esper estes de lo mejor de lo mejor .....gracias de nuevo

    ResponderEliminar
  4. genial post¡ Yo pensaba que era mas complicado, lo voy a intentar en ubuntu.

    ResponderEliminar
  5. Hola mi nombre es Sebastian y tengo la siguiente pregunta. ¿Debiese ser lo mismo para Ubuntu? Me seria de mucha ayuda debido a que tengo que configurar un cluster en ubuntu pero con el administrador Condor. Ojala me podais guiar un poco muchas gracias.

    ResponderEliminar
  6. Estimado Sebastian, en teoría debería ser similar siempre y cuando lo trabajes desde consola paso a paso como se muestra, sin embargo, usando el administrador Condor que mencionas, las cosas podrían ser diferentes en el sentido que dicho administrador podría facilitarte el trabajo.

    ResponderEliminar
  7. Buenas!
    muy buena tu info... pero me atore en la instalacion del PVM.
    Necesito ver si me puedes ayudar a encontrar un tuto de como instalar el PVM...

    De ante mano, Gracias!

    mi correo: juniorpps_19_06@hotmail.com

    ResponderEliminar
  8. todo anda bien pero el usuario cluster caundo lo usamos??
    y como pruebo que funciona ?

    ResponderEliminar

Bienvenido a jcGeorge's Blog!!!

Por favor deja tu comentario, consulta o sugerencia, procura mantener habilitado tu perfil de Blogger o deja un enlace a tu blog o web.

Gracias por leer este blog!!!

Related Posts Plugin for WordPress, Blogger...