《某公司SINFOR服务器负载解决方案.docx》由会员分享,可在线阅读,更多相关《某公司SINFOR服务器负载解决方案.docx(8页珍藏版)》请在优知文库上搜索。
1、某公司SINFOR服务器负载解决方案#服务器负载均衡解决方案深圳市深信服电子科技有限公司FOR#一、概述随着InteEet的普及与电子商务、电子政务的进展,单位的应用系统需要面对越来越高的访问量与数据量。这就对系统的稳固性与可用性与可靠性提出了更高的要求;这样就使得单一的网络服务设备已经不能满足需要了,由此需要引入服务器的负载平衡,实现客户端同时访问多台同时工作的服务器,实现动态分配每一个应用请求到后台的服务器,并即时按需动态检查各个服务器的状态,根据预设的规则将请求分配给最有效率的服务器。实现数据流合理的分配,使每台服务器的处理能力都能得到充分的发挥,扩展应用系统的整体处理能力,提高应用系统
2、的整体性能,改善应用系统的可用性与可用性,降低IT投资。服务器负载均衡技术在现有网络结构之上能够提供一种廉价、有效、透明的方法,来扩展网络设备与服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性与可用性。它要紧能够带来两方面的价值:1、建立有效的负载均衡机制。传统的负载机制是建立在较简单负载均衡机制与较简单的健康检查机制上的,不能根据服务器提供服务的具体情况向其转发有效的访问流量,通过构建新的负载均衡系统,能够使用多种负载均衡机制,根据服务器的负载能力智能确定该服务器所分担的负载。要紧能够解决如下两个方面的问题:首先,大量的并发访问或者数据流量将会被分担到多台设备上分别处理,继而
3、减少用户等待响应的时间:再者,单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高2、建立有效的健康检查机制。负载均衡系统应该能够对服务器的运行状况做出准确推断,确保提供的服务的正确。全面的健康检查机制不仅能够有效的监控到服务进程的有效性,即能够对应用端口提供服务的能力进行健康检查,而且关于其后应用逻辑造成的同样能够提供有效的检查机制,从而避免了客户端能够访问到服务器,但得不到正确的响应情况出现。二、需求分析*单位作为(关于客户应用的介绍)随着访问用户数量的增加,给*单位的服务器带来越来越大的压力,如有有效的保证客户访问速度
4、,实现访问流量在各服务器上均衡分配,充分利用各服务器资源,是目前*单位网络改造的重要目标。*单位的*系统中有多台服务器,假如使用服务器群,会造成访问地址的复杂化与负载不平衡。关于每台服务器都务必有相应的唯一的IP地址,给用户的访问与网络管理带来不便;这些服务器之间的流量分配是随机的,不可能考虑服务器当前的负载情况,在某些情形之下反而造成连接失败。为熟悉决上述存在的问题,*单位希望通过服务器负载均衡机制,保证用户访问流量能在各服务器上均衡分配,提高服务器资源的利用率。同时当某台服务器发生故障时能被及时检测到,同时故障服务器将会被自动隔离,直到其恢复正常后自动加入服务器群,实现透明的容错,保证服务
5、器整体性能得到大幅提升。三、解决方案3.1 网络拓扑通过与XX单位的工程的沟通,按照其单位网络架构与需求情况,我们推荐使用深信服AD服务器负载均衡解决方案。本方案设计使用SlNFORAD应用交付设备来实现网络中多台服务器的智能负载;具体部署情况如下:数据嗥3.2 方案描述3.2.1 方案设计总体描述本方案设计使用两台深信服AD应用交付设备以冗余的方式接入网络来实现网络中多台应用服务器的负载均衡,在实现流量的负载均衡的同时,保证的整个系统的稳固与高可用性,而且没有改变原有的网络结构;同时对客户应用为SSL加密方式时,深信服提供SSL卸载技术将SSL的加密过程专家的深信服AD设备之上,由于深信服设
6、备拥有超强的加解密能力能够满足搞并发访问网站的需求,减少服务器的性能压力,提升访问速度,甚至能够根据用户情况减少服务器的硬件投资方案具体实现方式如下:1、客户发出服务请求到SlNFORAD设备2、SINFoRAD接收到请求,通过预先设定好的负载均衡算法,将数据包中目的IP地址改为选中的后台服务器IP地址,然后将数据包发出到后台选定的服务器3、后台服务器收到后,将应答包按照其路由发回到SlNFORAD4、SlNFORAD设备收到应答包后将其中的源地址改回成VlP的地址,发回客户端,由此就完成了一个标准的服务器负载平衡的流程。关于所有应用服务器,能够在SlNFORAD上配置VirtualServe
7、r实现负载均衡,同时SlNFORAD可持续检查服务器的健康状态,一旦发现故障服务器,则将其从负载均衡组中移除。3.2.2 服务器负载均衡及冗余两台SINFORAD以主备的方式实现网络中多台服务器的负载均衡及冗余。AD能够根据相应的服务器负载均衡算法来实现快速访问的智能引导,当用户请求到SlNFoRAD设备的时候,根据预先设定好负载策略能够合理的将每个连接快速的分配最合适的服务器,提升服务器的利用率,保证用户访问的快速性与稳固性。SINFORAD的健康检查机制实现对服务器健康状况的实时监控,能够实时的发现出现故障的服务器,同时能够将用户的下一次连接情况平滑的切换到其他正常服务的服务器之上,保证应
8、用服务的稳固性3.2.3 设备自身冗余性(根据客户需求进行删减)两台SINFoRAD设备以主备的冗余方式方连接,处于备份状态的设备使用“心跳线”监测运行的设备的状态,当检测出设备故障时,两台设备就会产生亳秒级切换,备份设备会切换为运行主机,为用户提供服务,保证了系统的高可用性。3.2.4 易于管理性SINFORAD产品还支持商业能分析功能,能够全面统计会话数的运行状况如会话连接数、用户数、应用分布情况、IP来源等有关情况,方便管理员对网络进行优化四、关键技术介绍4.1 服务器负载均衡算法SINFORAD通过VIP(虚拟IP地此由IP地址与TCP/UDP应用的端口构成的一个IP)来为用户的一个或
9、者多个目标服务器提供负载均衡服务。为了保证多个用户的请求能够智能地转发到后端的应用服务器,确保在即使某个应用服务器出现故障的时候不可能中断现有的应用,SlFNORAD连续地对目标服务器进行L2到L7合理性检查,当用户通过VIP请求目标服务器服务时SINFORAD根据服务器群组中各个服务器的性能与网络健康情况,选择性能最佳的服务器响应用户的请求。这样,所有流量均衡的分配到各个服务器,不仅充分利用所有的服务器资源,而且各个服务器均衡的负担流量处理任务,而且有效地避免服务器处理任务“不平衡”现象的发生。SINFORAD作为一台专业的应用交付设备,它提供6种灵活的算法与其他衍生算法将数据流有效地转发到
10、它所连接的服务器群。用户只需要记住应用对外公布地址,即可快速的享受相应的服务。而在后台SINFORAD会将他们的数据流通过灵活的负载均衡机制分担所有的服务器之上。轮询:轮询算法是指按照请求的先后顺序将其循环地连接到每个服务器.在这一算法包含了对服务器的健康检查如发现某台服务器出现故障,AD设备则将其排除出轮询队列,直至服务器恢复正常.这种算法的好处是简洁,他不需要记录服务器的连接状况,属一种无状态调度;此算法在服务器组中各服务器处理性能一致的情况下比较适用,而在服务器处理性能不一的情况,而且请求服务时间相差较大的时候,轮询算法容易导致服务器之间的负载不平衡.加权轮询算法:由于集群中的不一致服务
11、器可能有不致的功能,因此能够为各个服务器分配不一致的加权值。根据这个比例,把用户的请求分配到每个服务器。当其中某个服务器发生第二到第7层的故障,AD就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。通过这些分配的加权值将能够看出一个服务器相关于集群中其它服务器的处理容量。权值高的服务器先收到的连接,权值高的服务器比权值低的服务器处理更多的连加权最小连接算法:最小连接算法是一种动态调度算法,它通过服务器当前所活跃的连接数来估计服务器的负教情况。AD需要记录各个服务器已建立连接的数目,当一个请求被调度到某台服务器,其连接数加1:当连接中止或者超时,其连接数减一;加权最小连接算
12、法通过为各个服务器设定相应的权值,在调度新连接时尽可能的使服务器的已建立连接数与其权值成比例,AD把新的连接请求分配到当前比例最小的服务器上最快相应算法:AD传递连接给那些响应最快的服务器。当其中某个服务器发生第二到第7层的故障,AD就把其从服务器队列中排除,不参加下一次的用户请求的分配.动态反馈:通过检测服务CPU等有关设备利用率综合情况,来推断各个服务器的服务处理能力的,在调度新连接时尽可能的选择性能最佳的服务器URL散列:此算法是SINFORAD专门针对cache缓存的一种算法,此算法能将缓存任务平均的分配到各个cache服务器之上,避免重复存储,提升cache服务器的利用率4.2 服务
13、器健康检查应用交付的需要解决的问题就是如何为用提供快速的访问服务,而服务器是所有应用的承载提,假如应用交付设备不能对应用进行健康检查,就无法做到对应用的高可靠性的保障。由此可见应用交付设备对应用进行健康检查的必要性。SlNFoRAD的高级健康检查功能,能够准确的做到应用层的健康检查。这种新的模块与流量复位向模块紧密相连,能够提早检验所有应用可用性与功能,SINFORAD支持包含基础网络检查(Ping),四层应用检查(TCP/UDPport)与使用各类预先定义的检查程序与用户定制的检查程序。IPZTCP层(3层到4层)监视.TCP/IP监视能够提供基本的状态监视,以检验设备或者应用是可访问的。I
14、P检查是通过Ping与ARP,而TCP检查是通过向用户定制的TCP端口发送TCPSyn请求,并接收到说明此应用正在运行的消息。7层监视,能够监视服务器在IP、TCP、UDP,应用与内容等所有协议层上的工作状态。假如发现故障,用户即被透明地复位向到正常工作的服务器上。这能够保证用户始终能够获得他们所期望的信息。用户自定义,除全面的预定义状态检查外,这种先进的状态监视模块还同意完全定制SCriPt,在其中能够定义发送与接收数据包的内容。当包含预定字符串的数据包被返回给状态监视模块时,就认为“通过”了检查,并认为应用运行正常。4.3 会话保持SINFoRAD不仅能够为关键业务站点提供高可用性与智能负
15、载平衡,与此同时,还能够识别用户固定访问特定服务器的要求,以支持用户重新建立到特定服务器的连接。在这种特定情况下,SlNFoRAD将放弃原有的负载均衡算法举例来说,假如某位用户连接到了一台服务器上,那么我们确信希望该用户在将来再次连接时将仍可连接到该台服务器上。特别是在该服务器没有与其它服务器动态共享时,这种会话持续性就显得十分有必要了。比如,让我们假设一位用户在淘宝网采购了下了一个订单,然后未进行交易支付就离开了该网站。假如在其重新登录网站后,SlNFORAD将客户请求路由至不一致的服务器,那么新的服务器对该用户的数据与其所购买的商品将一无所知。假如客户第次访问的服务器没有与其它的服务器在同
16、一个后台数据库服务器中存储用户信息及其选购商品的话,那么具体的订单数据在新的服务器上是查询不到,这样客户只能再次重复第一次的工作。通过SINFORAD的会话保持技术就能够为客户选择用户曾连接上的那台服务器,实现无缝地处理用户请求。SlNFORAD会话保持的功能将减少新建连接的数量,这将有助于减小负载均衡机系统开销。Cookies保持.Cookie持续性利用客户机存储的cookie信息来把客户机连接到合适的服务器上。其原理如下:首次命中SlNFoRAD任选一台服务器,将请求发送至该服务器再次命中SlNFORAD借助cookie信息确定合适的服务器IP保持,在这一模式下,只要持续性计数渊尚未到时,指定流向某虚拟服务器的特定用户流量就会持续流向同一台服务器。4.4 商业智能分析SINFORAD是深信服最新推