supervisor使用小記

2022-07-03 07:45:10 字數 2447 閱讀 9432

supervisor是乙個利用python開發的程序管理工具,可以控制其所管理的程序,包括但不限於其所管理程式異常退出時的重啟

利用linux自帶的包管理命令或者python的包管理命令即可安裝

debian

apt-get install supervisor
cent

yum install supervisor
arch

pacman -s supervisor
pip

pip install supervisor
不同的安裝方式配置檔案所在的目錄可能有所差異,甚至沒有生成預設的配置檔案,以arch為例配置檔案在/etc目錄下,路徑為/etc/supervisord.conf。一般來說/etc目錄就是存放各種配置檔案的。如果配置檔案不存在,或者想修改配置檔案目錄,使用下面命令:

echo_supervisord_conf > /路徑名/supervisord.conf
重點關注檔案最後兩行,

[include]

/etc/supervisor.d/*.ini

這裡寫的是所管理的程序的配置檔案所在路徑以及檔案格式,可以看到預設的是.ini檔案也可以修改為.conf檔案

第一次啟動命令

supervisord -c /etc/supervisord.conf
設定開機自啟

systemctl enable supervisord
正如上面所介紹,supervisor的子程序配置檔案目錄已經在supervisord.conf檔案中寫好,或者你也可以修改為自定義的目錄,

supervisord管理的程序可以有多個,多個程序的配置檔案可以寫在多個檔案中,也可以寫在乙個配置檔案中,通常是乙個專案相關的程序寫在乙個檔案中,

配置檔案模版(.conf檔案):

[program:blog]                           ;專案名

directory=/opt/bin ;指令碼目錄

command=/usr/bin/python /opt/bin/test.py ;指令碼執行命令

autostart=true ;supervisor啟動的時候是否隨著同時啟動,預設true

autorestart=false ;當程式exit的時候,這個program不會自動重啟,預設unexpected,設定子程序掛掉後自動重啟的情況,有三個選項,false,unexpected和true。如果為false的時候,無論什麼情況下,都不會被重新啟動,如果為unexpected,只有當程序的退出碼不在下面的exitcodes裡面定義的

startsecs=1 ;這個選項是子程序啟動多少秒之後,此時狀態如果是running,則我們認為啟動成功了。預設值為1

user = test ;指令碼執行的使用者身份

stderr_logfile=/tmp/blog_stderr.log ;標準錯誤日誌輸出

stdout_logfile=/tmp/blog_stdout.log ;標準輸出日誌輸出

redirect_stderr = true ;把stderr重定向到stdout,預設 false

stdout_logfile_maxbytes = 20mb ;stdout日誌檔案大小,預設 50mb

stdout_logfile_backups = 20 ;stdout日誌檔案備份數

supervisorctl status        //檢視所有程序的狀態

supervisorctl stop es //停止es

supervisorctl start es //啟動es

supervisorctl restart //重啟es

supervisorctl update //配置檔案修改後使用該命令載入新的配置

supervisorctl reload //重新啟動配置中的所有程式

注:把es換成all可以管理配置中的所有程序。直接輸入supervisorctl進入supervisorctl的shell互動介面,此時上面的命令不帶supervisorctl可直接使用。

安裝使用supervisor

yum install python setuptools easy install supervisor 測試安裝是否成功 echo supervisord conf 2.建立配置檔案 建立supervisor配置檔案目錄 etc supervisor mkdir m 755 p etc supe...

supervisor使用詳解

1.什麼是supervisor supervisor是用python寫的乙個程序管理工具,用來啟動,重啟,關閉程序。2.supervisor的安裝 pip install supervisor3.supervisor的配置檔案 supervisor安裝完畢後,會有乙個配置檔案supervisord....

supervisor 配置使用

supervisor是用python開發的一套通用的程序管理程式,能將乙個普通的命令列程序變為後台daemon,並監控程序狀態,異常退出時能自動重啟。我們可以在你的 ubuntu 上安裝乙個叫做 supervisor 的程式來管理你的指令碼啟動。sudo apt get install superv...