You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

M1 Mac本地环境Apache Airflow无法执行DAG求助

解决M1芯片Mac上Apache Airflow DAG运行失败的问题

问题描述

在M1芯片的Mac本地环境执行Apache Airflow DAG时,所有任务均失败,报错信息如下:

[2022-11-15, 20:18:35 CET] {standard_task_runner.py:100} ERROR - Failed to execute job 79 for task get_datetime ([Errno 2] No such file or directory: '/var/folders/8t/ll6ysglj0nj5dq53clwnnsg40000gn/T/tmpb3a0nyuj'; 8406)

但airflow tasks test命令可正常运行。

解决方案

  • 修复临时目录权限
    M1 Mac系统临时目录可能存在Airflow进程无法访问的权限问题。执行以下命令重置目标临时目录的所有权:

    sudo chown -R $(whoami) /var/folders/8t/ll6ysglj0nj5dq53clwnnsg40000gn/T/
    

    也可以在airflow.cfg中配置自定义临时目录,指定当前用户有权限的路径(如~/airflow/tmp/),修改以下配置项后重启Airflow服务:

    base_log_folder = ~/airflow/tmp/logs
    dag_processor_manager_log_location = ~/airflow/tmp/dag_processor_manager.log
    
  • 升级Airflow至Apple Silicon兼容版本
    旧版Airflow对M1芯片的临时文件处理存在兼容性问题,执行升级命令:

    pip install --upgrade apache-airflow
    

    若使用Conda环境,需确保Conda为M1适配版本,再重新安装Airflow:

    conda install -c conda-forge apache-airflow
    
  • 切换任务运行器
    默认的StandardTaskRunner在M1环境下可能存在文件路径问题,修改airflow.cfg中的task_runner配置:

    task_runner = LocalTaskRunner
    

    保存后重启Airflow调度器和Web服务器,或启动时临时指定:

    airflow scheduler --task-runner=LocalTaskRunner
    
  • 确认Python环境一致性
    检查airflow命令与airflow tasks test使用的Python环境是否一致,执行以下命令验证路径:

    which airflow
    which python
    

    若路径不一致,激活对应的虚拟环境后再启动Airflow服务。

内容的提问来源于stack exchange,提问作者Oskar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 18:05:44