阿男的小窝

View the Project on GitHub

supervisord的安装和使用(三)

这篇的内容讲一讲supervisord的web管理端。

supervisord的配置文件/usr/local/etc/supervisord.ini里面,可以打开它自己提供的web管理端:

[inet_http_server]         ; inet (TCP) server disabled by default
port=127.0.0.1:9001        ; ip_address:port specifier, *:port for all iface

这样,supervisord就会在127.0.0.19001端口提供一个web管理端。此时启动supervisord的服务:

$ supervisord -c /usr/local/etc/supervisord.ini

然后在浏览器打开supervisord提供的管理地址:

http://127.0.0.1:9001

显示页面如下:

可以看到supervisor提供的一个web管理页面。可以看到supervisor还没有管理任何的服务进程,我们需要添加一个需要管理的program。

可以用ping命令来作为需要管理的服务:

ping命令会保持在前台持续运行,并且一直输出日志,因此适合用来当作需要管理的服务的demo。下面是/usr/local/etc/supervisord.ini里面需要添加的配置:

[program:ping_baidu]
command=/sbin/ping www.baidu.com

注意在supervisor里面,要使用命令的完整路径,比如上面的/sbin/ping。完成配置后,保存配置文件。此时kill掉supervisord的服务:

$ ps -ef  |grep supervisord
  501 73176     1   0 Tue09AM ??         0:18.47 /usr/local/Cellar/supervisor/3.3.5/libexec/bin/python2.7 /usr/local/bin/supervisord -c /usr/local/etc/supervisord.ini
  501 86868 85645   0 10:44AM ttys001    0:00.01 grep supervisord
$ kill 73176

然后重新启动服务:

$ supervisord -c /usr/local/etc/supervisord.ini

此时查看web管理页面:

可以看到ping_baidu这个服务了,并且在Action这边可以看到一些操作,比如RestartStop等等。

以上是对supervisor的web管理端的介绍。