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

AWS MWAA本地运行器Docker内无法读取SecretManager的Connections配置

Airflow本地测试无法从AWS Secrets Manager获取连接的解决方法

你遇到的AirflowNotFoundException: The conn_id 'snowflake_conn_dev' isn't defined报错,核心原因是MWAA本地运行器的Secrets Manager配置没有在所有Airflow服务节点生效,按以下步骤排查修改即可解决:

  • 统一给docker-compose.yml里的webserver、scheduler、worker三个服务都添加如下环境变量,不要只给单个服务加:
environment:
  AIRFLOW__SECRETS__BACKEND: airflow.providers.amazon.aws.secrets.secrets_manager.SecretsManagerBackend
  AIRFLOW__SECRETS__BACKEND_KWARGS: '{"connections_prefix": "airflow/connections", "region_name": "替换为你的AWS区域,比如us-east-1"}'
  • 配置AWS凭证访问权限,二选一即可:
    • 将本地~/.aws/credentials文件挂载到三个服务容器内的/home/airflow/.aws/credentials路径,设置容器内文件权限为600
    • 在环境变量中添加AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY(仅限本地测试使用,不要上传到公开代码仓库)
  • 确认AWS Secrets Manager中的密钥配置符合规则:
    你使用的连接ID为snowflake_conn_dev,对应的密钥名称需要和你配置的connections_prefix匹配,比如前缀为airflow/connections时,密钥全名应为airflow/connections/snowflake_conn_dev,密钥内容为标准Airflow连接JSON格式,必须包含conn_type、host等Snowflake连接必填字段。
  • 配置完成后执行docker-compose down && docker-compose up -d重启所有服务,可进入worker容器执行airflow connections get snowflake_conn_dev验证是否能正常读取连接,验证通过后再运行测试DAG即可。

常见踩坑点:如果修改后还是报错,先检查aws provider包是否已经安装,MWAA本地运行器默认镜像可能缺失对应依赖,可以在requirements.txt中添加apache-airflow-providers-amazon同步安装。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 00:36:03