【问题标题】:Tasks in a simple DAG are not executed by CeleryExecutorCeleryExecutor 不执行简单 DAG 中的任务
【发布时间】:2019-06-19 17:15:20
【问题描述】:

我有一个简单的 DAG,如下所示:

开始 --> 下载 --> 完成

在我的本地环境中,我使用 LocalExecutor 来测试 DAG,但在生产中我们使用 Celery。

我遇到的问题是 LocalExecutor 在我触发它时立即运行任务,这是我所期望的行为。但是,在生产中 DAG 任务不会立即执行。无论出于何种原因,我都必须手动运行每个任务,然后将 DAG 标记为成功...

我们使用几乎所有默认的 Airflow 1.10.3 配置设置。 DAG 有"depends_on_past": Falseschedule_interval="0 1 * * 0"

我想知道是什么可能使 LocalExecutor 的行为符合预期,但 CeleryExecutor 没有...

我在日志中看到很多这样的 INFO 行:

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

【问题讨论】:

  • 您是否正在运行airflow workerairflow scheduler 以及airflow webserver

标签: celery airflow


【解决方案1】:

经过数小时的挖掘,我发现我们的airflow-scheduler.service systemd 脚本编写不正确。它正在运行一个网络服务器,因此气流调度程序根本没有运行......当这个问题得到解决时,所有 DAG 都开始按预期运行。

【讨论】:

    猜你喜欢
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-11
    • 2021-08-07
    • 2017-11-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多