问题描述
在 Airflow 1.1.14 上使用 KubernetesPodoperator 遇到一个奇怪的问题。
本质上,对于某些工作而言,Airflow 与其创建的 Pod 失去了联系。
[2021-02-10 07:30:13,657] {taskinstance.py:1150} ERROR - ('Connection broken: IncompleteRead(0 bytes read)',IncompleteRead(0 bytes read))
当我使用 kubectl logs
检查 kubernetes 中的日志时,我可以看到作业在连接中断错误后继续进行。
连接中断错误似乎发生在 Airflow 从 pod 中提取的最后一个日志之后的 1 小时(我们确实有 1 小时的连接配置),但 pod 继续在后台愉快地运行。
我已经反复看到这种行为,而且它往往发生在运行时间较长的作业中,并且日志输出中存在间隙,但我没有其他线索。如果缺少某些细节,很高兴更新问题。
解决方法
正如我在评论部分提到的,我认为您可以尝试将操作符 get_logs
参数设置为 False
- 默认值为 True
。