1. проводим проверку на интерактивной машине, работающей под управлением операционной системы ОС Alma9:
заходим на lxui10.jinr.ru по ssh;
запускаем обновление Kerberos ticket и AFS token:
krenew -a -b -K 60 -t
Запускаем интерактивную задачу:
srun -n 1 -N 1 —pty —mem=1000M —tmp=5G /bin/bash -i
эта задача с большой вероятностью выполнится на счётной
машине с системой Alma9.
Запускаем такую же задачу на партицию SLURM на счётные
машины с SL7:
srun -p sl7 -n 1 -N 1 —pty —mem=1000M —tmp=5G /bin/bash -i
в этих задачах проверяем доступ к HOME в AFS:
klist
token
cat .profile >/dev/null
2. запускаем тест на счётных машинах в режиме batch
cd $HOME/slurm
sbatch test-new.sh
и на машинах с SL7:
sbatch test-new-sl7.sh
Cкрипты для sbatch и тестовой задачи приведены ниже по тексту.
Обратите внимание, что в скриптах необходимо изменить
<your_name> на ваш user name.
——————— test-new.sh
#!/bin/bash
#SBATCH —job-name=testdeva # Job name
#SBATCH —mail-type=END,FAIL # Mail events (NONE, BEGIN, END, FAIL, ALL)
#SBATCH —mail-user=<your_name>@jinr.ru # Where to send mail
#SBATCH —no-requeue
#SBATCH —ntasks=1 # Run on a single CPU
#SBATCH —cpus-per-task=1
#SBATCH —mem=1000mb # Job memory request
#SBATCH —time=1-00:00:00 # Time limit days-hrs:min:sec
#SBATCH —tmp=1G
#SBATCH —propagate=NONE
#SBATCH —array=1-5 # array of 5 jobs
#SBATCH —output=none
$HOME/slurm/test-job-new.sh
——————— test-new-sl7.s
#!/bin/bash
#SBATCH —job-name=testdeva # Job name
#SBATCH —mail-type=END,FAIL # Mail events (NONE, BEGIN, END, FAIL, ALL)
#SBATCH —mail-user=<your_name>@jinr.ru # Where to send mail
#SBATCH —no-requeue
#SBATCH —ntasks=1 # Run on a single CPU
#SBATCH —cpus-per-task=1
#SBATCH —mem=1000mb # Job memory request
#SBATCH —time=1-00:00:00 # Time limit days-hrs:min:sec
#SBATCH —tmp=1G
#SBATCH —propagate=NONE
#SBATCH —array=1-5 # array of 5 jobs
#SBATCH —output=none
#SBATCH —partition=sl7 # allocate SL7 node only
$HOME/slurm/test-job-new.sh
——————— test-job-new.sh
#!/bin/bash
# Final log file
LOGFILE=$SLURM_SUBMIT_DIR/$SLURM_JOB_ID-final.log
#Current log file
CURLOG=$TMPDIR/$SLURM_JOB_ID.log
# Redirec stdout & strerr
exec > $CURLOG 2>&1
echo «Start at: «`date`
echo «—— ARGV: 0=\»$0\» 1=\»$1\» 2=\»$2\» 3=\»$3\» 4=\»$4\»»
echo «—— currunt dir»
pwd
OPWD=`pwd`
echo «—— cd $TMPDIR»
cd $TMPDIR
pwd
echo «—— hostname -f»
hostname -f
echo «—— whoami»
whoami
echo «—— id»
id
echo «—— ulimit -a»
ulimit -a
echo «—— klist»
klist
echo «—— tokens»
tokens
echo «—— eos whoami»
eos whoami
echo «—— cat $HOME/.profile >/dev/null»
cat $HOME/.profile >/dev/null
echo «—— environment»
env | grep -E «^[A-Z]» | grep -v LS_COLORS | sort
for i in `seq -w 1 3` ; do
date
echo «###################################################################### step $i»
echo «—— klist»
klist
echo «—— tokens»
tokens
echo «—— eos -b whoami»
eos -b whoami
echo «—— ps auxwww | grep -E $USER | grep -v [g]rep»
ps auxwww | grep -E «$USER» | grep -v [g]rep
echo «—— ssh -x $SLURM_SUBMIT_HOST /bin/true»
ssh -xT $SLURM_SUBMIT_HOST /bin/true
echo «—— sleep 60»
sleep 60
done
echo «Done «`date`
echo «—— rsync -aH $CURLOG $SLURM_SUBMIT_HOST:$LOGFILE-rsync»
rsync -aH $CURLOG $SLURM_SUBMIT_HOST:$LOGFILE-rsync
echo «—— cat $CURLOG | ssh -x $SLURM_SUBMIT_HOST \»cat — > $LOGFILE\»»
cat $CURLOG | ssh -x $SLURM_SUBMIT_HOST «cat — > $LOGFILE»
# exit from exec
exit 0
# exit fron the job
exit 0