18.7 LVS介绍

LVS介绍

  • LVS是由国人章文嵩开发
  • 流行度不亚于apache的httpd,基于TCP/IP作的路由和转发,稳定性和效率很高
  • LVS最新版本基于Linux内核2.6,有好多年不更新了
  • LVS有三种常见的模式:NAT、DR、IP Tunnel
  • LVS架构中有一个核心角色叫作分发器(Load balance),它用来分发用户的请求,还有诸多处理用户请求的服务器(Real Server,简称rs)

LVS NAT模式

  • LVS NAT模式,借助iptables的nat表来实现
  • 用户的请求到分发器后,经过预设的iptables规则,把请求的数据包转发到后端的rs上去
  • rs须要设定网关为分发器的内网ip
  • 用户请求的数据包和返回给用户的数据包所有通过分发器,因此分发器成为瓶颈
  • 在nat模式中,只须要分发器有公网ip便可,因此比较节省公网ip资源

输入图片说明

  • 原理图解释:
    • Load Balancer,就是一个分发器;把用户的请求,分发给后端的Real Server ,Real Server这些服务器接收到请求之后,处理好用户请求之后,就从新丢回给Load Balancer;最后Load Balancer再返回给用户;
    • 这个模式的弊端,当访问量、请求量、反馈量大的时候,Load Balancer的压力很大
    • LVS规模,通常规模最多支持10来台服务器,超过10台的话就会有力不从心;
    • nat模式这个结构,只须要有一个公网IP,其余real server服务器所有在内网就能够实现。优势,节省不少的资源

LVS IP Tunnel模式

  • LVS IP Tunnel模式,须要有一个公共的IP配置在分发器和全部rs上,咱们把它叫作vip
  • 客户端请求的目标IP为vip,分发器接收到请求数据包后,会对数据包作一个加工,会把目标IP改成rs的IP,这样数据包就到了rs上
  • rs接收数据包后,会还原原始数据包,这样目标IP为vip,由于全部rs上配置了这个vip,因此它会认为是它本身

输入图片说明

  • 原理图解释:
    • 在load balancer与real server之间创建了虚拟通道,叫作 ip tunnel ;其实是更改了数据包 目的IP;请求过来经过load balancer,经过在real server上配置的VIP;用户请求的时候,数据包里面包好的目的IP,当数据包到达load balancer的时候,load balancer会进行一个数据包目的IP的更改,而后发送到具体的real server上,经过lvs的本身的算法,进行实现到底传输到那个real server上;而后real server再解包处理,再经过一个VIP直接返回到用户,这就省略数据回到load balancer分发器的过程,这样就load balancer就没有瓶颈

LVS DR模式

  • LVS DR模式,也须要有一个公共的IP配置在分发器和全部rs上,也就是vip
    • 和IP Tunnel不一样的是,它会把数据包的MAC地址修改成rs的MAC地址
    • rs接收数据包后,会还原原始数据包,这样目标IP为vip,由于全部rs上配置了这个vip,因此它会认为是它本身

输入图片说明

相关文章
相关标签/搜索