首页 文章

Kubernetes支持AWS中的内部负载均衡器

提问于
浏览
5

我有一个Kubernetes集群,通过VPN连接到内部数据中心 . 此群集需要将服务“公开”到数据中心中运行的其他程序,而不是“Internet” .

目前,我一直在创建类型为“NodePort”的服务,然后手动创建内部(专用)负载均衡器,以将 endpoints 映射到群集节点/端口组合 .

但是,这种方法有一些缺点:

  • 必须从负载均衡器手动添加/删除节点(或者具有某种过程"scans"所有节点的列表并确保它们附加到ELB)

  • 删除服务时必须确保删除ELB("orphan ELB"问题)

有没有人知道有什么方法可以配置Kubernetes在AWS中调出“内部”负载均衡器而不是外部负载均衡器,并以与外部负载均衡器相同的方式管理它们?

2 回答

  • 8

    this thread,将注释 service.beta.kubernetes.io/aws-load-balancer-internal 应用于服务定义 .

    kind: Service
    apiVersion: v1
    metadata:
      name: someService
      annotations:
        - name: service.beta.kubernetes.io/aws-load-balancer-internal
          value: 0.0.0.0/0
    
  • 6

    上述答案的语法在Kubernetes v1.5.2中无效 . 正确的语法是:

    apiVersion: v1
    kind: Service
    metadata:
      name: someService
      annotations:
        "service.beta.kubernetes.io/aws-load-balancer-internal": "0.0.0.0/0"
    

相关问题