jueves, 25 de marzo de 2021

Instalación de SLURM single node en Ubuntu 18.04

 Paso 1.- Instalación de paquetes:

server# apt install munge slurm-wlm


Paso 2.- Crear el archivo de configuración /etc/slurm-llnl/slurm.conf :


ControlMachine=<YOUR-HOST-NAME>

MpiDefault=none

ProctrackType=proctrack/pgid

ReturnToService=1

SlurmctldPidFile=/var/run/slurm-llnl/slurmctld.pid

SlurmdPidFile=/var/run/slurm-llnl/slurmd.pid

SlurmdSpoolDir=/var/lib/slurm-llnl/slurmd

SlurmUser=slurm

StateSaveLocation=/var/lib/slurm-llnl/slurmctld

SwitchType=switch/none

TaskPlugin=task/none

#

# SCHEDULING

FastSchedule=1

SchedulerType=sched/builtin

#Modificado para enviar trabajos simultáneos en un mismo nodo

SelectType=select/cons_res

SelectTypeParameters=CR_CPU_Memory

#


#

# LOGGING AND ACCOUNTING

AccountingStorageType=accounting_storage/none

ClusterName=<YOUR-HOST-NAME>

JobAcctGatherType=jobacct_gather/none

SlurmctldLogFile=/var/log/slurm-llnl/slurmctld.log

SlurmdLogFile=/var/log/slurm-llnl/slurmd.log

#

# COMPUTE NODES

NodeName=<YOUR-HOST-NAME> CPUs=4 Sockets=1 CoresPerSocket=4 ThreadsPerCore=2 State=UNKNOWN

PartitionName=long Nodes=<YOUR-HOST-NAME> Default=YES MaxTime=INFINITE State=UP


Paso 3.- Iniciar los servicios:

server# systemctl enable slurmctld

server# systemctl start slurmctld

server# systemctl enable slurmd

server# systemctl start slurmd


Paso 4.- Lanzar un trabajo:

$ sbatch -N1 -n1 --mem-per-cpu=50M submith.sh

Comandos útiles:

Estado de la cola en "Drain"

$sudo scontrol update nodename=node state=resume

Referencias:

Instalación

Comandos y ejemplos

sbatch


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"



martes, 12 de julio de 2016

Installation of Dell Open Manage Server Administrator






1.- Download

Dell Support


2.- Install

Unzip:  OM-SrvAdmin-Dell-Web-A00.exe

Run:  Windows/setup.exe

Installation of numpy, scipy and matplotlib on Debian (python2)



1.- Installing dependencies


apt-get update
apt-get install  python-setuptools python-pip python-dev python-virtualenv libblas-dev liblapack-dev libatlas-base-dev gfortran libfreetype6-dev pkg-config


3.- Installing scipy, numpy, matplotlib

pip install scipy numpy
apt-get install python-matplotlib


4.- Testing

import numpy as np
import matplotlib.pyplot as plt

X = np.linspace(-np.pi, np.pi, 256, endpoint=True)
C, S = np.cos(X), np.sin(X)

plt.plot(X, C)
plt.plot(X, S)

plt.show()



Links:
Scipy Lectures

Installation of Python3, scipy, numpy and matplotlib on Debian 8





1.- Download and Install Python3

wget  https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz

tar xvf Python-3.5.2
cd Python-3.5.2
./configure
make
make test
make install


2.- Installing dependencies


apt-get update
apt-get install  python-setuptools python-pip python-dev python-virtualenv libblas-dev liblapack-dev libatlas-base-dev gfortran libfreetype6-dev pkg-config


3.- Installing scipy, numpy, matplotlib

pip3.5 install --upgrade pip
pip3.5 install scipy numpy matplotlib


4.- Testing

import numpy as np
import matplotlib.pyplot as plt

X = np.linspace(-np.pi, np.pi, 256, endpoint=True)
C, S = np.cos(X), np.sin(X)

plt.plot(X, C)
plt.plot(X, S)

plt.savefig('test.pdf')



Links:
Scipy Lectures


martes, 28 de junio de 2016

Install Networkx python software package





1.- Install python2.7

wget https://centos(version).iuscommunity.org/ius-release.rpm
rpm -i ius-release.rpm
yum -y install python27 python27-devel python27-pip python27-setuptools python27-virtualenv --enablerepo=ius


2,. Install networkx:

pip2.7 install networkx


3.- Install nose, scipy and numpy (testing networkx)

pip2.7 install nose scipy numpy


4.- Test:

python2.7

>>import networkx
>>networkx.test()



Referencia:

NetworkX

Follow me in Elastix





1.- Edit Extension "Add Follow me settings" :

2.- Edit "Follow me lists" :

Number + #

3.- Edit "Destination if no answer" :

Extensions + No.Ext



Referencia:

Elastix Tech

viernes, 24 de junio de 2016

Disk cloning




1.- Linux commands for hard disk information:

- hdparm -i /dev/sda

- lshw


2.- Linux commands for clone disk:

Option 1: dd if=/dev/sdb of =/dev/sdc bs=100M

Install pv (apt-get install pv):

Option 2: dd if=/dev/sdb  | pv |  of=/dev/sdc bs=100M



3- Monitor status Option 1:

pkill -USR1 dd
watch -n5 'sudo pkill -USR1 dd'


miércoles, 1 de junio de 2016

Teamviewer en Linux





1.- Descargar software Teamviewer

2.- Para que inicie al loguearse en una sesión hay que agregarlo a los demonios de inicio dentro de la cuenta que lo ejecutará:

user$ genome-session-properties




lunes, 30 de mayo de 2016

Capturar llamadas en Asterix






1.- Cualquier extensión del mismo callgroup, comando por default: *8

2.- Comando para extensión en especifico: **+#Ext

