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

AWS MWAA环境中DAG未在Airflow UI显示的排查求助

排查AWS MWAA DAG未显示在Airflow UI中的问题

已完成的排查操作

  • 为MWAA关联角色附加S3FullAccess权限
  • 重启MWAA环境
  • 将Airflow UI访问方式从私有切换为公网

下一步排查方向

1. 检查DAG文件本身的合规性

  • 确保DAG文件名以.py结尾,MWAA仅识别S3 /dags/目录下的.py格式文件
  • 本地执行python your_dag_file.py验证语法,MWAA会自动跳过存在语法错误的文件
  • 确认DAG对象已正确实例化,未设置dag.active = False这类主动隐藏DAG的配置

2. 查看MWAA调度器日志的解析错误

  • 打开CloudWatch控制台,找到对应MWAA环境的scheduler日志组(命名格式一般为aws-mwaa-logs-<环境名>-scheduler)
  • 搜索Failed to import或DAG import error关键词,定位DAG导入失败的具体原因(如依赖包缺失、模块找不到)
  • 若使用自定义依赖,确认依赖包已上传至S3的/requirements/目录(若配置了依赖层),且MWAA已完成依赖加载

3. 验证S3路径与对象权限

  • 确认DAG文件上传路径与MWAA配置的DAGs前缀完全匹配:例如MWAA配置为s3://your-bucket/dags/,则文件需在该目录或其子目录下(子目录会被递归扫描)
  • 检查S3对象的ACL权限:执行aws s3api get-object-acl --bucket your-bucket --key dags/your_dag.py,确保MWAA角色有读取权限(即使角色有S3FullAccess,对象级拒绝策略也会生效)
  • 确认S3文件已上传完成,未因版本控制导致MWAA读取旧版本文件

4. 检查Airflow核心配置

  • 登录Airflow UI,进入Admin > Configurations,核对以下配置:
    • dags_folder:确认值与MWAA配置的S3 DAG路径一致
    • load_examples:若设为True,查看示例DAG是否显示,判断是单个DAG问题还是全局加载故障
    • dag_dir_list_interval:默认300秒,需等待足够时间让调度器完成DAG扫描

5. 验证MWAA角色的信任关系

  • 进入IAM控制台,查看MWAA关联角色的信任策略,确保包含以下语句:
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "airflow.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
    
    缺失该信任关系会导致MWAA无法调用角色读取S3文件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 14:55:54