1、supervisor安装文件,安装命令为:sh supervisor_install.sh
#!/bin/bash
yum -y install python-setuptools
easy_install 'supervisor==3.3.4'
echo "alias 'supervisorctl'='supervisorctl -c /opt/superctl/etc/supervisor.conf'" >> ~/.bashrc
mkdir -p /opt/superctl/bin/
mkdir -p /opt/superctl/log/
mkdir -p /opt/superctl/etc/
chmod -R 755 /opt/superctl/bin/
chmod 755 /opt/superctl/supervisor.sh
cd /opt/superctl/etc/
cat > supervisor.conf << EOF
[unix_http_server]
file=/opt/superctl/log/supervisord.sock
[inet_http_server]
port=127.0.0.1:9001
[supervisord]
logfile=/opt/superctl/log/supervisord.log
logfile_maxbytes=20MB
logfile_backups=10
loglevel=info
pidfile=/opt/superctl/log/supervisord.pid
nodaemon=false
minfds=60000
minprocs=200
#directory=/opt/superctl/
childlogdir=/opt/superctl/log/
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[supervisorctl]
serverurl=unix:///opt/superctl/log/supervisord.sock ; use a unix:// URL for a unix socket
[include]
files = /opt/superctl/etc/*.supervisor
EOF
cat > test.supervisor.temple << EOF
[program:test]
command = /bin/bash /opt/superctl/bin/test_start.sh
autostart = true
autorestart = true
stdout_logfile = /opt/superctl/log/test-stdout.log
stderr_logfile = /opt/superctl/log/test-stderr.log
stdout_logfile_maxbytes = 500MB
stdout_logfile_backups = 50
stdout_capture_maxbytes = 1MB
stdout_events_enabled = false
loglevel = info
priority = 1
stopasgroup = true
EOF
2、在superctl目录下添加supervisor.sh文件
#
# chkconfig: 2345 12 80
# 配置文件:/opt/superctl/etc/supervisor.conf
#
source ~/.bashrc
PATH=/sbin:/usr/sbin:$PATH
usage ()
{
echo $"Usage: $0 {start|stop|status|restart}" 1>&2
RETVAL=2
}
start ()
{
if [ -e /opt/superctl/etc/supervisor.conf ] ;then
if [ `ps -ef|grep "/opt/superctl/etc/supervisor.conf"|grep -v grep|wc -l` -ne 0 ];then
sleep 1
echo "/opt/superctl/etc/supervisor.conf 进程正在运行"
ps -ef|grep " /opt/superctl/etc/supervisor.conf"|grep -v grep
else
sleep 1
/bin/supervisord -c /opt/superctl/etc/supervisor.conf
fi
fi
}
stop ()
{
if [ `ps -ef|grep " /opt/superctl/etc/supervisor.conf"|grep -v grep|wc -l` -eq 1 ];then
supervisorctl stop all
sleep 4
/bin/supervisorctl shutdown
fi
}
status ()
{
/bin/supervisorctl status
}
restart ()
{
stop
sleep 3
start
}
case "$1" in
stop) stop ;;
status) status ;;
restart) restart ;;
start) start ;;
*) usage ;;
esac
exit $RETVA
3、启动命令:
sh supervisor.sh start|stop|restart
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。