supervisor是用Python开发的一套通用的进程管理程序,能够将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能够自动重启python
安装supervisorweb
# yum search setuptools .... python-setuptools.noarch : Easily build and distribute Python packages #yum install -y python-setuptools.noarch #easy_install supervisor
建立主配置文件shell
# mkdir -m 755 -p /etc/supervisor \\建立supervisor配置文件目录 # echo_supervisord_conf >/etc/supervisor/supervisord.conf \\建立主配置文件 # cd /etc/supervisor/ # mkdir -m 755 conf.d \\建立项目配置文件目录
建立项目配置文件(运行3个脚本)vim
# vim conf.d/test.ini [program:tjapp_sendmessage] command=/bin/bash /data/shell/sendmessage.sh numprocs=1 autostart=true autorestart=true [program:bbscollection] command=/bin/bash /data/shell/bbscollection.sh numprocs=1 autostart=true autorestart=true [program:test_sbbscollection] command=/bin/bash /data/shell/test_sbbscollection.sh numprocs=1 autostart=true autorestart=true
在主配置文件中引入test.inibash
#cat supervisord.conf ... [include] files = ./conf.d/*.ini
启动supervisorapp
# supervisord -c /etc/supervisord.conf
查看supervisor运行的脚本ui
# supervisorctl bbscollection RUNNING pid 10090, uptime 4 days, 17:20:10 test_sbbscollection RUNNING pid 10088, uptime 4 days, 17:20:10 tjapp_sendmessage RUNNING pid 10089, uptime 4 days, 17:20:10
中止bbscollection脚本spa
# supervisorctl stop bbscollection bbscollection: stopped [root@om-web_test supervisord.d]# supervisorctl bbscollection STOPPED Apr 06 10:23 AM test_sbbscollection RUNNING pid 10088, uptime 4 days, 17:23:13 tjapp_sendmessage RUNNING pid 10089, uptime 4 days, 17:23:13 supervisor> start bbscollection \\启动 supervisor> status bbscollection RUNNING pid 7310, uptime 0:00:24 test_sbbscollection RUNNING pid 10088, uptime 4 days, 17:23:54 tjapp_sendmessage RUNNING pid 10089, uptime 4 days, 17:23:54