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

从Airflow连接Azure Blob存储失败的排查求助

排查Airflow连接Azure Blob存储的方向

1. 验证存储账户端点格式与DNS解析

  • 修正Service Principal方式的Account Name格式:去掉https://前缀,直接填写<storage_account_name>.blob.core.windows.net,多余前缀会导致DNS解析失败,匹配报错中的“Name or service not known”。
  • 在Airflow节点执行nslookup <storage_account_name>.blob.core.windows.net,确认能解析到VNet内的私有IP(若存储账户开启私有端点)。如果解析失败,说明VNet未关联Azure私有DNS区域privatelink.blob.core.windows.net,需补全DNS配置。

2. 检查存储账户网络访问规则

  • 确认存储账户“防火墙和虚拟网络”设置中,已将Airflow所在VNet/子网加入允许列表;若使用托管Airflow服务,需勾选“允许受信任的Microsoft服务访问此存储账户”。
  • 若存储账户启用私有端点,检查Airflow节点所在子网的NSG是否允许出站访问私有端点的443端口。

3. 核对认证配置细节

  • Service Principal方式:
    • 确认连接类型为Azure Blob Storage,认证方式选Azure Active Directory。
    • 检查Client Id(服务主体应用ID)、Client Secret是否正确配置,且Client Secret未过期。
  • SAS Token方式:
    • 确保SAS Token无?前缀,权限覆盖DAG所需操作(如Read/Write)且未过期。
    • 确认Blob Storage Login仅填写<storage_account_name>,无额外后缀。

4. 测试Airflow节点的直接网络连通性

  • Service Principal方式:先获取访问令牌,再执行curl -v https://<storage_account_name>.blob.core.windows.net/<container_name> -H "Authorization: Bearer <access_token>",查看具体错误信息。
  • SAS Token方式:执行curl -v https://<storage_account_name>.blob.core.windows.net/<container_name>?<sas_token>,验证连通性。
  • 同时测试Azure AD端点连通性:执行nslookup login.microsoftonline.com,确认解析和访问正常。

5. 检查Airflow依赖版本

  • 确认apache-airflow-providers-microsoft-azure包版本为最新稳定版(如>=4.0.0),旧版本可能存在VNet内连接或私有端点的兼容问题,必要时升级依赖。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 11:24:58