我有一个看起来像这样的简单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
答案 0 :(得分:0)
经过数小时的挖掘,我发现我们的airflow-scheduler.service系统脚本编写错误。相反,它正在运行Web服务器,因此气流调度程序根本没有运行……在此问题解决之后,所有DAG都开始按预期运行。