首页 / 平台管理 / 集群管理 / 集群 / 公有云集群初始化 / 网络初始化 / AWS EKS 补充说明

AWS EKS 补充说明

名词解释

简称 全称 说明
eks-clb Classic Load Balancer AWS 默认提供的负载均衡器,某些情况下存在使用问题,不推荐使用。
eks-nlb Network Load Balancer AWS 提供的四层负载均衡器,可以在 TCP/UDP 层面上进行负载均衡,适用于需要更高级别的网络控制的情况。
eks-alb Application Load Balancer AWS 提供的七层负载均衡器,相较于 eks-nlb,eks-alb 能够解析 HTTP/HTTPS 协议,可以更智能地分发请求,适用于 Web 应用程序等场景。
aws-lb AWS Load Balancer 安装在 Kubernetes 上的负载均衡器,可以根据 Kubernetes 中的 LoadBalancer 类型内部路由(Service)和入站规则(Ingress)自动创建 eks-nlb 和 eks-alb,以满足应用程序的负载均衡需求。
平台负载均衡器 - 平台自研的七层负载均衡器。
内部路由注解(annotation) - 以键值对形式附加到对象的元数据,这些额外的信息可以被识别和利用,以增强和简化 Kubernetes 资源的各个方面的管理,注解可以是没有具体功能的解释性文字、可以指定使用云提供商的配置或行为、也可以指定配置参数、工具等,功能十分强大。

注意事项

在创建负载均衡器时,建议手动配置内部路由注解,以确保平台负载均衡器正确解析使用 aws-lb。若未正确配置相应的内部路由注解,平台将默认使用 eks-clb,而 eks-clb 存在与 UDP 相关的问题,可能会导致意外情况的发生。

EKS 使用 aws-lb 为容器网络类型的负载均衡器提供外网访问能力

配置内部路由注解说明

  1. 在对应集群通过 Kubectl 工具执行如下命令,查找位于 kube-system 命名空间中,名称包含 aws-load 的所有 Pod。

    kubectl get pod -n kube-system |grep aws-load
  2. 创建负载均衡器,具体创建步骤及参数请参考 创建负载均衡器

    • 若通过如上命令没有查询到相关 Pod ,说明集群未安装 AWS Loadbalancer Controller,则无需填写内部路由注解,直接创建负载均衡器即可。

    • 若通过如上命令查询到相关 Pod,说明集群安装了 AWS Loadbalancer Controller,则需在对应集群创建负载均衡器时,添加如下内部路由注解,具体注解说明请参考 AWS EKS 中内部路由注解说明

      • service.beta.kubernetes.io/aws-load-balancer-type: external //必填

      • service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: ip //必填

      • service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing // 选填。若需支持公网时,添加此内部路由注解。

获取访问地址方式说明