#!/bin/sh # ganeti node daemon starter script # based on skeleton from Debian GNU/Linux ### BEGIN INIT INFO # Provides: ganeti # Required-Start: $syslog $remote_fs xend # Required-Stop: $syslog $remote_fs xend # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Ganeti Xen Cluster Manager # Description: Ganeti Xen Cluster Manager ### END INIT INFO PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin DESC="Ganeti cluster" NAME=ganeti-noded NODED=@PREFIX@/sbin/ganeti-noded MASTER=@PREFIX@/sbin/ganeti-master MASTERD_NAME=ganeti-masterd MASTERD="@PREFIX@/sbin/$MASTERD_NAME" SCRIPTNAME=@SYSCONFDIR@/init.d/ganeti test -f $NODED || exit 0 . /lib/lsb/init-functions check_config() { for fname in \ "@LOCALSTATEDIR@/lib/ganeti/ssconf_node_pass" \ "@LOCALSTATEDIR@/lib/ganeti/server.pem" do if ! [ -f "$fname" ]; then log_end_msg 0 log_warning_msg "Config $fname not there, will not run." exit 0 fi done } master_action() { log_action_begin_msg "ganeti-master"; $MASTER "$1" RC=$? case $RC in 0) log_action_end_msg 0 ;; 11) log_action_end_msg 0 "not master" ;; *) log_action_end_msg 1 "exit code $RC" ;; esac } case "$1" in start) log_daemon_msg "Starting $DESC" "$NAME" check_config if start-stop-daemon --start --quiet --exec $NODED; then log_end_msg 0 else log_end_msg 1 fi master_action start if start-stop-daemon --start --quiet --exec $MASTERD; then log_end_msg 0 else log_end_msg 1 fi ;; stop) log_daemon_msg "Stopping $DESC" "$NAME" if start-stop-daemon --stop --quiet --name $NAME; then log_end_msg 0 else log_end_msg 1 fi if start-stop-daemon --stop --quiet --name $MASTERD_NAME; then log_end_msg 0 else log_end_msg 1 fi master_action stop ;; restart|force-reload) log_daemon_msg "Reloading $DESC" start-stop-daemon --stop --quiet --oknodo --retry 30 --name $NAME start-stop-daemon --stop --quiet --oknodo --retry 30 --name $MASTERD_NAME check_config start-stop-daemon --start --quiet --exec $NODED start-stop-daemon --start --quiet --exec $MASTERD log_end_msg $? $MASTER stop master_action start ;; *) log_success_msg "Usage: $SCRIPTNAME {start|stop|force-reload|restart}" exit 1 ;; esac exit 0