其实现在网络上supervisor的教程有很多,比较杂,我找了几个对我来说是有帮助的教程,再结合自己的理解做一些笔记,可以供自己以后翻看。

链接:https://www.cnblogs.com/Hai--D/p/5820718.html

http://blog.csdn.net/xyang81/article/details/51555473

有时候在linux上的程序还是需要统一管理,这时候supervidor就非常好用,在windowns上操作就非常好。

首先:

一、安装supervisor

1.wget https://pypi.python.org/packages/80/37/964c0d53cbd328796b1aeb7abea4c0f7b0e8c7197ea9b0b9967b7d004def/supervisor-3.3.1.tar.gz

2.tar zxf supervisor-3.3.1.tar.gz

3.cd supervisor-3.3.1

4.python setup.py install

如果报错可能:

  1. 提示setuptools-0.6c11.tar没有安装

    下载https://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
    tar zxf setuptools-0.6c11.tar.gz
    cd setuptools-0.6c11/
    python setup.py build
    python setup.py install
  2. 提示下载错误,需meld3>0.6.5
    1. 下载 http://dl.fedoraproject.org/pub/epel/7/x86_64/p/python-meld3-0.6.10-1.el7.x86_64.rpm(或者我备份了一份)
    2. 安装 rpm -ivh python-meld3-0.6.10-1.el7.x86_64.rpm

如下提示,安装完成:

Using /usr/lib64/python2.7/site-packages

Finished processing dependencies for supervisor==3.3.1
 
 
二、配置supervisor
1.创建文件夹和配置文件
mkdir /etc/supervisor
echo_supervisord_conf > /etc/supervisor/supervisord.conf
2.修改 /etc/supervisor/supervisord.conf 文件
先新建 mkdir /etc/supervisor/conf.d  以后程序的配置都在这个文件夹里面,以 .ini 结尾

修改files的路径为上图所示。这样配置后,会读取conf.d中的文件。

3.supervisorctl reload 使配置文件生效
4.在conf.d中创建****.ini文件,创建完毕后supervisorctl update 使之生效
 ini文件中,可以按照以下配置,以下是我某个程序的配置,你要怎么配置可以看这篇文件:http://blog.csdn.net/xyang81/article/details/51555473 其实也就是supervisord.conf配置中的解读,网上还有更加详细的说明,问度娘。

[program:hsparser2]
command=python main_2.py
process_name=hsparser2-%(process_num)s
numprocs=10
directory=/home/hsparser2/
autostart=true
autorestart=unexpected
redirect_stderr=true

 保存退出即可。
5.配置有界面的supervisor来监控程序的运行状态
 

保存退出即可,然后在你的windows上,输入你服务器的 ip:9001 就可以看到如下图:

这样你就配置好你的程序在supervisor上了,大功告成。

 
三、问题注意:
1.如果出现以下问题
 

可能是由于supervisord进程停止了,建议重新运行

运行此命令:supervisord -c /etc/supervisor/supervisord.conf


2.Unlinking stale socket /tmp/supervisor.sock

应该临时文件link不到socket,此文件要删除 使用 unlink 命令

