请有人帮助我,我正在安装centos的主管。我的问题是,当我开始监督时,我使用supervisord -c /etc/supervisord.conf
然后我可以supervisorctl start myapp:*
。我的后台脚本正在运行,但如果我喜欢这个service supervisord start
。它无法正常工作我无法使用此命令supervisorctl start myapp:*
,因为它会引发错误myapp: ERROR (no such group)
。
我的问题是,当我的服务器重新启动时,我无法立即启动我的主管。我需要再次执行supervisord -c /etc/supervisord.conf
。有人可以帮我修复 异常的 配置。
提前谢谢。
答案 0 :(得分:0)
您是否更新了您的supervisord配置?如果没有,那么尝试使用下面的脚本..
$ sudo vi /etc/init.d/supervisord
#!/bin/bash
. /etc/init.d/functions
DAEMON=/usr/bin/supervisord
PIDFILE=/var/run/supervisord.pid
[ -x "$DAEMON" ] || exit 0
start() {
echo -n "Starting supervisord: "
if [ -f $PIDFILE ]; then
PID=`cat $PIDFILE`
echo supervisord already running: $PID
exit 2;
else
daemon $DAEMON --pidfile=$PIDFILE -c /etc/supervisord.conf
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/supervisord
return $RETVAL
fi
}
stop() {
echo -n "Shutting down supervisord: "
echo
killproc -p $PIDFILE supervisord
echo
rm -f /var/lock/subsys/supervisord
return 0
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status supervisord
;;
restart)
stop
start
;;
*)
echo "Usage: {start|stop|status|restart}"
exit 1
;;
esac
exit $?
接下来,运行chkconfig命令,它允许在Linux启动期间自动配置服务启动和停止。
$ chkconfig --add supervisord
$ chkconfig supervisord --level 345 on
更多参考资料:
http://www.aboutlinux.info/2006/04/enabling-and-disabling-services-during_01.html
https://serverfault.com/questions/96499/how-to-automatically-start-supervisord-on-linux-ubuntu
答案 1 :(得分:0)
修复此问题-确保在受监管脚本的顶部具有此名称:
#!/bin/bash
#
# /etc/rc.d/init.d/supervisord
#
# Supervisor is a client/server system that
# allows its users to monitor and control a
# number of processes on UNIX-like operating
# systems.
#
# chkconfig: - 64 36
# description: Supervisor Server
# processname: supervisord
通过这些设置,脚本可以正确识别