Задачи в простом DAG не выполняются CeleryExecutor - PullRequest
0 голосов
/ 19 июня 2019

У меня есть простой DAG, который выглядит так:

Начало -> Загрузка -> Готово

В моей локальной среде я использую LocalExecutor для тестирования DAG, однако в производстве мы используем Celery.

Проблема, с которой я столкнулся, заключается в том, что LocalExecutor запускает задачу за другой сразу же, когда я ее запускаю, и это ожидаемое мной поведение. Однако в производстве задачи DAG выполняются не сразу. По какой-то причине мне приходится запускать каждую задачу вручную и впоследствии отмечать группу DAG как успешную ...

Мы используем почти все стандартные настройки конфигурации Airflow 1.10.3. DAG имеет "depends_on_past": False и schedule_interval="0 1 * * 0".

Интересно, что могло бы заставить LocalExecutor вести себя так, как ожидалось, но CeleryExecutor не ...

Я вижу много строк ИНФО в журнале:

Jun 20 08:42:32 airflow-scheduler airflow[4161]: [2019-06-20 08:42:32 +0000] [4167] [INFO] Handling signal: ttou
Jun 20 08:42:32 airflow-scheduler airflow[4161]: [2019-06-20 08:42:32 +0000] [11195] [INFO] Worker exiting (pid: 11195)
Jun 20 08:43:02 airflow-scheduler airflow[4161]: [2019-06-20 08:43:02 +0000] [4167] [INFO] Handling signal: ttin
Jun 20 08:43:02 airflow-scheduler airflow[4161]: [2019-06-20 08:43:02 +0000] [11205] [INFO] Booting worker with pid: 11205

1 Ответ

0 голосов
/ 21 июня 2019

После многих часов копания я обнаружил, что наш системный скрипт airflow-scheduler.service был написан неправильно.Вместо этого он работал на веб-сервере, поэтому планировщик воздушного потока вообще не работал ... В тот момент, когда это было исправлено, все группы доступности баз данных начали работать, как и ожидалось.

...