CentOS下Supervisor的安裝與使用入門

【轉載】http://www.51bbo.com/archives/2120html

Supervisor是一個進程管理工具,官方的說法python

用途就是有一個進程須要每時每刻不斷的跑,可是這個進程又有可能因爲各類緣由有可能中斷。當進程中斷的時候我但願能自動從新啓動它,此時,我就須要使用到了Supervisor服務器

這個工具主要就兩個命令:工具

supervisord : supervisor的服務器端部分,啓動supervisor就是運行這個命令ui

supervisorctl:啓動supervisor的命令行窗口。命令行

安裝(Centos):rest

  1. # yum install python-setuptools
  2. # easy_install supervisor
  3. 若是easy_install很差使就從官方下載:
  4. 而後經過python安裝:
  5. # tar zxf supervisor-3.1.3.tar.gz
  6. # cd supervisor
  7. # python setup.py install

成功安裝後能夠登錄python控制檯輸入import supervisor 查看是否能成功加載。htm

生成配置文件(supervisord.conf):

echo_supervisord_conf > /etc/supervisord.conf進程

修改配置文件:

在supervisord.conf最後增長(分號後邊的表示註釋,能夠不寫):rem

  1. [program:bandwidth]
  2. command=python26 /usr/local/bin/bandwidth.sh  ;須要執行的命令wd)
  3. user =root  ;(default  is  current  user , required  if  root)
  4. autostart=true  ;start at supervisord start (default: true)
  5. autorestart=true  ;whether/when to restart (default: unexpected)
  6. startsecs=3  ;number of secs prog must stay running ( def . 1)
  7. stderr_logfile=/tmp/bandwidth_err.log  ;redirect proc stderr to stdout (default false) 錯誤輸出重定向
  8. stdout_logfile=/tmp/bandwidth.log  ;stdout log path, NONE  for none; default AUTO, log輸出
  9. (更多配置說明請參考:http://supervisord.org/configuration.html)
運行命令:

supervisord -c /etc/supervisord.conf  //啓動supervisor

supervisorctl //打開命令行

  1. [root @iZ2365j7l5bZ  bin]# supervisorctl status   
  2. bandwidth                        RUNNING   pid  2423 , uptime  0 : 06 : 35
  3. [root @iZ2365j7l5bZ  bin]# supervisorctl help   
  4. default  commands (type help <topic>):   
  5. =====================================   
  6. add    clear  fg        open  quit    remove  restart   start   stop  update    
  7. avail  exit   maintail  pid   reload  reread  shutdown  status  tail  version 

ctl中: help //查看命令

ctl中: status //查看狀態

另外有一個坑須要注意:若是修改了 /etc/supervisord.conf ,須要執行 supervisorctl reload 來從新加載配置文件,不然不會生效。。。

相關文章
相關標籤/搜索