Apache Airflow 2.4.2连接Google Cloud失败,请求排查方案
Airflow 2.4.2 连接GCP 网络错误排查方案
问题本质
这个Errno 113 No route to host错误是Docker容器无法访问外网导致的——你本地Python能正常用密钥上传数据,说明密钥本身的权限、格式都没问题,和Airflow的GCP连接配置逻辑无关。
具体排查&解决步骤
先验证容器网络连通性
进入Airflow容器内部,执行命令:curl https://oauth2.googleapis.com/token如果返回包含
invalid_request的JSON响应,说明网络通路正常;如果还是提示无法连接,直接定位到容器网络配置问题。检查Docker网络模式
如果你启动容器时用了自定义网络或者--network=none参数,会限制容器的外网访问。改成默认的bridge模式启动,或者确认自定义网络配置了正确的网关、DNS服务器。排查防火墙/端口限制
有些环境会拦截容器的出站443端口请求,或者屏蔽oauth2.googleapis.com域名。可以临时关闭容器内的防火墙规则(比如执行iptables -F)测试,或者联系运维确认是否有端口放行策略。配置代理(如果环境需要)
若你的网络需要代理才能访问外网,要在Airflow的airflow.cfg里添加代理配置:[core] http_proxy = http://你的代理地址:端口 https_proxy = http://你的代理地址:端口 no_proxy = localhost,127.0.0.1同时要确保容器的环境变量里也同步设置了
HTTP_PROXY、HTTPS_PROXY、NO_PROXY。
关于官方文档的说明
目前GCP Composer的连接配置文档没有重大更新,你的问题不属于文档过时导致的,优先排查网络层面的问题即可。
内容的提问来源于stack exchange,提问作者Evan
相关产品推荐
相关产品推荐

