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

GKE配置Network Policy后元数据服务器被阻断问题求助

GKE Network Policy导致元数据服务器访问失败的解决办法

你的Network Policy配置阻止了Pod访问GKE的元数据服务器(169.254.169.254),因此出现了url.Error Get "http://169.254.169.254/computeMetadata/v1/instance/service-accounts/default/scopes报错。

问题原因

GKE Pod需要通过元数据服务器获取服务账号令牌、实例配置等关键信息,访问地址是http://169.254.169.254,默认使用80端口。当前配置中,第二个egress规则仅指定了允许访问该IP段,但未明确允许80端口的TCP流量——而Network Policy默认会拒绝所有未显式允许的出口流量,导致Pod无法发起元数据服务器请求。

修正后的配置

需要在针对169.254.169.254的egress规则中添加80端口的TCP允许规则:

kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
  name: {{ template "name" . }}
spec:
  podSelector:
    matchLabels:
      app: {{ template "name" . }}
  policyTypes:
  - Egress
  egress:
  # 保留原有允许的端口流量
  - ports:
    - port: 53
      protocol: UDP
    - port: 53
      protocol: TCP
    - port: 443
      protocol: TCP
    - port: 3307
      protocol: TCP
    - port: 3306
      protocol: TCP
  # 新增元数据服务器的端口允许规则
  - to:
    - ipBlock:
        cidr: 169.254.169.254/32
    ports:
    - port: 80
      protocol: TCP

补充说明

也可以把元数据服务器的端口规则合并到第一个egress块中,但分开配置更便于维护。核心是必须显式允许Pod访问169.254.169.254的80端口TCP流量,否则元数据服务请求会被Network Policy拦截。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 21:03:30