LVS介绍

Nginx与LVS区别:

  Nginx 7层  反向代理

  LVS  4层   数据包的转发

 

LVS介绍:

    LVS是linux Virtual server简写,虚拟服务器

 LVS负载均衡调度技术是在LINUX内核中实现的,使用该软件配置LVS时候,不能直接配置内核中的ipvs,而是使用ipvs的管理工具ipvsadm(命令行工具)进行管理,但是keepalived软件可以直接管理ipvs

 

  虚拟IP地址(Virtual  ip  address)    VIP     vip为Director用于向客户端计算提供服务的IP地址

  真实IP地址(Real Server IP address) RIP    在集群下面节点上使用的IP地址,物理IP地址

Director的IP地址(Director IP address) DIP   Director用于连接外网网络的IP地址,物理网卡上的ip地址

客户端主机ip地址(Client IP address)  CIP   客户端用户计算机请求集群服务器的IP地址

 

 

LVS 集群的4种工作模式介绍以及原理介绍

  1. NAT(Network Address Translation)
  2. TUN(Tunneling)
  3. DR (Direct Routing)最常用的
  4. FULLNAT(Full Network Address Translation)为阿里巴巴开发的

 

DR模式:

(仅供参考)

 

  特点

  1.    通过在调度器LB上修改数据包的目的mac地址实现转发,源IP地址仍然是CIP,目的IP地址仍然是VIP
  2.      请求的报文经过调度器,而RS响应处理后的报文无需经过调度器LB,因此并发访问量大时使用效率很高(和NAT相比)
  3.     因DR模式是通过MAC地址的改写机制实现的转发,因此所有RS节点和调度器LB只能在一个局域网中
  4.    需要注意RS节点的VIP的绑定(lo:VIP/32,lo1:vip/32)和arp抑制问题
  5.      RS节点的默认网关不需要是调度器LB的DIP,而直接是IDC机房分配上级路由器的ip(这是RS带有外网ip地址情况),理论上来讲,RS可以出外网即可,不是必须配置外网ip
  6.       由于DR模式的调度器仅进行了目的MAC地址的改写,因此,调度器LB无法改变请求的报文的目的端口
  7.            当前调度器LB支持几乎所有unix/linux系统,但是目前不支持windows系统,真是服务器RS节点可以是windows
  8.           DR模式效率很高,配置比较麻烦,访问量不是特别大的时候,可以使用haproxy/nginx取代即可(参考1000-2000pv)
  9.        直接对外的访问业务,列如web服务做RS节点,RS最好用公网ip地址,如果不直接对外的业务,列如:mysql,存储系统RS节点最好用内部IP

 

NAT模式:

   特点

  1.      nat技术将请求的报文(通过DNAT方式改写)和响应的报文(通过SNAT方式改写),通过调度器地址重写然后在转发给内部的服务器,报文返回时在改写成原来的用户请求的地址
  2.    只需要在调度器LB上配置wan公网ip即可,调度器也要有私有lan ip和内部RS节点通信
  3.    每台内部RS节点的网关地址,必须要配成调度器LB的私有LNA内物理网卡地址(LDIP),才能确保数据报文返回时仍然经过调度器LB
  4.     由于请求与相应的数据报文都经过调度器LB,因此,网站访问量大的时候,LB有瓶颈,一般要求最多10-20台节点
  5.    NAT模式支持对IP及端口的转换,即用户请求10.0.0.1:80 可以通过调度器转换到RS节点的10.0.0.2:8080(DR和TUN模式不具备)
  6.  所有NAT内部RS节点只需要配置私有LAN IP即可
  7.    由于数据包来回都需要经过调度器,需要开启内核转发  net.ipv4.ip_forward = 1,也要包括iptables防火墙forward功能

 

 

TUNNEL模式

  特点

  (直接加ip头)

  1. 负载均衡器通过把请求的报文通过IP隧道的方式
  2. 由于真是服务器将相应处理后的报文直接返回给客户端用户,因此,最好RS有一个外网ip地址,这样效率会更高
  3. 由于调度器LB只处理入站请求的报文,,集群系统的吞吐量可以提高10倍以上,但是隧道模式也会带来系统开销,TUN模式适合LAN/WAN
  4. TUN模式的LAN环境转发不如DR模式效率高,而且还要考虑系统对IP隧道支持问题
  5. 所有的RS服务器都要绑定VIP,一直ARP,配置复杂
  6. LAN环境一般采用DR模式,wan环境可以用TUN模式,但是当前在WAN环境下,请求转发更多被haproxy/nginx/DNS调度等代理取代
  7. 直接对外的访问业务,列如web服务做RS节点,最好用公网ip地址,不直接对外的业务最好内部ip

 

 

 

LVS最常用的几种算法

rr   轮循调度,分配不同的RS节点

wrr   加权轮询调度,根据节点权值分配任务

wlc   加权最小连接数调度

dh  目的地址哈希调度

sh   源地址哈希调度

 

posted @ 2018-03-28 17:23  大仙儿没溜儿  阅读(354)  评论(0编辑  收藏  举报