Новичок в Airflow, так что, возможно, ветераны заметили, что я скучаю.
У меня есть отдельные образы Docker, на которых запущены Celery (для исполнителя), RabbitMQ (для Celery) и Postgres (бэкэнд), а также планировщик Airflow, веб-сервер и работник.Я могу без проблем выполнять группы обеспечения доступности баз данных через веб-сервер, и операции обратной засыпки запускаются автоматически, как и следовало ожидать.
Проблема возникает, когда я пытаюсь вручную запустить выполнение DAG с помощью dag.run()
(то есть в IPython или тестах на pytest).В этом случае состояние задачи веб-сервера останется «Запланировано» с подробным сообщением «Все зависимости выполнены, но экземпляр задачи не запущен».и процесс, который вызвал dag.run()
(т.е. IPython), выведет журнал, подобный этому, и затем простаивает:
[2018-11-28 19:39:55,327] {base_executor.py:56} INFO - Adding to queue: airflow run example_dag always_succeed 2018-11-29T00:39:48.309069+00:00 --pickle 2 --local
[2018-11-28 19:40:00,229] {celery_executor.py:83} INFO - [celery] queuing ('example_dag', 'always_succeed', datetime.datetime(2018, 11, 28, 19, 38, 45, 497661, tzinfo=<TimezoneInfo [UTC, GMT, +00:00:00, STD]>), 1) through celery, queue=airflow
Состояние веб-сервера Full Airflow выглядит следующим образом:
