jueves, 9 de marzo de 2017

Instalación Torque PBS (en un solo equipo) nodo maestro y nodo de procesamiento


1.- Instalar requerimientos de TORQUE en el equipo:

 apt-get install libxml2-dev libssl-dev gcc make g++ libboost-all-dev


2.- Descargar el software TORQUE en el servidor de frontend


3.-Descompactar y compilar TORQUE

root]# tar -xzvf torque-.tar.gz 
[root]# cd torque-/
[root]# ./configure
[root]# make
[root]# make install

4.- Agregar el script necesario para iniciar el demonio "trqauthd" automaticamente:

[root]# cp contrib/init.d/debian.trqauthd /etc/init.d/trqauthd
[root]# update-rc.d trqauthd defaults
[root]# echo /usr/local/lib > /etc/ld.so.conf.d/torque.conf
[root]# ldconfig
[root]# service trqauthd start

5.- Verificar que el nombre del servidor front-end esta incluido en el archivo "server_name"

[root]# echo > /var/spool/torque/server_name


6.- Inicializar la base de datos de la instalacion de TORQUE:

[root]# export PATH=/usr/local/bin/:/usr/local/sbin/:$PATH
[root]# ./torque.setup root

7.- Agregar los nodos de ejecucion al archivo "nodes" en este caso el mismo que "server_name"

vi /var/spool/torque/server_priv/nodes

8.- Agregar el script necesario para iniciar el demonio "pbs_server" , "pbs_sched" y el demonio "pbs_mom" automaticamente:

[root]# cp contrib/init.d/debian.pbs_server /etc/init.d/pbs_server
[root]# update-rc.d pbs_server defaults
[root]# service pbs_server restart

[root]# cp contrib/init.d/debian.pbs_sched /etc/init.d/pbs_sched
[root]# update-rc.d pbs_sched defaults
[root]# service pbs_sched restart

[root]# cp contrib/init.d/debian.pbs_mom /etc/init.d/pbs_mom
[root]# update-rc.d pbs_mom defaults
[root]# service pbs_mom restart


9.- Configurar colas de ejecución de acuerdo a necesidades con el comando "qmgr -c  ", Ejemplo:

create queue batch
set queue batch queue_type = Execution
set queue batch max_running = 24
set queue batch resources_max.nodect = 1
set queue batch enabled = True
set queue batch started = True


10.- Ante posibles errores verificar lo siguiente:

- Que estén ejecutándose los demonios: trqauthd , pbs_server, pbs_mom, pbs_sched

- Que se este utilizando como nombre de los nodos el hostname reportado por Sistema Operativo

Puede validarse lo anterior ejecutando el comando "hostname" desde la consola.

- Deshabilitar el firewall

En Debian-Ubuntu con el siguiente comando "ufw disable"

- Notas adicionales sobre errores comunes:

Using qmgr to remove a queue attribute:

qmgr -c "unset queue default_queue acl_users"

Instalación Torque (Actualización para Ubuntu 14.04)


1.- Requerimientos previos a la instalación

- Configuración de interfaces de red de acuerdo a necesidades (Explicado en entradas anteriores)
- Configuración de NAT en servidor front-end (Explicado en entradas anteriores)
- NFS Server en Debian (Explicado en entradas anteriores)
- Configuración de archivo /etc/hosts de acuerdo a necesidades
- Configuración de passwordless entre front-end y nodos (Explicado en entradas anteriores)


2.- Instalar requerimientos de TORQUE en el servidor front-end y en los nodos:

 apt-get install libxml2-dev libssl-dev gcc make g++ libboost-all-dev


En servidor Front-End

3.- Descargar el software TORQUE en el servidor de frontend


4.-Descompactar y compilar TORQUE

root]# tar -xzvf torque-.tar.gz 
[root]# cd torque-/
[root]# ./configure
[root]# make
[root]# make install

5.- Agregar el script necesario para iniciar el demonio "trqauthd" automaticamente:

[root]# cp contrib/init.d/debian.trqauthd /etc/init.d/trqauthd
[root]# update-rc.d trqauthd defaults
[root]# echo /usr/local/lib > /etc/ld.so.conf.d/torque.conf
[root]# ldconfig
[root]# service trqauthd start

6.- Verificar que el nombre del servidor front-end esta incluido en el archivo "server_name"

[root]# echo > /var/spool/torque/server_name


7.- Inicializar la base de datos de la instalacion de TORQUE:

[root]# export PATH=/usr/local/bin/:/usr/local/sbin/:$PATH
[root]# ./torque.setup root

8.- Agregar los nodos de ejecucion al archivo "nodes"

vi /var/spool/torque/server_priv/nodes

9.- Agregar el script necesario para iniciar el demonio "pbs_server" y el demonio "pbs_mom" automaticamente:

[root]# cp contrib/init.d/debian.pbs_server /etc/init.d/pbs_server
[root]# update-rc.d pbs_server defaults
[root]# service pbs_server restart

[root]# cp contrib/init.d/debian.pbs_mom /etc/init.d/pbs_mom
[root]# update-rc.d pbs_mom defaults
[root]# service pbs_mom restart

10.- Generar paquetes para la instalación de los nodos:

make packages
Building ./torque-package-clients-linux-i686.sh ...
Building ./torque-package-mom-linux-i686.sh ...
Building ./torque-package-server-linux-i686.sh ...
Building ./torque-package-gui-linux-i686.sh ...
Building ./torque-package-devel-linux-i686.sh ...
Done.

11.- Instalación en los nodos:

> for i in node01 node02 node03 node04 ; do scp torque-package-mom-linux-i686.sh ${i}:/tmp/. ; done
> for i in node01 node02 node03 node04 ; do scp torque-package-clients-linux-i686.sh ${i}:/tmp/. ; done
> for i in node01 node02 node03 node04 ; do ssh ${i} /tmp/torque-package-mom-linux-i686.sh --install ; done
> for i in node01 node02 node03 node04 ; do ssh ${i} /tmp/torque-package-clients-linux-i686.sh --install ; done

12.- Iniciar Scheduler:

root# pbs_sched

13.- Configurar colas de ejecución de acuerdo a necesidades con el comando "qmgr -c  ", Ejemplo:

create queue batch
set queue batch queue_type = Execution
set queue batch max_running = 24
set queue batch resources_max.nodect = 2
set queue batch resources_default.nodect = 2
set queue batch resources_default.nodes = 2:ppn=12
set queue batch enabled = True
set queue batch started = True

14.- Crear usuarios con passwordless entre front-end y nodos de procesamiento

15.- Ante posibles errores verificar lo siguiente:

- Que estén ejecutándose los demonios: trqauthd , pbs_server, pbs_mom, pbs_sched

- Que se este utilizando como nombre de los nodos el hostname reportado por Sistema Operativo

Puede validarse lo anterior ejecutando el comando "hostname" desde la consola.

- Deshabilitar el firewall

En Debian-Ubuntu con el siguiente comando "ufw disable"

- Notas adicionales sobre errores comunes:

Using qmgr to remove a queue attribute:

qmgr -c "unset queue default_queue acl_users"