Supervisor安裝與配置程序守護

2021-10-12 12:22:38 字數 3424 閱讀 8770

你好,我是dr.葉子,用心寫最優美的部落格,彈最好聽的鋼琴!

當乙個程序必須不斷執行,但是這個程序可能因為伺服器等多種因素而導致中斷。這時候,我們希望能自動重新啟動它,就需要使用到了supervisor 起到守護程序的作用。

# 聯網安裝

pip install supervisor

pypi官網:

# 或者 supervisor-4.2.1-py2.py3-none-any.whl ,解壓安裝

pip install supervisor-4.2.1-py2.py3-none-any.whl

# 執行命令,如果有顯示,且沒報錯,安裝成功。

echo_supervisord_conf

# 步驟1:執行 echo_supervisord_conf 命令生成 supervisor 的初始化配置檔案

echo_supervisord_conf > /etc/supervisord.conf

# 步驟2:編輯 supervisord.conf

vim /etc/supervisord.conf

# 步驟3:修改以下原有的預設配置

# 原先/tmp/目錄是快取目錄,linux 會根據不同情況自動刪除其下面的檔案,所以需要替換成/var/目錄,防止報錯

# 步驟4:新增以下配置

[program:nginx]

command

=/usr/local/nginx/sbin/nginx -s reload ; 程式啟動命令

autostart

=true ; 在supervisord啟動的時候也自動啟動

startsecs=10

; 啟動10秒後沒有異常退出,就表示程序正常啟動了,預設為1秒

autorestart

=true ; 程式退出後自動重啟,可選值:[unexpected,true,false],預設為unexpected,表示程序意外殺死後才重啟

startretries=3

; 啟動失敗自動重試次數,預設是3

user

=root ; 用哪個使用者啟動程序,預設是root

priority

=999

; 程序啟動優先順序,預設999,值小的優先啟動

redirect_stderr

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

stdout_logfile_maxbytes

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

stdout_logfile_backups =

20; stdout 日誌檔案備份數,預設是10

stdout_logfile

=/usr/local/nginx/logs/nginx.out ; stdout 日誌檔案,需要注意當指定目錄不存在時無法正常啟動,所以需要手動建立目錄(supervisord 會自動建立日誌檔案)

stopasgroup

=false ; 預設為false,程序被殺死時,是否向這個程序組傳送stop訊號,包括子程序

killasgroup

=false ; 預設為false,向程序組傳送kill訊號,包括子程序

# 步驟5:儲存退出

esc按鍵

:wq# 步驟6:啟動 supervisord 服務。預設去找 /etc/supervisord.conf 這個配置檔案

supervisord

# 檢視 supervisord 服務是否在執行

ps aux |

grep supervisord

# 檢視 supervisord 服務是否生效

ps -ef |

grep nginx

注意:「;」分號為注釋標識。

操作

執行命令

重啟supervisorctl restart

更新配置檔案

supervisorctl update

檢視所有程序的狀態

supervisorctl status

停止所有程序

supervisorctl stop all

啟動所有程序

supervisorctl start all

重啟所有程序

supervisorctl reload all

新增supervisor.sock鏈結

unlink /var/run/supervisor/supervisor.sock

指定配置檔案啟動

supervisord -c /etc/supervisord.conf

: python—守護程序管理工具(supervisor)

: 使用supervisor守護python程序

csdn: supervisor配置 nginx

csdn: 「unix:///tmp/supervisor.sock no such file「 錯誤解決方案

csdn: supervisor出現unlinking stale socket /tmp/supervisor、unix:/run/supervisor/supervisor.sock no such file

以上內容本人整理,親測可行,如有任何問題,敬請指正,謝謝~~

點讚、收藏、也歡迎打賞,我彈鋼琴你聽呀~~哈哈!

supervisor安裝配置與nginx實操

supervisor是用python開發的一套通用的程序管理程式,能將乙個普通的命令列程序變為後台daemon,並監控程序狀態,異常退出時能自動重啟。它是通過fork exec的方式把這些被管理的程序當作supervisor的子程序來啟動,這樣只要在supervisor的配置檔案中,把要管理的程序的...

Supervisor服務的安裝與配置

目錄 三 應用配置 一些命令解釋 supervisor 要安裝的軟體的名稱。supervisord 裝好supervisor軟體後,supervisord用於啟動supervisor服務。supervisorctl 用於管理supervisor配置檔案中program。yum install epe...

supervisor安裝和配置

本文皆為自己實驗結果,筆記而已。安裝 1 解壓縮,進入目錄執行python setup.py install 2 進入python環境輸入import supervisor測試安裝與否 3 假如之前新增了python環境變數可直接執行echo supervisord conf etc supervi...