工作积累十(二)——主管安装及使用

  

主管是由Python开发的用于监控类UNIX上进程运行状态的工具。在部署Python Web时,经常使用这样一种架构,即Nginx + Gunicorn +管理+ Django/瓶/龙卷风/Webpy Pyramid.Supervisor在这里起到的作用是监控Gunicorn,在Gunicorn宕掉后使其重启,增强系统的稳定性。推而广之,可以用主管监控Tomcat, MySQL,复述,等。下面介绍一下其安装和使用。

1。安装

主管只能运行在类UNIX系统中,如Linux, Mac OS和Solaris等,不支持任何版本的Windows系统。同时,主管需要Python 2.4或更新版本的Python支持。

下面介绍两种安装方式。

<编辑> 1.1 pip方式

在系统已安装pip且可以连接外网时,安装十分简单,pip安装会和yum安装、apt-get一样自动安装依赖文件:

 [root@localhost  ~] #, pip  install 主管
<编辑> 1.2手动安装

手动安装又分为可以连接外网和不能连接外网的情况,均需要setuptools的支持,否则在

 python  setup.py 安装

时会报如下错误:

 Traceback  (most  recent  call 最后):
  File “setup . py”,才能,line  32岁,拷贝& lt; module>
  ,,,,得到setuptools  import 设置,find_packages
  ImportError: No  module  named  setuptools 

关于脉冲及setuptools的安装可以参考这里。

1.2.1可以连接外网

可以连接外网时,python的设置。py安装会自动安装依赖文件:

 [root@localhost  ~] #, cd /usr/地方/src
  (root@localhost  src) #, wget  https://pypi.python.org/packages/source/s/supervisor/supervisor-3.1.3.tar.gz
  (root@localhost  src) #, tar  zxf  supervisor-3.1.3.tar.gz
  (root@localhost  src) #, cd  supervisor-3.1.3
  [root@localhost  supervisor-3.1.3] #, python  setup.py 安装
1.2.1不能连接外网

不能连接外网时,需要先手动安装主管所依赖的文件,以下列出:

meld3 elementtree

其中,meld3是必须安装的,elementtree博主并未安装,依然可以成功,读者可以在安装完meld3后先试验一下,如果主管可以安装成功,则可不再安装elementtree。

安装依赖文件的方法请参考<代码> 1.2.1 节,这里不再赘述。

安装成功后,多出4个命令文件,分别为supervisord, supervisorctl, pidproxy, echo_supervisord_conf,这些命令文件位于python安装目录下(和皮普配置有关),如/usr/地方/python2.7.10/bin/supervisord

2。使用

主管的配置文件采用Windows ini文件的风格,以<代码>,开头注释内容。使用安装主管后产生的echo_supervisord_conf命令可以生成配置文件模板:

 [root@localhost  ~] #,/usr/地方/python2.7.10/bin/echo_supervisord_conf 在祝辞,/etc/supervisord。参看

为了快速开始使用,仅对生成的配置文件模板做少许修改。详细的配置文件说明可以参考这里。

<编辑> 2.1以根用户启动主管

如果我们以根用户启动主管,需要在[supervisord]下指定用户=<代码>根>

 [supervisord]
  …
  用户=根
  …

启动主管:

 [root@localhost  ~] #, supervisord  -c /etc/supervisord。参看

这里要说明的一点是,在运行主管时,如果没有使用<代码> c>

 $/supervisord.conf慢性消耗性疾病
  美元/etc/supervisord.conf慢性消耗性疾?etc/supervisord。参看

如果在这些位置没有找到配置文件,会报如下错误信息:

<>之前错误:,No  config  file  found  at  default  paths  (/usr/etc/supervisord.conf,/usr/supervisord.conf,,   supervisord.conf,,等/supervisord.conf,/etc/supervisord.conf);, use 从而-c  option 用specify  a    config  file  at  a  different 路径 <编辑> 2.2监控进程

修改配置文件,在<代码>[计划:custom_name]>

[计划:redis_monitor]
  命令=/usr/地方/复述,/bin/redis-server /etc/redis.conf ;指定监控的命令,重要
  目录=/root ;指定命令运行的目录
  autorestart=true ;指定在什么情况下自动重启
  用户=root ;指定以哪个用户运行命令命令
  ,其他配置使用默认值即可

重新启动主管,建议使用如下方式启动,将其放入后台,同时将supervisord的运行日志放入<代码> nohup。中:

 [root@localhost  ~] #, nohup  supervisord  -n  -c /etc/supervisord.conf , 

工作积累十(二)——主管安装及使用