【问题标题】:Airflow web server starts without Gunicorn and is not accessibleAirflow Web 服务器在没有 Gunicorn 的情况下启动并且无法访问
【发布时间】:2018-08-01 10:46:52
【问题描述】:

我正在使用 Airflow 1.9,它运行了两个多月,但不知何故,现在我无法在 Gunicorn 上启动 airflow webserver

nohup airflow webserver $* > webserver_new.logs &

只是启动 Web 服务器进程,但日志中没有提到 Gunicorn。 UI 不可访问。我检查了环境变量$AIRFLOW_HOME 指向正确的路径。

此外,当 Web 服务器启动时,它不会在 $AIRFLOW_HOME 中创建 webserver-pid 文件。

当我卸载 Gunicorn 并启动 Airflow Web 服务器时,我没有收到任何错误,但没有 Gunicorn,用户界面将无法访问。基本上,无论 gunicorn 是否存在,它的行为都是相同的。

环境

我在 CentOS 机器上使用 Python 2.7 virtualenv。很少有其他开发人员更新了一些 Python 包,例如 pyhivethriftsix。我已经卸载了所有这些并使用pip 卸载了 Airflow(并重新安装)。

日志内容

Web 服务器日志不包含任何提及 Gunicorn 并且从命令行启动时不包含任何其他错误。 DAG 正在运行,但 UI 仍处于关闭状态。

[2018-02-21 14:13:36,082] {default_celery.py:41} WARNING - Celery Executor will run without SSL

补充观察

在手动启动 Gunicorn 后,我发现工作人员在创建后立即超时。

【问题讨论】:

  • 请多描述一下您的环境:操作系统、python 版本等......您在工作/不工作之间对环境所做的任何更改? + 请发布任何可能的错误日志。我之所以问,是因为我在 Win10 上的 WSL 下运行时经历了 1.8.2 版的工作。安装 1.9.0 时没有。当 Win 10 从 1703 版升级到 1709 版时,对 WSL 的修复 Ubuntu 使 v1.9.0 工作。
  • 我在 cent OS 机器上使用 pyhton 2.7 虚拟环境。很少有其他开发人员更新了一些 python 包,如 pyhive、thrift 和 6。我已经卸载了所有这些并使用 pip 卸载了气流并重新安装。网络服务器日志不包含任何关于 gunicorn 的提及,并且在从命令行启动时不包含其他错误。 dags 在早上运行,但 UI 仍然关闭。 [2018-02-21 14:13:36,082] {default_celery.py:41} 警告 - Celery Executor 将在没有 SSL 的情况下运行
  • 在手动启动 gunicorn 以进行气流后,我发现 gunicorn 工作人员在创建后立即超时
  • 嗯,好的。和我当时的问题完全不同。 AFAIK 我的根本原因只是以前的 Win10 WSL Ubuntu 没有适当的/proc/stat/<whatever> 支持。我建议您将您的 - 额外信息编辑到您的问题中。那么更好的问答内容质量。祝你好运!

标签: webserver gunicorn airflow


【解决方案1】:

我发现问题是一个 dag,它有一个 for 循环来生成动态任务(所有任务都是动态的),但是每次迭代的任务 id 都是相同的,我删除了那个 dag,网络服务器像魅力一样回来了。

【讨论】:

  • 因类似问题卡住了两个小时...感谢您发布答案:)
猜你喜欢
  • 2016-03-10
  • 1970-01-01
  • 2015-03-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多