Estou tentando configurar o SLURM em um sistema Ubuntu 23.10 para que ele use MySQL via slurmdbd
. Esta é uma continuação de uma questão anterior que resolvi através de suposições um tanto aleatórias...
O engraçado é que o controlador SLURM ( slurmctld
) não inicia na inicialização. No entanto, quando reinicio manualmente o serviço, parece bom.
Por exemplo, se eu digitar sudo service slurmctld status
após a inicialização, vejo estas mensagens:
Feb 03 17:10:26 mycomputer slurmctld[1682]: slurmctld: error: Sending PersistInit msg: Connection refused
Feb 03 17:10:26 mycomputer slurmctld[1682]: slurmctld: accounting_storage/slurmdbd: clusteracct_storage_p_register_ctld: Registering slurmctld at port 6817 with slurmdbd
Feb 03 17:10:26 mycomputer slurmctld[1682]: slurmctld: No memory enforcing mechanism configured.
Feb 03 17:10:27 mycomputer slurmctld[1682]: WARNING: MYSQL_OPT_RECONNECT is deprecated and will be removed in a future version.
Feb 03 17:10:27 mycomputer slurmctld[1682]: slurmctld: error: mysql_real_connect failed: 2002 Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Feb 03 17:10:27 mycomputer slurmctld[1682]: slurmctld: fatal: You haven't inited this storage yet.
Feb 03 17:10:27 mycomputer systemd[1]: slurmctld.service: Main process exited, code=exited, status=1/FAILURE
Feb 03 17:10:27 mycomputer systemd[1]: slurmctld.service: Failed with result 'exit-code'.
que é semelhante às informações no /var/log/
arquivo de log. Porém, se eu reiniciá-lo com sudo service slurmctld restart
, sem alterar nenhum arquivo de configuração, ele inicia com isto no log:
Feb 03 23:22:57 mycomputer slurmctld[30777]: slurmctld: Recovered information about 0 jobs
Feb 03 23:22:57 mycomputer slurmctld[30777]: slurmctld: select/cons_tres: part_data_create_array: select/cons_tres: preparing for 1 partitions
Feb 03 23:22:57 mycomputer slurmctld[30777]: slurmctld: Recovered state of 0 reservations
Feb 03 23:22:57 mycomputer slurmctld[30777]: slurmctld: read_slurm_conf: backup_controller not specified
Feb 03 23:22:57 mycomputer slurmctld[30777]: slurmctld: select/cons_tres: select_p_reconfigure: select/cons_tres: reconfigure
Feb 03 23:22:57 mycomputer slurmctld[30777]: slurmctld: select/cons_tres: part_data_create_array: select/cons_tres: preparing for 1 partitions
Feb 03 23:22:57 mycomputer slurmctld[30777]: slurmctld: Running as primary controller
Feb 03 23:22:57 mycomputer slurmctld[30777]: slurmctld: No parameter for mcs plugin, default values set
Feb 03 23:22:57 mycomputer slurmctld[30777]: slurmctld: mcs: MCSParameters = (null). ondemand set.
Feb 03 23:23:02 mycomputer slurmctld[30777]: slurmctld: SchedulerParameters=default_queue_depth=100,max_rpc_cnt=0,max_sched_time=2,partition_job_depth=0,sched_max_job_start=0,...
E parece bem agora.
Meu único palpite é que isso pode ter a ver com a ordem em que os serviços slurmdbd
, slurmd
e slurmctld
são iniciados. Mas tenho assumido que a ordem padrão está correta. Talvez essa suposição esteja errada?
Os padrões para slurmctld.service não possuem uma dependência de pedido em mysql.service. Vamos adicionar um.
Crie um arquivo chamado
/etc/systemd/system/mysql.service.d/99-mysql-ordering-askubuntu-1502374.conf
:Em seguida, reinicie.