服务器 频道

负载均衡实战攻略之六:补遗篇

  【IT168 服务器频道】前面系列文章(12345),系统讲述了ipvs、故障隔离、cdn缓存服务器配置、多负载均衡实战应用。本文针对转发模式及调度算法等再进一步阐述,作为补遗篇供参考。

  一、lvs负载均衡转发模式及调度算法

  1、负载均衡转发模式包括直接路由模式DR、网络地址转换模式NAT以及隧道模式TUN三种。在一般的互联网应用环境,选择直接路由模式是比较有利的,原因有:

  (1)DR利用大多数Internet服务的非对称特点,负载调度器中只负责调度请求,而服务器直接将响应返回给客户,可以极大地提高整个集群系统的吞吐量-引用自http://www.linuxvirtualserver.org/zh/lvs3.html。从原理上可以知道,DR模式下,负载均衡器的输出和输出流量应该是基本一致的,图1证实了这个事实。
 

  图1 负载均衡器流量图

  (2)排错方便迅速。如果通过vip访问不到服务,则可以直接通过访问真实服务器的方式直接定位问题的所在。

  (3)当负载均衡器都停止工作时,DR模式易于应急处理。通过修改dns的A记录,把先前主机名对应的vip改成真实服务器的ip地址,使服务迅速恢复起来,从而赢得时间处理负载均衡器的故障。

  2、负载均衡器的调度算法

  Lvs负载均衡器的调度算法有8种,详情请访问http://www.linuxvirtualserver.org/zh/lvs4.html 。一般的互联网应用,多采用轮叫调度rr(Round-Robin Scheduling)及加权最小连接调度wlc(Weighted Least-Connection Scheduling)。

 

  二、lvs负载均衡环境安全问题

  前面我们讲过,在负载均衡器上,为了获得更好的转发性能,尽量不要使用主机防火墙。那么,这怎样保证系统的安全呢?个人觉得,还是采购硬件防火墙放在负载均衡器的前面比较可靠。如果资金充裕,购买具备防ddos的硬件防火墙则更胜一筹。

  三、同义词

  网上有些词语有不同的说法,为了便于理解,这里给出相同意义的一些说法。

  1、负载均衡器与Director为同义词。

  2、真实服务器realserver与pool server是同义词。

  3、ip负载均衡技术与负载均衡模式是同义词。

  四、关于负载均衡器后面真实服务器的数量

  有人曾经问我:"sina是不是做了负载均衡?是不是一个负载均衡器背后放几百个服务器?"。理论上,放几百个服务器没有问题(章文嵩博士给出的数值是100),技术上也可能实现。但这不是一个好的策略。非常好的的策略可能是:根据访问情况对大的应用进行分割,弄成一个个小的集群。具体到一个网站,可以把访问量大的频道独立出来,一个频道或几个频道组成一个lvs负载均衡集群。

  五、话题讨论

  近来nginx很受追捧,于是就有人使用了图2的架构来实现负载均衡。这种3层结构的负载均衡相对于两层的负载均衡架构,谁优谁劣?欢迎讨论。
 

  图2 3层结构负载均衡

 

0
相关文章