supervisor 守护多个进程_进程管理工具之Supervisor
相關介紹
Supervisor是用Python 開發的一個client/server服務,是 Linux /Unix系統下的一個進程管理工具,不支持Windows系統。它可以很方便的監聽、啟動、停止、重啟一個或多個進程。用Supervisor管理的進程,當一個進程意外被殺死,supervisort監聽到進程死后,會自動將它重新拉起,很方便的做到進程自動恢復的功能,不再需要自己寫shell腳本來控制。
二、安裝部署配置
1、安裝
Supervisort是基于python開發的,需要檢測系統是否具有python2.4以上的版本。一般centos7的系統都是基于python2.7以上了。
①檢測環境
# 查看python版本 python --version# 配置epel源 wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo# 安裝pip包管理工具 yum install python-pip -y# 默認pip源過國外速度感人,故也切換為國內aliyuan源 mkdir ~/.pip vim ~/.pip/pip.conf# 添加以下內容 [global] index-url = https://mirrors.aliyun.com/pypi/simple/[install] trusted-host=mirrors.aliyun.com②安裝supervisor
pip install supervisor配置介紹
Supervisor 相當強?,提供了了很豐富的功能,不過我們可能只需要?到其中?小部分。安裝完成之后,可以編寫配置?文件,來滿足自己的需求。
為了方便管理配置信息,我們把配置分成兩部分:
supervisor 是?個 C/S 模型的程序,supervisord是server 端,supervisorctl是對應的client端。及其應用程序(即我們要管理的程序)。
首先來看supervisord 的配置文件。安裝完supervisor之后,可以運行echo_supervisord_conf 命令輸出默認的配置項,也可以重定向到?個配置文件里:
# 創建配置文件目錄 mkdir /etc/supervisor echo_supervisord_conf > /etc/supervisor/supervisord.conf # 打開設置子配置文件選項 vim /etc/supervisor/supervisord.conf # 添加以下內容 [include] files = /etc/supervisor/config.d/*.ini子配置文件
# 根據主配置文件里設置的子配置文件路徑建立目錄 mkdir /etc/supervisor/config.d # 建立一個配置文件 vim /etc/supervisor/config.d/test.ini # 添加以下內容 #項目名稱 [program:test] # 項目根目錄 directory=/root # 啟動執行命令 command=/root/test.sh stderr_logfile=/tmp/test_stderr.log stdout_logfile=/tmp/test_stdout.log三、案例測試使用
1、配置執行命令腳本
①腳本內容 vim /root/test.sh# 內容為 #!/bin/bash while true doecho `date`sleep 10 done# 賦予執行權限 chmod +x test.sh②啟動supervisor
supervisord -c /etc/supervisor/supervisord.conf查看日志
腳本執行,并標準輸出到對應設置的日志文件中
測試終止進程
通過以上操作,可以看到supervisor可以進行進程的管理,當托管進程意外關閉后,也會重啟托管的進程。一定程度上實現了,守護進程的高可用。
web頁面開啟
①修改配置文件
vim /etc/supervisor/supervisord.conf②重啟服務
supervisorctl reload③訪問查看
可以通過web管理界面,對于托管的進行管理操作
總結
以上是生活随笔為你收集整理的supervisor 守护多个进程_进程管理工具之Supervisor的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SBO中的manager用户已锁定
- 下一篇: Python学习笔记大总结(我把我所有p