LVS

LVS NAT模式

NAT模式的主要实现原理是通过网络地址转换,LB重写请求报文的目标地址(包括IP和MAC),根据预设的调度算法,将请求分派给后端的RS;RS的响应报文通过LB返回时,报文的源地址被重写,修改为LB的MAC和IP,再返回给客户,完成整个负载调度过程。

请添加图片描述

  • 当用户访问服务器群集提供的服务时,发往虚拟服务器IP(VIP/LB的外部IP地址)的数据包将到达LB
  • LB检查数据包的目标地址和端口号。如果符合在LVS的规则表中定义添加的服务,则根据调度算法从后端群集中选择一个RS,并将该连接添加到记录已建立连接的哈希表中、
  • 然后,将数据包的目标地址和端口重写为所选RS的地址和端口,然后将数据包转发到RS
  • 当传入的数据包符合在LVS的规则表中定义添加的服务并且可以在哈希表中找到所选的RS时,该数据包将被重写并直接转发到所选的RS
  • 当RS处理完请求之后,会把回复数据包返回给LB,此时LB会将数据包的源地址和端口重写为虚拟服务的源地址和端口,然后发送给客户端
  • 连接终止或超时后,连接记录将在哈希表中删除

请添加图片描述

LVS via IP Tunneling(TUN)

采用NAT技术时,虽然对于客户端来说整个服务器集群中的LVS负载均衡过程是无感的(因为对于客户端来说请求包发送的目标IP和响应包返回的源IP都没有改变),但是由于请求和响应报文都必须经过LB进行重写,当客户请求越来越多时,LB的处理能力将成为整个集群中的瓶颈。

为了解决这个问题,LB把请求报文通过IP隧道转发至RS,而RS将响应直接返回给客户端,所以LB只需要处理请求报文。由于一般网络服务应答的数据包要比请求数据包大许多,采用 VS/TUN技术后,集群系统的最大吞吐量可以大大提高。

请添加图片描述

  • 客户端请求LVS集群提供的服务,数据包发送到VIP
  • LB检查数据包的目的地址和端口,如果符合在LVS的规则表中定义添加的服务,则根据调度算法从后端群集中选择一个RS,并将该连接添加到记录已建立连接的哈希表中
  • LB对请求的数据包进行封装,在VIP外面再封装一层目标RS的IP地址,然后将它发送到对应的RS上
  • 当传入的数据包符合在LVS的规则表中定义添加的服务并且可以在哈希表中找到所选的RS时,该数据包将被直接封装IP并转发到所选的RS
  • RS接收到数据包后,对其进行解封并且处理请求,然后将响应数据包直接发送到客户端
  • 连接终止或超时后,连接记录将在哈希表中删除

请添加图片描述

注意在这种模式下的RS可以是在物理位置上分离的服务器(如可以分布在不同地区的机房),只要拥有在任意网络中的任意真实IP即可(相对VIP而言)。此外,此时的RS需要支持IP封装协议并且需要和LB直接配置好IP隧道,同时VIP需要配置到非ARP响应的网卡设备上。请添加图片描述

LVS via Direct Routing(DR)

VS/DR通过改写请求报文的MAC地址,将请求发送到RS,而RS将响应直接返回给客户。和VS/TUN技术一样,VS/DR技术可极大地提高集群系统的伸缩性。这种方法没有IP隧道的开销,对集群中的RS也没有必须支持IP隧道协议的要求,但是因为使用的是MAC地址进行二层转发,所以要求LB和RS都有一块网卡连在同一物理网段上。请添加图片描述

  • 客户端请求LVS集群提供的服务,数据包发送到VIP
  • LB检查数据包的目的地址和端口,如果符合在LVS的规则表中定义添加的服务,则根据调度算法从后端群集中选择一个RS,并将该连接添加到记录已建立连接的哈希表中
  • LB对请求的数据包进行封装,在VIP外面再封装一层目标RS的MAC地址,然后将它发送到对应的RS上
  • 当传入的数据包符合在LVS的规则表中定义添加的服务并且可以在哈希表中找到所选的RS时,该数据包将被直接封装IP并转发到所选的RS
  • 由于RS的本地lo接口上面绑定了VIP,且这时MAC地址是RS自身的MAC地址,所以RS接收到数据包后会处理请求,然后将响应数据包直接发送到客户端
  • 连接终止或超时后,连接记录将在哈希表中删除

请添加图片描述
由于LB只是简单地对数据包的MAC地址更改为RS的MAC地址并且将其重新发送到局域网中,所以要求LB和RS必须要在同一个局域网中,这样才能直接利用MAC来进行二层传输。

请添加图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值