ceph读写质量优化方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:33406946 阅读:17 留言:0更新日期:2022-05-11 23:31
本申请属于通信技术领域,涉及一种ceph读写质量优化方法、装置、计算机设备及存储介质,所述方法包括步骤:在osd中创建服务质量评分模块;由服务质量评分模块动态计算主pg和从pg的服务质量分值;获得服务质量分值最高的pg;根据服务质量分值最高的pg进行判断,如果服务质量分值最高的pg不是主pg,则服务质量分值最高的pg升级为临时主pg,改由临时主pg接受客户端的读写请求。通过动态计算主pg和从pg的服务质量分值,根据实际的负载情况决定提供服务的pg,能有效利用集群的资源,加快处理客户端请求的速度,带来更流畅的体验。带来更流畅的体验。带来更流畅的体验。

【技术实现步骤摘要】
ceph读写质量优化方法、装置、计算机设备及存储介质


[0001]本申请涉及通讯
,尤其涉及一种ceph读写质量优化方法、装置、计算机设备及存储介质。

技术介绍

[0002]ceph(分布式文件系统)是一款开源的分布式存储系统,对外提供块服务、文件系统服务和对象存储服务,在市场上应用广泛。
[0003]ceph的数据由分布于不同主机的不同磁盘存储,每一块磁盘由一个命名为osd(object

based storage device,基于对象的存储设备)的守护进程处理数据读写。如图1所示,ceph采用对象(object)代表一块数据,pg(placement group,归置组)则为对象的集合。pg默认采用三副本实现数据可靠性,分为一个主pg和两个从pg,pg位于不同的osd上。一个osd包含多个pg。
[0004]为了保证数据一致性,ceph默认采取数据读写都由主pg发起,从pg只做备份,其中读数据只会从主pg中读取。由于数据读写都落在了主pg身上,磁盘输入输出(io)属于耗时任务,io操作频繁时,必然会加重主pg的负载,缓慢响应客户端。目前ceph采用crush算法,根据集群的osd分布情况,把主pg均衡地分布在所有osd中,一旦通过算法确定了主pg对应的osd,在集群拓扑不变情况下,主pg归属的osd不会再改变。但在实际环境中,每个osd承受的读写请求压力不同,甚至差异巨大,如果仍然按照算法死板的确定主pg归属的osd,必然会加重相应osd的负载压力,加大请求的响应时间。可见,这种做法未能根据osd实际的负载情况确定主pg角色,达不到充分利用集群资源的效果。

技术实现思路

