supervisord#
安装#
pip install supervisor
echo_supervisord_conf
echo_supervisord_conf > /etc/supervisord.conf
echo -e "[include]\nfiles = /etc/supervisor/conf.d/*.conf" >> /etc/supervisord.conf
mkdir -p /var/log/test
mkdir -p /etc/supervisor/conf.d/
echo -e "[program:test]
command=/data/apps/test/.venv/bin/python test.py
directory=/data/apps/test/src/
user=root
minfds=65535
autostart=true
autorestart=true
stopasgroup=true
stderr_logfile=/var/log/test/test.err.log
stderr_logfile_maxbytes=1000MB
stderr_logfile_backups=10
stdout_logfile=/var/log/test/test.out.log
stdout_logfile_maxbytes=1000MB
stdout_logfile_backups=10" > /etc/supervisor/conf.d/test.conf
supervisord
supervisorctl update问题#
supervisorctl status http://localhost:9001 refused connection 问题#
- 首次安装, 只
pip install后直接使用很可能是没有配置文件… 写入配置后启动supervisord就好了
多安装问题#
使用pip安装和apt安装的 supervisor 使用的不同路径的配置文件, 然后系统里就会跑两个supervisor, 就容易产生迷惑行为
使用supervisor启动的程序莫名其妙有了打开文件数限制#
起了一个go程序结果http请求给限制到了4096, 根本不够用哈 设置如下参数可以设置新值(需要设置在supervisor配置中,而非supervisor守护的app中)
[supervisord]
minfds=8192问题链接: Github
systemd#
文件路径: /etc/systemd/system/{service_name}.service