0
点赞
收藏
分享

微信扫一扫

LVS 调试算法和ipvsadm用户工具

LVS调试算法(12种)

静态方法(4类)

仅根据算法本身进行调度

  1. RR:roundrobin,轮询,较常用
  2. WRR:Weighted RR,加权轮询,较常用
  3. SH:Source Hashing,实现session sticky,源IP地址hash;将来自于同一个IP地址的请求始终发往第一次挑中的RS,从而实现会话绑定
  4. DH:Destination Hashing;目标地址哈希,第一次轮询调度至RS,后续将发往同一个目标地址的请求始终转发至第一次挑中的RS,典型使用场景是正向代理缓存场景中的负载均衡,如: Web缓存

动态方法(6类)

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

  1. LC:least connections 适用于长连接应用
  2. WLC:Weighted LC,默认调度方法,较常用
  3. SED:Shortest Expection Delay,初始连接高权重优先,只检查活动连接,而不考虑非活动连接
  4. NQ:Never Queue,第一轮均匀分配,后续SEDLBLC:Locality-Based LC,动态的DH算法,使用场景:根据负载状态实现正向代理,实现Web Cache等
  5. LBLCR:LBLC with Replication,带复制功能的LBLC,解决LBLC负载不均衡问题,从负载重的复制到负载轻的RS,,实现Web Cache等

内核版本 4.15 后新增调度算法

FO(Weighted Fail Over)调度算法,在此FO算法中,遍历虚拟服务所关联的真实服务器链表,找到还未过载(未设置IP_VS_DEST_F_OVERLOAD标志)的且权重最高的真实服务器,进行调度,属于静态算法

OVF(Overflow-connection)调度算法,基于真实服务器的活动连接数量和权重值实现。将新连接调度到权重值最高的真实服务器,直到其活动连接数量超过权重值,之后调度到下一个权重值最高的真实服务器,在此OVF算法中,遍历虚拟服务相关联的真实服务器链表,找到权重值最高的可用真实服务器。属于动态算法

一个可用的真实服务器需要同时满足以下条件:

  • 未过载(未设置IP_VS_DEST_F_OVERLOAD标志)
  • 真实服务器当前的活动连接数量小于其权重值
  • 其权重值不为零


LVS 相关软件

程序包:ipvsadm

  • Unit File: ipvsadm.service
  • 主程序:/usr/sbin/ipvsadm
  • 规则保存工具:/usr/sbin/ipvsadm-save
  • 规则重载工具:/usr/sbin/ipvsadm-restore
  • 配置文件:/etc/sysconfig/ipvsadm-config
  • ipvs调度规则文件:/etc/sysconfig/ipvsadm

ipvsadm是用户空间工具,LVS是内核空间工具。操作主要分为:1、创建集群选择算法 2、在集群里添加后端的server选择模式

ipvsadm 命令

ipvsadm核心功能:

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

ipvsadm工具用法

LVS 调试算法和ipvsadm用户工具_LVS

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

增、修改:

ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]]

说明

  • -t|u|f
  • -t: TCP协议的端口,VIP:TCP_PORT : -t 10.0.0.100:80
  • -u: UDP协议的端口,VIP:UDP_PORT
  • -f:firewall MARK,标记,一个字
  • [-s scheduler]:指定集群的调度算法,默认为wlc

示范:ipvsadm -A -t 10.0.0.100:80 -s wrr -p   #使VIP对外提供80服务

LVS 调试算法和ipvsadm用户工具_权重_02


删除:

ipvsadm -D -t|u|f service-address

管理集群上的RS:增、改、删

增、改:

ipvsadm -a|e -t|u|f service-address -r server-address [-g|i|m] [-w weight]

删:

ipvsadm -d -t|u|f service-address -r server-address

LVS 调试算法和ipvsadm用户工具_LVS_03

示范:ipvsadm -a -t 10.0.0.100:80 -r 10.0.0.8:8080 -m -w 3   #VIP对应的集群RS有哪些

保存:

(建议保存至/etc/sysconfig/ipvsadm)

ipvsadm-save > /PATH/TO/IPVSADM_FILE

ipvsadm -S > /PATH/TO/IPVSADM_FILE

systemctl stop ipvsadm.service #会自动保存规则至/etc/sysconfig/ipvsadm

重载:

ipvsadm-restore < /PATH/FROM/IPVSADM_FILE

systemctl start ipvsadm.service #会自动加载/etc/sysconfig/ipvsadm中规则

防火墙标记和持久连接

防火墙标记用于单用户同时访问http和https的负载均衡

持久连接保证轮询算法下,同一用户再一段时间的访问仍然由原服务器提供服务,保证seesion问题

举报

相关推荐

0 条评论