【问题标题】:EKS GlobalNetworkPolicies default-deny with pod exceptionsEKS GlobalNetworkPolicies default-deny with pod exceptions
【发布时间】:2019-10-05 03:55:30
【问题描述】:

目前我有一个 GlobalNetworkPolicy 'default-deny' 来限制集群内的所有流量,所有入口/出口都设置为拒绝所有()。

我已尝试使用“订单”允许某些标签 pod 出现例外情况。 当我没有指定“动作”参数以允许所有通信时,该策略有效。 虽然如下当我在允许中指定参数时,Pod 不允许出口流量。

apiVersion: projectcalico.org/v3
kind: GlobalNetworkPolicy
metadata:
  name: allow-pod-ingress
spec:
  order: 50
  selector: name == 'egresspod'
  types:
  - Egress
  ingress:
  - action: Allow
    protocol: TCP
    source:
      selector: some-pod-label == 'some-pod-label-value'
    destination:
      ports:
      - 80

此策略配置正确吗?

【问题讨论】:

    标签: amazon-eks project-calico calico


    【解决方案1】:

    类型:必须符合规范。您将其设置为 Egress,而您定义了入口规则。

    如果您希望 egresspod 接受端口 80 上的入站流量,请尝试将类型更改为 Ingress。 (如果你想达到相反的效果,那么将两者都更改为 Egress。)

    apiVersion: projectcalico.org/v3
    kind: GlobalNetworkPolicy
    metadata:
      name: allow-pod-ingress
    spec:
      order: 50
      selector: name == 'egresspod'
      types:
      - Ingress #Has to match
      ingress:  # With this guy.
      - action: Allow
        protocol: TCP
        source:
          selector: some-pod-label == 'some-pod-label-value'
        destination:
          ports:
          - 80
    

    欲了解更多信息,请查看此页面:https://docs.projectcalico.org/v3.7/reference/calicoctl/resources/globalnetworkpolicy

    【讨论】:

      猜你喜欢
      • 2020-08-21
      • 2019-12-03
      • 2023-01-15
      • 1970-01-01
      • 2021-01-16
      • 2020-12-03
      • 2020-08-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多