我有一个 k8s 集群,它将工作节点分布在 6 个可用区中,因此,出口流量通过 6 个 nat 网关路由。我的要求是应用程序“xyz”的所有出口流量都应仅通过 AZ-A 的 nat 网关路由。因此,作为一个解决方案,我在同一个命名空间中创建了一个 nginx 代理实例,放置一个关联规则以将其仅绑定到 AZ - A,并考虑使用网络策略将出口流量从xyz
pod 路由到该代理实例。但似乎网络策略正在阻止整个出口流量。下面是出口 NW 政策的代码,看起来不错。
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: xyz-app-egress
spec:
podSelector:
matchLabels:
app: xyz
policyTypes:
- Ingress
- Egress
ingress:
- {}
egress:
- to:
- podSelector:
matchLabels:
app: proxy
应用 NW 策略后,我正在curl ifconfig.co
xyz pod 上进行测试。它有时会给出以下错误和超时:
curl: (6) Could not resolve host: ifconfig.co
我想我在这里遗漏了一些东西。任何人都可以请我对此提供任何见解吗?或更好地解决此要求。