У меня есть уже работающий кластер slurm, но на сегодняшний день без изменения конфигурации я получаю сообщение об ошибке при запуске определенных sacctmgr
команды и slurmdbd
вылетает:
$ sacctmgr list associations
sacctmgr: error: slurm_persist_conn_open_without_init: failed to open persistent connection to slurm.domain.com:6819: Connection refused
sacctmgr: error: slurmdbd: Getting response to message type 1410
sacctmgr: error: slurmdbd: DBD_GET_ASSOCS failure: Connection refused
Error with request: Connection refused
В systemctl status
показывает:
Jul 03 10:01:46 slurm systemd[1]: slurmdbd.service: Main process exited, code=killed, status=11/SEGV
Jul 03 10:01:46 slurm systemd[1]: slurmdbd.service: Failed with result 'signal'.
а в журнале slurmdbd.log написано:
[2020-07-03T10:01:45.816] debug2: Opened connection 9 from 127.0.0.1
[2020-07-03T10:01:45.817] debug: REQUEST_PERSIST_INIT: CLUSTER:slurmcluster VERSION:8192 UID:0 IP:127.0.0.1 CONN:9
[2020-07-03T10:01:45.817] debug2: acct_storage_p_get_connection: request new connection 1
[2020-07-03T10:01:45.861] debug2: DBD_FINI: CLOSE:0 COMMIT:0
[2020-07-03T10:01:45.862] debug4: got 0 commits
[2020-07-03T10:01:45.949] debug2: DBD_GET_ASSOCS: called
[2020-07-03T10:01:45.950] debug4: 9(as_mysql_assoc.c:2032) query
call get_parent_limits('assoc_table', 'root', 'slurmcluster', 0); select @par_id, @mj, @msj, @mwpj, @mtpj, @mtpn, @mtmpj, @mtrm, @def_qos_id, @qos, @delta_qos;
Однако работают и другие команды (после сбоя требуется перезапуск slurmdbd):
$ sacctmgr show cluster
Cluster ControlHost ControlPort RPC Share GrpJobs GrpTRES GrpSubmit MaxJobs MaxTRES MaxSubmit MaxWall QOS Def QOS
---------- --------------- ------------ ----- --------- ------- ------------- --------- ------- ------------- --------- ----------- -------------------- ---------
slurmclus+ 127.0.0.1 6817 8192 1 normal
Я могу подключаться к базе данных и выполнять команды. Также я могу подключиться через telnet slurm.domain.com 6819
.
Я использую slurm 17.11.2 с MySQL 5.7 из стандартных репозиториев Ubuntu 18.04.
Оказывается, проблема заключалась в автоматическом обновлении. В нем MySQL был обновлен с 5.7.29
к 5.7.30
. Все работает с MySQL 5.7.29
. В журнал изменений не содержит чего-то очевидного, но согласно список рассылки slurm-users это проблема:
Кажется, что (по крайней мере, для процедуры mysql get_parent_limits) mySQL 5.7.30 возвращает NULL, где mySQL 5.7.29 вернул пустую строку.