一种分布式存储系统OSD容量的均衡调配方法技术方案

技术编号:20362399 阅读:24 留言:0更新日期:2019-02-16 16:19
本发明专利技术涉及一种分布式存储系统OSD容量的均衡调配方法,其特征在于,包括以下步骤:S1:输入存储池的副本数、存储池的pg数以及存储池的名称,如果输入有错,则提示程序退出;S2:获取存储池的副本数、pg数以及名称;S3:判断输入的存储池名称是否为已存在池,若不是,则提示程序退出;S4:创建文件存放日志文件;S5:根据存储池id判断该存储池的容量均衡策略为0或者1;S6:用crushtool工具做容量均衡;S7:判断crushtool是否操作成功,不存在则报crushtool失败;S8:如果crushtool成功,则判断容量均衡是否成功。

【技术实现步骤摘要】
一种分布式存储系统OSD容量的均衡调配方法
本专利技术属于分布式存储系统
,具体涉及一种分布式存储系统OSD容量的均衡调配方法。
技术介绍
分布式存储系统的存储池内的对象数据首先聚合为不同的数据PG,然后通过PG映射到不同的OSD上,存储池的PG数量过少会影响数据分布的均衡性、过多会消耗更多的系统资源,PG数量的合理数值为每个OSD上有50-100个PG,但在在系统规模较大时会存在一定的数据不均衡的现象。此为现有技术的不足之处。因此,针对现有技术中的上述缺陷,提供设计一种分布式存储系统OSD容量的均衡调配方法;以解决现有技术中的上述缺陷,是非常有必要的。
技术实现思路
本专利技术的目的在于,针对上述现有技术存在的缺陷,提供设计一种分布式存储系统OSD容量的均衡调配方法,以解决上述技术问题。为实现上述目的,本专利技术给出以下技术方案:一种分布式存储系统OSD容量的均衡调配方法,其特征在于,包括以下步骤:S1:输入存储池的副本数、存储池的pg数以及存储池的名称,如果输入有错,则提示程序退出;S2:获取存储池的副本数、pg数以及名称;S3:判断输入的存储池名称是否为已存在池,若不是,则提示程序退出;S4:创建文件存放日志文件;S5:根据存储池id判断该存储池的容量均衡策略为0或者1;S6:用crushtool工具做容量均衡;S7:判断crushtool是否操作成功,不存在则报crushtool失败;S8:如果crushtool成功,则判断容量均衡是否成功。作为优选,所述步骤S1通过以下代码实现:作为优选,所述步骤S2通过以下代码实现:nue_rep=$1pg_num=$2letpg_num=pg_num-1pool_name=$3time=‘date+%Y%m%d%H%M%S‘作为优选,所述步骤S3通过以下代码实现:作为优选,所述步骤S4通过以下代码实现:作为优选,所述步骤S5通过以下代码实现:作为优选,所述步骤S6通过以下代码实现:作为优选,所述步骤S7通过以下代码实现:作为优选,所述步骤S8通过以下代码实现:本专利技术的有益效果在于,通过调整OSD在OSDmap中的权重来改善数据分布的不均衡;通过调整OSD在OSDmap中的权重来改变OSD在该存储池中PG数目来达到数据均衡。此外,本专利技术设计原理可靠,结构简单,具有非常广泛的应用前景。由此可见,本专利技术与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。附图说明图1是本专利技术提供的一种分布式存储系统OSD容量的均衡调配方法流程图。具体实施方式下面结合附图并通过具体实施例对本专利技术进行详细阐述,以下实施例是对本专利技术的解释,而本专利技术并不局限于以下实施方式。如图1所示,本专利技术提供的一种分布式存储系统OSD容量的均衡调配方法,其特征在于,包括以下步骤:S1:输入存储池的副本数、存储池的pg数以及存储池的名称,如果输入有错,则提示程序退出;S2:获取存储池的副本数、pg数以及名称;S3:判断输入的存储池名称是否为已存在池,若不是,则提示程序退出;S4:创建文件存放日志文件;S5:根据存储池id判断该存储池的容量均衡策略为0或者1;S6:用crushtool工具做容量均衡;S7:判断crushtool是否操作成功,不存在则报crushtool失败;S8:如果crushtool成功,则判断容量均衡是否成功。本实施例中,所述步骤S1通过以下代码实现:本实施例中,所述步骤S2通过以下代码实现:nue_rep=$1pg_num=$2letpg_num=pg_num-1pool_name=$3time=‘date+%Y%m%d%H%M%S‘本实施例中,所述步骤S3通过以下代码实现:本实施例中,所述步骤S4通过以下代码实现:本实施例中,所述步骤S5通过以下代码实现:本实施例中,所述步骤S6通过以下代码实现:本实施例中,所述步骤S7通过以下代码实现:本实施例中,所述步骤S8通过以下代码实现:以上公开的仅为本专利技术的优选实施方式,但本专利技术并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本专利技术原理前提下所作的若干改进和润饰,都应落在本专利技术的保护范围内。本文档来自技高网...

【技术保护点】
1.一种分布式存储系统OSD容量的均衡调配方法,其特征在于,包括以下步骤:S1:输入存储池的副本数、存储池的pg数以及存储池的名称,如果输入有错,则提示程序退出;S2:获取存储池的副本数、pg数以及名称;S3:判断输入的存储池名称是否为已存在池,若不是,则提示程序退出;S4:创建文件存放日志文件;S5:根据存储池id判断该存储池的容量均衡策略为0或者1;S6:用crushtool工具做容量均衡;S7:判断crushtool是否操作成功,不存在则报crushtool失败;S8:如果crushtool成功,则判断容量均衡是否成功。

【技术特征摘要】
1.一种分布式存储系统OSD容量的均衡调配方法,其特征在于,包括以下步骤:S1:输入存储池的副本数、存储池的pg数以及存储池的名称,如果输入有错,则提示程序退出;S2:获取存储池的副本数、pg数以及名称;S3:判断输入的存储池名称是否为已存在池,若不是,则提示程序退出;S4:创建文件存放日志文件;S5:根据存储池id判断该存储池的容量均衡策略为0或者1;S6:用crushtool工具做容量均衡;S7:判断crushtool是否操作成功,不存在则报crushtool失败;S8:如果crushtool成功,则判断容量均衡是否成功。2.根据权利要求1所述的一种分布式存储系统OSD容量的均衡调配方法,其特征在于,所述步骤S1通过以下代码实现:3.根据权利要求2所述的一种分布式存储系统OSD容量的均衡调配方法,其特征在于,所述步骤S2通过以下代码实现:nue_rep=$1pg_num=$2letpg_num=pg_num-1pool_name=$3time=‘date+%Y%m%d%H%M%S‘。4.根据权利要求3所述的一种分布式存储系统OSD容量的均衡调配方法,其特征在于,所述步骤S3通过以下代码实现:5.根据权利要求4所述的一种分布式存储系统OSD容量的均衡调配方法,其特征在于,所述步骤S4通过以下代码实现:mkdir-p/var/log/icfs/reweighe_logcrushtool_log="/var/log/icfs/reweighe_log/${pool_name}_balance_result.log"export_file="/va...

【专利技术属性】
技术研发人员:李佳颖李婷婷李玲侠刘颖
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1