cat /etc/redhat-release #查看系統版本
supervisor是一個(gè)用python語(yǔ)言編寫(xiě)的進(jìn)程管理工具,它可以很方便的監聽(tīng)、啟動(dòng)、停止、重啟一個(gè)或多個(gè)進(jìn)程。當一個(gè)進(jìn)程意外被殺死,supervisor監聽(tīng)到進(jìn)程死后,可以很方便的讓進(jìn)程自動(dòng)恢復,不再需要程序員或系統管理員自己編寫(xiě)代碼來(lái)控制。
yum install -y epel-release yum install -y supervisor
啟動(dòng)&開(kāi)啟自啟
systemctl start supervisord systemctl enable supervisord
其他命令:
systemctl stop supervisord #停止啟動(dòng) systemctl start supervisord #啟動(dòng) systemctl status supervisord #啟動(dòng)狀態(tài) systemctl reload supervisord #重載 systemctl restart supervisord #重啟
supervisor提供了基于web的控制,管理員可以通過(guò)在頁(yè)面上點(diǎn)點(diǎn)按鈕即可完成對進(jìn)程的啟動(dòng)、重啟等操作,甚是方便。
進(jìn)入配置文件,開(kāi)啟對web端的支持
vim /etc/supervisord.conf
如果提供給外部訪(fǎng)問(wèn),需要將port改為本機ip地址
#取消10-13行注釋?zhuān)懊鏀底质切刑? [inet_http_server] ; inet (TCP) server disabled by default port=192.168.26.121:9001 ; (ip_address:port specifier, *:port for all iface) username=user ; (default is no username (open server)) password=123 ; (default is no password (open server))
配置完成后重啟服務(wù)
systemctl restart supervisord
進(jìn)入supervisord配置文件
cat /etc/supervisord.conf
通過(guò)配置文件最后一行看到
[include] files = supervisord.d/*.ini
也就是說(shuō),我們所有的應用配置文件都保存在這個(gè)目錄下,以.ini格式命名保存的,可以自行修改地址,但不要修改后綴
那我們來(lái)創(chuàng )建一個(gè)受監控的應用吧
創(chuàng )建一個(gè)名稱(chēng)叫做python的應用程序配置
vim /etc/supervisord.d/python.ini
配置文件內容,其中command就是我們應用程序啟動(dòng)需要執行的命令
[program:python] #這里的python就是我們顯示在web前端以及終端的監控名稱(chēng) command=python /tmp/supervisordtest/test.py #我們要監控的文件地址 autostart=true autorestart=true startsecs=1 startretries=3 redirect_stderr=true stdout_logfile=/tmp/supervisordtest/access_python.log #日志地址,可自行配置目錄 stderr_logfile=/tmp/supervisordtest/error_python.log #日志地址,可自行配置目錄
創(chuàng )建test.py
mkdir /tmp/supervisordtest vim /tmp/supervisordtest/test.py
程序內容:開(kāi)啟一個(gè)死循環(huán),不停的打印內容
while True: print(100)
重啟supervisord使配置文件生效
systemctl restart supervisord
查看應用是否正常啟動(dòng)
1、命令查看
systemctl status supervisord
2、可視化web查看
web端可以重啟,停止,清理日志,查看日志等多個(gè)操作
安裝完畢,會(huì )生成3個(gè)系統命令supervisorctl
、supervisord
和echo_supervisord_conf
1. supervisord
,運行supervisor
時(shí)會(huì )啟動(dòng)一個(gè)進(jìn)程supervisord
,它負責啟動(dòng)所管理的進(jìn)程,并將所管理的進(jìn)程作為自己的子進(jìn)程來(lái)啟動(dòng),而且可以在所管理的進(jìn)程出現崩潰時(shí)自動(dòng)重啟
2. supervisorctl是命令行管理工具,可以用來(lái)執行 start
、stop
、restart
等命令,來(lái)對這些子進(jìn)程進(jìn)行管理, 如
sudo supervisorctl start demoweb
其中demoweb是進(jìn)程的名稱(chēng), 詳細的命令及說(shuō)明見(jiàn)下面的這張表
3. echo_supervisord_conf
用來(lái)生成默認的配置文件(默認配置文件,內容非常齊全且都有注釋?zhuān)m合用時(shí)查閱,用法是這樣的
echo_supervisord_conf > test.conf
到此這篇關(guān)于3分鐘學(xué)會(huì )如何上手supervisor看門(mén)狗的文章就介紹到這了,更多相關(guān)3分鐘學(xué)會(huì )如何上手supervisor內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站