首页> 中国专利> 一种基于权重的元数据服务器集群负载均衡方法

一种基于权重的元数据服务器集群负载均衡方法

摘要

本发明涉及一种基于权重的元数据服务器集群负载均衡方法。元数据服务器是对象存储系统的重要组成部分,扮演管理文件系统名字空间、控制用户访问和映射文件物理存储位置的角色。本发明通过收集元数据服务并行处理的服务请求数和平均操作延时,利用最小二乘法对两者的映射关系曲线进行线性拟合,将拟合曲线斜率值的倒数作为元数据服务器的固有性能;通过对工作负载根据元数据服务器的固有性能作为权重进行按比例分配,使其支持异构元数据服务器集群。本发明方法开销小、动态调整工作负载、元数据服务器集群在设备异构情况下保持负载均衡。

著录项

  • 公开/公告号CN102523158A

    专利类型发明专利

  • 公开/公告日2012-06-27

    原文格式PDF

  • 申请/专利权人 杭州电子科技大学;

    申请/专利号CN201110420241.8

  • 申请日2011-12-15

  • 分类号H04L12/56(20060101);H04L29/08(20060101);

  • 代理机构33200 杭州求是专利事务所有限公司;

  • 代理人杜军

  • 地址 310018 浙江省杭州市下沙高教园区2号大街

  • 入库时间 2023-12-18 05:47:17

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-02-10

    未缴年费专利权终止 IPC(主分类):H04L12/803 授权公告日:20140709 终止日期:20141215 申请日:20111215

    专利权的终止

  • 2014-07-09

    授权

    授权

  • 2012-09-05

    实质审查的生效 IPC(主分类):H04L12/56 申请日:20111215

    实质审查的生效

  • 2012-06-27

    公开

    公开

说明书

技术领域

本发明属于网络存储中元数据服务器(MDS, MetaData Server)技术领域,特别是涉及一种基于权重的MDS集群动态负载均衡方法。

背景技术

对象存储(OBS, Object-based Storage)技术将文件数据和元数据分开存储,综合传统NAS和SAN的优点,同时具备SAN的快速访问和NAS的跨平台数据共享等优势。同时对象存储设备(OSD, Object-based Device)本身具备智能管理功能。因此OBS系统具有高性能、可扩展、高可用性和强安全性等特点。OBS系统主要由三部分组成,分别为客户端、MDS集群和OSD集群。其中MDS在对象存储系统中名字空间、控制用户访问和映射文件物理存储位置的角色。虽然单个元数据数据量很小,但涉及文件元数据的操作却非常频繁。元数据处理能力是整个对象存储系统高效运作的重要一环。以Hadoop和Lustre为代表的集中式元数据处理方案存在单点故障和性能瓶颈的问题。为了保证OBS系统元数据的处理能力,由多台MDS服务器协同合作构成MDS集群的分布式处理方案是发展方向。

为了在有限资源下最大化MDS集群元数据处理能力,防止任意MDS成为系统瓶颈,MDS之间的负载均衡就显得非常重要。MDS集群负载均衡方面的研究主要集中在数据分区和服务器性能评估两个方面。

数据分区主要研究文件系统元数据在MDS中的分布问题,主要有以NFS和Ceph为代表的目录子树分区和zFS和Lazy Hybrid为代表的Hash分布。

1.目录子树分区的优点是利用了文件访问的局部性原理,能够快速遍历文件系统。它主要可分为静态子树分区和动态子树分区。前者的设计简单,数据存储负载分布需要管理员手动指定,在负载出现变化时不能及时调整,主要适用于TB级存储规模;后者设计较为复杂,适用于PB级海量数据数据应用场景,是当前的研究热点。

2.Hash分布利用文件绝对路径或其它唯一标识来决定元数据的存放位置,该策略的优点是简单高效,客户端能够直接定位文件。而且由于它彻底散列化了文件分布,有效的避免了由于局部性访问引起单个目录集中访问。但是Hash分布在MDS数量发生改变时通常导致大量数据迁移。

服务器性能评估主要研究准确评价服务器固有性能的问题。一般而言,服务器的处理能力主要与CPU、内存、网络带宽、磁盘性能等相关。有研究者对上述影响参数进行排序,根据影响力的大小确定权重,并以一定的系数计算加权值来综合考虑设备的处理能力。但是上述“白盒”性能模型面临两个问题:一方面,不同负载类型通常会有不同负载特征,对服务器要求的侧重点也不一样;另一方面,影响因子之间存在互相制约关系,例如某个影响因子配置过低,成为性能瓶颈后,再增加其它影响因子的配置对MDS元数据处理性能提升并不明显。因此,上述方案很难准确地量化每个因子的影响力。如果权重系数选择不当,反而会影响系统性能。

发明内容

本发明的目的在于:针对已有技术没有考虑MDS集群中设备异构情况和服务器固有性能难以量化的问题,本发明提出了一种基于权重的元数据服务器集群负载均衡方法。