3.- Cuando no acepta la sintáxís por default hay que cambiar en la configuración del PBX al siguiente comando : *+#Ext


Fuente: Julio Restrepo

Resetting WRT54G to Factory Defaults





1. Press and hold the reset button for 30 seconds.

2. Then, unplug the power keep holding down the reset button for
another 30 Seconds.

3. Plug back the power back in, and keep holding down the reset button
for 30 Seconds.

4. Release the reset button.

Admin: root
Passwd: admin






Fuente: Community Linksys

jueves, 21 de abril de 2016

Monitor printers with Nagios


1.- Descargar plugin

2.- Agregarlo al directorio plugins de nagios ya darle permisos de ejecución:

# chmod o+x check_snmp_printer

3.- Agregar el comando correspondiente al archivo commands.cfg de Nagios:


define command{
        command_name check_snmp_printer
        command_line $USER1$/check_snmp_printer -H $HOSTADDRESS$ -C $ARG1$ -x $ARG2$ -w $ARG3$ -c $ARG4$


4.- Agregar el servicio a la impresora que se desea monitorear, estas son algunas opciones:

  • CONSUM {"string" | TEST | ALL} 
  • DEVICE 
  • DISPLAY 
  • MESSAGES 
  • MODEL 
  • PAGECOUNT 
  • STATUS 
  • TRAY {number(s) | TEST | ALL} 
  • VERSION 


Ejemplo:

define service{
        use                     generic-service
        host_name               My_Printer
        service_description     Printer Model
        check_command           check_snmp_printer!community!"MODEL"
}




Referencia:

Exchange Nagios

miércoles, 20 de abril de 2016

Centos Nagios install



1.- yum install nagios

2.- vi /etc/nagios/objects/contacts.cfg

 contact_name              admin
 email                           admin@localhost ;

 members                     admin


3.-   vi /etc/httpd/conf.d/nagios.conf

## Comment Lines

#   Order allow,deny
#   Allow from all

## Uncomment and Change lines

Order deny,allow
Deny from all
Allow from 127.0.0.1 192.168.1.0/24

4.-  htpasswd /etc/nagios/passwd nagiosadmin


5.- service nagios start
     chkconfig nagios on

6.- Conf check

 nagios -v /etc/nagios/nagios.cfg




Referencia:

Unixmen

jueves, 14 de abril de 2016

Boot CD/DVD VMware Hypervisor (vSphere)





1.- Insert CD/DVD

2.- Connect CD/DVD - Host Device

3.- Guest  - Send Ctrl-Alt-Del



martes, 29 de marzo de 2016

CUDA + TORQUE Example


#!/bin/bash
##PBS -l nodes=1:ppn=4
#PBS -l nodes=1:cuda
#PBS -l walltime=16:00:00
#PBS -N testIO
#PBS -o cuda_out.$PBS_JOBID
#PBS -e cuda_err.$PBS_JOBID
#PBS -r n
#PBS -V
##PBS -m abe
##PBS -M jouser@mines.edu
#-----------------------------------------------------
cd $PBS_O_WORKDIR

cp ~/NVIDIA_GPU_Computing_SDK/C/bin/linux/release/deviceQuery .

echo
echo running on: `cat $PBS_NODEFILE`

echo
echo " gives a report of the devices that were found"
./deviceQuery $lt; /dev/null


Referencia:

GECO Mines

viernes, 4 de marzo de 2016

Debian Cluster + OpenMPI





1.- Descargar software de Open-MPI.org

# wget https://www.open-mpi.org/software/ompi/v1.10/downloads/openmpi-1.10.2.tar.gz


2.- Instalar en todos los nodos:

# gunzip -c openmpi-1.10.2.tar.gz | tar xf -
# cd openmpi-1.10.2
# ./configure --prefix=/usr/local
# make all install

3.- Agregar variables de entorno:

# vi /etc/profile

Agregar:

export PATH=/usr/local/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

# source /etc/profile
#ldconfig


4.- Testing:

# mpirun --hostfile host_file mpi_hello_world



Referencias:




Debian + firmware bnx2/bnx2-mips



1.- Descargar el paquete con el firmware de:

packages.debian.org


2.- Instalar el paquete:

# dpkg -i firmware-bnx2.deb


3.- Reiniciar:

# shutdown -r now

miércoles, 3 de febrero de 2016

Error NFS nobody nobody



Paso 1: Revisar las bitacoras /var/log/messages

server$ tail -f /var/log/messages

Paso 2: Si aparece el error: "nss_getpwnam: name 'root@example.com' does not map into domain 'localdomain' "

Editar el archivo /etc/idmapd.conf  en el servidor y en los clientes con lo siguiente:

#Domain = local.domain.edu

cambiarlo por el dominio requerido, ejemplo:

Domain=foo.home


Paso 3: Reiniciar los servicios de NFS



Fuente: fedoraforum.org

miércoles, 20 de enero de 2016

Raid por software Centos


1.- Instalar mdadm

# yum install mdadm

2.- Crear raid con los discos instalados por ejemplo:

# mdadm --create --verbose /dev/md0 --level=linear --raid-devices=3 /dev/sdb /dev/sdc /dev/sdd

3.- Verificar el volumen creado:

# mdadm --detail /dev/md0

4.- Crear archivo de configuración:

# mdadm --detail --scan > /etc/mdadm.conf

5.-  Darle formato al volumen creado por ejemplo:

# mkfs.ext4 /dev/md0

6.- Montar en algun lugar el volumen creado por ejemplo:

#  mount /dev/md0 /home

7.- Editar el archivo fstab para que el sistema realice el automount del volumen al reiniciar el equipo por ejemplo:

# vi /etc/fstab

Agregar:

/dev/md0                /home                   ext4    defaults        0 0




Fuente: