【问题标题】:eks calico allow inbound from aws classic elb to podeks calico 允许从 aws classic elb 入站到 pod
【发布时间】:2018-10-10 14:45:11
【问题描述】:

我正在尝试设置网络策略以仅允许从 aws 经典负载均衡器到 Pod 的入站流量。没有其他东西可以与包含任何 pod 副本的 pod 通信。我已经配置了以下但它不起作用。有什么我想念的想法吗?一旦我应用它,负载均衡器上的健康检查就会失败。

apiVersion: apps/v1
kind: Deployment
metadata:
  name: a-b-c1
  labels:
    app: a-b-c1
spec:
  replicas: 1
  selector:
    matchLabels:
      app: a-b-c1
  template:
    metadata:
      labels:
        app: a-b-c1
    spec:
      containers:
      - name: a-b-c1
        image: image:latest
        ports:
        - name: http-server1
          containerPort: 80
        resources:
          requests:
            cpu: 0.5
---
kind: Service
apiVersion: v1
metadata:
  name: a-b-c-elb1
  labels:
    app: a-b-c1
    name: a-b-c1-elb
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-internal: 0.0.0.0/0
    service.beta.kubernetes.io/aws-load-balancer-additional-resource-tags: "environment=eks"
spec:
  ports: 
    - port: 80
      targetPort: http-server1
  selector:
    app: a-b-c1
  type: LoadBalancer
  loadBalancerSourceRanges:
  - 10.0.0.0/8
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-from-elb
spec:
  podSelector:
    matchLabels:
      app: a-b-c1
  policyTypes:
  - Ingress
  ingress:
  - from:
    - podSelector:
        matchLabels:
          name: a-b-c1-elb

【问题讨论】:

    标签: kubernetes project-calico amazon-eks


    【解决方案1】:

    我认为这在 AWS 中是不可能的。

    在此网络策略中,您将入口限制为标有 a-b-c1-elb 的 pod,但这并不代表服务,这仅代表带有标签 name: a-b-c1-elb 的假设 pod(它是 podSelector 而不是 serviceSelector,这很遗憾不存在)。

    网络策略允许将流量与 pod 选择器、命名空间选择器或/和 IP 块进行匹配。在您的情况下,唯一可以完成这项工作的是 IP 块。您可以将流量限制为负载均衡器的 IP,这样就可以了。

    但是,在 AWS 中,负载均衡器具有临时 IP,可以随时更改,因此无法限制负载均衡器的流量。您最多可以将流量限制到子网的 CIDR。

    【讨论】:

      【解决方案2】:

      也许作为人们发现这个问题的提示,我想这个问题的正确解决方案是使用入口控制器。

      有了入口控制器,就可以创建网络策略,只允许来自入口控制器的 Pod 的流量,同时阻止来自所有其他 Pod 的流量。

      【讨论】:

        猜你喜欢
        • 2021-10-16
        • 1970-01-01
        • 2021-12-23
        • 1970-01-01
        • 2012-10-24
        • 1970-01-01
        • 2021-05-22
        • 1970-01-01
        • 2019-03-20
        相关资源
        最近更新 更多