Supervisor是用Python开发的一个client/server服务,是Linux系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。
应用场景:创建探针,与设备建邻居
配置文件位置
/etc/supervisor/supervisord.conf
[inet_http_server]
port=127.0.0.1:9001 # 修改主机和port
;username=user
;password=123
[include]
files = /etc/supervisor.d/*.ini 所有的ini文件被supervisor监控启动的
/etc/supervisor.d/*.ini 文件内容
[program:xxx]
user = root
environment = YABMP_STANDALONE=False,RABBITMQ_URL="xxx",MONGODB_URL="mongodb://127.0.0.1:27017",MONGODB_NAME="abc"
directory = /home/code/
# 启动的进程
command = /home/vir/yabgp/bin/python code/yabgp/bin/xxx --xxx=123 --log-file=log/tmp/1.1.240.4.log --log-backup-count=500 --nouse-stderr
startsecs = 3
autostart = true
autorestart = true
stdout_logfile = /home/code/log/1.1.240.4.log
stderr_logfile = /home/code/log/1.1.240.4.err
loglevel = info
启动Supervisor服务:
supervisord -c /etc/supervisor/supervisord.conf
常用命令:
supervisorctl status
supervisorctl stop tomcat
supervisorctl start tomcat
supervisorctl restart tomcat
supervisorctl reload :全部重新加载