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

时间:2016-06-16 21:36:12

标签: amazon-web-services kubernetes

我有一个Kubernetes集群,通过VPN连接到内部数据中心。这个集群需要"暴露"对在数据中心运行但不在Internet上运行的其他程序的服务。

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

然而,这种方法有一些缺点:

  • 必须从负载均衡器手动添加/删除节点(或者进行某种过程"扫描"所有节点的列表并确保它们已连接到ELB)
  • 删除服务时必须确保删除ELB("孤立的ELB"问题)

有没有人知道如何配置Kubernetes来提升"内部" AWS中的负载平衡器而不是外部平衡器,并以与外部平衡器相同的方式管理它们?

3 个答案:

答案 0 :(得分:9)

上述答案的语法在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"

答案 1 :(得分:6)

http://developer.android.com/sdk/index.html,将注释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

答案 2 :(得分:0)

最新格式为

annotations:
      service.beta.kubernetes.io/aws-load-balancer-internal: true