zoukankan      html  css  js  c++  java
  • Ubuntu14中supervisor的安装及配置

    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
    有志者,事竟成!
  • 相关阅读:
    android 内存泄漏分析
    sublime text3
    Bind Service 不会在后台无限期的一直运行
    uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型?
    #include < >与#include “ ”
    什么是库?
    gcc编译器
    如何写C语言程序
    ubuntu登陆root用户验证失败
    nginx location匹配顺序及CI框架的nginx配置
  • 原文地址:https://www.cnblogs.com/styier/p/5668656.html
Copyright © 2011-2022 走看看