一、介绍
LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一 个由章文嵩博士发起的自由软件项目,它的官方站点是 www.linuxvirtualserver.org。
linuix 内核2.4以前没有需要重新编译
LVS软件作用:通过LVS提供的负载均衡技术和Linux操作系统实现 一个高性能、高可用的服务器群集,它具有良好可靠性、可扩展性和 可操作性。从而以低廉的成本实现最优的服务性能
负载均衡(Load Balance)负载均衡集群为企业需求提供了可解决 容量问题的有效方案。负载均衡集群使负载可以在计算机集群中尽可能平均 地分摊处理。 负载通常包括应用程序处理负载和网络流量负载。这样的系统非常适合向使 用同一组应用程序的大量用户提供服务。每个节点都可以承担一定的处理负 载,并且可以实现处理负载在节点之间的动态分配,以实现负载均衡。对于 网络流量负载,当网络服务程序接受了高入网流量,以致无法迅速处理,这时 ,网络流量就会发送给在其它节点上运行的网络服务程序。也可根据服务器 的承载能力,进行服务请求的分发,从而使用户的请求得到更快速的处理。
高可用:使得任何一个机器坏了整个系统还是能正常运行。
高可用负载均衡技术类型:基于4层负载均衡技术和基于7层负载均衡技术 ,使得任何一个机器坏了整个系统还是能正常运行。
lvs是工作在内核中的第四层(TCP/UDP)层
?
1、特点:
高并发连接:LVS基于内核网络层面工作,有超强的承载能力和并发处理 能力。单台LVS负载均衡器,可支持上万并发连接。
稳定性强:是工作在网络4层之上仅作分发之用,这个特点也决定了它在负 载均衡软件里的性能最强,稳定性最好,对内存和cpu资源消耗极低。
成本低廉:硬件负载均衡器少则十几万,多则几十万上百万,LVS只需一 台服务器和就能免费部署使用,性价比极高。
配置简单:LVS配置非常简单,仅需几行命令即可完成配置,也可写成脚 本进行管理。
支持多种算法:支持多种论调算法,可根据业务场景灵活调配进行使用
支持多种工作模型:可根据业务场景,使用不同的工作模式来解决生产环 境请求处理问题。
应用范围广:因为LVS工作在4层,所以它几乎可以对所有应用做负载均衡 ,包括http、数据库、DNS、ftp服务等等
缺点:工作在4层,不支持7层规则修改,机制过于庞大,不适合小规模应 用。
?
2、LVS 核心组件和专业术语:
?
3、LVS工作流程图:
?
1.当客户端的请求到达负载均衡器的内核空间时,首先会到达 PREROUTING链。
2.当内核发现请求数据包的目的地址是本机时,将数据包送往INPUT链。
3.LVS由用户空间的ipvsadm和内核空间的IPVS组成,ipvsadm用来定 义规则,IPVS利用ipvsadm定义的规则工作,IPVS工作在INPUT链上, 当数据包到达INPUT链时,首先会被IPVS检查,如果数据包里面的目的 地址及端口没有在规则里面,那么这条数据包将被放行至用户空间。
4.如果数据包里面的目的地址及端口在规则里面,那么这条数据报文将被 修改目的地址为事先定义好的后端服务器,并送往POSTROUTING链。
5.最后经由POSTROUTING链发往后端服务器
?
4、LVS 负载均衡几种工作模式
lvs-nat:修改请求报文的目标IP,多目标IP的DNAT
lvs-dr:操纵封装新的MAC地址
lvs-tun:在原请求IP报文之外新加一个IP首部
lvs-fullnat:修改请求报文的源和目标IP
(加粗的主要讲)
原文地址:http://blog.51cto.com/11566825/2130705
时间: 2024-10-11 18:24:34