Chinaunix首页 | 论坛 | 博客
  • 博客访问: 637101
  • 博文数量: 244
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 130
  • 用 户 组: 普通用户
  • 注册时间: 2016-06-27 09:53
个人简介

记录学习,记录成长

文章分类

全部博文(244)

我的朋友

分类: LINUX

2015-10-14 22:04:08

LVS的三种工作方式
工作方式:
VS-NAT
VS-DR
VS-TUN

1.VS-NAT网络地址转换
这个是通过网络地址转换的方法来实现调度的。首先调度器(LB)接收到客户的请求数据包时(请求的目的IP为VIP),根据调度算法决定将请求发送给哪个后端的真实服务器(RS)。然后调度就把客户端发送的请求数据包的目标IP地址及端口改成后端真实服务器的IP地址(RIP),这样真实服务器(RS)就能够接收到客户的请求数据包了。真实服务器响应完请求后,查看默认路由(NAT模式下我们需要把RS的默认路由设置为LB服务器。)把响应后的数据包发送给LB,LB再接收到响应包后,把包的源地址改成虚拟地址(VIP)然后发送回给客户端。

图:VS-NAT

原理简述:
1)客户端请求数据,目标IP为VIP;
2)请求数据到达LB服务器,LB根据调度算法将目的地址修改为RIP地址及对应端口(此RIP地址是根据调度算法得出的)并在连接HASH表中记录下这个连接。
3)数据包从LB服务器到达RS服务器,然后服务器进行响应。因为Webserver的网关是LB的DIP,然后将数据返回给LB服务器。
4)收到RS的返回后的数据,根据连接HASH表修改源地址为VIP目标地址为CIP,及对应端口.然后数据就从LB出发到达客户端。
5)客户端收到的就只能看到VIP\DIP信息。

VS-NAT基本性质:
1.集群的节点和调度器在同一网段;
2.集群节点的RIP地址一般为私有地址,仅用于个节点间通信;
3.调度器负责处理客户端和realserver之间的所有进出通信;
4.realserver将DIP作为默认网关;
5.调度器支持端口映射,请求VIP的端口和RIP的端口可以使不同的;
6.realserver可以使任意操作系统;
7.因为调度器负责通信的进出,所以在交大应用场景中,调度器容易成为系统瓶颈;

VS-NAT模式优缺点:
1、NAT技术将请求的报文和响应的报文都需要通过LB进行地址改写,因此网站访问量比较大的时候LB负载均衡调度器有比较大的瓶颈,一般要求最多之能10-20台节点
2、只需要在LB上配置一个公网IP地址就可以了。
3、每台内部的节点服务器的网关地址必须是调度器LB的内网地址。
4、NAT模式支持对IP地址和端口进行转换。即用户请求的端口和真实服务器的端口可以不一致。

2.VS-DR直接路由
DR模式是通过改写请求报文的目标MAC地址,将请求发给真实服务器的,而真实服务器响应后的处理结果直接返回给客户端用户
当客户端访问集群中服务器提供的服务时,请求包会直接发往调度器,调度器会检查请求包中的目的地址和端口号,如果和服务匹配,那么就会根据调度算法来选择一个真实服务器响应并且将此次连记入hash表中。然后调度器转发请求包给选择的真实服务器,如果这个进入的包数次此次连接且选择的服务器在hash表中,那么这个包会直接路由到服务器上,当服务器收到这个包并且发现其目的地址在自己接口上,所以会处理这个请求并且将处理结果直接返回给客户端。当连接结束或超时后,这个连接记录将从hash表中删除;
图:VS-DR

原理简述:
1.客户端向调度器发出请求,调度器接收;
CMAC VMAC CIP VIP
2.调度器根据负载均衡算法选择一台合适的realserver然后将请求报文的数据帧的目标MAC地址改为该realserver的MAC地址,最后将此数据帧在局域网内发送;
CMAC RMAC CIP VIP
3.realserver在局域网内收到该数据帧,拆开后发现目标IP是VIP,与本地匹配(只有自己的IP符合目标IP才会接收进来,所以我们需要在本地的回环借口上面配置VIP)于是处理这个报文,随后重新封装报文,发送到局域网;
RMAC CMAC VIP CIP
4.如果客户端与LVS在同一网段,那么客户端将直接收到这个回复报文。如果跨了网段,那么报文通过路由器经由Internet返回给客户端;


VS-DR的基本性质:
1.集群节点和调度器必须在同一个物理网络中;
2.集群节点的RIP地址不必是私有地址,如可为公网地址以实现远程管理;
3.调度器只负责处理入站请求,响应报文由realserver直接发往客户端;
4.realserver不能将网关指向调度器,而是直接配置为上级路由的网关,能让RS直接出网就可以;
5.调度器不支持端口映射;
6.集群中的realserver可以是大多数操作系统(realserver要隐藏VIP);
7.realserver主机需要绑定VIP地址在LO接口上(有相同的VIP和单独的RIP),并且需要配置ARP抑制(由于网络接口都会进行ARP广播响应,但集群的其他机器都有这个VIP的lo接口,都响应就会冲突。所以我们需要把真实服务器的lo接口的ARP响应关闭掉;)


3.VS-TUN隧道模式
和NAT模式不同的是,它在调度器和realserver之间的传输不用改写IP地址。而是把客户请求包封装在一个IPtunnel里面,然后发送给集群节点服务器,节点服务器接收到之后解开IP tunnel后,进行响应处理。并且直接把包通过自己的外网地址发送给客户不用经过LB服务器
图:VS-TUN


原理简述:
1.客户端发送请求数据包到调度器上;
CIP VIP
2.调度器接受数据包,根据调度算法选择一个realserver并记录信息到hash表中,然后进行IP  Tunnel封装(在原有包头加上IP  Tunnel包头)发给被选择的realserver;
IPTunnel CIP VIP
3.realserver接收数据包并去封装后取出请求IP数据包,发现目的地址是VIP,而realserver在自己的lo:0口上有这个IP地址,于是处理该的请求;
CIP VIP
4.realserver根据自己的路由表通过Internet将处理结果直接发送给客户端,当传输完毕或超时后,从hash表中删除记录信息;
VIP CIP


VS-TUN的基本性质:
1.集群节点可跨越互联网(处于不同的物理网络中);
2.realserver的RIP必须是公网地址;
3.调度器仅处理入站请求,响应报文由realserver直接发送给客户端;
4.只有支持隧道功能的操作系统才能用于realserver;
5.调度器不支持端口映射;
6.realserver的默认网关不能指向调度器;
7.realserver主机需要绑定VIP地址在LO接口上(各个服务器有相同的VIP和单独的RIP);

三种IP负载均衡技术的优缺点比较:
选项         VS/NAT     VS/TUN      VS/DR
服务器操作系统    任意      支持隧道     多数(支持Non-arp )
服务器网络      私有网络    局域网/广域网    局域网
服务器数目(100M网络)   10-20     100         多(100)
服务器网关      负载调度器   自己的路由    自己的路由
效率         一般      高        最高

阅读(1259) | 评论(0) | 转发(0) |
0

上一篇:MYSQL的权限

下一篇:LVS的十种调度方法

给主人留下些什么吧!~~