发布于 2015-01-16 08:26:49 | 2161 次阅读 | 评论: 0 | 来源: PHPERZ

这里有新鲜出炉的精品教程,程序狗速度看过来!

Supervisor Python进程管理工具

Supervisor 是一个客户端/服务器系统,允许用户监控和控制类 Unix 操作系统上的进程数。


Supervisor 是一个客户端/服务器系统,允许用户监控和控制类 Unix 操作系统上的进程数。本文为大家讲解的是如何在debian下安装supervisor的方法,感兴趣的同学参考下。

1.安装supervisor

root@debian-lege-pro:~# apt-get install supervisor
Reading package lists... Done
Building dependency tree   
Reading state information... Done
The following extra packages will be installed:
  python-medusa python-meld3
Suggested packages:
  python-medusa-doc
The following NEW packages will be installed:
  python-medusa python-meld3 supervisor
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 296 kB of archives.
After this operation, 1,278 kB of additional disk space will be used.
Do you want to continue [Y/n]?

2.查看配置文件在/etc/spuervisor下

root@debian-lege-pro:~# cd /etc/supervisor/
root@debian-lege-pro:/etc/supervisor# ls
conf.d	supervisord.conf

其中conf.d是一个子目录,其中存放着supervisor监管的进程的配置信息,一个进程有一个对应的配置文件;supervisord.conf是supervisor的主配置文件,定义服务名称以及接口等等。

3.编写监控脚本

root@debian-lege-pro:/etc/supervisor# cd conf.d/
root@debian-lege-pro:/etc/supervisor/conf.d# ls
README
root@debian-lege-pro:/etc/supervisor/conf.d# vim jiaoben.conf

[program:jiaoben.py] #程序的名字,在supervisor中可以用这个名字来管理该程序。
user=root #指定运行用户
command=/home/jiaoben.py #启动程序的命令
autorstart=true #设置改程序是否虽supervisor的启动而启动
directory=/home/lege #相当于在该目录下执行程序
autorestart=true #程序停止之后是否需要重新将其启动
startsecs=5 #重新启动时,等待的时间
startretries=100 #重启程序的次数
redirect_stderr=true #是否将程序错误信息重定向的到文件
stdout_logfile=/home/lege/supervisor_log/log.txt #将程序输出重定向到该文件
stderr_logfile=/home/lege/supervisor_log/err.txt #将程序错误信息重定向到该文件
保存文件,配置完成。

4.使配置更改生效

每次修改主配置文件或增改子配置文件都需要执行supervisorctl update使新配置生效。或者用supervisorctl reload重新重新启动supervisor程序。

5.修改主配置文件

root@debian-lege-pro:vim /etc/supervisor/supervisord.conf
[inet_http_server]
port = 192.168.170.137:9001 #IP和绑定端口
username = root #管理员名称
password = 123456 #管理员密码

这样,在浏览器中输入配置中写的地址和端口号,输入配置好的用户名和密码,便可以看到基于网页的控制台界面。从中,可以察看supervisor监控的>信息,可以察看进程的日志等。

6.一定要指定user用户否则会运行报错的,如下:

root@debian-lege-pro:/home# supervisorctl update
error: <class 'socket.error'>, [Errno 2] No such file or directory: file: /usr/lib/python2.7/socket.py line: 224

关键在于配合服务使用,而且脚本要编写正确,在浏览器中输入配置中写的地址和端口号,输入配置好的用户名和密码,便可以看到基于网页的控制台界面。从中,可以察看supervisor监控的>信息,可以察看进程的日志等。



最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务