[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
;username=chris                     ; 如果设置应该与http_username相同
;password=123                      ; 如果设置应该与http_password相同
;prompt=mysupervisor                 ; 命令行提示符,默认"supervisor"
;history_file=~/.sc_history             ; 命令行历史纪录

运行此命令:unlink /tmp/supervisor.sock

参考链接:

http://www.iitshare.com/supervisord-manage-process.html

https://www.cnblogs.com/elie/p/6341680.html?utm_source=itdadao&utm_medium=referral

supervisor安装(sentos7)的更多相关文章

  1. supervisor安装和配置

    直接命令 easy_install supervisor 如果报错先安装 yum install python-setuptools,再上面一条命令: 安装成功后显示finished,我们再次进行py ...

  2. Supervisor 安装及配置管理uwsgi进程

    Supervisor介绍 Supervisor 允许其用户在UNIX类操作系统上控制多个进程. 块如下: 方便 需要为每个进程实例编写rc.d脚本通常是不方便的. rc.d脚本是进程初始化/自动启动/ ...

  3. mac下supervisor安装及简单配置

    supervisor是一个用 Python 写的进程管理工具,可以很方便的用来启动.重启.关闭进程(守护进程).可以用他来管理自己的“服务程序”. 安装 首先安装Python,Mac系统好像自带. 执 ...

  4. supervisor安装、使用详解

    supervisor是用python写的一个进程管理工具,用来启动,重启,关闭进程. 1 supervisor的安装 pip install supervisor 2 supervisor的配置文件( ...

  5. supervisor安装部署和使用实例

    Supervisord是用Python实现的一款非常实用的进程管理工具,类似于monit,monit和supervisord的一个比较大的差异是supervisord管理的进程必须由superviso ...

  6. Supervisor安装与配置(Linux/Unix进程管理工具)

    原文链接:http://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyth ...

  7. Linux系统下 Supervisor 安装搭建(yum安装)

    安装Supervisor # 安装supervisor yum install supervisor # 打开supervisor的配置文件 vi /etc/supervisord.conf 将sup ...

  8. Linux系统下 Supervisor 安装搭建

    在 web 应用部署到线上后,需要保证应用一直处于运行状态,在遇到程序异常.报错等情况,导致 web 应用终止时,需要保证程序可以立刻重启,继续提供服务. 所以,就需要一个工具,时刻监控 web 应用 ...

  9. supervisor安装及其配置

    一.supervisor概述 supervisor是一个c/s系统,被用来在类Unix系统中监控进程状态.supervisor使用python开发. 服务端进程为supervisord,主要负责启动自 ...

  10. Supervisor安装与配置

    Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统 ...

随机推荐

  1. git push时报错fatal: Could not read from remote repository.

    后来发现,出现这个问题是因为仓库地址不对 使用如下命令先查看一下: $ git remote -v 发现跟github的地址不一致 然后在终端输入:git remote set-url origin ...

  2. Python排序算法之直接插入排序

    插入排序的主要思想是每次取一个列表元素与列表中已经排序好的列表段进行比较,然后插入从而得到新的排序好的列表段,最终获得排序好的列表. 比如,待排序列表为[49,38,65,97,76,13,27,49 ...

  3. Java容器List接口

    List接口是Java中经常用到的接口,如果对具体的List实现类的特性不了解的话,可能会导致程序性能的下降,下面从原理上简单的介绍List的具体实现: 可以看到,List继承了Collection接 ...

  4. scrapy 爬虫踩过的坑(II)

    同事写了个爬虫,逻辑上看着没什么问题,但是一直报错:Request url must be str or unicode…… 打印了一下url 和url 的类型,确实是 unicode 懵逼…… 打印 ...

  5. layui table表格字段过长,展示不完整时,鼠标放到上面展示完整信息

    亲测可以直接用 1.首先每个列都有一个title,里面放入完整信息,然后写一个如下的function, function tdTitle(){ $('th').each(function(index, ...

  6. 【驱动】USB驱动实例·串口驱动·键盘驱动【转】

    转自:http://www.cnblogs.com/lcw/p/3159370.html Preface USB体系支持多种类型的设备. 在 Linux内核,所有的USB设备都使用 usb_drive ...

  7. iptables NAT规则【转】

    nat表需要的三个链: 1.PREROUTING:可以在这里定义进行目的NAT的规则,因为路由器进行路由时只检查数据包的目的ip地址,所以为了使数据包得以正确路由,我们必须在路由之前就进行目的NAT; ...

  8. 个性化你的Git Log的输出格式

    git已经变成了很多程序员日常工具之一. git log是查看git历史的好工具,不过默认的格式并不是特别的直观. 很多时候想要更简便的输出更多或者更少的信息,这里列出几个git log的format ...

  9. Python 模块进阶

    import导入模块 1. import 搜索路径 import sys sys.path 例子: In [1]: import sys In [2]: sys.path Out[2]: ['', ' ...

  10. SQL2008关于权限的解释

    在SQL2008中我自己创建的一个登录名,可是那个登录名只可以用来登录,对数据库的操作什么都不能,连读取数据库都不可以.因为权限不够,只要把登录名的属性打开点击“服务器角色”,把public和sysa ...