1

bluepillプロセスを開始および監視するために正常に動作している(EC2)Ubuntuサーバーが1つありresqueます(過去に他のノードで実行しました)。

新しいノードをセットアップしていますが、何らかの理由でこのノードbluepillでは、プロセスが開始されて実行中であることが認識されず、新しいノードが作成され続けます。私はこれを引き起こしていることに少し困惑しています。2 つのノードはほとんど同じです。chefどちらも同じスクリプトによってプロビジョニングされた EC2 サーバーです。確かに動かないのは「本番」、もう一方は「ステージング」ですが、それによる違いはほとんどありません。

github プロジェクトをフォークし、さらに監視を挿入して、何が起こっているのかを把握する前に、何か考えや提案はありますか? 過去にこのリストで と の問題について議論がありましたが、前述しbluepillresqueように、これは私のステージング サーバーで問題なく動作しており、以前の実稼働サーバーでも問題なく機能していました (ただし、この新しい実稼働サーバーは ruby​​ 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
4

1 に答える 1

2

これは bluepill のバグであることが判明したため、フォークして修正し、プル リクエストを送信しました。

実際、私の 2 つの環境に違いがあることになぜ気づかなかったのかはわかりません。ステージング/古い製品は bluepill 0.0.55 にあり、私の新しい実稼働環境は 0.0.58 にありました。

于 2012-02-24T17:47:07.200 に答える