Kubernetes -服务对象的IP地址是否更改?

pdkcd3nj  于 2023-03-12  发布在  Kubernetes
关注(0)|答案(1)|浏览(124)

我希望将NetworkPolicy用于从一组Pod到另一组Pod的出站流量。因此,我希望仅允许从标签为foo:bar的Pod到标签为foo:beer的pods的出站流量
当前,所有带有标签的Pod都位于一个ClusterIP类型的服务对象之后。
那么我可以使用服务对象的IP作为出口网络策略吗?如果那个IP不经常改变的话。

plupiseo

plupiseo1#

是的,您可以将服务对象的IP地址用于出口网络策略。正如您提到的,所有带有标签的Pod都在一个类型为ClusterIP的服务对象后面,这意味着只要不删除和重新创建服务对象,服务对象的IP地址就是稳定的。
要配置出口网络策略,以允许从标签为foo:bar的pod到标签为foo:beer的pod的出口流量,您可以使用以下YAML配置:

kind: NetworkPolicy
apiVersion: networking.k8s.io/v1
metadata:
  name: allow-foo-bar-to-foo-beer
spec:
  podSelector:
    matchLabels:
      foo: bar
  egress:
  - to:
    - podSelector:
        matchLabels:
          foo: beer
  policyTypes:
  - Egress

此网络策略允许从标签为foo:bar的Pod到标签为foo:beer的Pod的传出流量,并阻止到任何其他Pod的传出流量。“到”字段指定允许传出流量的目标Pod,podSelector匹配标签为foo:beer的Pod。“策略类型”字段指定此策略仅适用于传出流量。
您可以使用kubectl apply命令kubectl apply -f <filename>.yaml将此网络策略应用到群集

相关问题