linux使用supervisor监控进程管理动态,异常时能自动重启。 安装 supervisor是用Python开发的,所以直接使用pip安装。
pip install supervisor
配置 创建文件 /etc/supervisor/ 目录放置supervisor的配置文件,/etc/supervisor/conf.d 放置每个进程的配置文件
生成配置文件
mkdir -m 755 -p /etc/supervisor/
cd /etc/supervisor/
mkdir -m 755 conf.d
echo_supervisord_conf > /etc/supervisor/supervisord.conf
修改etc/supervisor/supervisord.conf 最末尾处配置include,部分代码文件如下: [include] files=/etc/supervisor/*.conf 启动supervisor
supervisord -c /etc/supervisor/supervisord.conf 启动
ps aux | grep supervisord 查看
cat /tmp/supervisord.log 查看日志,是否启动
注: 配置文件中的,日志目录,需要手动创建,否则会报错
每次修改配置文件后需进入supervisorctl,执行reload。 supervisord : supervisor的服务器端部分,用于supervisor启动 supervisorctl:启动supervisor的命令行窗口,在该命令行中可执行start、stop、status、reload等操作。
supervisord -c /etc/supervisor/supervisord.conf : 启动supervisor supervisorctl reload supervisorctl status supervisorctl start supervisorctl stop supervisorctl stop all supervisorctl update
关于报错: 每次执行 supervisorctl reload 后,都会报错:error: <class 'xmlrpclib.Fault'>, <Fault 6: 'SHUTDOWN_STATE'>: file: /usr/lib64/python2.7/xmlrpclib.py line: 794 查询后,解决方法: supervisord -c /etc/supervisor/supervisord.conf 执行后,问题解决。