supervisor 常用命令的使用 及開機啟動 開啟守護


一、開啟命令

  1. supervisor的服務器端部分啟動命令:
  • sudo unlink /var/run/supervisor.sock
  • supervisord -c /etc/supervisor/supervisord.conf
    此時默認開啟了所有服務
  1. supervisor的客戶端部分命令:
  • supervisorctl status 查看進程運行狀態
  • supervisorctl start 進程名 啟動進程
  • supervisorctl stop 進程名 關閉進程
  • supervisorctl restart 進程名 重啟進程
  • supervisorctl reread 重新讀取配置
  • supervisorctl update 重新載入配置文件
  • supervisorctl shutdown 關閉supervisord
  • supervisorctl clear 進程名 清空進程日志
  • supervisorctl 進入到交互模式下。使用help查看所有命令。
  • start stop restart + all 表示啟動,關閉,重啟所有進程。

二、關閉命令

supervisorctl stop all先關閉supervisor服務
之后再關閉supervisord服務
kill -9 pid

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------

1、安裝supervisor

supervisor4.0.0已支持python3,需使用pip安裝

sudo pip install supervisor

2、軟連接,使其正常執行命令

sudo ln -s /usr/local/bin/supervisord /usr/bin/supervisord

sudo ln -s /usr/local/bin/supervisorctl /usr/bin/supervisorctl

3、產生設置

sudo mkdir /etc/supervisor #創建supervisor,若存在請忽略

sudo mkdir /etc/supervisor/conf.d #創建conf.d,若存在請忽略

sudo echo_supervisord_conf > /etc/supervisor/supervisord.conf 添加設置

4、修改設置

sudo vim /etc/supervisor/supervisord.conf #在[supervisord]下面添加environment=LC_ALL='en_US.UTF-8',LANG='en_US.UTF-8'解決編碼問題,將末尾的[include]部分改為:files = /etc/supervisor/conf.d/*.conf 讀取用戶配置

5、設置開機自啟

sudo vim /usr/lib/systemd/system/supervisord.service

#添加以下內容並保存

[Unit]

Description=Supervisor daemon

[Service]

Type=forking

ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf #讀取配置

ExecStop=/usr/bin/supervisorctl shutdown

ExecReload=/usr/bin/supervisorctl reload

KillMode=process

Restart=on-failure

RestartSec=42s

[Install]

WantedBy=multi-user.target

5、使用systemctl執行相關命令

sudo systemctl start supervisord #啟動 Supervisor 服務

sudo systemctl stop supervisord #停止 Supervisor 服務

sudo systemctl restart supervisord #重啟 Supervisor 服務

sudo systemctl status supervisord #查看 Supervisor 服務狀態

sudo systemctl enable supervisord #設置 Supervisor 服務開機自啟動

sudo systemctl disable supervisord #關閉 Supervisor 服務開機自啟動

6、安裝gunicorn

進入項目根目錄

pipenv install gunicorn

7、用戶配置

sudo vim /etc/supervisor/conf.d/xxx.conf #xxx項目名稱

#添加以下內容

[program:xxx] #xxx項目名稱

command=pipenv run gunicorn -w 5 app:app #使用pipenv運行gunicorn程序 -w 5(2*cpu核心數 + 1)

directory=/home/overman/fangjuhe #項目根目錄

user=xxx #創建該項目用戶

autostart=true #在supervisord啟動的時候也自動啟動

autorestart=true #程序異常退出后自動重啟

stopasgroup=true #確保關閉supervisord時停止所有相關子進程

killasgroup=true #確保關閉supervisord時停止所有相關子進程



作者:初見風吟_overman
鏈接:https://www.jianshu.com/p/3e1f7b8b6214
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


作者:黑暗中的杜迪安
鏈接:https://www.jianshu.com/p/c8071234f081
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

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



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