买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种负载均衡方法及装置_新华三技术有限公司_201810043261.X 

申请/专利权人:新华三技术有限公司

申请日:2018-01-17

公开(公告)日:2021-05-07

公开(公告)号:CN108259603B

主分类号:H04L29/08(20060101)

分类号:H04L29/08(20060101)

优先权:

专利状态码:有效-授权

法律状态:2021.05.07#授权;2018.11.30#实质审查的生效;2018.07.06#公开

摘要:本申请提供了一种负载均衡方法及装置,其中,该方法包括:根据网络附属存储NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;所述综合负载权重用于衡量所述NAS组中的各个NAS服务器当前的服务能力;根据所述每个NAS服务器在所属NAS组中的综合负载权重,为访问所述NAS组的客户端选择NAS服务器;将选择的所述NAS服务器的IP地址发送给所述客户端,以便所述客户端向选择的所述NAS服务器发起访问请求。本申请实施例提高了分布式文件系统对客户端请求的处理效率。

主权项:1.一种负载均衡方法,其特征在于,包括:根据网络附属存储NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;所述综合负载权重用于衡量所述NAS组中的各个NAS服务器当前的服务能力;根据所述每个NAS服务器在所属NAS组中的综合负载权重,为访问所述NAS组的客户端选择NAS服务器;将选择的所述NAS服务器的IP地址发送给所述客户端,以便所述客户端向选择的所述NAS服务器发起访问请求;其中,所述根据网络附属存储NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重,包括:根据任一NAS服务器当前的CPU利用率,确定该任一NAS服务器的剩余CPU利用率;以及,根据所述任一NAS服务器的网络吞吐量以及同组的各个NAS服务器的最大网络吞吐量,确定所述任一NAS服务器的网络吞吐量相对值;根据所述任一NAS服务器的剩余CPU利用率和所述网络吞吐量相对值,确定所述任一NAS服务器的综合负载权重;其中,按照以下公式确定所述NAS服务器的综合负载权重: wi=fcpui,throughti=1-ci2×tmti,tm≥ti,i=1.2.3...n;其中,wi表示第i个NAS服务器的综合负载权重;cpui表示第i个NAS服务器的剩余CPU利用率;throughti表示第i个NAS服务器的网络吞吐量相对值;ci表示第i个NAS服务器的CPU利用率;tm表示与第i个NAS服务器同组的各个NAS服务器中的最大的网络吞吐量值;ti表示第i个NAS服务器的网络吞吐量。

