Cloud Composer 1 |Cloud Composer 2 |Cloud Composer 3
本页介绍如何排查 KubernetesExecutor 运行的各项任务为常见任务提供解决方案, 问题。
排查 KubernetesExecutor 问题的一般方法
如需排查与 KubernetesExecutor 执行的任务相关的问题,请执行以下操作: 按所列顺序执行以下操作:
在 DAG 界面中查看任务的日志,或 Airflow 界面。
在 Google Cloud 控制台中检查调度器日志:
在 Google Cloud 控制台中,前往环境页面。
在环境列表中,点击您的环境名称。环境详情页面会打开。
转到日志标签页,然后查看 Airflow 日志 > 调度器部分。
对于给定的时间范围,检查 运行任务。如果 Pod 已不存在,请跳过此步骤。Pod 具有
airflow-k8s-worker
前缀,且名称中包含 DAG 或任务名称。 查找系统报告的问题,例如失败的任务或正在执行的任务 不可调度。
KubernetesExecutor 的常见问题排查场景
本部分列出了您在使用 KubernetesExecutor 时可能会遇到的常见问题排查场景。
任务进入 Running
状态,然后在执行期间失败。
症状:
- 该任务的日志位于 Airflow 界面和 Logs(日志)标签页上 Workers 部分。
解决方案:任务日志会指明问题。
任务实例进入 queued
状态,然后在一段时间后被标记为 UP_FOR_RETRY
或 FAILED
。
症状:
- Airflow 界面中和 Workers 部分。
- 调度器部分的日志标签页中有
显示任务已标记为
UP_FOR_RETRY
或FAILED
的消息。 - 名称内包含 DAG/任务名称的
airflow-k8s-worker-*.*
Pod 的 Pod 处于Failed
/Pending
状态或不存在。
解决方案:
- 检查调度器日志,了解该问题的任何详细信息。
可能的原因:
如果调度器日志包含
Adopted tasks were still pending after...
消息,后跟 输出的任务实例,请检查 CeleryKubernetesExecutor 是否为 在您的环境中启用的 API。
任务实例进入 Queued
状态,并立即标记为 UP_FOR_RETRY
或 FAILED
症状:
- Airflow 界面和日志标签页中的 Workers 部分。
- 调度器部分中日志标签页上的调度器日志
Pod creation failed with reason ... Failing task
消息,以及 显示任务已标记为UP_FOR_RETRY
或FAILED
的消息。
解决方案:
- 查看调度器日志,了解确切的响应和失败原因。
可能的原因:
如果错误消息为 quantities must match the regular expression ...
,
那么问题很可能是由于为 k8s 设置的自定义值
任务工作器 Pod 的资源(请求/限制)。