1. 程式人生 > >Supervisor的安裝部署(Centos7)

Supervisor的安裝部署(Centos7)

pip安裝 serve enable tmp proc clu etc res viso

Supervisor(http://supervisord.org/)是用Python開發的一個client/server服務,是Linux/Unix系統下的一個進程管理工具,不支持Windows系統。它可以很方便的監聽、啟動、停止、重啟一個或多個進程。用Supervisor管理的進程,當一個進程意外被殺死,supervisort監聽到進程死後,會自動將它重新拉起,很方便的做到進程自動恢復的功能,不再需要自己寫shell腳本來控制。

因為Supervisor是Python開發的,註意 supervidor 依賴python2.4-2.7 python3下 使用pip無法安裝 使用python3 pip安裝會報錯 。

下面以CentOS7,Python2.7版本環境下,介紹Supervisor的安裝與配置步聚:

一、安裝選擇

supervisor為python編寫,可以選擇pip安裝,也可以用linux的包管理工具安裝,本文采用pip方式安裝。

pip install supervisor
#一條命令即可安裝完畢!

二、相關命令

supervisord
啟動supervisor服務端

supervisorctl
與服務端交互

ps aux|grep supervisord
查看進程

service supervisor start
啟動supervisor服務

service supervisor stop
停止supervisor服務

supervisorctl shutdown
關閉所有任務

supervisorctl stop|start program_name
啟動/停止任務

supervisorctl status
查看任務狀態

三、配置文件
supervisor安裝成功之後,沒有提供默認的配置文件,我們手動生成配置文件

echo_supervisord_conf>/etc/supervisord.conf
查看配置文件

修改[unix_http_server]
取消[inet_http_server]。。。和port。。。兩行前的註釋

修改[supervisorctl]
取消serververurl = http://ip前的註釋

給前一行加註釋

修改[include]
添加包含的配置文件路徑

files = conf.d/*.conf

四、配置supervisord開機啟動
創建文件supervisord.service

vim /usr/lib/systemd/system/supervisor.service

文件內容:

[Unit]
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-failing
ResstartSec=42s

[Install]
WantedBy=multi-user.target

啟動系統service

systemctl enable supervisord
五、問題
基本都是出現在配置文件

配置文件啟動時,報錯unlink stale 。。。。

unlink /tmp/supervisor.sock 或
unlink /var/run/supervisor.sock
可解決

作者:閣中悟劍
鏈接:https://www.jianshu.com/p/e2b98733da0b
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權並註明出處。

Supervisor的安裝部署(Centos7)