一、安装
yum install python-setuptools
easy_install supervisor
二、测试是否安装成功echo_supervisord_conf
三、创建配置文件echo_supervisord_conf > /etc/supervisord.conf
vim 打开配置文件 shift+g 跳转到文件最后一行。
可以看到如下配置
;[include]
;files = relative/directory/*.ini
去掉分号注释,并指定好路径,supervisor将会加载对应路径下的*.ini配置文件。
四、编辑配置文件
随后我们在supervisord.d中创建一个delploy.ini文件并编辑如下
[program:goyoubbs]
command = /www/wwwroot/xjpi.net/goyoubbs -config=/www/wwwroot/xjpi.net/config/config.yaml
process_name = goyoubbs
stopwaitsecs = 10
directory = /www/wwwroot/xjpi.net
redirect_stderr=true
autostart=true
autorestart=true
stdout_logfile=/www/wwwlogs/xjpi.net.log
stderr_logfile=/www/wwwlogs/xjpi.net.error.log
五、验证是否生效
执行 supervisord -c /etc/supervisord.conf
启动即可。
六、配置supervisord开机启动
a.在指定目录下创建文件supervisord.service vim /usr/lib/systemd/system/supervisord.service
b.输入以下内容:
[Unit]
Description=Supervisor daemon
[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /etc/supervisord.conf
ExecStop=/usr/bin/supervisorctl shutdown
ExecReload=/usr/bin/supervisorctl reload
KillMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target
保存并退出
执行以下命令:systemctl enable supervisord
验证是否为开机启动:systemctl is-enabled supervisord
七、子进程的管理
1) 查看所有子进程的状态:
#supervisorctl status
blog RUNNING pid 2395, uptime 0:08:41
goyoubbs RUNNING pid 2396, uptime 0:08:41
2)关闭、开启指定的子进程:
# supervisorctl stop goyoubbs
goyoubbs: stopped
# supervisorctl start goyoubbs
goyoubbs: started
3)关闭、开启所有的子进程:
# supervisorctl stop all
blog: stopped
goyoubbs: stopped
# supervisorctl start all
blog: started
goyoubbs: started
4):其他参数:supervisor开启后子进程自动开启(autostart=true)和子进程退出后自动启动(autorestart=ture)
八、web管理界面
需要在supervisor的配置文件里添加[inet_http_server]选项组:之后可以通过http://ip_address:9001
来访问控制子线程的管理。
[inet_http_server]
port=ip_address:9001
username=user
password=123
效果如下:
参考资料:
https://my.oschina.net/u/2342969/blog/2986173
本文属原创,转载请注明原文:https://pangsuan.com/p/Centos-Supervisor.html
评论 (0)