最近在 linux 下写了一个脚本须要在 linux 后盾始终运行,这里我应用了 supervisor 来实现脚本过程治理
一:supervisor 装置
1:yum 装置
yum install supervisor
2:pip 装置
pip install supervisor
二:supervisor 常用命令
supervisorctl status // 查看所有过程的状态
supervisorctl stop xx // 进行指定过程(all 为所有过程)
supervisorctl start xx // 启动指定过程(all 为所有过程)
supervisorctl restart // 重启
supervisorctl update // 配置文件批改后应用该命令加载新的配置
supervisorctl reload // 重新启动配置中的所有程序
systemctl start supervisord.service // 启动 supervisor 并加载默认配置文件
systemctl enable supervisord.service // 将 supervisor 退出开机启动项
三:将指定命令退出过程治理实例
1:supervisor 配置
supervisor 配置文件:/etc/supervisord.conf
子过程配置文件门路:/etc/supervisord.d/ (子过程的配置文件为 ini 格局)
咱们减少一个命令到过程中只须要在子过程配置文件目录下创立一个 ini 过程文件进行配置即可
例:vim /etc/supervisord.d/test.ini
在 test.ini 文件中退出如下命令:
[program:test] #我的项目过程名称
dircetory=/XXX #过程目录
command=XXX #过程命令
autostart = true #在 supervisord 启动的时候是否主动启动
autorestart=false #程序退出后是否主动重启
#日志输入
stderr_logfile=/tmp/client_stderr.log
stdout_logfile=/tmp/client_stdout.log
user=www #脚本运行的用户身份
2:将 test 过程退出过程治理
systemctl start supervisord.service
supervisorctl update
supervisorctl reload
supervisorctl start test
依据如上安排就能够实现将指定脚本退出过程治理