今天写了一个管理supervisord进程脚本,执行发现有报错,如下
http://localhost:9001 refused connection
问题原因分析:
supervisor通常有以下两种方式通信:
1、本地socket
2、http连接
本机supervisord配置文件里面是开启了socket连接
[supervisorctl]
serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL for a unix socket
;serverurl=http://127.0.0.1:9001 ; use an http:// url to specify an inet socket
我在启动supervisorctl时,未指定配置文件,因此会使用默认的http方式连接supervisord,最终导致报错
正确执行方式如下
启动supervisord
supervisord -c /path/supervisord.conf
关闭supervisord
supervisorctl -c /path/supervisord.conf shutdown
查看supervisord管理的进程
supervisorctl -c /path/supervisord.conf status
停止supervisord管理的进程
supervisorctl -c /path/supervisord.conf stop process_name
启动supervisord管理的进程
supervisorctl -c /path/supervisord.conf start process_name
有话要说