lvs-keepalive 三种模式及其原理

lvs-keepalive 三种模式及其原理

LVS(linux virtual server)----->linux虚拟服务器,目前LVS模块已经被集成在linux内核中了。

终端互联网用户从外部访问公司的外部负载均衡服务器,终端用户的web请求会发送给LVS调度器,调度器根据自己欲设算法将该请求发送给后端的某台web服务器,比如轮询调度法,一共有8中调度方法。LVS工作模式可以分为NAT模式、TUN模式和DR模式

NAT模式

image
NAT(network address translation) 网络地址转换,其主要原理是修改数据报头,使得位于企业内部的私有ip地址可以访问外王,以及外部用户可以访问位于公司内部的私有的ip主机。

工作原理:
  • 用户通过互联网DNS服务器解析到公司负载均衡设备上的外网地址,相对于真实服务器而言,LVS外网ip又称为vip,用户通过访问vip,即可连接后端的真实服务器,而此时用户对这一切都是不可知的,用户认为自己还在访问真实的后端服务器,也不知道自己访问的vip只是一个调度器。

  • 用户将请求发送至调度器上,此时LVS根据算法选择一个后端的真实服务器,将数据请求包转发给真实服务器,并在转发之前LVS会修改数据包中的目标地址以及目标端口,此时修改为真实的服务器ip地址

  • 真实的服务器将响应的数据包返回给LVS调度器,调度器在响应数据包后会将源地址和源端口修改为vip及调度器相应端口,修改完成后,由调度器响应数据包发送给终端

  • LVS调度器中有一个连接Hash表,该表会记录连接请求及其转发信息,当同一个连接下一个数据包发送给调度器时,该Hash'表可以直接找到之前连接的记录,并根据记录信息选出相同真实服务器及其端口信息。

NAT优点

NAT的优点时服务器可以运行在任何支持TCP/IP的操作系统,他只需要在调度器上配置一个ip
服务器组可以用私有的ip地址。节省公网Ip地址

NAT缺点

伸缩能力有限,当服务器节点数目上升到20时,调度器本身有可能成为系统的新瓶颈,因为请求和响应的报文都需要经过调度器。
数据是原路返回的,一般通过http请求数据请求头以及包数据很小,但是返回来的数据很大,宽带是有限制的,就造成了局限性

TUN模式

image

工作原理
  • NAT模式,所有数据包的请求的回应的哦欧需要经过调度器处理,但是在TUN模式中,将NAT模式中的问题有所解决。因为数据包的请求包往往远远小于响应数据包的大小。
  • 因为响应数据包中有包含客户需要的具体数据所以,TUN的原理就是将请求与响应数据分离。,让调度器仅仅处理数据请求,让真实的服务器响应数据包直接返回给客户。

IP(隧道)是一种数据包分装技术,他可以经原始的数据包分装并添加新的包头(内容包括新的源地址及端口、目标地址及端口),从而实现将一个目标为调度器的vip地址的数据包分装,通过隧道转发给真实的后端服务器,通过将客户端发往调度器的原始数据包分装,并在其基础上添加新的数据包头(修改目标地址为调度器选择出来的真实服务的ip地址以及对应端口),lLVS(Tun)模式要求真实的服务器可以与外部网络连接,真实服务器在受到请求数据包后直接给客户端返回响应数据。

LVS(Tun)技术对服务器有要求,即所有服务器必须支持"IP Tunneling"或者IP Encapsulation”协议。目前,VS/TUN 的后端服务器主要运行 Linux 操作系统

TUN优点

解决了NAT模式伸缩困难的问题

TUN缺点

让真实服务器暴露在公网中,而且每台机器都要配置一个公网Ip

DR模式

image

工作原理
  • 在LVS(TUN)模式中,需要LVS调度器与真实的服务器之间创建隧道连接,这样就会增加服务器的负担。DR模式也叫路由模式,该模式中LVS依然仅承担数据的请求以及根据算法调度出合理的后端服务器,最终由后端真实服务器负责响应数据包发送返回给客户端。
  • 与隧道模式不同的是,DR模式要求调度器与后端服务器必须在统一个局域网内,VIP地址需要在调度器与后端所有服务器之间共享
  • 最终的真实服务器会给客户端回应数据包时需要设置源IP为VIP,目标IP为客户端IP,这样客户端访问的时调度器VIP地址,回应的源地址也是VIP,这样客户端是感觉不到后端服务器的存在。
  • 由于多台计算机都设置了同样的VIP地址,所以在直接路由模式中要求调度器的VIP是对外可见的,客户端将请求数据包发送到调度器主机,而所有的真实服务器的VIP必须配置在Non-ARP的网络上ARP是一个协议。调度器根据算法在选出真实的服务器后,在不修改数据报文的情况下,将数据帧的MAC地址修改为选出的真实的MAC地址,通过交换机将该数据帧发给真实的服务器。
DR优点

解决了NAT模式伸缩困难的问题,上限不再是20多个节点,因为数据和请求分离,数据真实服务器改MAC地址以VIP的身份发给用户
解决了DR模式直接暴露公网地址给用户的风险,而是通过修改MAC地址,让用户无感知是真实服务器返回的

DR缺点

只能作用于局域网,不能跨网络,数据发送给路由器,路由器在链路层在包装一个目标地址的mac地址,路由器就通过ma地址直接找打了了服务器,服务器处理完不原路返回,自己就返回给客户端,这样带宽的限制就没有

DR模式安装

待更新...

文档参考

lvs的三种模式及其原理

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值