本发明方法利用最小二乘法并行请求数和平均操作延时的映射关系曲线进行线性拟合,并得出拟合曲线斜率用于反应MDS的固有性能,为均衡负载提供了依据;根据集群中MDS的处理能力分配对应比例的工作负载,从而使得MDS集群在设备异构情况下保持负载均衡以达到较高的整体吞吐量。实验证明本发明方法开销小、动态调整工作负载、元数据服务器集群在设备异构情况下保持负载均衡。

本发明具体步骤为:

1在元数据服务器空载状态下,通过基准测试工具mdtest测得每台元数据服务器在不同并行服务请求数下的平均操作延时。

2利用最小二乘法对步骤1中测得并行请求数和平均操作延时的映射关系曲线进行线性拟合,并得出拟合曲线斜率,然后将斜率值的倒数作为权重输入元数据服务器配置参数表。

3每台元数据服务器开启一个守护进程,对服务器处理的访问请求数计数作为参数得出服务器的当前负载,记录请求时间。

4每个心跳周期时间到时,元数据服务器通过UDP协议向集群中其它所有元数据服务器广播自己的当前负载水平和权重,并记录发送时间。

5元数据服务器接收完毕集群中其它服务器广播信息后,计算出目标负载。

6将服务器的当前其当前负载与步骤5中目标负载相减,如果差值为正并且大于阈值,则执行步骤7;如果差值为不为正并且大于阈值则转至步骤8。

7启动目录子树迁移过程,根据当前负载和目标负载的差值,选择负载和为差值的目录子树迁移到当前负载低于目标负载的元数据服务器。

8判断负载均衡任务是否结束,如果负载均衡任务结束,则任务结束;如果负载均衡任务没有结束,则返回至步骤3。

步骤3中所述服务器的当前负载由以下方法得出:

1)对元数据服务器中每个目录和文件设置对应的负载计数器,并以此衡量该文件和目录的负载。

2)当服务器处理服务请求时,与之对应的负载计数器就会增加1。

3)元数据服务器的当前负载为其所包含的所有目录和文件的负载计数器值之和。

所述计数器值会随时间呈指数型衰减。

步骤4中所述心跳周期通过元数据服务器配置参数设置。

所述目标负载的计算公式为:                                               ;其中target_loadi编号为i的服务器的目标负载,Wi编号为i的服务器的权重,Wtotal为集群中所有元数据服务器权重之和,total_load为集群中所有元数据服务器当前负载之和。

所述目录子树迁移过程,包括以下步骤:

A初始化Importer_set和Exporter_set为空,Importer_set表示当前负载低于目标负载的元数据服务器集合,Exporter_set表示当前负载大于目标负载的元数据服务器集合。

B遍历集群中所有元数据服务器节点,将每个节点的当前其当前负载与目标负载相减,如果差值为正并且大于阈值,则将该将节点归入Exporter_set;如果差值为负并且绝对值大于阈值,则将该将节点归入Importer_set。

C从步骤A所述Exporter_set中选取元数据服务器,记作MDSi,并将步骤B所述差值记为IMi

D从Importer_set选取元数据服务器,记作MDSj,并将所述步骤B所述差值的绝对值记作IMj

E比较步骤C所述IMi和D所述IMj,并将两者的较小值记作Pmig,在步骤C所述MDSi中选取负载值为Pmig的目录子树迁移到步骤D所述MDSj

F更新步骤C所述IMi为IMi和步骤E所述Pmig相减的差值,更新步骤D所述IMj为IMj和步骤E所述Pmig相减的差值。

G判断是否步骤F中所述更新后的IMi小于或等于阈值,如果步骤F中所述更新后的IMi小于或等于阈值则执行H;如果步骤F中所述更新后的IMi大于阈值,则返回至步骤D。

H判断是否已经遍历完Exporter_set中所有节点,如果已经遍历完Exporter_set中所有节点,则迁移过程结束;如果没有遍历完Exporter_set中所有节点,则返回至步骤C。

所述阈值通过元数据服务器配置参数设置。

与已有技术方案相比,本发明主要的优点有:

1.根据MDS固有性能按比例分配相应工作负载,并能根据当前负载进行动态调整,支持异构MDS集群。

2.屏蔽MDS底层配置细节,避免了性能模型中量化影响因子的难题准确评估MDS的元数据处理能力。

附图说明

图1为实测并行服务请求数和平均操作延时的关系图。

图2为对象存储系统的典型框架图。

图3为是MDS集群中文件系统名字空间的分布。

图4为本发明的总体流程图。

图5为本发明的目录子树流程图。

具体实施方式

