#!/bin/sh # # slurmd The compute node daemon for SLURM. # ### BEGIN INIT INFO # Provides: slurm # Required-Start: $udevd # Required-Stop: $udevd # Default-Start: # Default-Stop: # Description: The compute node daemon for SLURM # Short-Description: start and stop slurm ### END INIT INFO # # chkconfig: - 90 10 # description: slurmd is the compute node daemon of SLURM. # It monitors all tasks running on the compute node, accepts work (tasks), # launches tasks, and kills running tasks upon request. # processname: slurmd # config: /etc/slurm.conf # pidfile: /var/run/slurmd.pid # Do not load RH compatibility interface. WITHOUT_RC_COMPAT=1 # Source function library. . /etc/init.d/functions PIDFILE=/var/run/slurmd.pid LOCKFILE=/var/lock/subsys/slurmd RETVAL=0 start() { PRIVATE_KEY=$(sed -n '/^[[:blank:]]*JobCredentialPrivateKey[[:blank:]]*=/s/.*=[[:blank:]]*\(.*\)[[:blank:]]*$/\1/p' /etc/slurm.conf) PUBLIC_CERTIFICATE=$(sed -n '/^[[:blank:]]*JobCredentialPublicCertificate[[:blank:]]*=/s/.*=[[:blank:]]*\(.*\)[[:blank:]]*$/\1/p' /etc/slurm.conf) if [ ! -e "$PRIVATE_KEY" ]; then echo "Error: Can't find JobCredentialPrivateKey file ($PRIVATE_KEY) " >&2 return 1 fi if [ ! -e "$PUBLIC_CERTIFICATE" ]; then echo "Error: Can't find JobCredentialPublicCertificate file ($PUBLIC_CERTIFICATE) " >&2 return 1 fi start_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root -- slurmd RETVAL=$? return $RETVAL } stop() { stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root -- slurmd RETVAL=$? return $RETVAL } restart() { stop start } reload() { msg_reloading slurmd scontrol reconfigure RETVAL=$? return $RETVAL } # See how we were called. case "$1" in start) start ;; stop) stop ;; reload) reload ;; restart) restart ;; condstop) if [ -e "$LOCKFILE" ]; then stop fi ;; condrestart) if [ -e "$LOCKFILE" ]; then restart fi ;; condreload) if [ -e "$LOCKFILE" ]; then reload fi ;; status) status --pidfile "$PIDFILE" --expect-user root -- slurmd RETVAL=$? ;; *) msg_usage "${0##*/} {start|stop|reload|restart|condstop|condrestart|condreload|status}" RETVAL=1 esac exit $RETVAL