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

srk*_*Z84 7 amazon-web-services kubernetes

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

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

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

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

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

Pra*_*hat 11

最新的格式是

annotations:
      service.beta.kubernetes.io/aws-load-balancer-internal: true
Run Code Online (Sandbox Code Playgroud)


Mic*_*nzo 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"
Run Code Online (Sandbox Code Playgroud)


Chr*_*ore 7

根据此线程,将注释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
Run Code Online (Sandbox Code Playgroud)