本发明方法应用于对象存储系统中,对象存储系统主要由三部分组成,分别为客户端、MDS集群和OSD集群,参看图2。OSD集群将数据和元数据作为对象存储;客户端为用户提供访问接口;元数据服务器管理文件系统名字空间(参见图3)、控制用户访问和映射文件物理存储位置,并周期性地共享各自的负载水平,当某一台MDS的负载超过集群平均值一定阀值后,将启动子树迁移,根据过载的负载选择适当的目录子树迁移到负载较轻的节点,以均衡系统负载。

本发明的总体逻辑流程如下,参见图4:

1在元数据服务器空载状态下,通过基准测试工具mdtest测得每台元数据服务器在不同并行服务请求数下的平均操作延时。

2利用最小二乘法对步骤1中测得并行请求数和平均操作延时的映射关系曲线进行线性拟合,并得出拟合曲线斜率,然后将斜率值的倒数作为权重输入元数据服务器配置参数表。图1为实测并行服务请求数和平均操作延时的关系图。从图1中可以得出:a随着客户端数量的增加,MDS的平均操作延时也呈现线性增加;b随着MDS性能增强,对应的拟合曲线斜率单调减小。

3每台元数据服务器开启一个守护进程,对服务器处理的访问请求数计数作为参数得出服务器的当前负载,记录请求时间。

4每个心跳周期时间到时,元数据服务器通过UDP协议向集群中其它所有元数据服务器广播自己的当前负载水平和权重,并记录发送时间。心跳周期通过元数据服务器配置参数设置。

5元数据服务器接收完毕集群中其它服务器广播信息后,计算出目标负载。

6将服务器的当前其当前负载与步骤5中目标负载相减,如果差值为正并且大于阈值,则执行步骤7;如果差值为不为正并且大于阈值则转至步骤8阈值通过元数据服务器配置参数设置。

7启动目录子树迁移过程,根据当前负载和目标负载的差值,选择负载和为差值的目录子树迁移到当前负载低于目标负载的元数据服务器。

8当计时周期结束时,判断负载均衡任务是否结束,如果负载均衡任务结束,则任务结束;如果负载均衡任务没有结束,则重复计算当前负载和广播服务器负载水平和的过程,即返回至步骤3。

步骤3中所述服务器的当前负载由以下方法得出:

1)对元数据服务器中每个目录和文件设置对应的负载计数器,并以此衡量该文件和目录的负载;

2)当服务器处理服务请求时,与之对应的负载计数器就会增加1;

3)元数据服务器的当前负载为其所包含的所有目录和文件的负载计数器值之和;

所述计数器计数值会随时间呈指数型衰减,衰减函数为:,其中?t为最近一次访问请求数的记录时间与当前时间的差值。

所述目标负载的计算公式为:;其中target_loadi编号为i的服务器的目标负载,Wi编号为i的服务器的权重,Wtotal为集群中所有元数据服务器权重之和,total_load为集群中所有元数据服务器当前负载之和。

图5为本发明的目录子树迁移流程,具体过程包括以下步骤:

A初始化Importer_set和Exporter_set为空,Importer_set表示当前负载低于目标负载的元数据服务器集合,Exporter_set表示当前负载大于目标负载的元数据服务器集合;

B遍历集群中所有元数据服务器节点,将每个节点的当前其当前负载与目标负载相减,如果差值为正并且大于阈值,则将该将节点归入Exporter_set;如果差值为负并且绝对值大于阈值,则将该将节点归入Importer_set;

C从步骤A所述Exporter_set中选取元数据服务器,记作MDSi,并将步骤B所述差值记为IMi

D从Importer_set选取元数据服务器,记作MDSj,并将所述步骤B所述差值的绝对值记作IMj

E比较步骤C所述IMi和D所述IMj,并将两者的较小值记作Pmig,在步骤C所述MDSi中选取负载值为Pmig的目录子树迁移到步骤D所述MDSj

F更新步骤C所述IMi为IMi和步骤E所述Pmig相减的差值,更新步骤D所述IMj为IMj和步骤E所述Pmig相减的差值;

G判断是否步骤F中所述更新后的IMi小于或等于阈值,如果步骤F中所述更新后的IMi小于或等于阈值则执行H;如果步骤F中所述更新后的IMi大于阈值,则返回至步骤D;

H判断是否已经遍历完Exporter_set中所有节点,如果已经遍历完Exporter_set中所有节点,则迁移过程结束;如果没有遍历完Exporter_set中所有节点,则返回至步骤C。

由于过载节点的负载输出量和轻负载节点的引进量并非一定能一一对应,多数情况下需要多个节点协调完成上述负载迁移过过程。例如, MDSi需要输出大量负载,这时需要把过载负载分别迁移到多个轻载节点。迁移过程首先会在MDSi中搜索负载和为Pmig的目录子树,然后将转移到的轻负载节点MDSj。每个目录子树代表一定的访问负载,因此把目录子树迁移也就意味着工作负载的转移。这样每个MDS节点能够根据自身的处理能力分配到相应比例的工作负载,最终使MDS集群达到负载均衡。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号