[slurm-users] Slurm 19-05-4-1 and Centos8

William Brown william at signalbox.org.uk
Fri Jan 10 11:20:20 UTC 2020


Here is an example of a modified system service file which uses ExecStartPre to create the directory under /var/run on the fly.  This is for slurmctld.  As /var/run is I think in RAM this creates the folder when the service starts.   There are other customisations for our environment in here, but I guess this may help anyone see how this is done.

[Unit]
Description=Slurm controller daemon
After=network.target munge.service
RequiresMountsFor=/home/apps
BindsTo=home-apps.mount
ConditionPathExists=/etc/slurm/slurm.conf

[Service]
User=slurm
Group=slurms
Type=forking
EnvironmentFile=-/etc/sysconfig/slurmctld
PermissionsStartOnly=true
ExecStartPre=/usr/bin/mkdir --parents /var/run/slurm
ExecStartPre=/usr/bin/chown -R slurm:slurms /var/run/slurm/
ExecStart=/usr/sbin/slurmctld $SLURMCTLD_OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
PIDFile=/var/run/slurm/slurmctld.pid
LimitNOFILE=65536

William

-----Original Message-----
From: slurm-users <slurm-users-bounces at lists.schedmd.com> On Behalf Of Shane Kelly
Sent: 10 January 2020 07:53
To: slurm-users at lists.schedmd.com
Subject: Re: [slurm-users] Slurm 19-05-4-1 and Centos8

Apologies for taking so long to wrap this thread up.

For me, slurm 19-05.4.1 builds correctly with Philip Kovacs mod to the spec file (see below).
It installs and runs (after providing some massaging to the RH/Centos specific config locations/bits*) and I now have it installed with accounting on five nodes of our test cluster, and all appears well.

Many thanks to all who contribute to this mailing list.


Kind Regards,
Shane Kelly


* Centos8 config/install bits (from memory) /var/run will not allow slurm to write a pid there, so I put a directory for all the slurm{d|ctld|dbd} PIDS under /var/run/. Don't forget to add a .conf file to  /usr/lib/tmpfiles.d/ to make your folder persist over a reboot. I copied the munge one, suitably edited.

The systemd service files are hardwired to write pids to /var/run, so they need altering to reflect the /var/run/slurm path that I use.

Hope this helps.

> There's a typo in there.  It's lazy not -lazy.   Try adding exactly  
>this line just before the %configure:
># use -z lazy to allow dlopen with unresolved symbolsexport 
>LDFLAGS="%{build_ldflags} -Wl,-z,lazy"                     <--- this 
>should fix it%configure \
>    On Sunday, December 8, 2019, 05:30:00 PM EST, Brian Andrus  
><toomuchit at gmail.com> wrote:
> 
>  
>There must be something more, because I am trying it with
> 
> 
>[root at node02 ~]# rpm -E "%{build_ldflags}"
> -Wl,-z,relro  -Wl,-z,now
> -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-z,-lazy
> 
>It builds (as expected) but slurmd will not start due to the same 
>error. (Note, I have also tried LDFLAGS without --specs and without 
>-Wl,-z-now with the same result)
> 


--
Shane Kelly
HPC Systems Administrator
GPOL
WWCRC
Garscube Campus
University of Glasgow
shane.kelly at glasgow.ac.uk
ext: 3031





More information about the slurm-users mailing list