1. 程式人生 > 其它 >Linux安裝(二十一)之supervisorctl安裝

Linux安裝(二十一)之supervisorctl安裝

supervisorctl安裝介紹

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

安裝

yum install -y epel-release && yum install -y supervisor

開機自啟supervisord

systemctl enable supervisord

啟動supervisord

systemctl start supervisord

檢查啟動狀態

systemctl status supervisord

開啟web訪問

vim /etc/supervisord.conf

將如下圖中資訊改為下下圖中資訊

 去掉註釋,修改ip埠,使用者名稱,密碼

重新載入配置檔案

supervisorctl reload

nginx對映配置

server {
listen 80;
server_name test-xxx.xxx.com;//自己的域名,寫localhost也可以
location /supervisor/{
proxy_pass http://192.168.9.102:9001/;
}
}

檢視配置檔案

cat supervisord.conf

新增ini檔案,讓supervisorctl管理

cd /etc/supervisord.d/

新增檔案

vim project-web.ini

內容如下

[program:project-web]
directory = /home/project ;啟動目錄
command = java -jar project-web.jar ;啟動命令
autostart = true ;在supervisord啟動的時候也啟動
startsecs = 5 ;啟動5秒後沒有異常退出,就當作已經正常啟動了
autorestart = true ;程式異常退出後自動重啟
startretries = 3 ;啟動失敗自動重試次數,預設是3
user = root ;哪個使用者啟動
redirect_stderr = true ;把stderr重定向到stdout,預設false
stdout_logfile_maxbytes = 20MB ;stdout日誌檔案大小,預設50MB
stdout_logfile_backups = 20 ;stdout日誌檔案備份數
stdout_logfile = /home/project/logs/project.log ;stdout日誌檔案,需要手動建立/home/project/logs目錄

重啟
supervisorctl reload
啟動project-web程序

supervisorctl start project-web

1、開啟埠9001

firewall-cmd --zone=public --add-port=9001/tcp --permanent

2、重啟防火牆

firewall-cmd --reload

檢視已經開放的埠:

firewall-cmd --list-ports