如何在 Airflow 安装中创建触发程序进程?

Tho*_*s M 3 airflow

在 Airflow DAG 中,我尝试使用 TimeDeltaTrigger:

from airflow.triggers.temporal import TimeDeltaTrigger
...
self.defer(trigger=TimeDeltaTrigger(timedelta(seconds=15)), method_name="execute")
Run Code Online (Sandbox Code Playgroud)

但是当我的 DAG 运行时,我在 GUI 中收到警告:

在此输入图像描述

在 GUI 中,如果我转到“浏览”->“触发器”,我会看到一个触发器,但它不适用于TimeDeltaTrigger

在此输入图像描述

可延迟运算符的文档(https://airflow.apache.org/docs/apache-airflow/stable/concepts/deferring.html)说:

确保您的 Airflow 安装正在运行至少一个触发程序进程以及正常的调度程序

但目前尚不清楚如何做到这一点。

如何配置 Airflow 安装以便可以使用TimeDeltaTrigger

小智 8

triggererscheduler是一个类似、webserver、 和 的过程worker。您需要启动一个专用于运行触发器的进程或容器才能使用可延迟运算符。

要启动触发器进程,请airflow triggerer在您的 Airflow 环境中运行。您应该看到类似于下图的输出。

触发日志 在此输入图像描述