负载均衡之LVS:实现高可用集群(WEB集群)

LVS(Linux VirtualServer)是一个建立在一系列真实服务器上的高可扩展、高可用性的服务器,工作于四层网络,即基于IP加端口的模式。LVS的负载均衡器工作在Linux系统上。作为一个非常优秀的负载均衡解决方案,LVS可用来搭建高可拓展和高可用的网络服务,例如web、cache、ftp、mail、media和VoIP服务等。以下为LVS集群体系结构:

负载均衡之LVS:实现高可用集群(WEB集群)

负载均衡转发模式包括直接路由模式DR、网络地址转换模式NAT以及隧道模式TUN三种

在一般的互联网应用环境,选择直接路由模式。

DR利用大多数Internet服务的非对称特点,负载调度器中只负责调度请求,而服务器直接将响应返回给客户,可以极大地提高整个集群系统的吞吐量。从原理上可以知道,DR模式下,负载均衡器的输出和输出流量应该是基本一致的

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

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

集群采用三层结构

负载调度器(loadbalancer),它是整个集群对外面的前端机,负责将客户的请求发送到一组服务器上执行,而客户认为服务是来自一个IP地址(我们可称之为虚拟IP地址)上的。它可以是用IP负载均衡技术的负载调度器,也可以是基于内容请求分发的负载调度器,还可以是两者的结合。

服务器池(serverpool),是一组真正执行客户请求的服务器,执行的服务有WEB、MAIL、FTP和DNS等。

共享存储(sharedstorage),它为服务器池提供一个共享的存储区,这样很容易使得服务器池拥有相同的内容,提供相同的服务。

IP负载均衡技术

在IP负载均衡技术中,需要服务器池拥有相同的内容提供相同的服务。当客户请求到达时,调度器只根据负载情况从服务器池中选出一个服务器,将该请求转发到选出的服务器,并记录这个调度;当这个请求的其他报文到达,也会被转发到前面选出的服务器。

基于内容请求的分发技术

服务器可以提供不同的服务,当客户请求到达时,调度器可根据请求的内容和服务器的情况选择服务器执行请求。因为所有的操作都是在操作系统核心空间中将完成的,它的调度开销很小,所以它具有很高的吞吐率。

负载调度策略和算法

IP负载均衡软件IPVS在内核中所实现的各种连接调度算法:

轮轮叫调度(Round-RobinScheduling)

加权轮叫调度(WeightedRound-Robin Scheduling)

最小连接调度(Least-ConnectionScheduling)

加权最小连接调度(WeightedLeast-Connection Scheduling)

基于局部性的最少链接(Locality-BasedLeast Connections Scheduling)

带复制的基于局部性最少链接(Locality- BasedLeast Connections with Replication Scheduling)

目标地址散列调度(DestinationHashing Scheduling)

源地址散列调度(SourceHashing Scheduling)

最短预期延时调度(ShortestExpected Delay Scheduling)

叫调度(Round-RobinScheduling)

加权轮叫调度(WeightedRound-Robin Scheduling)

最小连接调度(Least-ConnectionScheduling)

加权最小连接调度(WeightedLeast-Connection Scheduling)

基于局部性的最少链接(Locality-BasedLeast Connections Scheduling)

带复制的基于局部性最少链接(Locality-BasedLeast Connections with Replication Scheduling)

目标地址散列调度(DestinationHashing Scheduling)

源地址散列调度(SourceHashing Scheduling)

最短预期延时调度(ShortestExpected Delay Scheduling)

不排队调度(NeverQueue Scheduling)

后端存储

采用容错的分布式文件系统,如AFS、GFS、Coda和Intermezzo等。访问分布式文件系统就像访问本地文件系统一样。同时,分布式文件系统提供良好的伸缩性和可用性。使用分布式锁管理器(DistributedLock Manager)来解决应用程序的访问冲突问题。

LVS可应用的解决方案

可拓展的Web和媒体服务(如Real公司的LLVS可伸缩Web和媒体集群)、可拓展的Cache服务、可伸缩邮件服务(在前端是一个采用IP负载均衡技术的负载调度器;在第二层是服务器池,有LDAP(Light-weightDirectory AccessProtocol)服务器和一组邮件服务器。第三层是数据存储,通过分布式文件系统来存储用户的邮件。集群中结点间是通过高速网络相连的)、地理分布LVS集群等。

LVS+Keepalived实现高可用集群(Web服务)—使用VS/DR负载均衡技术构建可拓展的Web集群

Keepalived

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/24b7a81b5e2b6adb24ae92b8863a304e.html