supervisor安装(sentos7)

其实现在网络上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

原文地址:https://www.cnblogs.com/jinxiao-pu/p/8280328.html