Мы загружаем кластер из 250 рабочих узлов в AWS ночью, чтобы обрабатывать некоторые длительные распределенные задачи.Работники сельдерея остановились на ботинке
Узлы рабочие работают сельдерей с помощью следующей команды:
celery -A celery_worker worker --concurrency=1 -l info -n background_cluster.i-1b1a0dbb --without-heartbeat --without-gossip --without-mingle -- celeryd.prefetch_multiplier=1
Мы используем RabbitMQ в качестве нашего брокера, и есть только один RabbitMQ узел.
Около 60% наших узлов утверждают, что слушают, но не будут выполнять какие-либо задачи.
Их журналы выглядеть следующим образом:
-------------- [email protected]_cluster.i-1b1a0dbb v3.1.18 (Cipater)
---- **** -----
--- * *** * -- Linux-3.2.0-25-virtual-x86_64-with-Ubuntu-14.04-trusty
-- * - **** ---
- ** ---------- [config]
- ** ---------- .> app: celery_worker:0x7f10c2235cd0
- ** ---------- .> transport: amqp://guest:**@localhost:5672//
- ** ---------- .> results: disabled
- *** --- * --- .> concurrency: 1 (prefork)
-- ******* ----
--- ***** ----- [queues]
-------------- .> background_cluster exchange=root(direct) key=background_cluster
[tasks]
. more.celery_worker.background_cluster
[2015-10-10 00:20:17,110: WARNING/MainProcess] [email protected]_cluster.i-1b1a0dbb
[2015-10-10 00:20:17,110: WARNING/MainProcess] consuming from
[2015-10-10 00:20:17,110: WARNING/MainProcess] {'background_cluster': <unbound Queue background_cluster -> <unbound Exchange root(direct)> -> background_cluster>}
[2015-10-10 00:20:17,123: INFO/MainProcess] Connected to amqp://our_server:**@10.0.11.136:5672/our_server
[2015-10-10 00:20:17,144: WARNING/MainProcess] [email protected]_cluster.i-1b1a0dbb ready.
Однако RabbitMQ показывает, что есть сообщения, ожидающие в очереди.
Если я войти в любой из рабочих узлов и выдает команду:
celery -A celery_worker inspect active
... то каждый (ранее приостанавливаться) рабочий узел сразу хватается задачу и начинает сгибать.
Любые идеи относительно того, почему?
Возможно, это связано с этими переключателями?
--without-heartbeat --without-gossip --without-mingle