Supervisor的安裝與使用入門


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

用途就是有一個進程需要每時每刻不斷的跑,但是這個進程又有可能由於各種原因有可能中斷。當進程中斷的時候我希望能自動重新啟動它,此時,我就需要使用到了Supervisor

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

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

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

安裝(Centos):

 

yum install python-setuptools -y
easy_install supervisor
#如果easy_install不好使就從官方下載:
#然后通過python安裝:
tar zxf supervisor-3.1.3.tar.gz
cd supervisor
python setup.py install

 

成功安裝后可以登陸python控制台輸入import supervisor 查看是否能成功加載。

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

 echo_supervisord_conf > /etc/supervisord.conf

修改配置文件:

在supervisord.conf最后增加(分號后邊的表示注釋,可以不寫):

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

 

運行命令:

 

#啟動supervisor
supervisorctl //打開命令行
[root @iZ2365j7l5bZ  bin]# supervisorctl status   
bandwidth                        RUNNING   pid  2423 , uptime  0 : 06 : 35   
[root @iZ2365j7l5bZ  bin]# supervisorctl help   
  
default  commands (type help <topic>):   
=====================================   
add    clear  fg        open  quit    remove  restart   start   stop  update    
avail  exit   maintail  pid   reload  reread  shutdown  status  tail  version  
ctl中: help //查看命令
ctl中: status //查看狀態

另外有一個坑需要注意:如果修改了 /etc/supervisord.conf ,需要執行 supervisorctl reload 來重新加載配置文件,否則不會生效。。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM