当前位置:文档之家› 负载均衡器部署方式和工作原理

负载均衡器部署方式和工作原理

负载均衡器部署方式和工作原理
负载均衡器部署方式和工作原理

负载均衡器部署方式和工作原理

2011/12/16 小柯信息安全

在现阶段企业网中,只要部署WEB应用防火墙,一般能够遇到负载均衡设备,较常见是f5、redware的负载均衡,在负载均衡方面f5、redware的确做得很不错,但是对于我们安全厂家来说,有时候带来了一些小麻烦。昨日的一次割接中,就遇到了国内厂家华夏创新的负载均衡设备,导致昨日割接失败。

在本篇博客中,主要对负载均衡设备做一个介绍,针对其部署方式和工作原理进行总结。

概述

负载均衡(Load Balance)

由于目前现有网络的各个核心部分随着业务量的提高,访问量和数据流量的快速增长,其处理能力和计算强度也相应地增大,使得单一的服务器设备根本无法承担。在此情况下,如果扔掉现有设备去做大量的硬件升级,这样将造成现有资源的浪费,而且如果再面临下一次业务量的提升时,这又将导致再一次硬件升级的高额成本投入,甚至性能再卓越的设备也不能满足当前业务量增长的需求。

负载均衡实现方式分类

1:软件负载均衡技术

该技术适用于一些中小型网站系统,可以满足一般的均衡负载需求。软件负载均衡技术是在一个或多个交互的网络系统中的多台服务器上安装一个或多个相应的负载均衡软件来实现的一种均衡负载技术。软件可以很方便的安装在服务器上,并且实现一定的均衡负载功能。软件负载均衡技术配置简单、操作也方便,最重要的是成本很低。

2:硬件负载均衡技术

由于硬件负载均衡技术需要额外的增加负载均衡器,成本比较高,所以适用于流量高的大型网站系统。不过在现在较有规模的企业网、政府网站,一般来说都会部署有硬件负载均衡设备(原因1.硬件设备更稳定,2.也是合规性达标的目的)硬件负载均衡技术是在多台服务器间安装相应的负载均衡设备,也就是负载均衡器来完成均衡负载技术,与软件负载均衡技术相比,能达到更好的负载均衡效果。

3:本地负载均衡技术

本地负载均衡技术是对本地服务器群进行负载均衡处理。该技术通过对服务器进行性能优化,使流量能够平均分配在服务器群中的各个服务器上,本地负载均衡技术不需要购买昂贵的服务器或优化现有的网络结构。

(如微软NLB网络负载均衡技术,该技术通过多台服务器上起应用完成负载均衡的实现,原理是几台服务器虚拟出一个IP地址,应用会使服务器轮循响应数据,但是在一次安全网关的部署当中就遇到了问题,大家以后可以注意本次经验,问题简

单描述如下:当外部测试PC,向虚拟IP地址发了一个ping包之后,虚拟 IP回应一个数据包,另外,实主机也均回应数据包,导致安全设备认为会话不是安全的。所以进行阻断,致使业务不正常。)

4:全局负载均衡技术(也称为广域网负载均衡)

全局负载均衡技术适用于拥有多个低于的服务器集群的大型网站系统。全局负载均衡技术是对分布在全国各个地区的多个服务器进行负载均衡处理,该技术可以通过对访问用户的IP地理位置判定,自动转向地域最近点。很多大型网站都使用的这种技术。

5:链路集合负载均衡技术

链路集合负载均衡技术是将网络系统中的多条物理链路,当作单一的聚合逻辑链路来使用,使网站系统中的数据流量由聚合逻辑链路中所有的物理链路共同承担。这种技术可以在不改变现有的线路结构,不增加现有带宽的基础上大大提高网络数据吞吐量,节约成本。

总结:

负载均衡至少有四种应用:

?服务器负载均衡;

?广域网络服务器负载均衡;

?防火墙负载均衡;

?透明网站加速器负载均衡。

服务器负载均衡负责将客户请求的任务分发到多台服务器,用以扩展服务能力并超出一台服务器的处理能力,并且能够使应用系统具有容错能力。

广域网络服务器负载均衡负责将客户的请求导向到不同的数据中心的服务器群中,以便为客户提供更快的响应速度和针对某一数据中心出现灾难性事故时智能的冗灾处理。

防火墙负载均衡将请求负载分发到多台防火墙,用来提高安全性能以便超出一台防火墙的处理能力。

透明网站加速器(Transparent cache)使导向流量交换到多台网站加速器中,用以卸载网站服务器的静态内容到网站加速器(Cache)中,从而提高网站服务的性能和加速cache的响应时间。

硬件负载均衡部署方式

负载均衡硬件设备的部署一般有两种:一种是串联部署、一种是旁路部署。在部分,我们主要通过 F5负载均衡的直连和旁路配置模式解析硬件负载均衡设备的部署方式。

1、直连模式结构

负载均衡

结构说明:图中Bigip为F5负载均衡设备,bigip上面使用公开的ip地址,bigip下面同负载均衡的服务器使用不公开的ip地址。但对外提供服务则使用公开的ip。

负载均衡旁路部署

结构说明:图中Bigip为F5负载均衡设备,bigip和下面同交换机连接的服务器都使用公开的ip地址。

第二,看一下两种模式的流量走向直连下的正常流量走向,如图

负载均衡串联部署流量走向图

如上图,bigip同客户端的流量在bigip的上联接口,bigip同服务器的流量在下面的接口。

再看旁路模式下的流量走向,如图

负载均衡旁路部署流量走向

如上图,无论同客户端还是同服务器的通讯流量均在bigip的一个接口上。

第三、两种模式的对比和思考

1、从接口流量压力上看

直连情况下,bigip同客户端的流量在bigip的上联接口,bigip同服务器的流量在下联的接口,故bigip单一接口压力较小。

在旁路模式下, bigip无论同客户端还是同服务器的通讯流量均在bigip的一个接口上,故bigip单一接口压力较大。为解决此问题,可以在bigip和交换机之间采用链路聚合技术,即端口捆绑,以避免接口成为网络瓶颈。

2、从网络结构安全性上看

直连情况下,可以不公布内部服务器使用的真实ip地址,只需要公布提供负载均衡的虚拟地址即可,而在旁路情况下,则客户端可以得知服务器的真实地址,在此模式下,为保证服务器的安全性,服务器的网关指向bigip,可以使用bigip上的包过滤(防火墙)功能来保护服务器。

3、从管理方便性上看

直连情况下,因服务器的真实地址可以隐含,故管理起来需要在bigip上启用地址翻译(NAT)功能,相对会复杂一些。而旁路模式则不需要地址翻译的配置。

4、从扩展性上看

直连模式不支持npath模式,旁路模式支持npath模式,启用npath模式可减少

F5设备的压力,旁路npath模式下的流量走向,如下图。(在该种流量走向的情况下,如果网络中有安全设备,很可能会出现问题,具体的问题还要看安全设备是在负载均衡设备之上,还是负载均衡设备之下)

npath流量走向图

在旁路模式下,使用npath的流量处理方式,所有服务器回应的流量可以不通过bigip,这样可以大大减少bigip上流量的压力。但npath的流量处理方式不能工作在直连的模式。

5、后续系统改造时,两种模式的工作复杂程度不一样

如果对一个原先没有负载均衡技术的系统进行负载均衡技术的改造,那么,在直连情况下,需要修改服务器的ip地址同时网络结构也要做调整(将服务器调到

bigip后端),同时相关联的应用也要改动,需要进行严格的测试才能上线运行;然而,在旁路模式下,仅仅需要改动一下服务器的网关,原有系统的其它部分(包括网络结构)基本不需要做改动,故前者对系统改动较大,后者则改动较小。最后总结一下,相对于直连模式,旁挂模式在系统架构中的主要优点:

1、增加了网络的灵活性:F5采用旁挂的方式,则后端服务器的网关指向的为三层交换机的地址,而不是F5的地址,在对网络设备维护时可以方便的采用修改路由的方式使设备下线,便于维护管理。同时,一些特殊的应用也可在核心交换机上采用策略路由的方式指向特定的网络设备。

2、提高了网络整体的可靠性:由于旁路方式的存在,如果F5设备出现问题,可在交换机上修改路由使用数据流绕过F5,而不会对整个业务系统造成影响。

3、针对某些特殊应用,提高了速度:采用旁路的方式后,一些特定的的对速度、时延敏感的应用数据在进入和离开时可以采用不同的路径,例如:在流入时可经过F5设备,对其进行检查,负载均衡。而在该数据流离开时,则不经过F5,以提高其速度。

weblogic集群负载均衡部署文档(支持win7+linux6.5)

Weblogic集群和负载分发的部署(支持win7+linux6.5 64位)

目录 1.集群目的 (3) 2.部署环境 (3) 3.注意问题 (3) 4.安装weblogic过程 (3) 5.weblogic集群部署过程 (9) 5.1创建weblogic域 (9) 5.2 weblogic集群化配置 (15) 5.3 weblogic简单负载均衡配置 (28) 5.4 weblogic集群复杂均衡测试 (32)

1.集群目的 项目成功部署后,可能会出现运行过程中服务器挂掉不能正常使用。为了防止这种情况,采用weblogic 集群方式部署,以消除客户的担心。 2.部署环境 3.注意问题 因为时间仓促和作者水平有限有些待解决问题需要说明 1.请不要登陆后在地址栏按回车键重新访问地址来验证session复制。 2.如果按F5刷新页面则会跳到选择模块界面,无法说明session复制失败。 3.服务器地址默认用127.0.0.1 ,如果用ip地址(如:192.169.1.169),则把配置过程所有地方的127.0.0.1改成你的实际ip地址,记住创建时候ip地址要统一。 4.安装weblogic过程 1)首先登陆 https://www.doczj.com/doc/436803613.html,/technetwork/cn/middleware/ias/downloads/wls-main-091116-z hs.html 去下载一个windows版的weblogic 我下载的是1036版本

2)双击打开后3)初始化完成后 4)点击下一步

把“我希望通过这个。。。。。。”勾选取消。

集群HA负载均衡技术

实用标准文案 NLB 、HA、HPC集群、双机、负载均衡、 1.1什么是集群)就是一组计算机,它们作为一个整体向用户cluster 简单的说,集群()。一提供一组网络资源。这些单个的计算机系统就是集群的节点(node她们看/个理想的集群是,用户从来不会意识到集群系统底层的节点,在他来,集群是一个系统,而非多个计算机系统。并且集群系统的管理员可以随意增加和删改集群系统的节点。集群系统的主要优点:1.2 高可扩展性:(1):集群中的一个节点失效,它的任务可传递给其他节点。可高可用性HA(2) 以有效防止单点失效。 高性能:负载平衡集群允许系统同时接入更多的用户。(3) 高性价比:可以采用廉价的符合工业标准的硬件构造高性能的系统。(4) 集群系统的分类2.1 虽然,根据集群系统的不同特征可以有多种分类方法,但是一般把集群系统 分为两类:集群。,、高可用(High Availability)集群简称HA(1) 这类集群致力于提供高度可靠的服务。就是利用集群系统的容错性对外提供 小时不间断的服务,如高可用的文件服务器、数据库服务等关键应用。7*24负载均衡集群:使任务可以在集群中尽可能平均地分摊不同的计算机进行处 精彩文档. 实用标准文案 理,充分利用集群的处理能力,提高对任务的处理效率。以提供更加高效稳

定的服务。在实际应用中这几种集群类型可能会混合使用, 高就会包含高可用的网络文件系统、如在一个使用的网络流量负载均衡集群中,可用的网络服务。集群,也HPC(High Perfermance Computing)集群,简称(2)、性能计算称为科学计算集群。 在这种集群上运行的是专门开发的并行应用程序,它可以把一个问题的数据 从而可以分布到多台的计算机上,利用这些计算机的共同资源来完成计算任务,解决单机不能胜任的工作(如问题规模太大,单机计算速度太慢)。 如天气预报、这类集群致力于提供单个计算机所不能提供的强大的计算能力。石油勘探与油藏模拟、分子模拟、生物计算等。(HA) 3.1 什么是高可用性和可维护(reliability)计算机系统的可用性(availability)是通过系统的可靠性 来度量系统(MTTF)来度量的。工程上通常用平均无故障时间性(maintainability)于是可用性被定义)来度量系统的可维护性。,用平均维修时间(MTTR的可靠性MTTF/ (MTTF+MTTR)*100% 为:负载均衡服务器的高可用性主服务器和备份机上都需要建立一个备份机。为了屏蔽负载均衡服务器的失效,”这样的信息来监I am alive监控程序,通过传送诸如“运行High Availability它就接管当备份机不能在一定的时间内收到这样的信息时,控对方的运行状况。I am 并继续提供服务;当备份管理器又从主管理器收到“主服务器的服务IP精彩文档.实用标准文案 地址,这样的主管理器就开开始再次进IPalive”这样的信息是,它就释放服务行集群管理的工作了。为在主服务器失效的情况下系统能正常工作,我们在主、备份机之间实现负载集群系统配置信息的同步与备份,保持二者系统的基本一

Tomcat集群与负载均衡

Tomcat集群与负载均衡(转载) 在单一的服务器上执行WEB应用程序有一些重大的问题,当网站成功建成并开始接受大量请求时,单一服务器终究无法满足需要处理的负荷量,所以就有点显得有点力不从心了。另外一个常见的问题是会产生单点故障,如果该服务器坏掉,那么网站就立刻无法运作了。不论是因为要有较佳的扩充性还是容错能力,我们都会想在一台以上的服务器计算机上执行WEB应用程序。所以,这时候我们就需要用到集群这一门技术了。 在进入集群系统架构探讨之前,先定义一些专门术语: 1. 集群(Cluster):是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。 2. 负载均衡(Load Balance):先得从集群讲起,集群就是一组连在一起的计算机,从外部看它是一个系统,各节点可以是不同的操作系统或不同硬件构成的计算机。如一个提供Web服务的集群,对外界来看是一个大Web服务器。不过集群的节点也可以单独提供服务。 3. 特点:在现有网络结构之上,负载均衡提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。集群系统(Cluster)主要解决下面几个问题: 高可靠性(HA):利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。 高性能计算(HP):即充分利用集群中的每一台计算机的资源,实现复杂运算的并行处理,通常用于科学计算领域,比如基因分析,化学分析等。 负载平衡:即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,降低对主服务器的硬件和软件要求。 目前比较常用的负载均衡技术主要有: 1. 基于DNS的负载均衡 通过DNS服务中的随机名字解析来实现负载均衡,在DNS服务器中,可以为多个不同的地址配置同一个名字,而最终查询这个名字的客户机将在解析这个名字时得到其中一个地址。因此,对于同一个名字,不同的客户机会得到不同的地址,他们也就访问不同地址上的Web服务器,从而达到负载均衡的目的。 2. 反向代理负载均衡(如Apache+JK2+Tomcat这种组合) 使用代理服务器可以将请求转发给内部的Web服务器,让代理服务器将请求均匀地转发给多台内部Web服务器之一上,从而达到负载均衡的目的。这种代理方式与普通的代理方式有所不同,标准代理方式是客户使用代理访问多个外部Web服务器,而这种代理方式是多个客户使用它访问内部Web服务器,因此也被称为反向代理模式。 3. 基于NAT(Network Address Translation)的负载均衡技术(如Linux Virtual Server,简称LVS)

集群方案

Ecology系统HA集群方案及常见问题解决 目录: 一、常用的ecology 高可用环境部署架构 (2) 二、常见的负载均衡器(硬件和软件) (2) 三、常见的服务器类型 (3) 四、服务器配置建议 (3) 五、服务器操作系统分区建议 (3) 六、ecology系统安装部署 (3) 七、集群模式下https部署 (9) 八、常见问题及相应解决方法 (10)

一、常用的ecology 高可用环境部署架构 OA 系统部署拓扑示意图 二、常见的负载均衡器(硬件和软件) 首先说一下什么是负载均衡: 负载均衡说白了是一种代理,也就是说客户端访问应用服务器的统一入口点,客户端通过负载均衡(F5)来将请求转发到应用服务器,而不是客户端直接请求到应用服务器。负载均衡(F5)可以建立一个应用服务器资源池,然后根据不同的策略将请求分发到应用服务器资源池中的其中一台服务器中,进而应用服务器完成相关的业务请求工作。 注:负载均衡和集群之间的理解: 集群是指应用服务器之间的协同工作,应用服务器和应用服务器之间的业务交互,即ecology 系统之间的数据交互。 负载均衡指负载均衡设备和应用服务器之间的业务关系,它是将客户端请求通过负载均衡设备转发到应用服务器,应用服务器处理完毕后,将结果返回到负载均衡,然后负载均衡将结果返回到客户端。 常见的负载均衡设备: 硬件设备:F5、A10、ARRAY 、深信服、梭子鱼等等 软件设备:NGINX 、HAPROXY 、LVS 等等(注:LVS 用的不是太多) 针对我们的ecology 系统,以上负载均衡设备均可使用。 注:由于ecology 系统session 同步的局限性,负载均衡设备分发模式需要配置成:最小连接数模式。(硬件负载均衡) 针对于负载均衡的硬件设备可以咨询相应的硬件厂商,

数据库负载均衡解决方案

双节点数据库负载均衡解决方案 问题的提出? 在SQL Server数据库平台上,企业的数据库系统存在的形式主要有单机模式和集群模式(为了保证数据库的可用性或实现备份)如:失败转移集群(MSCS)、镜像(Mirror)、第三方的高可用(HA)集群或备份软件等。伴随着企业的发展,企业的数据量和访问量也会迅猛增加,此时数据库就会面临很大的负载和压力,意味着数据库会成为整个信息系统的瓶颈。这些“集群”技术能解决这类问题吗?SQL Server数据库上传统的集群技术 Microsoft Cluster Server(MSCS) 相对于单点来说Microsoft Cluster Server(MSCS)是一个可以提升可用性的技术,属于高可用集群,Microsoft称之为失败转移集群。 MSCS 从硬件连接上看,很像Oracle的RAC,两个节点,通过网络连接,共享磁盘;事实上SQL Server 数据库只运行在一个节点上,当出现故障时,另一个节点只是作为这个节点的备份; 因为始终只有一个节点在运行,在性能上也得不到提升,系统也就不具备扩展的能力。当现有的服务器不能满足应用的负载时只能更换更高配置的服务器。 Mirror 镜像是SQL Server 2005中的一个主要特点,目的是为了提高可用性,和MSCS相比,用户实现数据库的高可用更容易了,不需要共享磁盘柜,也不受地域的限制。共设了三个服务器,第一是工作数据库(Principal Datebase),第二个是镜像数据库(Mirror),第三个是监视服务器(Witness Server,在可用性方面有了一些保证,但仍然是单服务器工作;在扩展和性能的提升上依旧没有什么帮助。

负载均衡集群系统解决方案

Linux负载均衡集群系统解决方案 行业: 跨行业 功能:Linux,负载均衡集群 供应商: 中国软件股份集团 方案正文: Linux虚拟服务器简介 基于中软Linux的虚拟服务器(Linux Virtual Server,即LVS)是一个具有高可用性特点的负载均衡集群系统。该系统可以提供与服务器节点的数量、性能成正比的负载能力,有效提高服务的吞吐量、可靠性、冗余度、适应性,性能价格比高。同时,LVS也是利用低端设备实现高端服务器性能的有效途径。 中软Linux虚拟服务器(Linux Virtual Server,即LVS)是建立在一个主控服务器(director)及若干真实服务器(real-server)所组成的集群之上。real-server负责实际提供服务,主控服务器根据指定的调度算法对real-server进行控制。而集群的结构对于用户来说是透明的,客户端只与单个的IP(集群系统的虚拟IP)进行通信,也就是说从客户端的视角来看,这里只存在单个服务器。 Real-server可以提供众多服务,如ftp, http, dns, telnet, nntp, smtp 等。主控服务器负责对Real-Server进行控制。客户端在向LVS发出服务请求时,Director会通过特定的调度算法来指定由某个Real-Server来应答请求,而客户端只与Load Balancer的IP(即虚拟IP,VIP)进行通信。 二、优点 *提高吞吐量:为获得更高的吞吐量,在LVS中增加real-servers,其开销只是线性增长;而如果我们选择更换一台更高性能的服务器来获得相当的吞吐量,其开销要大得多,而且被替换掉的旧服务器会造成资源的浪费。 *冗余:如果LVS中某real-server由于需要升级或其它原因而停止服务,其退出以及恢复工作,并不会造成整个LVS对客户端服务的中断。 *适应性:不管是需要吞吐量逐渐地变化(因日常事务量变化),还是快速地变化(因突发事务量变化),服务器数量的增减对于客户端都是透明的。 三、结构图

windows下Tomcat负载均衡和集群配置

轻松实现Apache,Tomcat集群和负载均衡 作者:罗代均 ldj_work#https://www.doczj.com/doc/436803613.html,,转载请保持完整性 0,环境说明 Apache :apache_2.0.55 1 个 Tomcat: apache-tomcat-5.5.17 (zip版) 2个 mod_jk:: mod_jk-apache-2.0.55.so 1个 第一部分:负载均衡 负载均衡,就是apache将客户请求均衡的分给tomcat1,tomcat2....去处理 1.安装apche,tomcat https://www.doczj.com/doc/436803613.html,/下载Apache 2.0.55 https://www.doczj.com/doc/436803613.html,/download-55.cgi下载tomcat5.5 zip版本(解压即可,绿色版) https://www.doczj.com/doc/436803613.html,/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.15/下载mod_jk,注意和 apache版本匹配 按照jdk,我的路径为:E:\ide\apache\Apache2 解压两份Tomcat, 路径分别为 E:\ide\tomcat1,E:\ide\tomcat2

下载mod_jk

2.修改Apache配置文件http.conf 在apache安装目录下conf目录中找到http.conf 在文件最后加上下面一句话就可以了 include "E:\ide\apache\Apache2\conf\mod_jk.conf"

2. http.conf 同目录下新建mod_jk.conf文件,内容如下 #加载mod_jk Module LoadModule jk_module modules/mod_jk-apache-2.0.55.so #指定 workers.properties文件路径 JkWorkersFile conf/workers.properties #指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器JkMount /*.jsp controller 3.在http.conf同目录下新建 workers.properties文件,内容如下 worker.list = controller,tomcat1,tomcat2 #server 列表 #========tomcat1======== worker.tomcat1.port=8009 #ajp13 端口号,在tomcat下server.xml配置,默认8009 worker.tomcat1.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址 worker.tomcat1.type=ajp13 worker.tomcat1.lbfactor = 1 #server的加权比重,值越高,分得的请求越多 #========tomcat2======== worker.tomcat2.port=9009 #ajp13 端口号,在tomcat下server.xml配置,默认8009 worker.tomcat2.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址 worker.tomcat2.type=ajp13 worker.tomcat2.lbfactor = 1 #server的加权比重,值越高,分得的请求越多

集群的负载均衡技术综述

集群的负载均衡技术综述 摘要:当今世界,无论在机构内部的局域网还是在广域网如Internet上,信息处理量的增长都远远超出了过去最乐观的估计,即使按照当时最优配置建设的网络,也很快会感到吃不消。如何在完成同样功能的多个网络设备之间实现合理的业务量分配,使之不致于出现一台设备过忙、而别的设备却未充分发挥处理能力的情况,负载均衡机制因此应运而生。本组在课堂上讲解了《集群监控与调度》这一课题,本人在小组内负责负载均衡部分内容,以及PPT的制作。 关键词:负载均衡集群网络计算机 一、前言 负载均衡建立在现有网络结构之上,它提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。它主要完成以下任务:解决网络拥塞问题,服务就近提供,实现地理位置无关性;为用户提供更好的访问质量;提高服务器响应速度;提高服务器及其他资源的利用效率;避免了网络关键部位出现单点失效。 其实,负载均衡并非传统意义上的“均衡”,一般来说,它只是把有可能拥塞于一个地方的负载交给多个地方分担。如果将其改称为“负载分担”,也许更好懂一些。说得通俗一点,负载均衡在网络中的作用就像轮流值日制度,把任务分给大家来完成,以免让一个人累死累活。不过,这种意义上的均衡一般是静态的,也就是事先确定的“轮值”策略。 与轮流值日制度不同的是,动态负载均衡通过一些工具实时地分析数据包,掌握网络中的数据流量状况,把任务合理分配出去。结构上分为本地负载均衡和地域负载均衡(全局负载均衡),前一种是指对本地的服务器集群做负载均衡,后一种是指对分别放置在不同的地理位置、在不同的网络及服务器群集之间作负载均衡。 服务器群集中每个服务结点运行一个所需服务器程序的独立拷贝,诸如Web、FTP、Telnet或e-mail服务器程序。对于某些服务(如运行在Web服务器上的那些服务)而言,程序的一个拷贝运行在群集内所有的主机上,而网络负载均衡则将工作负载在这些主机间进行分配。对于其他服务(例如e-mail),只有一台主机处理工作负载,针对这些服务,网络负载均衡允许网络通讯量流到一个主机上,并在该主机发生故障时将通讯量移至其他主机。 二、负载均衡技术实现结构 在现有网络结构之上,负载均衡提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。它主要完成以下任务: 1.解决网络拥塞问题,服务就近提供,实现地理位置无关性 2.为用户提供更好的访问质量 3.提高服务器响应速度

分布式与集群的区别

1、Linux集群主要分成三大类( 高可用集群,负载均衡集群,科学计算集群)(下面只介绍负载均衡集群) 负载均衡集群(Load Balance Cluster) 负载均衡系统:集群中所有的节点都处于活动状态,它们分摊系统的工作负载。一般Web服务器集群、数据库集群和应用服务器集群都属于这种类型。 负载均衡集群一般用于相应网络请求的网页服务器,数据库服务器。这种集群可以在接到请求时,检查接受请求较少,不繁忙的服务器,并把请求转到这些服务器上。从检查其他服务器状态这一点上看,负载均衡和容错集群很接近,不同之处是数量上更多。 2、负载均衡系统:负载均衡又有DNS负载均衡(比较常用)、IP负载均衡、反向代理负载均衡等,也就是在集群中有服务器A、B、C,它们都是互不影响,互不相干的,任何一台的机器宕了,都不会影响其他机器的运行,当用户来一个请求,有负载均衡器的算法决定由哪台机器来处理,假如你的算法是采用round算法,有用户a、b、c,那么分别由服务器A、B、C来处理; 3、分布式是指将不同的业务分布在不同的地方。 而集群指的是将几台服务器集中在一起,实现同一业务。 分布式中的每一个节点,都可以做集群。 而集群并不一定就是分布式的。 举例:就比如新浪网,访问的人多了,他可以做一个群集,前面放一个响应服务器,后面几台服务器完成同一业务,如果有业务访问的时候,响应服务器看哪台服务器的负载不是很重,就将给哪一台去完成。 而分布式,从窄意上理解,也跟集群差不多,但是它的组织比较松散,不像集群,有一个组织性,一台服务器垮了,其它的服务器可以顶上来。 分布式的每一个节点,都完成不同的业务,一个节点垮了,哪这个业务就不可访问了。

集群和负载均衡的概念

集群和负载均衡的概念 什么是集群(Cluster) 所谓集群是指一组独立的计算机系统构成的多处理器系统,每台服务器都具有等价的地位,它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。集群也是指多台计算机共同协作运行一个应用。 可分为以下几种: (1)高可靠性(HA)。利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。 (2)高性能计算(HP)。即充分利用集群中的每一台计算机的资源,实现复杂运算的并行处理,通常用于科学计算领域。 (3)负载平衡(Load Balance)。负载均衡就是集群功能其中的一种。即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,降低对主服务器的硬件和软件要求。 负载均衡是指将计算请求分配到集群中以使集群中的计算机的计算负载均衡。 负载均衡有两方面的含义: 1:大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间。 2:单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高。实现起来可分为: (1)基于服务器软件的集群负载均衡。(在服务器上实现。) (2)NAT的集群负载均衡(在放火墙上,或在交换机上实现。) (3)基于DNS的集群负载均衡(在DNS服务器上实现。) (4)也可以用ISA放火墙实现集群负载均衡,但是需要有ISA服务器本人认为可行性不大。 基于服务器软件的集群负载均衡 microsoft的产品4种集群技术: 1:microsoft 集群服务(MSCS) 2:网络负载均衡(NLB) 3:组件负载均衡(CLB) 4:application center(应用负载均衡) linux 的集群技术:LVS(Linux VirtualServer) LVS对Linux的kernel进行了修改和增加所以要重新编译linux 内核。包名linux-2.4.20-ipvs-*.*.*.patch.gz 基与nat的集群负载均衡(在放火墙上,或在交换机上实现。) NAT(Network Address Translation 网络地址转换)简单地说就是将一个IP地址转换为另一个IP地址。一般用于内部地址与合法的转换。适用于解决Internet IP地址紧张、不想让网络外部知道内部网络结构等的场合下。 NAT负载均衡将一个外部IP地址映射为多个内部IP地址,对每次连接请求动态地转换为一个内部服务器的地址,将外部连接请求引到转换得到地址的那个服务器上,从而达到负载均衡的目的。 基于DNS的集群负载均衡(在DNS服务器上实现。) DNS负载均衡技术是在DNS服务器中为同一个主机名配置多个IP地址,在应答DNS查询时,DNS服务器对每个查询将以DNS文件中主机记录的IP地址按顺序返回不同的解析结果,将客户端的访问引导到不同的机器上去,使得不同的客户端访问不同的服务器,从而达到负载均衡的目的。

用双机高可用集群还是使用负载均衡集群

用双机高可用集群还是使用负载均衡集群 北京麒麟博峰科技有限公司 2010年11月 1

目录 第一章问题描述 (1) 第二章基本的技术知识 (1) 2.1.HA高可用集群 (1) 2.2.Load Balance负载均衡集群 (2) 第三章该使用哪种集群 (3) I

第一章问题描述 系统工程师通常会对如何使用HA高可用集群,即“双机”,和负载均衡集群,比如KYLIN Netsphere等负载均衡设备,产生疑惑不解,通常在构筑服务器集群的时候,不合理的设计造成系统的整体效率不高、设备浪费或者维护的不便利,本文试图用最简单的方式解惑。 要解决这些问题,不惑者需要正确自我解答以下问题: 1.系统的并发是否是考虑的主要问题之一? 2.以后并发用户会不会急剧增长? 3.运营的软件是否是一个标准的三级架构或者多级架构(N-Tier)? 4.运营的软件的端口是否对应不同的业务? 5.不同的业务软件是否运行在不同的服务器设备上? 6.资金是否成为问题? 第二章基本的技术知识 2.1 HA高可用集群 HA(单字母发音, H A 不是“哈”)高可用集群主要是为了“保护”“特定资源”所开发的一种集群技术,这里所说的“特定资源”包含以下内容: 1)进程; 如果进程被杀死,即从系统角度上看,该进程没有了,那么,HA可以及时发现,并在 另外一个地方将部署好的进程启动;如果该进程僵死,即不工作了,可能由于软件设计 的不好,出现了死循环或者其他原因,但该进程还存在,这时HA是不能发现的,所以,有时候即使进程不响应了,HA并没有切换; 解决这个问题,只能依靠应用软件提供监控接口,并将该接口公布给HA开发商。我们 在市场中发现有些厂商的基于数据库的特别好使,有些公司的产品出现同样状况时却像 傻子一样,这个可能是不同的HA厂商和数据库厂商合作的深浅度有关。 2)网卡; 如果网卡完全挂掉,HA是可以发现并采用行动,但是工作的不正常,这种情况HA可 能不能发现,尤其是抖动的情况发生; 3)存储; 1

Web服务器集群负载均衡技术的应用与研究

Web服务器集群负载均衡技术的应用与研究 侯秀杰祝永志孔令鑫 (曲阜师范大学计算机科学学院,山东日照 276826 ) 摘要为了提高集群系统对用户的快速响应与整体吞吐量,必须采取一定的策略将Web访问均衡地分配到集群中的每一个服务器。基于此思想本文针对传统的单机思想给出了一种多机三层结构的负载均衡系统。实验结果表明了它在负载均衡方面的优越性。 关键词负载均衡;均衡策略;调度算法;Web服务器集群模型 1 引言 Internet的快速增长,特别是电子商务应用的发展,使Web应用成为目前最重要最广泛的应用,Web 服务器动态内容越来越流行。目前,网上信息交换量几乎呈指数增长,需要更高性能的Web服务器提供更多用户的Web服务,因此,Web服务器面临着访问量急剧增加的压力,对其处理能力和响应能力等带来更高的要求,如果Web 服务器无法满足大量Web访问服务,将无法为用户提供稳定、良好的网络应用服务。 由于客观存在的服务器物理内存、CPU 处理速度和操作系统等方面的影响因素,当大量突发的数据到达时,Web服务器无法完全及时处理所有的请求,造成应答滞后、请求丢失等,严重的导致一些数据包因延时而重发,使传输线路和服务器的负担再次增加。传统的方法是提高Web 服务器的CPU 处理速度和增加内存容量等硬件办法但无论如何增加Web 服务器硬件性能,均无法满足日益增加的对用户的访问服务能力。 面对日渐增加的Web 访问服务要求,必须对Web 服务器按一定策略进行负载分配。利用负载均衡[1]的技术,按照一定策略将Web 访问服务分配到几台服务器上,负载处理对用户透明,整体上对外如同一台Web 服务器为用户提供Web服务。 2 Web负载均衡结构 2.1 负载均衡 负载是一个抽象的概念,是表示系统繁忙程度,系统在一段时间空闲,该系统负载轻,系统在一段时间空忙,该系统负载重,影响系统负载的各种因数较多如果存在很多的数据包同时通过网络连向一台Web 服务器,也就是网络的速度比网络所连接的设备速度快的情况下,系统负载不断增加,直到最大。 目前提高Web 服务器性能,使其具有较强负载能力,主要有两种处理思想[2]: 1)单机思想 不断升级服务器硬件性能,每当负载增加,服务器随之升级。这随之将带来一些问题,首先,服务器向高档升级,花费资金较多;其次,升级频繁,机器切换造成服务中断,可能会导致整个服务中断;最后,每种架构的服务器升级总有一个极限限制。 2)多机思想 使用多台服务器提供服务,通过一定机制使它们共同分担系统负载,对单一的服务器没有太高的性能要求,系统负载增加,可以多增加服务器来分担。对用户而言,整个系统仿佛是一台单一的逻辑服务器,这样的系统能够提供较强的可扩展性和较好的吞吐性能。 为了适应当前急剧增长的Web访问,有别于传统的单机思想,解决单机思想带来的一系列问题,本文提出了一种基于权值的策略分配负载。 2.2 负载均衡实现设备[2]

Linux平台Apache高可用双机集群Tomcat负载均衡集群配置手册

Linux平台Apache双机高可用集群 + Tomcat负载均衡集群配置手册

在这个配置手册中,使用的操作系统和软件清单如下: 操作系统: RedHat Enterprise Linux AS4 U4 64bit(安装时最好选择完全安装) 软件: jdk-1_5_0_15-linux-amd64.bin Tomcat5.5.26 httpd-2.0.63.tar.gz jakarta-tomcat-connectors-jk2-src-current.tar.gz ipvsadm-1.24.tar.gz libnet.tar.gz heartbeat-2.1.3-3.el4.centos.x86_64.rpm heartbeat-pils-2.1.3-3.el4.centos.x86_64.rpm heartbeat-stonith-2.1.3-3.el4.centos.x86_64.rpm 因为是linux操作系统,所以在安装软件时请使用对应自己操作系统内核的软件,这是整个集群成功的第一步。本配置手册中的软件都是对应RedHat Enterprise Linux AS4 U4 64bit 这个版本的软件。 jdk-1_5_0_15-linux-amd64.bin JAVA环境包使用的是64位1.5版 Tomcat版本为公司指定的5.5版本 Apache为2.0.63版 jakarta-tomcat-connectors-jk2-src-current.tar.gz 是连接Apache和Tomcat的连接插件,具体可以去Tomcat网站上查找下载 ipvsadm-1.24.tar.gz libnet.tar.gz 这两个是用于2台Apache服务器虚拟一个IP地址使用 heartbeat-2.1.3-3.el4.centos.x86_64.rpm heartbeat-pils-2.1.3-3.el4.centos.x86_64.rpm heartbeat-stonith-2.1.3-3.el4.centos.x86_64.rpm 这3个软件是用于2台Apache服务器之间的心跳检测

集群HA负载均衡技术

集群、双机、负载均衡、HA、HPC、NLB 1.1什么是集群 简单的说,集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。这些单个的计算机系统就是集群的节点(node)。 一个理想的集群是,用户从来不会意识到集群系统底层的节点,在他/她们看来,集群是一个系统,而非多个计算机系统。并且集群系统的管理员可以随意增加和删改集群系统的节点。 1.2 集群系统的主要优点: (1)高可扩展性: (2)高可用性HA:集群中的一个节点失效,它的任务可传递给其他节点。可以有效防止单点失效。 (3)高性能:负载平衡集群允许系统同时接入更多的用户。 (4)高性价比:可以采用廉价的符合工业标准的硬件构造高性能的系统。 2.1 集群系统的分类 虽然,根据集群系统的不同特征可以有多种分类方法,但是一般把集群系统分为两类: (1)、高可用(High Availability)集群,简称HA集群。 这类集群致力于提供高度可靠的服务。就是利用集群系统的容错性对外提供7*24小时不间断的服务,如高可用的文件服务器、数据库服务等关键应用。 负载均衡集群:使任务可以在集群中尽可能平均地分摊不同的计算机进行处理,充分利用集群的处理能力,提高对任务的处理效率。 在实际应用中这几种集群类型可能会混合使用,以提供更加高效稳定的服务。如在一个使用的网络流量负载均衡集群中,就会包含高可用的网络文件系统、高可用的网络服务。 (2)、性能计算(High Perfermance Computing)集群,简称HPC集群,也称为科学计算集群。 在这种集群上运行的是专门开发的并行应用程序,它可以把一个问题的

轻松实现windows平台Apache,Tomcat集群和负载均衡

轻松实现windows平台Apache,Tomcat集群和负载均衡 0,环境说明 Apache :apache_2.0.55 1 个 Tomcat: apache-tomcat-5.5.17 (zip版) 2个 mod_jk:: mod_jk-apache-2.0.55.so 1个 第一部分:负载均衡 负载均衡,就是apache将客户请求均衡的分给tomcat1,tomcat2....去处理 1.安装apche,tomcat https://www.doczj.com/doc/436803613.html,/ 下载Apache 2.0.55 https://www.doczj.com/doc/436803613.html,/download-55.cgi 下载tomcat5.5 zip版本(解压即可,绿色版) https://www.doczj.com/doc/436803613.html,/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.15/ 下载mod_jk,注意和apache版本匹配 按照jdk,我的路径为:E:\ide\apache\Apache2 解压两份Tomcat, 路径分别为E:\ide\tomcat1,E:\ide\tomcat2 下载mod_jk

2.修改Apache配置文件http.conf 在apache安装目录下conf目录中找到http.conf 在文件最后加上下面一句话就可以了

include "E:\ide\apache\Apache2\conf\mod_jk.conf" 2. http.conf 同目录下新建mod_jk.conf文件,内容如下 #加载mod_jk Module LoadModule jk_module modules/mod_jk-apache-2.0.55.so #指定workers.properties文件路径 JkWorkersFile conf/workers.properties #指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器 JkMount /*.jsp controller 3.在http.conf同目录下新建workers.properties文件,内容如下 worker.list = controller,tomcat1,tomcat2 #server 列表 #========tomcat1======== worker.tomcat1.port=8009 #ajp13 端口号,在tomcat下server.xml配置,默认8009 worker.tomcat1.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址worker.tomcat1.type=ajp13 worker.tomcat1.lbfactor = 1 #server的加权比重,值越高,分得的请求越多 #========tomcat2======== worker.tomcat2.port=9009 #ajp13 端口号,在tomcat下server.xml配置,默认8009 worker.tomcat2.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址worker.tomcat2.type=ajp13 worker.tomcat2.lbfactor = 1 #server的加权比重,值越高,分得的请求越多 #========controller,负载均衡控制器======== worker.controller.type=lb worker.controller.balanced_workers=tomcat1,tomcat2 #指定分担请求的tomcat worker.controller.sticky_session=1 4.修改tomcat配置文件server.xml

Web服务器集群负载均衡解决方案

Web服务器集群负载均衡解决方案 2006-4-20

目 录 一、行业背景 (3) 1、传统WEB服务集群介绍 (3) 2、Web服务集群负载均衡 (3) 二、技术需求 (4) 1、主要技术问题 (4) 1.1、“不均衡”现象 (4) 1.2、链路的负载均衡和冗余 (4) 1.3、“多米诺”现象 (4) 2、系统总体要求 (4) 2.1、高性能 (4) 2.2、高可用性 (5) 2.3、可伸缩性 (5) 2.4、可管理性 (5) 2.5、高安全性 (5) 三、解决方案 (6) 1、技术需求详细分析 (6) 1.1、服务器负载均衡 (6) 1.2、链路负载均衡 (6) 1.3、系统高可用性 (7) 1.4、系统管理 (7) 1.5、高度的安全性 (7) 2、方案设计 (8) 2.1、总体设计 (8) 2.2、拓扑结构 (8) 四、采用金御? GM-MLB负载均衡产品获得的益处 (9)

