没有这样的文件或目录 /airflow/xcom/return.json

2024-04-12

创建了一个图像包含/airflow/xcom/return.json在所有子目录上使用 chmod +x 由于日志显示找不到文件或目录(尝试过 chmod +x)

strtpodbefore = KubernetesPodOperator(namespace='rguonew',
                                    image="mydockerimage",
                                    name="fail",
                                    image_pull_policy="Always",
                                    task_id="failing-task",
                                    get_logs= True,
                                    xcom_push=True,
                                    dag=dag
                                    )'

这是日志

[2019-03-18 20:32:07,007] {logging_mixin.py:95} INFO - [2019-03-18 
 20:32:07,007] {pod_launcher.py:166} INFO - Running command... cat 
/airflow/xcom/return.json
[2019-03-18 20:32:07,007] {logging_mixin.py:95} INFO - 
[2019-03-18 20:32:07,026] {logging_mixin.py:95} INFO - [2019-03-18 
20:32:07,026] {pod_launcher.py:173} INFO - cat: can't open 
 '/airflow/xcom/return.json': No such file or directory
[2019-03-18 20:32:07,026] {logging_mixin.py:95} INFO - 
[2019-03-18 20:32:07,026] {logging_mixin.py:95} INFO - [2019-03-18 
 20:32:07,026] {pod_launcher.py:166} INFO - Running command... kill -s 
 SIGINT 1
[2019-03-18 20:32:07,026] {logging_mixin.py:95} INFO - 
[2019-03-18 20:32:07,067] {models.py:1788} ERROR - Pod Launching 
failed: Failed to extract xcom from pod: fail-e18e3dac

