Sellerie verpasste Herzschlag (on_node_lost)
Ich nur ein Upgrade auf Sellerie 3.1 und jetzt sehe ich, das ich meine logs ::
on_node_lost - INFO - missed heartbeat from celery@queue_name for every queue/worker in my cluster.
Laut der docs BROKER_HEARTBEAT
ist standardmäßig ausgeschaltet und ich habe noch nicht konfiguriert.
Sollte ich explizit festlegen BROKER_HEARTBEAT=0
oder ist es etwas anderes, das ich prüfen sollte?
- BROKER_HEARTBEAT=0 nicht das problem zu beheben
- Ab der Arbeitnehmer ohne Herzschlag (--without-Takt) schweigen wird diese Lawine von logs, aber ich bin besorgt, dass wir kehren ein weiteres problem unter den Teppich
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sah die gleiche Sache, und bemerkte ein paar Dinge, die in den log-Dateien.
1) gab Es Nachrichten über die Zeit-drift bei dem Beginn der Aufzeichnung und gelegentlich verpasste Takte.
2) Am Ende der log-Datei, die drift-Nachrichten gingen Weg und nur die verpassten heartbeat-Nachrichten vorhanden waren.
3) Es wurden keine änderungen an dem system, wenn der drift-Nachrichten ist Fort... Sie haben einfach aufgehört, bis.
Dachte ich, dass der drift an sich war wahrscheinlich das problem selbst.
Nach der Synchronisierung der Zeit auf allen beteiligten Servern diese Nachrichten ging Weg. Für ubuntu ntpdate ausführen als cron-oder ntpd.
Sellerie 3.1 Hinzugefügt, in der neue mingle-und Klatsch-Verfahren. Auch ich war immer eine Tonne ausgelassene clustertakte und Weitergabe-ohne-Klatsch, um meine Arbeiter bis es geklärt.
http://docs.celeryproject.org/en/latest/whatsnew-3.1.html#mingle-worker-synchronization
http://docs.celeryproject.org/en/latest/whatsnew-3.1.html#gossip-worker-worker-communication
Ich habe ein ähnliches Problem. Ich habe den Grund dafür gefunden, in meinem Fall.
Ich habe zwei server laufen Arbeiter.
wenn ich "ping" auf einen anderen server,
Ich fand, wenn die ping-Zeit, die größer als 2 Sekunden, wird das Protokoll zeigen " verpasste Herzschlag von Sellerie@ ". Die Standard-heartbeat-Intervall von 2 Sekunden.
Der Grund dafür ist mein schlechtes Netzwerk.
http://docs.celeryproject.org/en/latest/internals/reference/celery.worker.heartbeat.html