[0005]本申请的目的在于提出一种ceph读写质量优化方法、装置、计算机设备及存储介质,以解决现有技术中未能根据osd实际的负载情况确定主pg角色,达不到充分利用集群资源的效果的问题。
[0006]为了解决上述技术问题,本申请提供一种ceph读写质量优化方法,采用了如下所述的技术方案,包括下述步骤:在osd中创建服务质量评分模块;由服务质量评分模块动态计算主pg和从pg的服务质量分值;获得服务质量分值最高的pg;根据服务质量分值最高的pg进行判断,如果服务质量分值最高的pg不是主pg,则服务质量分值最高的pg升级为临时主pg,改由临时主pg接受客户端的读写请求。
[0007]进一步的,在所述在osd中创建服务质量评分模块的步骤之前还包括:设置服务质量评分模块的评分标准。
[0008]进一步的,所述设置服务质量评分模块的评分标准的步骤具体包括:比较osd当前读写请求个数,两个osd的读写请求个数差异值在预设差异值以上
的,具有更少读写请求的osd计第一分值,否则计0分;判断osd的bluestore是否正在执行数据压缩,没有正在执行数据压缩的osd计第二分值,否则计0分;分值高的osd设为更优osd。
[0009]进一步的,所述由服务质量评分模块动态计算主pg和从pg的服务质量分值的步骤具体包括:第一步、比较主pg与第一从pg1,如果服务质量分值高的是主pg,进入第二步,否则进入第三步;第二步、比较主pg与第二从pg2,如果服务质量分值高的是主pg,则主pg为最优osd,比较终止,否则进入第三步;第三步、比较第一从pg1与第二从pg2,服务质量分值高的pg为最优osd,比较终止。
[0010]进一步的,在所述服务质量分值最高的pg升级为临时主pg,改由临时主pg接受客户端的读写请求的步骤之后还包括:由服务质量评分模块锁定所述临时主pg在主pg锁定阈值时间内,在主pg锁定阈值时间内不再切换主PG角色。
[0011]进一步的,所述主pg锁定阈值时间为5~10分钟。
[0012]为了解决上述技术问题,本申请还提供一种ceph读写质量优化装置,采用了如下所述的技术方案,包括:创建模块,用于在osd中创建服务质量评分模块;计算模块,用于由服务质量评分模块动态计算主pg和从pg的服务质量分值;获取模块,用于获得服务质量分值最高的pg;优化模块,用于根据服务质量分值最高的pg进行判断,如果服务质量分值最高的pg不是主pg,则服务质量分值最高的pg升级为临时主pg,改由临时主pg接受客户端的读写请求。
[0013]进一步的,所述服务质量评分模块包括:定时器,所述定时器设置切换临时主pg的锁定阈值时间,在锁定阈值时间内禁止切换主pg角色。为了解决上述技术问题,本申请还提供一种计算机设备,采用了如下所述的技术方案,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现上述的ceph读写质量优化方法的步骤。
[0014]为了解决上述技术问题,本申请还提供一种计算机可读存储介质,采用了如下所述的技术方案,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现上述的ceph读写质量优化方法的步骤。
[0015]与现有技术相比,本申请主要有以下有益效果:通过在osd中添加服务质量评分模块,动态计算主pg和从pg的服务质量分值,找出服务质量分值最高的pg,如果服务质量分值最高的pg不是主pg,则服务质量分值最高的pg升级为临时主pg,改由临时主pg接受客户端的读写请求;通过根据实际的负载情况决定提供服务的pg,能有效利用集群的资源,加快处理客户端请求的速度,带来更流畅的体验。
附图说明
[0016]为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0017]图1是现有技术中ceph中使用的pg结构示意图;图2是本申请可以应用于其中的示例性系统架构图;图3是本申请的ceph读写质量优化方法的一个实施例的流程图;图4是本申请的ceph读写质量优化装置的一个实施例的结构示意图;图5是本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
[0018]除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的
的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
[0019]在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0020]为了使本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种ceph读写质量优化方法,其特征在于,包括下述步骤:在osd中创建服务质量评分模块;由服务质量评分模块动态计算主pg和从pg的服务质量分值;获得服务质量分值最高的pg;根据服务质量分值最高的pg进行判断,如果服务质量分值最高的pg不是主pg,则服务质量分值最高的pg升级为临时主pg,改由临时主pg接受客户端的读写请求。2.根据权利要求1所述的ceph读写质量优化方法,其特征在于,在所述在osd中创建服务质量评分模块的步骤之前还包括:设置服务质量评分模块的评分标准。3.根据权利要求2所述的ceph读写质量优化方法,其特征在于,所述设置服务质量评分模块的评分标准的步骤具体包括:比较osd当前读写请求个数,两个osd的读写请求个数差异值在预设差异值以上的,具有更少读写请求的osd计第一分值,否则计0分;判断osd的bluestore是否正在执行数据压缩,没有正在执行数据压缩的osd计第二分值,否则计0分;分值高的osd设为更优osd。4.根据权利要求1所述的ceph读写质量优化方法,其特征在于,所述由服务质量评分模块动态计算主pg和从pg的服务质量分值的步骤具体包括:第一步、比较主pg与第一从pg1,如果服务质量分值高的是主pg,进入第二步,否则进入第三步;第二步、比较主pg与第二从pg2,如果服务质量分值高的是主pg,则主pg为最优osd,比较终止,否则进入第三步;第三步、比较第一从pg1与第二从pg2,服务质量分值高的pg为最优osd,比较终止。5.根据权利要...

【专利技术属性】
技术研发人员:吴日明霍键聪闵宇
申请(专利权)人:广东睿江云计算股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1