LVS集群类型简介

2016-12-26 09:27:50来源:作者:Linux公社人点击

第七城市
一、LVS-NAT

简述:多目标的DNAT,通过Director修改请求报文中的目标地址和端口为LVS挑选出来的某RS的RIP和PORT实现转发

特点:

(1)RIP和DIP必须在同一网络,且应该使用私网地址,RIP的网关必须指向DIP

(2)支持端口映射

(3)请求报文和响应报文都经过Director转发,较高负载下,Director易成为系统性能瓶颈

二、LVS-DR

简介:Director为请求报文重新封装一个MAC首部进行转发,源MAC地址是DIP所在接口的MAC,目标MAC是挑选出来的的某RS的RIP接口所在的MAC,IP首部不会发生变化(CIP/VIP)

核心要点:

(1)每个RS主机上都应有VIP,并且RIP配置在物理接口上,VIP配置在内置接口lo的别名上(lo:0),来自Director的请求报文进来时,经由RIP再到lo:0再到用户空间的进程,回去时控制响应报文先经过lo:0(此时源IP已封装成VIP)再由RIP离开,保证客户端接收到的报文源IP是VIP,目标IP是CIP

(2)让RS主机禁止响应ARP广播级别和通告级别

响应级别设定目的:当客户端请求过来时,让Director上的VIP响应,而不是让RS上的VIP响应,保证请求报文一定走Director

通告级别设定目的:当Director向RS转发时,经由的是RIP的接口,由于RS和Director都有VIP,会造成地址冲突,通过设定ARP通告级别可让其总是避免向非本网络通告(经由的是RIP接口,不会向非RIP接口的网络通告),因此解决了地址冲突问题

过程:

(1)客户请求在前端路由器发送ARP广播来获取Director的VIP所在网卡的MAC地址,获知后,在请求报文上封装MAC首部(源MAC是路由器接口的MAC,目标MAC是Director上VIP接口的MAC),保证将报文发送至Director

(2)Director接收到报文后,看到目标地址和目标MAC是自己,于是拆封MAC首部,请求报文进入INPUT链,之后发现是集群服务,于是准备向后端主机转发

(3)Director将请求报文(源地址CIP/目标地址VIP)再次封装一个MAC首部(源MAC是DIP的MAC/目标MAC是RIP的MAC)发往后端挑选出来的RS,RS发现目标MAC是自己,拆了MAC首部,发现目标地址是VIP,于是继续向lo:0转发,最终到达用户空间的进程给予响应,开始构建响应报文

(4)控制响应报文先经过lo:0(此时源IP已封装成VIP)再由RIP离开,保证客户端接收到的报文源IP是VIP,目标IP是CIP;此时可能需要另外一个路由器,如图所示,RIP的网关指向此路由,向外转发

特点:

(1)RS的RIP可以使用私网地址,也可以使用公网地址

(2)不支持端口映射

(3)RS跟Director必须在同一物理网络(一旦隔开,MAC会变);RS的网关必须不能指向DIP

(4)请求报文必须由Director调度,但响应报文必须不能经由Director

三、LVS-TUNNLE

简介:不修改请求报文的IP首部(源地址是CIP,目标地址是VIP),而是在原IP首部之外再封装一个IP首部(原地址是DIP,目标地址是挑选出来的RS的RIP)进行转发

特点:

(1)RIP,DIP,VIP全是公网地址

(2)RS的网关不能也不可能指向DIP

(3)请求报文经Director转发,但响应报文直接发往CIP

(4)不支持端口映射

(5)RS的OS必须支持隧道功能

四、LVS-FULLNAT(不是标准类型)

简介:NAT模型的一种延伸,通过同时修改请求报文的源IP地址(CIP->DIP)和目标IP(VIP->RIP)进行转发

特点:

(1)VIP是公网地址,RIP和DIP是私网地址,且通常不在同一网络中,但需要经由路由器互通

(2)RS收到的请求报文源IP为DIP,因此响应报文将直接响应给DIP

(3)支持端口映射

(4)请求报文和响应报文都经由Director

学习LVS+Keepalived必须阅读的三个文档。

1、 《Keepalived权威指南》下载见 http://www.linuxidc.com/Linux/2012-05/60951.htm

2、 《LVS手册》 http://www.linuxidc.com/Linux/2016-03/129233.htm

3、 《Red_Hat_Enterprise_Linux-5-Virtual_Server_Administration-zh-CN》 http://www.linuxidc.com/Linux/2016-03/129234.htm

4、通过LVS实现WEB站点的MySQL高可用 http://www.linuxidc.com/Linux/2013-06/86390.htm

5、LVS+Apache+PHP+MySQL读写分离 http://www.linuxidc.com/Linux/2012-12/77027.htm

6、MySQL LVS负载均衡 http://www.linuxidc.com/Linux/2012-09/69862.htm

企业Web高可用集群实战之LVS+Keepalived+MySQL HA http://www.linuxidc.com/Linux/2012-09/70097.htm

本文永久更新链接地址 : http://www.linuxidc.com/Linux/2016-12/138709.htm

第七城市

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台