slurmctld: фатальный: НЕСООТВЕТСТВИЕ ИМЕНИ КЛАСТЕРА

То, как я начинаю слёрмить:

mkdir -p /tmp/slurmstate/clustername
sudo slurmd
sudo munged -f
/etc/init.d/munge start 
sudo slurmdbd
sudo slurmctld -c

-

sacctmgr list cluster
   Cluster     ControlHost  ControlPort   RPC     Share GrpJobs       GrpTRES GrpSubmit MaxJobs       MaxTRES MaxSubmit     MaxWall                  QOS   Def QOS
---------- --------------- ------------ ----- --------- ------- ------------- --------- ------- ------------- --------- ----------- -------------------- ---------
   cluster                            0  7936         1                                                                                           normal

Запуск slurmctld -cD дает мне следующую ошибку. Имя кластера возвращает неверную строку, которую я не знаю. Как я могу это исправить?

> slurmctld -cD
slurmctld: fatal: CLUSTER NAME MISMATCH.
slurmctld has been started with "ClusterName=�����", but read "cluster" from the state files in StateSaveLocation.
Running multiple clusters from a shared StateSaveLocation WILL CAUSE CORRUPTION.
Remove /tmp/slurmstate/clustername to override this safety check if this is intentional (e.g., the ClusterName has changed).

Примечание. Когда я пытаюсь запустить slurm от имени пользователя root и переключиться обратно, возникает эта проблема. Мне пришлось переустановить mysql, чтобы исправить это.

Спасибо за ваше драгоценное время и помощь.


person alper    schedule 09.06.2017    source источник
comment
Вы можете проверить значение ClusterName в slurm.conf и убедиться, что кодировка этого файла верна.   -  person damienfrancois    schedule 12.06.2017
comment
На самом деле это на slurm.conf file как ClusterName=cluster. @Дэмиенфрансуа   -  person alper    schedule 12.06.2017
comment
1) Почему вы создаете /tmp/slurmstate/clustername как каталог (из вашего последнего редактирования)? --- 2) Я думаю, что сообщение об ошибке неверно, если я прочитал исходный код корректен, непечатаемые символы были найдены в файле состояния, а не в slurm.conf (ошибка реальна, но сообщение, к сожалению, переключает значения)   -  person Hugues M.    schedule 18.06.2017
comment
О... тогда давайте восстановим мой ответ, который я считал просто шумом :)   -  person Hugues M.    schedule 18.06.2017


Ответы (1)


Я полный новичок в SLURM (только начал интересоваться им по работе), поэтому прошу прощения, если делаю ошибочные предложения, но думаю, что могу указать на что-то неправильное.

Первая строка в вашей последовательности запуска:

mkdir -p /tmp/slurmstate/clustername

Итак, вы создаете каталог здесь, я имею в виду, что clustername — это каталог.

Когда демон запускается, он пытается прочитать это как файл (с использованием fopen и fgets, см. исходный код последней версии).

А затем, поскольку поведение fopen-записи каталога зависит от системы, может случиться что угодно (он может читать мусор, или провал…). Было бы интересно, если бы вы указали, какую ОС вы используете.

Предложение:

  • rmdir /tmp/slurmstate/clustername

  • замените первую строку на mkdir -p /tmp/slurmstate, чтобы создать каталог slurmstate, если он не существует, но не создавайте там файл clustername (или каталог!) самостоятельно.

В первый раз он создаст файл clustername и запишет туда имя, взятое из вашего файла slurm.conf. Последующие запуски будут считывать значение из файла и сравнивать его со значением в slurm.conf, а затем продолжать запуск.

PS: я только что заметил, что вы добавили эту строку в свое последнее редактирование, поэтому у вас была проблема с корнем до того, как вы это сделали... так что проблема, на которую я указываю, вероятно, ничего не значит. Возможно, мне следует удалить этот ответ (снова) (но, возможно, ваш вопрос потребует еще одного редактирования).

person Hugues M.    schedule 18.06.2017