1、LVS :四层负载均衡设备,可针对IP和端口进行匹配相应的规则后端
借鉴iptables工做机制,工做在input链上,在上面设置规则,一旦发现用户请求集群服务,强行修改报文,经过postrouting链转发给其主机
网络
命令行工具:ipvsadm(管理集群服务)session
内核模块: ipvs负载均衡
2、LVS类型:NAT(地址转换):须要两个网卡,一个面对外网,一个面对后端服务,ide
集群节点跟idrector必须工做在同一个ip网络中工具
director位于client和relal server 之间,并负责处理进出的全部通讯post
realserver必须将网关指向DIP操作系统
diretory支持端口映射命令行
realserver能够使用任意操做系统
server
较大规模应用场景中,director易成为系统瓶颈
DR(直接路由):director只有一块网卡,只负责进来的请求并经过修改MAC地址进行分发,realserver能够直接响应响应用户请求,回应的源地址是VIP,通常能带动百台server
集群节点跟director必须在同一个物理网络中
RIP能够使用公网地址,实现便捷的远程管理
director仅负责入站请求,响应报文由realserver直接发往客户端
realserver不能将网关指向DIP
不支持端口映射
TUN(隧道):
集群节点能够跨越互联网
RIP必须是公网地址
director仅负责入站请求,响应报文由realserver直接发往客户端
realserver不能将网关指向DIP
只有支持隧道功能的OS才能用于realserver
不支持端口映射
3、LVS调度方法
固定(静态)调度:director不对后端主机进行健康检查
rr: 轮询
wrr: weight,加权
sh: source hash 源地址hash(主要用于session affinity)
dh: destination hash
动态调度:
lc(lest connection):最少链接active*256+inactive
wlc:加权最少链接(active*256+inactive)/weight
sed:最短时间望延迟(active+1)*256/weight
nq(nerver queue):
lblc:基于本地的最少链接
lblcr:基于本地带复制功能的最少链接