weblogic集群部署与负载均衡_LVS负载均衡集群

本文详细介绍了LVS负载均衡的概念,包括其作用、特点及三种工作模式:DR、NAT和TUN。同时,对比了这三种模式的区别,并阐述了几种常见的负载均衡算法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

6be031f439343ab5d9859a5e1edc5571.png

一、负载均衡集群的特点和作用

  • 作用:
    • 处理高并发带来的系统性能问题,最终大家都会使用负载均衡机制。它是根据某种负载策略把请求分发到集群中的每一台服务器上,让整个服务器群来处理网站的请求。
  • 特点:
    • 集群化的服务器都需要运行同一个系统
    • 多台服务器共同承担了压力
    • 一台服务器出现故障,还有其他服务器顶替

二、常用名词解释

  • ipvsadm:用户空间的命令行工具,用于管理集群服务及集群服务上的RS等
  • IPVS:工作于内核上的netfilter INPUT HOOK之上的程序,可根据用户定义的集群实现请求转发;
  • VS:Virtual Server ,虚拟服务
  • Director、Balancer:负载均衡器、分发器
  • RS:Real Server 后端请求处理服务器
  • CIP:Client IP,客户端IP
  • VIP:Director Virtual IP,负载均衡器虚拟IP
  • DIP :Director IP,负载均衡器IP
  • RIP:Real Server IP,后端请求处理服务器IP

三、LVS的三种工作模式

  • DR模式
  1. 工作流程
    1. 客户端的请求会发往Director,此时,客户端请求报文的源IP为CIP,目标IP为Director的VIP。
    2. 当Director接受到客户端的请求报文后,Director会在请求报文外封装一个MAC首部,其源MAC为Director接口的MAC地址,目标MAC为选定RS的MAC地址;
    3. 当RS收到Director转发过来的请求报文后,检查发现请求报文的目标Ip为本地环回接口上配置的VIP,因此会接受报文进行响应处理。另外由于对ARP响应规则做了修改,因此RS不会把响应报文响应给director ,而是响应给GW;(参考ARP协议)
    4. 客户端接收响应报文,完成通信。
  2. 特点
    1. 负载调度器与真实服务器处于同一层级要求在同一广播域中
    2. 负载调度器必须是 Linux 操作系统,真实服务器也必须是 Linux 操作系统
    3. 客户端访问端口与真实服务器访问端口必须一致
    4. 入站数据报文 C 》 D 》 rs,出站数据报文 RS 》 C

333a9f44cee79de39c51a8adb1e1ca05.png
  • NAT模式
  1. 工作流程
    1. 客户端的请求发往Director 的VIP。
    2. Director发到客户端请求报文后,将报文中的目标Ip修改为集群中的选定的RIP,目标端口80也修改成8080,然后将请求报文发往RS。
    3. 当RS收到请求报文后,在检查报文的目标IP为自己的RIP后,会接受报文并进行处理响应。响应的源Ip为RIP,目标IP为CIP,端口不变。
    4. Director收到RS的响应报文,修改响应报文的源IP为VIP,端口为80,然后转发给客户端。
    5. 客户端接受响应报文,其源IP为VIP,端口为80,整个过程对于客户端来说是透明无感知的。
  2. 特性
    1. 负载调度器必须位于真实服务器与客户端之间
    2. 真实服务器可以不是 Linux 操作系统,负载调度器必须是 Linux 操作系统,负载调度器必须是
    3. 真实服务器可以和负载调度器端口不一致,甚至不同真实服务器之间端口也可以不一致
    4. 入站与出站数据报文都经过负载调度器,压力较大

c5e10da41d859edfbf0c3cb27d5f6302.png
  • TUN模式
    • 转发方式工作,不修改请求报文的IP首部,而在源IP报文之外再封装一个IP首部(源IP是DIP,目标IP是RIP),且使用场景较少。暂不展开描述。

四、三种模式的对比

61f7d542a90281ee9aacac36c99e9088.png

五、算法

  1. 静态调度算法
    1. RR 轮询:将每次用户的请求分配给后端的服务器,从第一台服务器开始到第N台结束,然后循环
    2. WRR 加权轮询:按照权重的比例实现在多台主机之间进行调度
    3. SH(source hash)源地址散列:将同一个IP的用户请求,发送给同一个服务器
    4. DH(destination hash)目标地址散列:将同一个目标地址的用户请求发送给同一个真实服务器(提高缓存的命中率)
  2. 动态调度算法
    1. LC(lest-connection)最少连接:将新的连接请求,分配给连接数最少的服务器 活动连接 × 256 + 非活动连接
    2. WLC加权最少连接:特殊的最少连接算法,权重越大承担的请求数越多 (活动连接 × 256 + 非活动连接 ) / 权重
    3. SED最短期望延迟:特殊的WLC算法 (活动连接 + 1) * 256 / 权重
  3. 其他调度算法
    1. NQ永不排队:特殊的 SED 算法,无需等待,如果有真实服务器的连接数等于0那就直接分配不需要运算
    2. LBLC特殊的DH算法:即能提高缓存命中率,又要考虑服务器性能
    3. LBLCR LBLC+缓存:尽可能提高负载均衡和缓存命中率的折中方案(针对热点事件)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值