Ubuntu14中supervisor的安装及配置

时间:2024-09-24 18:34:44

supervisor是一款很好用的进程管理工具,其命令也很简单,其安装过程如下:

Ubuntu14:

首先保证本地的Python环境是OK的,并且已经安装supervisor包,如果没有安装可以用easy_install:

easy_install supervisor

接下来安装supervisor:

apt-get install supervisor

安装好之后,不出问题的话supervisor服务已经启动完成。

supervisor管理进程的配置文件,这里就简单举例:

[program:task]                                       #管理进程的命名
command=python test.py -c test.conf          #执行的命令
stderr_logfile=/var/log/supervisor/test.log      #错误日志输出路径
stdout_logfile=/var/log/supervisor/test.log      #日志输出路径
directory=/root/test                    #命令执行的工作空间
autostart=true                       #自动启动
user=root                          #指定用户
autorestart=true                      #自动重启

进程配置文件配好之后,然后执行:

supervisorctl reload

至此配置基本完成,进程也启动起来了。

supervisor有supervisord和supervisorctl两种命令类型,supervisord是服务相关的命令,supervisorctl是客户端相关的命令,它们的使用方法很简单.

常见报错:

1,

Traceback (most recent call last):
File "/usr/local/bin/supervisorctl", line 7, in <module>
from supervisor.supervisorctl import main
File "/usr/local/lib/python2.7/dist-packages/supervisor/supervisorctl.py", line 36, in <module>
from supervisor.options import ClientOptions
File "/usr/local/lib/python2.7/dist-packages/supervisor/options.py", line 26, in <module>
from supervisor.datatypes import process_or_group_name
ImportError: cannot import name process_or_group_name #这是在执行supervisor相关命令报的错,基本可以看出是安装的问题
#解决方式
easy_install supervisor

2,

root@ubuntu:~# supervisorctl
unix:///var/run/supervisor.sock no such file
supervisor> #这有可能是由于supervisor服务没有启动
#解决办法
service supervisor start

3,

error: <class ‘socket.error’>, [Errno 2] No such file or directory: file:/usr/lib/python2.7/socket.py line: 224

#错误原因可能是 supervisor 服务未启动
#解决办法 service supervisor start #也有可能是配置文件中没有指定用户
#解决办法
进入/etc/supervisor/conf.d
找到指定的配置文件,加入 user=root