我有一个(EC2)Ubuntu 服务器,bluepill
它可以很好地启动和监控resque
进程(过去在其他节点上也这样做过)。
我正在设置一个新节点,由于某种原因,该节点bluepill
上的进程无法识别进程已启动并正在运行,因此不断创建新节点。我对造成这种情况的原因感到有些困惑。2 个节点几乎相同;它们都是由相同chef
脚本配置的 EC2 服务器。确实,一个不工作的是“生产”,另一个是“分期”,但几乎没有区别。
在我分叉 github 项目并开始插入更多监控之前有什么想法或建议,试图弄清楚发生了什么?过去曾在此列表中讨论过带有bluepill
和的问题resque
,但正如我所说,这在我的登台服务器上运行良好,并且在早期的生产服务器上运行良好(尽管我会注意到这个新的生产服务器是 ruby 1.9. 3 (vs 1.9.2) 和 rails 3.2 (vs. 3.1))。
这是我的.pill
文件(或者更具体地说,我chef
的食谱的模板文件):
ENV["RAILS_ENV"] = "<%= node.chef_environment %>"
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