gpt4 book ai didi

Airflow 任务卡在 "queued"状态并且永远不会运行

转载 作者:行者123 更新时间:2023-12-03 10:14:28 27 4
gpt4 key购买 nike

我正在使用 Airflow v1.8.1 并在 kubernetes 和 Docker 上运行所有组件(worker、web、flower、scheduler)。
我将 Celery Executor 与 Redis 一起使用,我的任务如下所示:

(start) -> (do_work_for_product1)
├ -> (do_work_for_product2)
├ -> (do_work_for_product3)
├ …

所以 start任务有多个下游。
我设置了与并发相关的配置如下:
parallelism = 3
dag_concurrency = 3
max_active_runs = 1

然后当我手动运行这个 DAG 时(不确定它是否永远不会发生在计划任务上),一些下游被执行,但其他人停留在“排队”状态。

如果我从 Admin UI 清除任务,它就会被执行。
没有工作日志(在处理一些第一个下游之后,它只是不输出任何日志)。

Web 服务器的日志(不确定 worker exiting 是否相关)
/usr/local/lib/python2.7/dist-packages/flask/exthook.py:71: ExtDeprecationWarning: Importing flask.ext.cache is deprecated, use flask_cache instead.
.format(x=modname), ExtDeprecationWarning
[2017-08-24 04:20:56,496] [51] {models.py:168} INFO - Filling up the DagBag from /usr/local/airflow_dags
[2017-08-24 04:20:57 +0000] [27] [INFO] Handling signal: ttou
[2017-08-24 04:20:57 +0000] [37] [INFO] Worker exiting (pid: 37)

调度程序上也没有错误日志。每当我尝试这样做时,许多任务都会发生变化。

因为我也使用 Docker,所以我想知道这是否相关:
https://github.com/puckel/docker-airflow/issues/94
但到目前为止,没有任何线索。

有没有人遇到过类似的问题或知道我可以针对这个问题调查什么......?

最佳答案

任务卡住很可能是一个错误。目前(<= 1.9.0alpha1),当任务甚至无法在(远程)工作人员上启动时,就会发生这种情况。例如,在工作人员过载或缺少依赖项的情况下会发生这种情况。

patch应该解决这个问题。

值得研究为什么您的任务没有获得 RUNNING 状态。将自身设置为这种状态是任务所做的第一件事。通常,worker 在开始执行之前会记录日志,并且还会报告和错误。您应该能够在任务日志中找到此条目。

编辑 :正如在对原始问题的评论中提到的,如果 Airflow 无法运行任务的一个例子是它无法写入所需的位置。这使得它无法继续并且任务会卡住。该补丁通过使调度程序的任务失败来修复此问题。

关于Airflow 任务卡在 "queued"状态并且永远不会运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45853013/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com