我已设置气流以分布式模式运行,具有10个工作节点。我试图通过触发一个只包含1个任务的测试dag来访问并行工作负载的性能,该任务只是睡了3秒然后就出来了。
我使用命令触发了dag airflow backfill test_dag -s 2015-06-20 -e 2015-07-10
调度程序并行启动作业/ dags,我经常看到下面的o / p: [2017-06-27 09:52:29,611] {models.py:4024} INFO - 更新状态以考虑1个任务 [2017-06-27 09:52:29,647] {models.py:4024} INFO - 更新状态以考虑1个任务 [2017-06-27 09:52:29,664] {jobs.py:1983}信息 - [回填进度] |完成了19的21 |任务等待:0 |成功:19 | kicked_off:2 |失败:0 |跳过:0 |死锁:0 |没准备好:0
这里kicked_off:2表示启动了2个任务但是当我看到dag运行状态的UI时,我看到2个dags实例正在运行。当我查看相应的任务实例日志时,它表示任务已成功完成,但上述消息仍无限地显示在命令提示符中
[2017-06-27 09:52:29,611] {models.py:4024} INFO - 更新状态以考虑1个任务 [2017-06-27 09:52:29,647] {models.py:4024} INFO - 更新状态以考虑1个任务 [2017-06-27 09:52:29,664] {jobs.py:1983}信息 - [回填进度] |完成了19的21 |任务等待:0 |成功:19 | kicked_off:2 |失败:0 |跳过:0 |死锁:0 |没准备好:0
工作人员发送的消息是否会被丢弃,因此状态没有得到更新?
airflow.cfg文件中是否有任何参数允许在其他工作节点上重试这些失败的作业,而不是无休止地等待负责执行aobe失败任务的工作节点的消息。