本文主要是介绍安装supervisor,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
使用pip
安装supervisor
pip install supervisor
查看是否安装成功
echo_supervisord_conf
初始化配置文件
创建自己的配置文件
mkdir /usr/supervisor
给创建好的supervisor文件夹授权
sudo chmod -R 777 /usr/supervisor
拷贝配置文件修改
echo_supervisord_conf > /usr/supervisor/supervisord.conf
管理配置文件
新建配置文件文件夹
mkdir /usr/supervisor/supervisord.d/
读取配置文件夹下所有.conf文件,将/usr/supervisor/supervisord.conf文件中的以下部分取消注释
[include]
files = /usr/supervisor/supervisord.d/*.conf
为每一个需要管理的进程设置配置文件
例如:要启动的进程为home/user/test.sh,设置配置文件为
[program:test]
command=bash home/user/test.sh; 启动命令
priority=1 ; 数字越高,优先级越高(对不同进程而言)
numprocs=1 ; 启动几个进程
autostart=true ; 随着supervisord的启动而启动
autorestart=true ; 自动重启
startretries=10 ; 启动失败时的最多重试次数
exitcodes=0 ; 正常退出代码
stopsignal=KILL ; 用来杀死进程的信号
stopwaitsecs=10 ; 发送SIGKILL前的等待时间
redirect_stderr=true ; 重定向stderr到stdout
Supervisor使用
查看Supervisor是否正在运行
ps -A | grep supervisord
启动supervisor并更新supervisor的配置
sudo supervisord -c /usr/supervisor/supervisord.conf
杀死supervisor进程
sudo kill [supervisord进程id]
Supervisor开机自动启动
在/usr/lib/systemd/system/ 新建文件supervisord.service,并添加配置内容
[Unit]
Description=Process Monitoring and Control Daemon
After=rc-local.service nss-user-lookup.target
[Service]
Type=forking
ExecStart=/usr/bin/supervisord -c /usr/supervisor/supervisord.conf ;开机启动时执行
ExecStop=/usr/bin/supervisord shutdown
ExecReload=/usr/bin/supervisord reload
killMode=process
Restart=on-failure
RestartSec=42s
[Install]
WantedBy=multi-user.target
设置开机启动
systemctl enable supervisord
验证是否开机启动
systemctl is-enabled supervisord
Supervisor常用命令
supervisorctl status //查看所有进程的状态
supervisorctl update //配置文件修改后使用该命令加载新的配置
supervisorctl reload //重新启动配置中的所有程序
这篇关于安装supervisor的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!