所以尝试用这种方式工作,但这意味着它从外部而不是从图像分配 xcom json

 return_value = '{"foo": "bar"\n, "buzz": 2}'
 strtpodbefore = KubernetesPodOperator(namespace='rguonew',
                                image="python:3.6.6-stretch",
                                cmds=["bash", "-cx"],
                                name="fail",
                                task_id="failing-task",
                                arguments=['echo \'{}\' > 
 /airflow/xcom/return.json'.format(return_value)],
                                get_logs= True,
                                xcom_push=True,
                                dag=dag
                                )

所以我尝试了最后的解决方案,做了一个额外的参数,但仍然不起作用,第一个命令没有得到这样的目录返回

strtpodbefore = KubernetesPodOperator(namespace='rguonew',
                                    image="myimages",
                                    name="fail",
                                    image_pull_policy="Always",
                                    cmds=["bash", "-cx"],
                                    arguments=['echo \'{}\' > 
/airflow/xcom/return.json'.format(return_value)],
                                    task_id="failing-task",
                                    get_logs= True,
                                    xcom_push=True,
                                    dag=dag
                                    )

当您设置 xcom_push=True 时,将与您的执行器容器一起创建一个 sidecar 容器。 sidecar 容器将读取执行器的/airflow/xcom/return.json,因此您实际上需要从执行器容器中写入此内容,就像在第二个示例中所做的那样。

看这里:https://stackoverflow.com/a/53568710/10675601 https://stackoverflow.com/a/53568710/10675601

当我们在处理 pod xcom 时,还存在一些与 RBAC 相关的问题需要设置:Airflow k8s 运营商 xcom - 握手状态 403 禁止 https://stackoverflow.com/questions/53827345/airflow-k8s-operator-xcom-handshake-status-403-forbidden

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

没有这样的文件或目录 /airflow/xcom/return.json 的相关文章

  • 清除后气流强制重新运行上游任务,即使下游任务标记为成功

    我在 Airflow 中有任务 A gt B gt C 当我运行 DAG 并全部成功完成时 我希望能够单独清除 B 同时将 C 标记为成功 B 清除并进入 no status 状态 但当我尝试重新运行 B 时 什么也没有发生 我尝试过 ig
  • 气流动态 dag 创建

    有人请告诉我气流中的 DAG 是否只是一个图表 如占位符 没有任何与其关联的实际数据 如参数 或者 DAG 是否像一个实例 对于固定参数 我想要一个系统 其中要执行的操作集 给定一组参数 是固定的 但每次运行这组操作时 该输入都会不同 简单
  • 气流:在特定时间重试

    我需要创建一个绝对需要在 9 点之前运行的 Airflow 作业 我目前有一项工作从 7 小时开始 重试 8 间隔 15 分钟 8 15m 2 小时 不幸的是 我的工作需要更多时间 因此 任务在 9 小时 硬截止日期 后失败 我怎样才能让它
  • 更改 AirFlow 中 Lambda 调用的“读取超时”

    我有一个 lambda 始终需要超过 1 分钟才能完成执行 这是默认的问题LambdaInvokeFunctionOperator 因为默认情况下 它的钩子会创建一个Boto3与默认连接读取超时60 秒 意味着 60 秒后 如果 Lambd
  • 没有这样的文件或目录 /airflow/xcom/return.json

    创建了一个图像包含 airflow xcom return json在所有子目录上使用 chmod x 由于日志显示找不到文件或目录 尝试过 chmod x strtpodbefore KubernetesPodOperator names
  • Airflow Worker - 连接中断:IncompleteRead(0 字节读取)

    使用 Airflow Worker 和 Web 服务器 调度程序作为在 EC2 上的 Kubernetes Engine 上运行的 Docker 映像 我们有一个任务KubernetesPodOperator这是资源密集型的 每 15 分钟
  • 如何在 Google Composer 上重新启动气流服务器?

    当我需要在本地重新启动网络服务器时 我会这样做 ps ef grep airflow awk print 2 xargs kill 9 airflow webserver p 8080 D 我如何在 Google Composer 上执行此
  • 气流:Dag 每隔几秒安排两次

    我尝试每天仅运行一次 DAG00 15 00 午夜 15 分钟 然而 它被安排了两次 间隔几秒钟 dag DAG my dag default args default args start date airflow utils dates
  • 气流:找不到 dag_id

    我在不同的 AWS 机器上运行气流服务器和工作线程 我已经在它们之间同步了 dags 文件夹 然后运行airflow initdb在两者上 并在运行时检查 dag id 是否相同airflow list tasks
  • 为什么我的 Airflow 任务被“外部设置为失败”?

    我使用的是 Airflow 2 0 0 我的任务在运行几秒钟或几分钟后偶尔会被 外部 终止 任务通常会成功运行 都是通过以下方式启动的手动任务 airflow tasks test 以及计划的 DAG 运行 所以我相信这与我的 DAG 代码
  • 气流 - 未知的蓝色任务状态

    我刚刚收到一个蓝色任务 该任务没有出现在状态图例中 我很好奇这是一个错误还是未记录的状态 正如您所看到的 蓝色没有显示在右侧的潜在状态列表中 我刚刚完成了所有过去 未来和上游尝试的清理 仅供参考 这是一个已知的 TaskInstance 状
  • Airflow 默认连接数过多

    我打开气流并检查连接 发现其后面运行的连接太多 关于如何杀死那些我不使用的任何想法 或者我很想知道运行它的最小 conn id 建筑学 LocalExecutor 与其他经纪人不同 Postgres 作为元数据库 但它列出了 17 个连接
  • Airflow 1.10.3 - 空白“最近任务”和“DAG 运行”

    我在 Ubuntu 18 10 上安装了 Airflow 1 10 3 并且能够添加 DAG 并运行它们 但 Web UI 中的 最近任务 和 DAG 运行 为空 我所看到的只是一个黑色虚线圆圈 它不断加载 但什么也没有实现 我最近将 Ai
  • 使用 CLI 运行命令在 Airflow 中触发任务

    如何使用以下命令触发 Airflow v1 8 1 DAG 中的特定任务run来自 CLI 的命令 DAG dag DAG test run default args default args schedule interval SCHED
  • 安装 apache-airflow 时出错:“无法为使用 PEP 517 的 setproctitle 构建轮子,并且无法直接安装”

    我正在尝试寻找一些安装 apache airflow 的帮助 我使用的是 MacOS 10 15 7 Python 版本 3 8 2 并且不断收到错误 错误 无法为使用 PEP 517 的 setproctitle 构建轮子 并且无法直接安
  • 在单元测试中运行 Airflow 1.9 的测试 Dag

    我已经实现了运行单个 dag 的测试用例 但它似乎在 1 9 中不起作用 可能是由于气流 1 8 中引入了更严格的池 我正在尝试运行以下测试用例 from airflow import DAG from airflow operators
  • 如何在日志中查看MySqlHook结果

    我在用MySqlHook建立连接气流数据库 并且我正在执行一些查询 但我需要在某处查看查询的结果 比如说日志 我怎样才能看到 这是示例代码 t1 MySqlOperator task id basic mysql mysql conn id
  • Airflow log_id 格式错误

    我正在使用 Airflow v2 2 3 和apache airflow providers elasticsearch 2 1 0 在 Kubernetes 中运行 我们的日志会自动发送到 Elasticsearch v7 6 2 我在
  • 即使安装了 Microsoft Visual C++ 14.0 也出现 Pip 错误

    我阅读了之前相关或询问的所有问题和答案 但仍然没有找到适合我的问题的答案 我正在使用 python 3 6 5 并且 pip 和 setuptools 是最新的 我从这里安装了 Microsoft Visual C Redistributa
  • 在哪里可以找到 Airflows 电子邮件日志?

    我正在 Kubernetes 中部署的 Airflow 实例中设置 STMP 电子邮件配置中的 Airflows 构建 我已经能够从电子邮件服务器看到日志 表明我已成功登录 但当我的 DAG 成功时我没有收到电子邮件 我有 email on

随机推荐