RHEL6.5安裝supervisor-3.3.1-py2.6.egg

跨越七海的風發表於2020-07-17

https://www.cnblogs.com/xd502djj/p/13214174.html

    supervisorctl有一個型別shell的命令列介面,我們可以利用它來檢視子程式狀態,啟動/停止/重啟子程式,獲取running子程式的列表等等;Web Server主要可以在介面上管理程式,Web Server其實是透過XML_RPC來實現的,可以向supervisor請求資料,也可以控制supervisor及子程式。配置在[inet_http_server]塊裡面,XML_RPC介面是遠端呼叫的,supervisorctl和Web Server就是它弄的。

1、RHEL6.5的python版本:

[root@DMS supervisor]# python

Python 2.6.6 (r266:84292, Sep  4 2013, 07:46:00) 

[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2

2、安裝supervisor-3.3.1-py2.6.egg時報錯:提示

Installed /usr/lib/python2.6/site-packages/supervisor-3.3.1-py2.6.egg

Processing dependencies for supervisor==3.3.1

Searching for meld3>=0.6.5

Reading

Download error on : [Errno -2] Name or service not known -- Some packages may not be found!

Couldn't find index page for 'meld3' (maybe misspelled?)

Scanning index of all packages (this may take a while)

Reading

Download error on : [Errno -2] Name or service not known -- Some packages may not be found!

No local packages or working download links found for meld3>=0.6.5

error: Could not find suitable distribution for Requirement.parse('meld3>=0.6.5')

3、從  ,解壓python setup.py install安裝。

4、下載安裝setuptools-36.0.1.zip

5、 下載安裝supervisor-3.3.1.tar.gz

6、配置檔案:

    1)建立/etc/ supervisor/conf.d資料夾

     2)supervisord.conf放置於 /etc/ supervisor/下,其中

        [include]

        files = /etc/supervisor/conf.d/*.conf

     3)所以將待監控程式以 .conf結尾的配置檔案放置在 /etc/ supervisor/conf.d/目錄下。

7、 supervisord.conf中

        [supervisorctl]

        serverurl =

        username = root

        password = 123456

        prompt = mysupervisor

使用者名稱密碼設定不對的話,執行supervisorctl update報錯:“Error:Server requires authentication”
8、 /etc/ supervisor/conf.d/目錄下的配置檔案例如adcc.conf[program:sendVer2Com1]

    command = sudo xterm -e python sendVer2Com1.py ttyS1  

//對於字元終端程式,要想啟動獨立的 xterm顯示程式執行內容,需要使用“  xterm -e”,

//command只能是那種在終端執行的程式,不能是守護程式。比如說command=service httpd start。httpd這個程式被linux的service管理了,我們的supervisor再去啟動這個命令
這已經不是嚴格意義的子程式了。

    numprocs = 1 

    process_name=%(program_name)s-%(process_num)s

    user = adcc

    environment= HOME=/home/adcc

//設定程式執行時需要的環境變數,和別的子程式是不共享,如這裡:家目錄,

autostart=true 
//如果是true的話,子程式將在supervisord啟動後被自動啟動預設就是true

    autorestart=true

startretries=3    //預設3次
//當程式啟動失敗後,最大嘗試啟動的次數。。當超過3次後,supervisor將把此程式的狀態置為FAIL

    redirect_stderr = true

    stopasgroup=true

    killasgroup=true

    directory = /home/adcc/monitor

    stdout_logfile = /etc/supervisor/%(program_name)s.log

    directory = /home/adcc/monitor/bin/   //程式執行前,會前切換到這個目錄

//設定執行程式所在的目錄,這樣該程式使用相對路徑找配置檔案不會找不到。如:../resource/xxx.ini

來自 “ ITPUB部落格 ” ,連結: http://blog.itpub.net/7970627/viewspace-2702333/,如需轉載,請註明出處,否則將追究法律責任。】



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69970129/viewspace-2705230/,如需轉載,請註明出處,否則將追究法律責任。

相關文章