LVS负载均衡入门

一、 集群(cluster)的概念

随着技术的发展,业务对服务器的性能、可靠性和承载能力等提出了越来越高的要求。于是出现了集群的概念,即把2台或以上的服务器,以特定的方式组合在一起,用于满足业务需求。

为了提高服务器性能,主要是计算性能、缓存性能等,出现了高性能集群——HPC(High Prefermance Computing)。简单说就是,8核的服务器计算能力不够用了,把10台8核服务器组合到一起,变成一个80核的服务器集群,对外表现为一台拥有80核计算能力的服务器。

为了满足业务对可靠性的要求(通常会以业务中断时长占全年时间的占比类衡量,如:99.999%,即全年99.999%的时间,业务都在正常运行。),就需要尽可能减少单台或多台服务器宕机对业务的影响,于是就有了高可靠性或高可用性集群HA(High Availibility)。通常做法是,对主要和关键服务器做双机热备,或多机热备,一台服务器宕机,备用服务器立即接替,做到无缝切换。达到一台服务器宕机,不影响业务正常运行的目的。

为了满足承载更大业务量的需求,就需要对原有服务器进行升级,甚至多台服务器协同分担压力,这也就是负载均衡服务器集群LB(Load Balance)。通过特定的软硬件,连接和设置多台服务器,使用一定的算法,使多台服务器合理分担所有负载,达到业务扩容的目的。

二、LB负载均衡类集群

实现方式:

  • 硬件负载均衡器:
  • 软件负载均衡器,比较流行的有:
    Nginx负载均衡:基于OSI第七层应用层,可做精细分流,应用范围一般在几十~200个节点之间;
    LVS负载均衡:基于OSI第四层传输层,做数据粗略分流,应用范围一般在300个节点以上。

三、LVS:即:Linux Virtual Server,Linux虚拟服务器。

LVS负载均衡架构主要由以下部分组成:

  1. VIP:Virtual IP,LVS集群对外提供服务的IP地址;
  2. 分发器:Director,负责接受客户端的请求,使用指定算法将请求分发给后端的服务器;
  3. 服务器池:ServerPool,提供服务的所有服务器集合。每台服务器为一个RS(Real Server)。
  4. 共享存储:Shared Storaged,为RS提供具有一致性的数据,使每台服务器都可以提供相同的内容。

四、LVS数据包转发模式:

1、NAT模式:

分发器接收到客户端请求后,使用指定算法,把请求数据包中的目标地址由VIP改为后端服务器池中的一台服务器的IP,并转发过去。服务器处理完请求,返回请求结果给分发器。分发器再把请求结果中的目标地址,由自身IP改为发送请求的客户端IP,并发送出去。
优点: 只需要一个公网IP;支持任何操作系统;支持私有网络。
缺点: 由于每次转发都需要地址转换,有一定的延迟;由于在客户端和服务器之间的数据传输中,有80%的数据是从服务器流向客户端,导致分发器的性能大部分被输出流占据,限制了分发器的性能,是使分发器称为集群性能的瓶颈。
负载能力: 10台左右,基本上不用于生产环境。

2、IP Tunneling:

和NAT方式类似,分发器按照指定算法,将客户端请求分发给各个服务器。但请求结果的返回方式与NAT方式不同,各个服务器都有2块网卡,一块用于接收请求,另一块用于直接和客户端通讯,返回请求结果。
优点: 相对NAT模式,减少了分发器的压力,大大提高了处理能力;由于请求结果不需要原路返回,该模式不仅可以在LAN环境中运行,也可以在WAN环境中运行,即允许地理上的分布,对灾难恢复有重要意义。
缺点: 每台服务器都需要有一个正式的IP地址,用于和客户端通讯。并且都需要支持IP隧道协议(即一块网卡接收请求,另一块网卡返回请求)。
负载能力: 节点数可以达到100个以上。

3、DR(Direct Routing):

与IP Tunneling模式类似,分发器按照指定算法,分发请求到后端服务器上,后端服务器直接返回数据给客户端。与IP Tuneling模式不同的是,分发器在分发请求时,不再做IP封装处理,而是改用VIP+MAC地址寻址的方式。这种方式需要改写每台服务器的回环地址为VIP地址,并开启ARP返回抑制功能。让服务器不直接返回请求结果给分发器,而是向IP Tunneling模式一样,通过另一块网卡,直接返回结果给客户端。
优点: 相对NAT模式,同样减少了分发器的压力,大大提升了分发器的处理能力。取消了IP封装,客户端访问延迟降低。
缺点: 由于采用了MAC地址寻址方式,所以服务器池必须存在于同一个物理网段中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值