一、行业背景 1、传统WEB服务集群介绍 当前,无论在企业网、校园网还是在广域网上,Web服务的业务量的发展都超出了过去最乐观的估计。随着互联网应用的普及,即使按照当时最优配置建设的网络,也很难满足普通的服务需求。例如某网站每天会收到数百万次的访问请求,因此对于提供大负载Web服务的服务器来讲硬件处理能力很快会成为瓶颈。简单的提高硬件性能并不能真正解决这个问题,因为单台服务器的性能总是有限的。一般来说,一台专用服务器能够支持3000-5000个并发访问,这样的能力还是无法满足负载较大的网站的要求。尤其是网络请求具有突发性,当某些重大事件发生时,网络访问就会急剧上升,从而造成网络瓶颈。所以必须采用多台服务器提供网络服务,并将网络请求分配给这些服务器分担,才能提供处理大量并发服务的能力。 当使用多台服务器来分担负载的时候,最简单的办法是将不同的服务器用在不同的方面。把整个网站按服务器的内容进行分割时,可以将一台服务器用于提供新闻页面,而另一台用于提供游戏页面;或者可以按服务器的功能进行分割,将一台服务器用于提供静态页面访问,而另一些用于提供CGI等需要大量消耗资源的动态页面访问。然而由于网络访问的突发性,使得很难判断哪些页面造成的负载大小,如果将服务的页面分割的过细就会造成很大的资源浪费。事实上造成负载过大的页面常常是在变化中的,如果要经常按照负载变化来调整页面所在的服务器,那么势必对管理和维护造成极大的问题。因此这种分割方法只能是大方向的调整,对于大负载的网站,根本的解决办法还需要应用负载均衡技术。 2、Web服务集群负载均衡 负载均衡的思路下多台服务器为对称方式,每台服务器都具备等价的地位,都可以单独对外提供服务而无须其它服务器的辅助。然后通过某种负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务器都独立响应客户机的请求。由于建立内容完全一致的Web服务器并不复杂,可以使用服务器同步更新或者共享存储空间等方法来完成,因此负载均衡技术就成为建立一个高负载Web站点的关键性技术。

负载均衡的原理说明

大家都知道一台服务器的处理能力,主要受限于服务器自身的可扩展硬件能力。所以,在需要处理大量用户请求的时候,通常都会引入负载均衡器,将多台普通服务器组成一个系统,来完成高并发的请求处理任务。 之前负载均衡只能通过DNS来实现,1996年之后,出现了新的网络负载均衡技术。通过设置虚拟服务地址(IP),将位于同一地域(Region)的多台服务器虚拟成一个高性能、高可用的应用服务池;再根据应用指定的方式,将来自客户端的网络请求分发到

服务器池中。网络负载均衡会检查服务器池中后端服务器的健康状态,自动隔离异常状态的后端服务器,从而解决了单台后端服务器的单点问题,同时提高了应用的整体服务能力。 网络负载均衡主要有硬件与软件两种实现方式,主流负载均衡解决方案中,硬件厂商以F5为代表目前市场占有率超过50%,软件主要为NGINX与LVS。但是,无论硬件或软件实现,都逃不出基于四层交互技术的“转发”或基于七层协议的“代理”这两种方式。四层的转发模式通常性能会更好,但七层的代理模式可以根据更多的信息做到更智能地分发流量。一般大规模应用中,这两种方式会同时存在。 2007年F5提出了ADC(Application delivery controller)的概念为传统的负载均衡器增加了大量的功能,常用的有:SSL卸载、压缩优化和TCP连接优化。NGINX也支持很多ADC的特性,但F5的中高端型号会通过硬件加速卡来实现SSL卸载、压缩优化这一类CPU密集型的操作,从而可以提供更好的性能。 F5推出ADC以后,各种各样的功能有很多,但其实我们最常用的也就几种。这里我也简单的总结了一下,并和LVS、Nginx对比了一下。

集群之LVS(负载均衡)详解

提高服务器响应能力的方法 scale on 在原有服务器的基础上进行升级或者直接换一台新的性能更高的服务器。 scale out 横向扩展,将多台服务器并发向外响应客户端的请求。优点:成本低,扩展架构比较简单。 集群(Cluster),通俗地讲就是按照某种组织方式将几台电脑组织起来完成某种特定任务的这样一种架构。 三种集群类型: LB,Load Balancing 负载均衡:在一定程度上能够实现高可用的目的。 HA,High Availability 高可用:实时在线,能够及时响应客户端请求,企业应用要求达到 7*24小时,99.999%时间在线。 HP,High Performance 高性能提供大量超级运算能力的集群。 LB 负载均衡架构: Director(dispatcher):负责接收客户端请求,并将请求按照某种算法分发到后台真正提供服务的服务器上。既可以基于硬件(F5)来实现,也可以基于软件来实现。基于软件实现的又分为四层交换:基于IP地址和端口号组合起来对服务做重定向(LVS)。七层交换:通常指的是反向代理(proxy),例如:squid。 LVS:Linux Virtual Server 类似于iptables的架构,在内核中有一段代码用于实时监听数据包来源的请求,当数据包到达端口时做一次重定向。这一系列的工作必须在内核中实现。在内核中实现数据包请求处理的代码叫做ipvs。ipvs仅仅提供了功能框架,还需要自己手动定义是数据对哪个服务的请求, 而这种定义需要通过写规则来实现,写规则的工具就称为ipvsadm。 应用场景 高吞吐量(higher throughput) 冗余(redundancy) 适应性(adaptability) LVS负载均衡架构 Virtual IP(VIP)address:Director用来向客户端提供服务的IP地址 Real IP (RIP) address:集群节点(后台真正提供服务的服务器)所使用的IP地址 Director's IP (DIP) address:Director用来和D/RIP 进行联系的地址

相关主题
文本预览
相关文档 最新文档