Difference between revisions of "OAR Installation"
Line 5: | Line 5: | ||
<div class="well well-success"> | <div class="well well-success"> | ||
<h4>'''Super Computación y Cálculo Científico'''</h4> | <h4>'''Super Computación y Cálculo Científico'''</h4> | ||
− | <p class="bs">In this section we describe all the administration tasks for the job scheduler OAR</p> | + | <p class="bs">In this section we describe all the administration tasks for the job scheduler OAR in the frontend node (Server) and in the compute nodes (Client)</p> |
</div> | </div> | ||
</div> | </div> | ||
</div> | </div> | ||
− | ===OAR Installation=== | + | ===OAR Server Installation=== |
<div class="column clearfix"> | <div class="column clearfix"> | ||
Line 25: | Line 25: | ||
{{Command|<nowiki>echo "deb http://oar-ftp.imag.fr/oar/2.5/debian squeeze main" > /etc/apt/sources.list.d/oar.list</nowiki>}} | {{Command|<nowiki>echo "deb http://oar-ftp.imag.fr/oar/2.5/debian squeeze main" > /etc/apt/sources.list.d/oar.list</nowiki>}} | ||
− | 2) | + | 2) Install required software |
{{Command|<nowiki>apt-get install mysql-server mysql-client libdbd-mysql-perl libdbi-perl libsort-versions-perl</nowiki>}} | {{Command|<nowiki>apt-get install mysql-server mysql-client libdbd-mysql-perl libdbi-perl libsort-versions-perl</nowiki>}} | ||
− | 3) | + | 3) Install OAR packages |
{{Command|<nowiki>apt-get install oar-server-mysql oar-user oar-server oar-user-mysql oar-web-status oar-admin oar-node | {{Command|<nowiki>apt-get install oar-server-mysql oar-user oar-server oar-user-mysql oar-web-status oar-admin oar-node | ||
</nowiki>}} | </nowiki>}} | ||
− | 4) | + | 4) OAR Configuration. |
+ | Edit the file /etc/oar/oar.conf and fix all required values. Example | ||
− | 5) | + | {{File|/etc/oar/oar.conf|<pre><nowiki> |
+ | DB_TYPE="mysql" | ||
+ | DB_HOSTNAME="localhost" | ||
+ | DB_PORT="3306" | ||
+ | DB_BASE_NAME="oardb" | ||
+ | DB_BASE_LOGIN="oar" | ||
+ | DB_BASE_PASSWD="xxxx" | ||
+ | SERVER_HOSTNAME="localhost" | ||
+ | SERVER_PORT="6666" | ||
+ | OARSUB_DEFAULT_RESOURCES="/nodes=1" | ||
+ | OARSUB_NODES_RESOURCES="network_address" | ||
+ | OARSUB_FORCE_JOB_KEY="no" | ||
+ | LOG_LEVEL="3" | ||
+ | LOG_CATEGORIES="all" | ||
+ | OAREXEC_DEBUG_MODE="1" | ||
+ | OAR_RUNTIME_DIRECTORY="/var/lib/oar" | ||
+ | LOG_FILE="/var/log/oar.log" | ||
+ | DEPLOY_HOSTNAME="127.0.0.1" | ||
+ | COSYSTEM_HOSTNAME="127.0.0.1" | ||
+ | DETACH_JOB_FROM_SERVER="1" | ||
+ | OPENSSH_CMD="/usr/bin/ssh -p 6667" | ||
+ | FINAUD_FREQUENCY="300" | ||
+ | PINGCHECKER_SENTINELLE_SCRIPT_COMMAND="/usr/lib/oar/sentinelle.pl -t 5 -w 20" | ||
+ | PROLOGUE_EXEC_FILE="/etc/oar/prologue" | ||
+ | EPILOGUE_EXEC_FILE="/etc/oar/epilogue" | ||
+ | SCHEDULER_TIMEOUT="10" | ||
+ | SCHEDULER_NB_PROCESSES=4 | ||
+ | SCHEDULER_JOB_SECURITY_TIME="60" | ||
+ | SCHEDULER_GANTT_HOLE_MINIMUM_TIME="300" | ||
+ | SCHEDULER_RESOURCE_ORDER="scheduler_priority ASC, suspended_jobs ASC, network_address DESC, resource_id ASC" | ||
+ | SCHEDULER_PRIORITY_HIERARCHY_ORDER="network_address/resource_id" | ||
+ | SCHEDULER_AVAILABLE_SUSPENDED_RESOURCE_TYPE="default" | ||
+ | SCHEDULER_FAIRSHARING_MAX_JOB_PER_USER=30 | ||
+ | ENERGY_SAVING_INTERNAL="no" | ||
+ | JOB_RESOURCE_MANAGER_PROPERTY_DB_FIELD="cpuset" | ||
+ | CPUSET_PATH="/oar" | ||
+ | OARSH_OPENSSH_DEFAULT_OPTIONS="-oProxyCommand=none -oPermitLocalCommand=no" | ||
+ | </nowiki></pre>}} | ||
+ | |||
+ | 5) Initialize the OAR data base. | ||
{{Command|<nowiki>oar-database --create --db-admin-user root --db-admin-pass 'XXXXXX'</nowiki>}} | {{Command|<nowiki>oar-database --create --db-admin-user root --db-admin-pass 'XXXXXX'</nowiki>}} | ||
− | 6) | + | 6) Add the resources (compute nodes) to the database. |
− | + | Edit the file /tmp/nodes and add the name of the compute nodes. (One per line) | |
− | + | {{File|/tmp/nodes|<pre><nowiki> | |
− | + | guane01 | |
− | + | guane02 | |
+ | . | ||
+ | . | ||
+ | guane09 | ||
+ | guane10 | ||
+ | </nowiki></pre>}} | ||
− | + | Then, excecute the following command | |
− | {{Command|<nowiki>oar_resources_init /tmp/ | + | {{Command|<nowiki>oar_resources_init /tmp/nodes |
Revision as of 13:52, 19 February 2015
Back to Job Scheduler OAR
Super Computación y Cálculo Científico
In this section we describe all the administration tasks for the job scheduler OAR in the frontend node (Server) and in the compute nodes (Client)
OAR Server Installation
1) Configure the Repository
2) Install required software
3) Install OAR packages
4) OAR Configuration.
Edit the file /etc/oar/oar.conf and fix all required values. Example
DB_TYPE="mysql" DB_HOSTNAME="localhost" DB_PORT="3306" DB_BASE_NAME="oardb" DB_BASE_LOGIN="oar" DB_BASE_PASSWD="xxxx" SERVER_HOSTNAME="localhost" SERVER_PORT="6666" OARSUB_DEFAULT_RESOURCES="/nodes=1" OARSUB_NODES_RESOURCES="network_address" OARSUB_FORCE_JOB_KEY="no" LOG_LEVEL="3" LOG_CATEGORIES="all" OAREXEC_DEBUG_MODE="1" OAR_RUNTIME_DIRECTORY="/var/lib/oar" LOG_FILE="/var/log/oar.log" DEPLOY_HOSTNAME="127.0.0.1" COSYSTEM_HOSTNAME="127.0.0.1" DETACH_JOB_FROM_SERVER="1" OPENSSH_CMD="/usr/bin/ssh -p 6667" FINAUD_FREQUENCY="300" PINGCHECKER_SENTINELLE_SCRIPT_COMMAND="/usr/lib/oar/sentinelle.pl -t 5 -w 20" PROLOGUE_EXEC_FILE="/etc/oar/prologue" EPILOGUE_EXEC_FILE="/etc/oar/epilogue" SCHEDULER_TIMEOUT="10" SCHEDULER_NB_PROCESSES=4 SCHEDULER_JOB_SECURITY_TIME="60" SCHEDULER_GANTT_HOLE_MINIMUM_TIME="300" SCHEDULER_RESOURCE_ORDER="scheduler_priority ASC, suspended_jobs ASC, network_address DESC, resource_id ASC" SCHEDULER_PRIORITY_HIERARCHY_ORDER="network_address/resource_id" SCHEDULER_AVAILABLE_SUSPENDED_RESOURCE_TYPE="default" SCHEDULER_FAIRSHARING_MAX_JOB_PER_USER=30 ENERGY_SAVING_INTERNAL="no" JOB_RESOURCE_MANAGER_PROPERTY_DB_FIELD="cpuset" CPUSET_PATH="/oar" OARSH_OPENSSH_DEFAULT_OPTIONS="-oProxyCommand=none -oPermitLocalCommand=no"
5) Initialize the OAR data base.
6) Add the resources (compute nodes) to the database.
Edit the file /tmp/nodes and add the name of the compute nodes. (One per line)
guane01 guane02 . . guane09 guane10
Then, excecute the following command
El contenido de este archivo debe ser algo parecido a:
oarproperty -a cpu oarproperty -a core oarproperty -c -a host oarproperty -c -a cpuset oarproperty -a mem oarnodesetting -a -h guane09 -p host=guane09 -p cpu=1 -p core=1 -p cpuset=0 -p mem=103 oarnodesetting -a -h guane09 -p host=guane09 -p cpu=1 -p core=2 -p cpuset=10 -p mem=103 oarnodesetting -a -h guane09 -p host=guane09 -p cpu=1 -p core=3 -p cpuset=12 -p mem=103
NOTA: para configurar los recursos de GPU, edite un archivo de nombre oar_gpu_resources_init.cmd y agregue las siguientes líneas
oarproperty -c -a gpu oarproperty -c -a gputype oarproperty -a gpunum
Luego, ejecute source oar_gpu_resources_init.cmd
Finalmente, asigne los GPUs a cada core de cada nodo. Edite un archivo de nombre GPUresources.cmd y agregue las siguientes líneas.
oarnodesetting --sql "core=1" -p gpu=YES -p gpunum=1 -p gputype=M2075 oarnodesetting --sql "core=2" -p gpu=YES -p gpunum=1 -p gputype=M2075 oarnodesetting --sql "core=3" -p gpu=YES -p gpunum=1 -p gputype=M2075 oarnodesetting --sql "core=4" -p gpu=YES -p gpunum=2 -p gputype=M2075 oarnodesetting --sql "core=5" -p gpu=YES -p gpunum=2 -p gputype=M2075 oarnodesetting --sql "core=6" -p gpu=YES -p gpunum=2 -p gputype=M2075 oarnodesetting --sql "core=7" -p gpu=YES -p gpunum=3 -p gputype=M2075 oarnodesetting --sql "core=8" -p gpu=YES -p gpunum=3 -p gputype=M2075 oarnodesetting --sql "core=9" -p gpu=YES -p gpunum=3 -p gputype=M2075
NOTA: En los nodos nuevos activos del cluster Guane de la UIS se tienen 168 Cores y 56 GPUs (8 GPUs por nodo) Por lo tanto, la asignación se realizó fijando 1 GPU cada 3 cores (debe completar las líneas de acuerdo al número de GPUs y Cores que se tengan en todos los nodos)
Luego, ejecute el comando
Compruebe que todo está en orden ejecutando
7) Configurar monika. Edite el archivo /etc/oar/monika.conf y fije las variables necesarias, parámetros de
la base de datos entre otros.