我嘗試將 和其他一些服務配置為看門狗supervisord
。目標是在服務崩潰或停止時自動重新啟動。tomcat
redis
這是我的 redis 和 tomat 配置
[program:redis]
command=sudo /etc/init.d/redis-server start
autostart=true
autorestart=true
stderr_logfile=/var/log/supervisour_redis.err.log
stdout_logfile=/var/log/supervisour_redis.out.log
logfile_maxbytes=10MB
[program:tomcat]
command=sudo /root/apache-tomcat-7.0.75/bin/startup.sh
autostart=true
autorestart=true
stderr_logfile=/var/log/supervisour_tomcat.err.log
stdout_logfile=/var/log/supervisour_tomcat.out.log
logfile_maxbytes=10MB
但我無法完全控制服務。重新啟動後supervisor
,我看到
root@test:~/apache-tomcat-7.0.75/bin# supervisorctl
redis BACKOFF Exited too quickly (process log may have details)
tomcat BACKOFF Exited too quickly (process log may have details)
如果我tomcat
從主管開始,它會顯示錯誤
supervisor> start tomcat
tomcat: ERROR (abnormal termination)
但是tomcat正在啟動(我已經用了ps aux | grep tomcat
)。但我無法阻止雄貓。萬一redis
主管說服務停止了,但事實並非如此!