负载均衡集群LVS调度算法实战(二)|学习笔记

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 快速学习负载均衡集群LVS调度算法实战

开发者学堂课程【LVS负载均衡实战负载均衡集群LVS调度算法实战学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/553/detail/7633


负载均衡集群LVS调度算法实战(二)


三、调度算法

ipvs scheduler

1.ipvs scheduler:根据其调度时是否考虑各RS当前的负载状态两种∶静态方法和动态方法

2.静态方法∶仅根据算法本身进行调度

//上午静态调度指的就是在进行定义完之后仅仅只根据自身固定的算法来进行调度

//而不考虑各RS当前的负载状态的方法就叫做静态方法。

//与之相反的是动态算法会考虑RS当前的负载状态。如果RS目前//的压力较大,调用的资源也会相应的减少,反之,调用的资源就会//变多。

1、RR : roundrobin,轮询

//轮询指的就是几台服务器同时对外进行服务的一种调度方式

//简言之,就是轮流提供服务。

2、WRR : Weighted RR,加权轮询

//加权调度需要考虑到后端服务器的性能,加权调度可以做到安照一定的比例给服务器分配任务,尽可能的做到物尽其用,整体最优化。

3、SH : Source Hashing,实现session sticky,源IP地址hash;将来自于同一个IP地址的请求始终发往第一次挑中的RS,从而实现会话绑定

SH辅助理解示意图如下:

image.png

/**

*新问题,当客户端访问服务器时,会存在一个信息存储不均衡的问题,存储的信息无法与调度的对象完全同步,导致调度失败。

*Hash的含义指的是将记录下来的ip地址进行hash运算,进而出一个摘要,注意这里的hash值与ip地址挂钩,密切相关。

*第四种是目标地址Hash,两次调度的结果相同,这里看的是上一次调度的结果,上一次是调度到哪一个机器,那么这一次也就调度哪一个机器上去。

**/

4、DH : Destination Hashing;目标地址哈希,将发往同一个目标地址的请求始终转发至第一次挑中的RS,典型使用场景是正向代理缓存场景中的负载均衡,如︰宽带运营商

DH辅助理解示意图如下:

image.png

/**

*DH会通过目标地址将数据存放在缓存器中去,以此来提高缓存

*(cache)的利用率,从而进一步提高互联网的访问速度,节省

*宽。当后端服务器压力过大时,可以适当的给其添加一些缓存服

*器,这样用户在访问时,便会先来到缓存服务器进行访问,如果

*没有,再进入后端服务器进行访问。

缓存服务器会在后端服务器与

*用户需求之间记录用户所需的数据,以此来提高缓存利用率。

*根目标地址来访问便可以将用户常用的页面,视频等等缓存下来,

*以此来提高缓存的利用率。

**/

动态方法:主要根据每RS当前的负载状态及调度算法进行调度Overhead=value较小的RS将被调度

//动态方法下的调度算法需要考虑到后端的负载情况

1、LC : least conhections适用于长连接应用

Overhead=activeconns*256+inactiveconns

LC辅助理解示意图:

image.png

/**

*LC可以实现资源的最大合理应用话,防止出现资源浪费和机器

*负载过重的情况出现,更好的实现了均衡负载。

该算法可以通过*Overhead=activeconns*256+inactiveconns该公式计算出正*在使用的活动连接。计算结果值越大,被调度的可能性便越小,计*算结果值越小,被调度的可能性便越大。LC算法存在的一个主要*缺陷是无法考虑到后端的性能问题。

**/

2、WLC : Weighted LC,默认调度方法

Overhead=(activeconns*256+inactiveconns)/weight

WLC辅助理解示意图:

image.png

/**

*WLC算法可以用来弥补LC算法无法考虑到后端机器性能的问

*题。

该算法可以通过*Overhead=(activeconns*256+inactiveconns)/weight这个公式*计算出对应的权重。同时,WLC算法也存在一个缺陷:无法解决用*户初次连接LVS服务器时的调度问题。

**/

3、SED : Shortest Expection Delay,初始连接高权重优先

Overhead=(activeconns+1)*256/weight

SED辅助理解示意图:

