1. LVS介绍
LVS是Linux Virtual server的简称, 也就是Linux虚拟服务器.基于四层的负载均衡器
Linux软件作用: 通过LVS提供的负载均衡技术和Linux操作系统实现一个高性能. 高可用的服务器群集, 他具有良好的可靠性.可扩展性.可操作性. 从而以低廉的成本实现最优的服务性能.
2. LVS优势与不足
(1) 优势
高并发连接
稳定性强
成本低廉
配置简单
支持多种算法
支持多种工作模式
应用范围广
(2) 不足
工作在第四层, 不支持7层规则修改, 机制过于庞大, 不适合小规模应用.
3. LVS核心组件和专业术语
(1) 核心组件
ipvsadm: 管理工具, 命令行工具,用于管理集群服务及集群服务上的RS
ipvs: 内核模块, 工作于内核上的程序, 可根据用户定义的集群实现请求转发
(2) 专业术语
VS: Virtual Server #虚拟服务
Director, Banlancer #负载均衡器, 分发器
RS: Real Server #后端请求处理服务器
CIP: Client IP #用户端IP
VIP: Director Virtual IP#负载均衡器虚拟IP
DIP: Director IP #负载均衡器IP
RIP: Real Server IP #后端请求处理器IP
4. LVS负载均衡四种工作模式
(1) NAT模式
网络地址转换模式
进站/出站的数据流量经过分发器 --利用三层功能
(2) DR模式
直接路由模式
只有进站的数据流量经过分发器 --利用二层功能mac地址
(3) TUN模式
隧道模式
只有进站的数据流量经过分发器 DIP-(CIP-VIP)-RIP
(4) full-nat
双向转换:通过请求报文的源地址为DIP,目标为RIP来实现转发:对于响应报文而言,修改源地址为VIP,目标地址为CIP来实现转发
5. LVS的调度算法
LVS的调度算法分为静态与动态两类.
(1)静态算法 (四种)
① RR 轮叫调度
② WRR 加权轮叫
③ DH 目标地址散列调度
④ SH 源地址hash
(2) 动态算法 (6种)
① LC 最少链接
② WLC 加权最少链接 (默认)
③ SED 最短期望延迟调度 (负载率最低的优先分配请求)
④ SH 源地址hash
⑤ LBLC 基于局部性的最少链接
⑥ LBLCR 带复制的基于局部性最少连接