实际上,bluepill没有检测到进程已成功启动,因此创建了新进程

我有一个(EC2)Ubuntu服务器,其中bluepill正常工作以启动和监视resque进程(并且它在过去的其他节点上已经这样做了)。

我正在设置一个新节点,由于某种原因,在此节点上, bluepill无法识别进程已启动并正在运行,因此不断创建新节点。 造成这种情况的原因令我感到困惑。 2节点几乎相同; 它们都是由相同的chef脚本配置的EC2服务器。 确实,不工作的是“生产”而另一个是“分期”,但由于这一点几乎没有差别。

在我分叉github项目并开始插入更多监控之前的任何想法或建议,试图弄清楚发生了什么? 关于这个列表,有关bluepillresque的问题一直在讨论,但正如我所说,这在我的登台服务器上工作正常,并且在早期的生产服务器上运行良好(尽管我会注意到这个新的生产服务器是ruby 1.9.3(vs 1.9.2)和rails 3.2(vs. 3.1))。

这是我的.pill文件(或者更具体地说,我的chef食谱的模板文件):

 ENV["RAILS_ENV"] = "" ENV["QUEUE"] = "*" Bluepill.application("zmx_app") do |app| app.working_dir = "/srv/zmx/current" app.uid = "root" app.gid = "root" 2.times do |i| app.process("resque-#{i}") do |process| process.group = "resque" process.start_command = "rake resque:work" process.pid_file = "/srv/zmx/current/tmp/pids/resque_workers-#{i}.pid" process.stop_command = "kill -QUIT {{PID}}" process.daemonize = true end end end 

这结果是bluepill中的一个错误,我已经分叉,修复并提交了拉取请求 。

而且我不确定为什么我没有意识到我的两个环境之间确实存在差异:staging / old prod在bluepill 0.0.55上,我的新生产环境在0.0.58上。

Interesting Posts