全文数据:一种负载均衡方法及装置技术领域[0001]本申请涉及网络通信技术领域,具体而言,涉及一种负载均衡方法及装置。背景技术[0002]计算机通过文件系统来存储和管理计算机资源,在当今信息化时代,传统的数据存储方法通过单纯的增加硬盘数量来扩展计算机文件系统的存储容量已经无法满足实际需求,因此,引入了分布式文件系统来解决数据存储和管理的难题。这种分布式文件系统将固定于某个地点的单个文件系统扩展为可以分布在不同地点的多个文件系统,有效的解决了传统的文件系统过于集中、容灾能力弱的特点。[0003]在分布式文件系统中,每个可以处理客户端请求的服务器称为网络附属存储NetworkAttachedStorage,NAS服务器。为了均衡客户端的访问请求,需要将不同客户端的访问请求分散到不同的NAS服务器上,也就是实现集群NAS服务器的负载均衡。当客户端通过域名访问域名系统DomainNameSystem,DNS时,域名系统会根据预先设置的负载均衡策略将客户端的访问请求均匀分配给各个NAS服务器,从而使客户端的访问请求能够被迅速处理,提升了整个集群的性能。[0004]当前技术中,DNS负载均衡实现算法大都是基于简单的轮询,即客户端对DNS发起请求后,DNS对当前可提供服务的NAS服务器进行轮询,返回给客户端一个可用的NAS服务器的IP地址,客户端直接按照该IP地址连接对应的NAS服务器即可,但是每个NAS服务器处理客户端访问请求的能力不同,若仅仅按照简单的轮询给客户端分配NAS服务器,无法充分利用NAS服务器资源,并且会影响整个分布式文件系统的处理效率。发明内容_[0005]有鉴于此,本申请的目的在于提供一种负载均衡方法及装置,以提高分布式文件系统对客户端请求的处理效率。[0006]第一方面,本申请实施例提供了一种负载均衡方法,包括:[0007]根据网络附属存储NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;所述综合负载权重用于衡量所述NAS组中的各个NAS服务器当前的服务能力;[0008]根据所述每个NAS服务器在所属NAS组中的综合负载权重,为访问所述NAS组的客户端选择NAS服务器;[0009]将选择的所述NAS服务器的IP地址发送给所述客户端,以便所述客户端向选择的所述NAS服务器发起访问请求。[0010]第二方面,本申请实施例提供了一种负载均衡装置,包括:[0011]确定模块,用于根据网络附属存储NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;所述综合负载权重用于衡量所述NAS组中的各个NAS服务器当前的服务能力;[0012]选择模块,用于根据所述每个NAS服务器在所属NAS组中的综合负载权重,为访问所述NAS组的客户端选择NAS服务器;[0013]发送模块,用于将选择的所述NAS服务器的IP地址发送给所述客户端,以便所述客户端向选择的所述NAS服务器发起访问请求。[0014]与现有技术中相比,本申请DNS服务器会根据NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,来确定每个NAS服务器在所属NAS组中的当前服务能力,并根据每个NAS服务器在所属NAS组中的当前服务能力为访问该NAS组的客户端选择NAS服务器,并不是通过简单的轮询策略为访问NAS组的客户端分配NAS服务器,本申请这种负载均衡方法能够结合NAS组中的每个NAS服务器的当前服务能力,为访问该NAS组的客户端选择合适的NAS服务器,能够充分利用NAS服务器资源,从而提高整个分布式文件系统的处理效率。[0015]为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明[0016]为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。[0017]图1示出了本申请实施例所提供的一种分布式文件系统结构示意图;[0018]图2示出了本申请实施例所提供的一种负载均衡方法流程示意图;[0019]图3示出了本申请实施例所提供的一种确定NAS服务器的综合负载权重的流程示意图;[0020]图4示出了本申请实施例所提供的一种加权轮询负载均衡图;[0021]图5示出了本申请实施例所提供的一种负载均衡装置结构示意图;[0022]图6示出了本申请实施例所提供的另一种负载均衡装置结构示意图。具体实施方式[0023]分布式文件系统中包括多个NAS组,每个NAS组是由若干个NAS服务器构建的一个集合,同一NAS组内的各个NAS服务器可以提供相同的服务内容。为了保证NAS组的服务效率,需要使用负载均衡策略。在提出本申请实施例方案之前,主要使用的负载均衡策略是简单轮询方式,但这种方式并没有考虑到每个NAS服务器当前实际的服务能力,基于此,本申请提出了另一种负载均衡策略-基于综合负载权重来选择NAS服务器。为了便于说明,本申请实施例以如图1所示,分布式文件系统包括3个NAS组,每个NAS组包括3个NAS服务器为例进行说明。[0024]如图1所示,该分布式文件系统包括3个NAS组,分别记为NAS组1、NAS组2和NAS组3,各个NAS组均包括3个NAS服务器,这里的NAS服务器是分布式文件系统中对外提供文件存储服务的服务器,在其上一般安装提供服务器的软件,比如通用网络文件系统(CommonInternetFileSystem,CIFS和网络文件系统(NetworkFileSystem,NFS,这里的CIFS允许windows客户端通过SMBServerMessagesBlock,彳目息服务块协议接入,NFS则允许linux客户端通过NFS协议接入。[0025]需要说明的是,本申请实施例所提供的基于综合负载权重来选择NAS服务器的策略可以与现有的简单轮询方式结合使用。在具体实施中,可以为每个NAS组分别配置对应的负载均衡策略。一个NAS组的负载均衡策略与该NAS组中NAS服务器的配置相关,如果一个NAS组中的每个NAS服务器的配置均相同,则说明该NAS组中各个NAS服务器的服务能力也相同,则该NAS组的负载均衡策略可以被配置为简单轮询,若一个NAS组中各个NAS服务器的配置存在不同,则说明该NAS组中各个NAS服务器的服务能力不同,此时可以将该NAS组的负载均衡策略配置为本申请实施例所提供的基于综合负载权重来选择NAS服务器的策略。下面,本申请实施例重点对上述基于综合负载权重来选择NAS服务器的策略进行详细说明。[0026]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。[0027]实施例1[0028]参见图2所示,本申请实施例1所提供的负载均衡方法包括以下步骤S200〜S220:[0029]S200:根据NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;该综合负载权重用于衡量NAS组中各个NAS服务器当前的服务能力。[0030]其中,CHJ利用率指运行的程序占用的PU资源,网络吞吐量是指NAS服务器接收和发出的数据包的总大小。[0031]NAS服务器的当前综合负载权重是与该NAS服务器当前的利用率以及当前的网络吞吐量相关的,在本申请中,参见图3所示,本申请实施例1所提供的任一NAS服务的综合负载权重的确定方法包括以下步骤S300〜S310:[0032]S3〇0:根据任一NAS服务器当前的mj利用率,确定该任一NAS服务器的剩余CHJ利用率;以及,根据任一NAS服务器的网络吞吐量以及同组的各个NAS服务器的最大网络吞吐量,确定任一NAS服务器的网络吞吐量相对值。[0033]在步骤S300中,该NAS服务器的剩余CPU利用率可以通过以下公式⑴确定:[0034]cpui=l-ci;⑴[0035]其中,Ci表示该任一NAS服务器当前的CPU利用率,这里的i是指该任一服务器为NAS组中的第i个NAS服务器。[0036]^中,NAS服务器的网络吞吐量相对值可以通过差值或者比值进行表示,考虑到为了方便表示NAS服务器的综合负载权重,本申请实施例中采用比值来表示NAS服务器的网络吞吐量D[0037]具体的,按照以下公式⑵确定NAS服务器的网络吞吐量相对值:[0038]throughti=titmtm^ti,i=1.2.3...n;⑵[0039]其中,through。表示第ifNAS服务器的网络吞吐量相对值;ti表示第ifNAS服务器的网络吞吐量;U表示与第i个NAS服务器同组的各个nas服务器中的最大的网络吞吐量值。[0040]S310:根据任一NAS服务器的剩余CPU利用率和网络吞吐量相对值,确定任一NAS服务器的综合负载权重。[0041]NAS服务器的综合负载权重表示NAS服务器当前的服务能力,其与剩余CPU利用率成正相关,与网络吞吐量相对值成负相关,具体地,NAS服务器的综合负载权重可以通过以下公式⑶进行计算:[0042]wi=fcpui,throughti=l-ciaXtmti,tm^ti,i=l.2.3...n;3[0043]其中,Wi表示第丨个脚服务器的综合负载权重;cpm表示第丨个廳服务器的剩余CPU利用率;throughti表示第i个NAS服务器的网络吞吐量相对值;Ci表示第丨个撤5服务器的CPU利用率;a为设定系数;tm表示与第i个NAS服务器同组的各个NAS服务器中的最大的网络吞吐量值;ti表示第i个NAS服务器的网络吞吐量。[0044]其中,a可以取正整数,需说明的是,在确定各个NAS服务器的综合负载权重时,的取值应该相同,特别地,当a=2时,NAS服务器的综合负载权重由以下公式⑷确定:[0045]Wi=fcpUi,throughti=a—ci2Xtmti,,i=1.2.3…n;⑷[0046]由公式⑷可以看出,综合负载权重由CPU利用率和网络吞吐量决定,当CPU利用率低时,网络吞吐量对综合负载权重的影响占主导作用;当CPU利用率高时,CHJ利用率影响逐渐加大。[0047]具体地,确定每个NAS服务器在所属的NAS组中的综合负载权重包括几种不同的时机,具体情况如下:[0048]1在接收到客户端针对NAS组的访问请求后,采集NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,并根据采集的NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重。[0049]2按照预设的周期,采集NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,并根据采集的NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重,以便在接收到所述客户端针对所述NAS组的访问请求后,根据预先确定的每个NAS服务器在所属NAS组中的综合负载权重,为访问NAS组的客户端选择NAS服务器。[0050]3按照预设的周期,采集NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量;在接收到客户端针对NAS组的访问请求后,根据预先采集的NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重。[0051]综上,确定每个NAS服务器在所属的NAS组中的综合负载权重包括:[0052]只有在接收到客户端请求时,才会进行CPU利用率和网路吞吐量的采集及综合负载权重的计算;或者,不管是否接收到客户端请求,一直周期性进行CPU利用率和网路吞吐量的采集及综合负载权重的计算;或者,不管是否接收到客户端请求,一直周期性进行CPU利用率和网路吞吐量采集,但是,只有在接收到客户端请求时,才会基于本周期内采集的CFU利用率和网路吞吐量值进行综合负载权重的计算。[0053]S210:根据每个NAS服务器在所属NAS组中的综合负载权重,为访问NAS组的客户端选择NAS服务器。[0054]具体地,针对上述情况(1,由于只有在接收到客户端的访问请求后,才会对各个NAS服务器进行CPU利用率和网路吞吐量采集及综合负载权重的计算,则可以通过比较客户端请求的NAS组中所有NAS服务器的综合负载权重,为访问该NAS组的客户端选取综合负载权重最大的NAS服务器。[0055]针对上述情况2或者3,因为预先采集并保存了CPU利用率和网路吞吐量,在一个设定周期内,综合负载权重不会被更新,则可以按照综合负载权重对应的比例为访问的客户端分配NAS服务器,比如,在某个设定周期内,3个NAS服务器的综合负载权重之比为3:2:1,则在该周期内3台服务器上接收客户端的访问请求个数之比大致为3:2:1。[0056]S220:将选择的NAS服务器的IP地址发送给客户端,以便客户端向选择的NAS服务器发起访问请求。[0057]这里,NAS服务器的IP地址一般指主服务器的IP地址。在分布式文件系统中,各个NAS服务器通过虚拟路由冗余协议(VirtualRouterRedundancyProtocol,vrrp保持高可用性,在每个NAS服务器中均预设一个主服务器和多个备份服务器,由主服务器统一对外提供虚拟动态IP地址,同时,主服务器会按照设定时间间隔向各个备份服务器发送vrrp包,若备份服务器接收不到该vrrp包时,则确定该服务器发生宕机,则会按照预先配置的vrrp优先级重新选择一个备份服务器作为主服务器,并将新的主服务器的IP地址作为此时的NAS服务器的IP地址,从而保证了NAS服务器的高可用性,避免了客户端无法访问该NAS服务器。[0058]下面以上述第3种情况,并结合图1对客户端针对NAS组的访问请求进行详细阐述,该过程包括以下步骤S400〜S420:[0059]S400:DNS服务器按照预设的周期,比如每隔30秒采集一下图1中的分布式文件系统中的每个NAS组中的中各个NAS服务器的当前的CPU利用率和网络吞吐量,并保存最新的采集数据。[0060]S410:当DNS服务器接收到客户端针对NAS组的访问请求后,首先从该访问请求对应的域名中获取到该客户端请求访问的NAS组,比如,该客户端请求访问的NAS组为NAS组2,并确定该NAS组2对应的负载均衡策略为综合负载。[0061]S420:DNS服务器根据预先保存在本地的采集数据以及公式(1、公式(2和公式3,确定NAS组2中的NAS服务器21、NAS服务器22和NAS服务器23的综合负载权重,并最终根据公式⑶确定了NAS服务器21、NAS服务器22和NAS服务器23的综合负载权重分别为〇•3、0.2和0.1,则依次对客户端分配访问的NAS服务器为:NAS服务器21、NAS服务器22、NAS月艮务器23、NAS服务器21、NAS服务器22和NAS月艮务器21,即在设定的一段时间内,NAS组2中的3台服务器接收客户端的请求个数比例大致为3:2:1,如图4所示,为在设定的一端时间ti〜t6内,接收到客户端的访问请求后,向客户端分配的NAS服务器的负载均衡图。[0062]其中,可以为预设的周期内的一个相邻的时间段,在该周期内,NAS组2中的3个NAS服务器的综合负载权重之比为3:2:1,则DNS服务器会按照图4所示的顺序依次处理客户端的访问请求,在本周期内,超过t6的下一个时刻,则会重新按照该方法处理客户端的访问请求,若超过该周期接收到客户端的访问请求时,则会按照重新采集的各个NAS服务器的CPU利用率和网络吞吐量计算当前NAS组2内各个NAS服务器的综合负载权重,并按照重新确定的综合负载权重处理客户端的访问请求。[0063]实施例2[0064]参见图5所示,本申请实施例2提供的负载均衡装置5〇〇,该负载均衡装置500存储于实施例1提出的DNS服务器中,包括:[0065]确定模块501,用于根据NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;综合负载权重用于衡量NAS组中的各个NAS服务器当前的服务能力。[0066]选择模块502,用于根据每个NAS服务器在所属NAS组中的综合负载权重,为访问NAS组的客户端选择NAS服务器。[0067]发送模块503,用于将选择的NAS服务器的IP地址发送给客户端,以便客户端向选择的NAS服务器发起访问请求。[0068]可选地,确定模块501,具体用于:[0069]在接收到客户端针对所述NAS组的访问请求后,采集NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,并根据采集的NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重。或者,[0070]按照预设的周期,采集NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,并根据采集的NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重,以便在接收到客户端针对所述NAS组的访问请求后,根据预先确定的每个NAS服务器在所属NAS组中的综合负载权重,为访问NAS组的客户端选择NAS服务器。或者,[0071]按照预设的周期,采集NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量;在接收到客户端针对NAS组的访问请求后,根据预先采集的NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重。[0072]可选地,确定模块501具体用于:[0073]根据任一NAS服务器当前的CHJ利用率,确定该任一NAS服务器的剩余CPU利用率;以及,根据任一NAS服务器的网络吞吐量以及同组的各个NAS服务器的最大网络吞吐量,确定任一NAS服务器的网络吞吐量相对值。[0074]根据任一NAS服务器的剩余CPU利用率和所述网络吞吐量相对值,确定任一NAS月艮务器的综合负载权重。[0075]可选地,确定模块501具体按照以下公式确定NAS服务器的网络吞吐量相对值:[0076]throughti=titmtm^ti,i=1.2.3...n;[0077]其中,throughti表示第i个NAS服务器的网络吞吐量相对值;ti表示第i个NAS服务器的网络吞吐量;U表示与第i个NAS服务器同组的各个NAS服务器中的最大的网络吞吐量值。[0078]可选地,确定模块501具体按照以下公式确定NAS服务器的综合负载权重:[0079]Wi=fcpui,throughti=l-CiaXtmti,tm^ti,i=1•2.3...n;[0080]其中,Wi表不第i个NAS服务器的综合负载权重仰叫表示第丨个祕服务器的剩余PU利用率;throughti表示第i^NAS服务器的网络吞吐量相对值;Ci表示第丨个嫩3服务器的CPU利用率;a为^定系数;tm表示与第1个隱3服务器同组的各个NAS服务器中的最大的网络吞吐量值;ti表示第i个NAS服务器的网络吞吐量。[0081]如图6所示,为本申请另一实施例所提供的负载均衡装置600的结构示意图,该负载均衡装置600包括:处理器601、存储器602和总线603,存储器㈤2存储执行指令,当装置运行时,处理器601与存储器602之间通过总线6〇3通信,处理器601执行存储器6〇2中存储的如下执行指令:[0082]根据网络附属存储NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;综合负载权重用于衡量NAS组中的各个NAS服务器当前的服务能力。[0083]根据每个NAS服务器在所属NAS组中的综合负载权重,为访问NAS组的客户端选择NAS服务器。[0084]将选择的NAS服务器的IP地址发送给客户端,以便客户端向选择的NAS服务器发起访问请求。[0085]可选地,处理器601执行的执行指令具体包括:[0086]在接收到客户端针对NAS组的访问请求后,采集NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,并根据采集的NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重。或者,[0087]确定每个NAS服务器在所属NAS组中的综合负载权重,包括:按照预设的周期,采集NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,并根据采集的NAS组中各个NAS月艮务器当前的CTO利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重,以便在接收到客户端针对NAS组的访问请求后,根据预先确定的每个NAS服务器在所属NAS组中的综合负载权重,为访问NAS组的客户端选择NAS服务器。或者,[0088]确定每个NAS服务器在所属NAS组中的综合负载权重,包括:按照预设的周期,采集NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量;在接收到客户端针对NAS组的访问请求后,根据预先采集的NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重。[0089]可选地,处理器601执行的执行指令中,确定任一NAS服务器的综合负载权重包括:[0090]根据任一NAS服务器当前的CPU利用率,确定该任一NAS服务器的剩余CPU利用率;以及,根据任一NAS服务器的网络吞吐量以及同组的各个NAS服务器的最大网络吞吐量,确定任一NAS服务器的网络吞吐量相对值。[0091]根据任一NAS服务器的剩余CPU利用率和网络吞吐量相对值,确定任一NAS服务器的综合负载权重。[0092]可选地,处理器601按照以下公式确定NAS服务器的所述剩余CPU利用率:[0093]throughti=titmtm^ti,i=1.2.3...n;[0094]其中,throughti表示第i个NAS服务器的网络吞吐量相对值;ti表示第i个NAS服务器的网络吞吐量;tm表不与第i个NAS服务器同组的各个NAS服务器中的最大的网络吞吐量值。[0095]可选地,处理器6〇1按照以下公式确定NAS服务器的综合负载权重:[0096]wi=fcpui,throughti=1-ciaXi=l.2.3...n;[0097]其中,wi表示第i个NAS服务器的综合负载权重;cpUi表示第i个NAS服务器的剩余CPU利用率;throughti表示第i个NAS服务器的网络吞吐量相对值;Ci表示第个NAS服务器的CPU利用率;a为设定系数;tm表示与第i个NAS服务器同组的各个NAS服务器中的最大的网络吞吐量值;ti表示第i个NAS服务器的网络吞吐量。[0098]与现有技术中相比,本申请DNS服务器会根据NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,来确定每个NAS服务器在所属NAS组中的当前服务能力,并根据每个NAS服务器在所属NAS组中的当前服务能力为访问该NAS组的客户端选择NAS服务器,并不是通过简单的轮询策略为访问NAS组的客户端分配NAS服务器,本申请这种负载均衡方法能够结合NAS组中的每个NAS服务器的当前服务能力,为访问该NAS组的客户端选择合适的NAS服务器,能够充分利用NAS服务器资源,从而提高整个分布式文件系统的处理效率。[00"]本申请实施例所提供的进行负载均衡方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。[0100]本申请实施例所提供的负载均衡装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。[0101]在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。[0102]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。[0103]另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。[0104]所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备可以是个人计算机,服务器,或者网络设备等执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器R〇M,Read-〇nlyMemory、随机存取存储器RAM,RandomAccessMemory、磁碟或者光盘等各种可以存储程序代码的介质。[0105]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。[0106]最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照^实施请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技'术领域的技术在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换二并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

权利要求:1.一种负载均衡方法,其特征在于,包括:根据网络附属存储NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;所述综合负载权重用于衡量所述NAS组中的各个NAS服务器当前的服务能力;根据所述每个NAS服务器在所属NAS组中的综合负载权重,为访问所述NAS组的客户端选择NAS服务器;将选择的所述NAS服务器的IP地址发送给所述客户端,以便所述客户端向选择的所述NAS服务器发起访问请求。2.根据权利要求1所述的方法,其特征在于,所述确定每个NAS服务器在所属NAS组中的综合负载权重,包括:在接收到所述客户端针对所述NAS组的访问请求后,采集所述NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,并根据采集的所述NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;或者,所述确定每个NAS服务器在所属NAS组中的综合负载权重,包括:按照预设的周期,采集所述NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,并根据采集的所述NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重,以便在接收到所述客户端针对所述NAS组的访问请求后,根据预先确定的所述每个NAS服务器在所属NAS组中的综合负载权重,为访问所述NAS组的客户端选择NAS服务器;或者,所述确定每个NAS服务器在所属NAS组中的综合负载权重,包括:按照预设的周期,采集所述NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量;在接收到所述客户端针对所述NAS组的访问请求后,根据预先采集的所述NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重。3.根据权利要求1所述的方法,其特征在于,根据以下步骤确定任一NAS服务器的综合负载权重:根据所述任一NAS服务器当前的CPU利用率,确定该任一NAS服务器的剩余CPU利用率;以及,根据所述任一NAS服务器的网络吞吐量以及同组的各个NAS服务器的最大网络吞吐量,确定所述任一NAS服务器的网络吞吐量相对值;根据所述任一NAS服务器的剩余CPU利用率和所述网络吞吐量相对值,确定所述任一NAS服务器的综合负载权重。4.根据权利要求3所述的方法,其特征在于,包括:按照以下公式确定所述NAS服务器的网络吞吐量相对值:throughti=titmtm^ti,i=1.2.3...n;其中,through^表示第i个NAS服务器的网络吞吐量相对值;ti表示第外痛服务器的网络吞吐量;tm表示与第i个NAS服务器同组的各个NAS服务器中的最大的网络吞吐量值。5.根据权利要求3所_施,其觀在于,細以下公式确定腿NAS齡器的综合负载权重:Wi=fcpui,throughti=l-ciaxtmti,(tmti,i=1.2.3.•.n;其中,wi表示第i个NAS服务器的综合负载权重;叩叫表示第ifNAS服务器的剩余^^利用率;throughti表示第i个NAS服务器的网络吞吐量相对值;Cl表示第i个NAS服务器的CPU利用率;a为设定系数;心表示与第i个NAS服务器同组的各个NAS服务器中的最大的网络吞吐量值;ti表示第i个NAS服务器的网络吞吐量。6.—种负载均衡装置,其特征在于,包括:确定模块,用于根据网络附属存储NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;所述综合负载权重用于衡量所述NAS组中的各个NAS服务器当前的服务能力;选择模块,用于根据所述每个NAS服务器在所属NAS组中的综合负载权重,为访问所述NAS组的客户端选择NAS服务器;发送模块,用于将选择的所述NAS服务器的IP地址发送给所述客户端,以便所述客户端向选择的所述NAS服务器发起访问请求。7.根据权利要求6所述的装置,其特征在于,所述确定模块,具体用于:在接收到所述客户端针对所述NAS组的访问请求后,采集所述NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,并根据采集的所述NAS组中各个NAS服务器当前的PU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重;或者,按照预设的周期,采集所述NAS组中各个NAS服务器当前的CTO利用率和网络吞吐量,并根据采集的所述NAS组中各个NAS服务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重,以便在接收到所述客户端针对所述NAS组的访问请求后,根据预先确定的所述每个NAS服务器在所属NAS组中的综合负载权重,为访问所述NAS组的客户端选择NAS服务器;或者,按照预设的周期,采集所述NAS组中各个NAS服务器当前的CRJ利用率和网络吞吐量;在接收到所述客户端针对所述NAS组的访问请求后,根据预先采集的所述NAS组中各个NAS月艮务器当前的CPU利用率和网络吞吐量,确定每个NAS服务器在所属NAS组中的综合负载权重。8.根据权利要求6所述的装置,其特征在于,所述确定模块具体用于:根据任一NAS服务器当前的CPU利用率,确定该任一NAS服务器的剩余CPU利用率;以及,根据所述任一NAS服务器的网络吞吐量以及同组的各个NAS服务器的最大网络吞吐量,确定所述任一NAS服务器的网络吞吐量相对值;根据所述任一NAS服务器的剩余CPU利用率和所述网络吞吐量相对值,确定所述任一NAS服务器的综合负载权重。9.根据权利要求8所述的装置,其特征在于,所述确定模块具体按照以下公式确定所述NAS服务器的网络吞吐量相对值:throughti=titmtm^ti,i=l-2.3...n;其中,throughti表示第i个NAS服务器的网络吞吐量相对值;ti表示第i个NAS服务器的网络吞吐量;tm表示与第i个NAS服务器同组的各个NAS服务器中的最大的网络吞吐量值。10.根据权利要求8所述的装置,其特征在于,所述确定模块具体按照以下公式确定所述NAS服务器的综合负载权重:Wi=fcpui,throughti=l-c〇aXtmti,tm^ti,i=1.2.3...n;其中,wi表示第i个NAS服务器的综合负载权重;cpui表示第i个NAS服务器的剩余CPU利用率;throughti表示第i个NAS服务器的网络吞吐量相对值;Ci表示第i个NAS服务器的cpu利用率;a为设定系数;^表示与第i个NAS服务器同组的各个NAS服务器中的最大的网络吞吐量值;ti表不第i个NAS服务器的网络吞吐量。

百度查询: 新华三技术有限公司 一种负载均衡方法及装置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。