LVS简介
LVS是什么?
LVS的英文全称是Linux Virtual Server,即Linux虚拟服务器。它是我们国家的章文嵩博士的一个开源项目。在linux内核2.6中,它已经成为内核的一部分,在此之前的内核版本则需要重新编译内核。
LVS能干什么?
LVS主要用于多服务器的负载均衡。它工作在网络四层,可以实现高性能,高可用的服务器集群技术。它廉价,可把许多低性能的服务器组合在一起形成一个超级服务器。它易用,配置非常简单,且有多种负载均衡的方法。它稳定可靠,即使在集群的服务器中某台服务器无法正常工作,也不影响整体效果。另外可扩展性也非常好。
Linux Virtual Server项目
网络分层
IP虚拟服务器软件IPVS
用户的请求通过网络,网络的话就是一跳一跳的路由器,用户的请求经过这路由器一跳一跳的最终到达我们机房,机房会有一个nat把外网转化为内网,到了内网以后,我们会有一个IP,IP是我们服务器的IP地址,这时候我们会通过一个协议arg协议,把IP地址转为MAC地址,MAC地址是我们的网卡地址,我们的IP相当于一个软地址。MAC地址是一个硬件地址,网卡地址,通过网卡地址我们才能标识一台机器具体的网卡,然后我们的web服务最终都是通过这个网卡对外输出我们的数据,或者对内接收请求的,进而找到我们的端口。
区别:
- DR改写的是MAC地址,NAT则是IP地址。
- DR响应报文直接给客户端,NAT是发给负载均衡服务器,重写响应报文的原地址,再发给客户端。
请求报文到达我们的负载均衡器时,负载均衡器通过IP隧道技术(报文封装,在原报文当作报文体再加上一个报文头封装为新的报文,新加的报文体中有我们RS服务器的IP,所以发出去后能直接到达真实服务器),把请求报文进行包装,真实服务器收到后,去掉报文头得到用户的IP,把响应报文直接发还给客户端。
IPVS调度算法
内核Layer-7交换机KTCPVS
LVS集群特点