image.png/**

*SED算法可以用来弥补WLC无法解决用户初次分配时出现的调*度问题的缺陷。

SED算法可以通过*Overhead=(activeconns+1)*256/weight这个公式计算出第一次*调度时应该选择的最优服务器。同时,该算法也存在一个问题:容

*易导致性能优异的服务器过量负载,而性能较差的服务器负载过小。

**

4、NQ: Never Queue,第一轮均匀分配,后续SED

NQ辅助理解示意图:

image.png

/**

*NO算法解决了SED算法存在的缺陷问题。该算法会在第一次

*分配时给每一天后端服务器都分配一些任务,在第二次任务分配*时再使用Overhead=(activeconns+1)*256/weight公式进行性能*调优,调度分配,性能优者多分配一些,性能一般的就少分配一些。

**/

ipvs

1.ipvsadm/ipvs :

2.ipvs :

grep -i -C 10 "ipvs" /boot/config-VERSION-RELEASE.x86_64支持的协议:TCP ,r UDP,AH,ESP,AH_ESP,SCTP

ipvs辅助理解示意图:

image.png

/**

*ping测试不出调度效果,因为无法到达后端的real server。

**/

3.ipvs集群︰

管理集群服务

管理服务上的RS

ipvsadm包构成

4.ipvsadm :

5.程序包: ipvsadm

Unit File: ipvsadm.service

主程序∶/usr/sbin/ipvsadm

规则保存工具:/usr/sbin/ipvsadm-save

规则重载工具:/usr/sbin/ipvsadm-restore

配置文件:/etc/sysconfig/ipvsadm-config

ipvsadm命令

1.ipvsadm命令∶

2.核心功能︰

集群服务管理:增、删、改

集群服务的RS管理∶增、删、改查看

ipvsadnil -A|E-tluf service-address [-s scheduler] [-p [timeout] [-M netmask] [--pepersistence_engine] [-b sched-flags]

ipvsadm -D -tlulf service-address 删除

ipvsadm -C清空

ipvsadm -R重载

ipvsadm -s [-n]保存

ipvsadm -ale -tlulf service-address -r server-address [options]

ipvsadm -d -tlu|f service-address -r server-address

ipvsadm -Lll [options]

ipvsadm -z [-tlulf service-address]

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
存储 负载均衡 应用服务中间件
LVS负载均衡群集——NAT模式实操
LVS负载均衡群集——NAT模式实操
750 0
|
负载均衡 网络协议 算法
LVS负载均衡(三种工作模式、原理、实验)
LVS负载均衡(三种工作模式、原理、实验)
619 0
|
弹性计算 负载均衡 网络协议
实验:负载均衡SLB(二)|学习笔记
快速学习实验:负载均衡SLB(二)
实验:负载均衡SLB(二)|学习笔记
|
负载均衡 调度
LVS负载均衡群集——NAT模式实操(下)
一、群集概述 1.1 群集的含义 Cluster,集群、群集 由多台主机构成,但对外只表现为一一个整体,只提供一-个访问入口(域名或IP地址), 相当于一台大型计算机。
190 0
|
存储 负载均衡 算法
LVS负载均衡群集——NAT模式实操(上)
一、群集概述 1.1 群集的含义 Cluster,集群、群集 由多台主机构成,但对外只表现为一一个整体,只提供一-个访问入口(域名或IP地址), 相当于一台大型计算机。
217 0
|
负载均衡 网络协议 算法
负载均衡集群 LVS 调度算法实战(一)|学习笔记
快速学习负载均衡集群 LVS 调度算法实战
负载均衡集群 LVS 调度算法实战(一)|学习笔记
|
负载均衡 算法 调度
负载均衡集群LVS调度算法实战(三)|学习笔记
快速学习负载均衡集群LVS调度算法实战
负载均衡集群LVS调度算法实战(三)|学习笔记
|
负载均衡 网络协议 网络架构
负载均衡 LVS 工作模型(二)|学习笔记
快速学习负载均衡 LVS 工作模型
负载均衡 LVS 工作模型(二)|学习笔记
|
负载均衡 网络协议 前端开发
负载均衡 LVS 工作模型(三)|学习笔记
快速学习负载均衡 LVS 工作模型
负载均衡 LVS 工作模型(三)|学习笔记
|
存储 分布式计算 负载均衡
负载均衡LVS基础入门(一)|学习笔记
快速学习负载均衡LVS基础入门
负载均衡LVS基础入门(一)|学习笔记