У меня есть один (EC2) сервер Ubuntu, где bluepill
отлично работает для запуска и мониторинга процессов resque
(и в прошлом он делал это на других узлах).
Настраиваю новую ноду, а на этой ноде bluepill
почему-то не распознает, что процессы запущены и работают, и поэтому продолжает создавать новые. Я немного озадачен тем, что вызывает это. 2 узла почти идентичны; они оба являются серверами EC2, подготовленными одними и теми же сценариями chef
. Это правда, что одно не работает — это «постановка», а другое — «постановка», но из-за этого почти нет разницы.
Какие-нибудь мысли или предложения, прежде чем я разветвлю проект github и начну вставлять больше мониторинга, чтобы попытаться выяснить, что происходит? В прошлом в этом списке обсуждались проблемы с bluepill
и resque
, но, как я уже сказал, это отлично работает на моем промежуточном сервере и отлично работает на более ранних рабочих серверах (хотя я отмечу, что этот новый рабочий сервер рубиновый). 1.9.3 (против 1.9.2) и рельсов 3.2 (против 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