第17节 Service LB


❤️💕💕新时代拥抱云原生,云原生具有环境统一、按需付费、即开即用、稳定性强特点。Myblog:http://nsddd.topopen in new window


[TOC]

LoadBalance

LoadBalance 通常分成两种类型:Client Side 和 Server side。

通常的配置如下:

  • Round robin:这种方法持续地循环连接到它的服务列表。当虚拟服务器收到请求时,它会将连接分配给列表中的第一个服务,然后将该服务移动到列表的底部。
  • 最少连接:默认方法,当虚拟服务器配置为使用最少连接时,它会选择活动连接最少的服务。
  • 最小响应时间:此方法选择活动连接最少、平均响应时间最低的服务。

k3s功能拓展——Service LB Controller

Service LB Controller借用类型为 LoadBalancerService APIimg

工作原理如下:

1、svc-controller watch到service类型为LoadBalancer时,自动创建一个Daemonset

2、默认Daemonset会部署到每个节点,如果任意Node设定了label svccontroller.k3s.cattle.io/enablelb=true,则只在拥有这个label的node上创建DS的pod;

3、对于某个部署的节点,一个LB port只会对应一个POD, 端口不能重复使用;

4、若创建失败或无可用端口时,service的状态为Pending

END 链接