Linux自启进程管理工具,进程管理工具Supervisor的安装及使用
需求:有一個進程需要每時每刻不斷的跑,但是這個進程又有可能由于各種原因有可能中斷。當進程中斷的時候我需要他能自動重啟,保證服務一直在跑著。基于整個需求,一開始想的是起一個腳本,監聽該服務的端口,一旦發現端口占用被解除,立即重新執行命令。但是后來發現linux已經有了類似的東西,即今日的主角Supervisor:
sudo apt-get install supervisor
可以進入paython測試是否能import supervisor 來確定是否已經裝好。
配置
安裝好supervisor后就可以編寫配置文件了。配置文件放在/etc/supervisor/conf.d/目錄下,最好一個進程對應一個.conf文件。
配置文件參數說明:
[program: test]
command=xxxxxxxx ;如果有多條命令,可以寫入shell腳本再在這里調用
directory=xxxxx ;執行命令時切換到的目錄
user=xxxx ;執行命令所用的linux用戶身份
autorestart=true;是否自動重啟
autostart=true;啟動supervisor時是否自行啟動該程序
redirect_stderr=true;如果為true則將stderr發送到stdout相應的log文件中去
stdout_logfile=/path/to/logfile ;制定stdout的輸出文件
stdout_logfile_maxbytes=10MB ;限定logfile的大小, 默認為50M
stdout_logfile_backups=10;保存logfile的最大數目,如果操作這個數目則對最早的logfile進行覆蓋,默認為10
environment=A="1", B="2" ;設置環境變量,這里可以保存運行程序需要的參數
我要的功能非常簡單,僅做了如下配置
[program: server]
command=Python /home/zxchen/server.py ;
autorestart=true;
autostart=true ;
啟動服務
sudo supervisorctl reread #成功提示:server: available
sudo supervisorctl reload #成功提示:Restarted supervisord
sudo supervisorctl start app #如果服務沒有啟動時可以試試這個指令
檢驗
lsof -i:端口號 #查看該端口狀態
kill-9 PID #kill掉這個進程
再次查看端口狀態,發現端口上服務的PID已改變,即成功。
總結
以上是生活随笔為你收集整理的Linux自启进程管理工具,进程管理工具Supervisor的安装及使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何linux查看硬盘文件,如何使用li
- 下一篇: linux键盘设置的文件在哪个文件夹,「