Я только что настроил slurm, где одна физическая машина будет единственной системой в кластере (пока). Это на Ubuntu 18.04.
У меня работает slurmdbd, но когда я пытаюсь запустить slurmd и slurmctld, время ожидания истекает. Зачем?
Я запускаю следующие команды:
systemctl start slurmctld
systemctl start slurmd
Я также пробовал:
systemctl start slurmctld slurmd
и:
systemctl start slurmd slurmctld
Это не удается для slurmctld в следующих случаях:
systemd[1]: slurmd.service: Can't open PID file /var/run/slurm-llnl/slurm-llnl/slurmd.pid (yet?) after start: No such file or directory
systemd[1]: slurmctld.service: Start operation timed out. Terminating.
systemd[1]: slurmctld.service: Failed with result 'timeout'.
systemd[1]: Failed to start Slurm controller daemon.
И для slurmd:
systemd[1]: slurmd.service: Start operation timed out. Terminating.
systemd[1]: slurmd.service: Failed with result 'timeout'.
systemd[1]: Failed to start Slurm node daemon.
Однако, когда я запускаю их вручную (используя два терминала), выпуская:
slurmctld -Dvvv
slurmd -Dvvv
Кажется, все работает.
Почему это? Как мне начать трепаться?
Это служебные файлы (которые должны быть стандартными, я их не трогал, за исключением добавления подробных аргументов, но потом снова их удалял):
# cat /lib/systemd/system/slurmd.service
[Unit]
Description=Slurm node daemon
After=network.target munge.service
ConditionPathExists=/etc/slurm-llnl/slurm.conf
Documentation=man:slurmd(8)
[Service]
Type=forking
EnvironmentFile=-/etc/default/slurmd
ExecStart=/usr/sbin/slurmd $SLURMD_OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
PIDFile=/var/run/slurm-llnl/slurmd.pid
KillMode=process
LimitNOFILE=51200
LimitMEMLOCK=infinity
LimitSTACK=infinity
[Install]
WantedBy=multi-user.target
# cat /lib/systemd/system/slurmctld.service
[Unit]
Description=Slurm controller daemon
After=network.target munge.service
ConditionPathExists=/etc/slurm-llnl/slurm.conf
Documentation=man:slurmctld(8)
[Service]
Type=forking
EnvironmentFile=-/etc/default/slurmctld
ExecStart=/usr/sbin/slurmctld $SLURMCTLD_OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
PIDFile=/var/run/slurm-llnl/slurmctld.pid
[Install]
WantedBy=multi-user.target
Посмотрите внимательно в свой журнал:
Can't open PID file /var/run/slurm-llnl/slurm-llnl/slurmd.pid
Этот путь не соответствует пути, указанному в вашем /lib/systemd/system/slurmd.service
. Чтобы исправить это, поле SlurmdPidFile
в файле /etc/slurm-llnl/slurm.conf
следует исправить. То же самое касается SlurmctldPidFile
.
Также обратите внимание, что простой конфигуратор /usr/share/doc/slurm-wlm-doc/html/configurator.easy.html
предложения /var/run/slurmd.pid
по умолчанию, что тоже не работает.