Bizim kereviz arka planımızla çok çatlaklı sorunlar yaşıyoruz. Değişimi her ne zaman değiştirdiğimize baktığımızda daemon'u yeniden başlatmak için bir kumaş dağıtım senaryosu kullanıyoruz, ancak bazı sebeplerden dolayı bu büyük sorunlara neden oluyor.Kereviz ile ilgili sorunlar
Dağıtım komut dosyası çalıştırıldığında, kereviz işlemleri bazı sözde ölü durumda bırakılır. Onlar (maalesef) hala tavşanmq'den görevler alacaklar, ama aslında hiçbir şey yapmayacaklar. Şaşırtıcı bir şekilde kısa bir inceleme, bu durumda her şeyin "iyi" gibi gözüktüğünü gösterir, celeryctl durumu bir düğümü çevrimiçi gösterir ve ps aux | grep kereviz 2 çalışan süreçleri gösterir.
Ancak denemeden elle durdurmak aşağıdaki hatası /etc/init.d/celeryd çalıştırmak için:
start-stop-daemon: warning: failed to kill 30360: No such process
celeryd başlangıç çalıştırma girişimi bu durum düzgün çalışması için görünür, ancak aslında yok iken hiçbir şey değil. Sorunu düzeltmenin tek yolu, çalışan kereviz işlemlerini el ile öldürmek ve sonra yeniden başlatmaktır.
Burada neler olup bittiğine dair bir fikrin var mı? Ayrıca tam bir onaylama da yoktur, ancak sorunun birkaç gün sonra (bu, şu anda bir test sunucusu olmadığı için) hiçbir dağıtım yapmadan da geliştiğini düşünüyoruz.
Bir dağıtım betiği de kullanıyoruz, ancak kumaşla değil, sadece kabuk komutunu celeryd python'dan yeniden başlatıyoruz ve her şey iyi çalışıyor. Ben çalışma işlemi almak için bir bash talimatı nedeniyle, cleryd.sh betiğinin ubuntu'nun eski versiyonunu 10.10'dan az olan bazı konularını biliyorum. Hangi işletim sisteminde çalışıyorsunuz? Kereviz hangi sürümü? –
Komut dosyanız daemon'u tam olarak nasıl başlatıyor? Sadece bir "-9" ya da benzer bir şeyden mi ateş ediyor? –
Init.d komut dosyasının stop komutunu tetikler. Bu, celery'nin github katkı dosyalarından alınan init.d komut dosyasıdır. Durmak yerine yeniden başlatmayı tetikler, sonra başlatır, ama karanlıkta bir çekim olarak değiştirdim. Init.d betiği start-stop-daemon komutunu çağırır – John