【问题标题】:network policy - Kubernetes : Allow traffic from one namespace to pods listening on one port网络策略 - Kubernetes:允许来自一个命名空间的流量到侦听一个端口的 Pod
【发布时间】:2022-01-05 13:02:54
【问题描述】:

我正在尝试为以下情况创建网络策略,但似乎不起作用。我究竟做错了什么?非常感谢任何帮助

  • 创建网络策略命名空间项目-e
  • 该策略应允许命名空间 project-app 中的所有 Pod 连接到命名空间 project-e 中 Pod 的 port 8000
  • 该策略不应允许访问不在端口 8000 上侦听的 pod
  • 该策略不允许从不在命名空间 project-app 中的 pod 进行访问
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: project-e
spec:
  podSelector:
    matchLabels: {}
  policyTypes:
  - Ingress
  ingress:
  - from:
    - namespaceSelector:
        matchLabels:
          name: project-app
    - podSelector:
        matchLabels: {}
    ports:
    - protocol: TCP
      port: 8000

【问题讨论】:

    标签: kubernetes


    【解决方案1】:
    • 因为您想允许命名空间中的所有 pod 具有标签“名称: project-app" 到命名空间 project-e。

    • 您可以删除podSelector 中的 matchLables:{},如下所示:

    kind: NetworkPolicy
    metadata:
      name: test-network-policy
      namespace: project-e
    spec:
      podSelector: {}
      policyTypes:
      - Ingress
      ingress:
      - from:
        - namespaceSelector:
            matchLabels:
              name: project-app
        - podSelector: {}
        ports:
        - protocol: TCP
          port: 8000
    
    • 确保命名空间project-app 具有标签name: project-app。否则将其更改为上述清单中的适当标签。

    【讨论】:

    • 非常感谢。现在可以使用了
    猜你喜欢
    • 2021-03-25
    • 2021-02-09
    • 1970-01-01
    • 2021-01-17
    • 2022-01-13
    • 2021-01-20
    • 1970-01-01
    • 2020-04-27
    • 2021-04-10
    相关资源
    最近更新 更多