集群
一组相互独立的计算机,利用高速通信网络组成的一个计算机系统,每个集群节点都是运行其自己进程的一个独立服务器
集群特点
1.高性能
2.价格有效性
3.可伸缩性
4.高可用性
集群优势
1.透明性
2.高性能
3.高可用性
4.可伸缩性
5.可管理性
6.可编程性
负载均衡
提供一种廉价,有效,透明的方法,来扩展网络设备和服务器的负载,贷款,增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性
负载均衡搭建需求
1.单台机器无法承受大规模的并发访问或数据流量分担到多台节点设备上处理,减少用户等待响应时间,提升用户体验
2.单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高
3.7*24的服务保证,任意一个或多个有限节点设备宕机,要求不影响业务
LVS(Linux Virtual Servel linux虚拟服务器)
一个虚拟的服务器集群系统,可以在linux/unix平台下实现负载均衡集群功能。
VIP(Virtual Ip Address 虚拟IP地址)
为Director用于向客户端计算机提供服务的IP地址
RIP(Real Server Ip Address 真实IP地址)
在集群下面节点上使用的IP地址
DIP(Director Ip Address)
用于连接内外网络的IP地址,物理网卡上的IP地址。是负载均衡器上的IP
CIP(Client Ip Address 客户端主机IP地址)
客户端用户计算机请求集群服务器的IP地址,该地址用作发给集群的请求的源IP地址
NAT(Network Address Translation)模式-网络地址转换(收费站模式)
特点
1.将请求报文(DNAT)和响应报文(SNAT),通过调度器地址重写然后再转发给内部服务器,报文返回时再改写成原来用户请求的地址
2.只需要在调度器LB上配置WAN公网IP即可,调度器也有私有LAN IP和内部RS节点通信
3.每台内部RS节点的网关地址,必须要配成调度器LB的私有LAN内物理网卡地址(LDIP),这样才能保证数据报文返回时仍然经过调度器LB
4.由于请求与响应报文都经过调度器LB,因此,网站访问量大时调度器LB有较大瓶颈,一般要求最多10-10台节点
5.NAT模式支持对IP及端口的转换,即用户请求10.0.0.1:80,可以通过调度器转换到RS节点的10.0.0.1:8080(DR和TUN模式不能)
6.所有NAT内部RS节点只需配置私有LAN IP即可
7.由于数据包来回都需要经过调度器,因此,需要开启内核转发net.ipv4.ip_forward=1,也包括iptables防火墙的forward功能
TUNNEL
1.负载均衡器通过把请求的报文通过IP隧道(ipip隧道)的方式(请求报文不经过原目的地址的改写(包括MAC),而是直接封装成另外的IP报文),转发至真实服务器,而真实服务器响应处理后直接返回给客户端用户
2.由于真实服务器将将响应处理后的报文直接返回给客户端用户,因此,最好RS有一个外网IP地址,这样效率才会更高。理论上:只要能出外网即可,无需外网ip
3.由于调度器LB只处理入站请求的报文。因此,次集群系统吞吐量可以提高10倍以上,但隧道模式也会带来一定的系统开销,TUN模式适合LAN/WAN
4.TUN模式的LAN环境转发不如DR模式效率高,而且还考虑系统对IP隧道的支持问题
5.所有的RS服务器都要绑定VIP,一直ARP,配置复杂
6.LAN换几个一般采用DR模式,WAM环境可以采用TUN模式,但是当前WAN环境下,请求转发更多的呗haproxy/nginx/DNS调度代理取代。因此,TUN模式在国内公司实际用的很少。跨机房应用要么拉光钎成局域网,要么DNS调度,底层数据还得同步
7.直接对外访问业务,不直接对外的业务
DR模式-直接路由模式
通过改写请求报文的目标MAC地址,将请求发给真实服务器的,而真实服务器将响应后的结果直接返回给客户端用户。
特点
1.通过在调度器LB上修改数据包的目的MAC地址实现转发。注意源IP地址仍然是CIP,目的IP地址仍然是VIP
2.请求报文经过调取器LB,而RS响应处理后的报文无需经过调度器LB,因此并发访问量大时使用效率很高(和NAT模式比)
3.DR模式是通过MAC地址的改写机制实现的转发,因此,所有的RS节点和调节器LB只能在一个局域网LAN中
4.需要注意RS节点的VIP绑定(lo:vip,lo1:vip)和ARP抑制问题
5.RS节点的默认网关不需要是调度器LB的DIP,而直接是IDC机房分配的上级路由器的IP(这是RS带有外网IP地址的情况),理论讲:只要RS可以出网即可,不是必须配置外网IP
6.调度器仅进行目的MAC地址的改写,因此,调度器LB无法改变请求的报文的目的和端口
7.调度器LB知乎支持所有的UNIX,LINUX系统
8.DR模式效率很高,但是配置比较麻烦(访问量不是很大的可以使用日pv2000w或并发请求1万以下:haproxy/nginx)
9.直接对外访问业务