一种资源创建的方法和装置制造方法及图纸

技术编号:12692318 阅读:51 留言:0更新日期:2016-01-13 10:10
本发明专利技术提供一种资源创建的方法和装置,存储池内包括扩容前的K个PD和扩容后的M个PD,该方法包括:在资源创建过程中,从K个PD和M个PD中,选择用于创建资源的VD;其中,选择的VD均匀分布在K个PD和M个PD中;在资源创建完成后,对K个PD和M个PD中的VD进行均衡处理,以使K个PD和M个PD的利用率保持在平均利用率的有效范围之内。通过本发明专利技术的技术方案,当存储池中的任意一个PD发生故障时,会触发重构过程,此时基于所有PD的数据恢复故障PD的数据,参与到重构过程的PD数量较多,大大提高重构速度,而且扩容不会导致重构效率的降低,减轻扩容后的M个PD的重构压力,减少对业务的影响。

【技术实现步骤摘要】

本专利技术涉及存储
,尤其涉及一种资源创建的方法和装置
技术介绍
为了解决重构时间较长的问题,传统的阵列构建方式逐渐演变到块虚拟化方式,如图1所示,为块虚拟化的架构示意图,通过块虚拟化方式,由存储池向上层提供资源。块虚拟化方式的基本思想是:将指定数量的H^Physical Disk,物理磁盘)加入到存储池中,并按照指定大小将切割成多个VD (Virtual Disk,虚拟磁盘,即分块),多个VD按照相应的RAID (Redundant Arrays of Independent Disks,独立冗余磁盘阵列)策略组建VDG (Virtual Disk Group,虚拟磁盘组),并向上层提供资源。其中,VD是组成VDG的虚拟磁盘单元,VDG由多个位于不同上的VD组成。在图1中,将ro1、ro2、ro3、ro4、PD5加入到存储池中,并按照指定大小将各ro均切割成 9 个 VD。进一步的,VDG1 由 VD11、VD21、VD31、VD41 组成,VDG2 由 VD12、VD22、VD32、VD51 组成,VDG3 由 VD13、VD23、VD42、VD52 组成,VDG4 由 VD14、VD33、VD43、VD53 组成,VDG5由 VD24、VD34、VD44、VD54 组成,VDG6 由 VD15、VD25、VD35、VD45 组成,以此类推。进一步的,第一个RAID由VDG1、VDG2和VDG3组成,第二个RAID由VDG4、VDG5和VDG6组成,以此类推。当存储池中的资源(即VD资源)不足以满足上层业务的需求时,可以对存储池进行扩容,即在存储池中添加新PD,并按照指定大小将新ro切割成多个VD,新ro所切割成的多个vd用于继续向上层提供资源,以满足上层业务的需求。例如,重新将ro6、ro7、ro8、ro9加入到存储池中,并按照指定大小分别将ro6、PD7, PD8, PD9均切割成9个VD。在将新ro(H)6、PD7, PD8, PD9)添加到存储池之后,新的利用率为0,而原有H)(PD1、PD2、PD3、PD4、PD5)的利用率远大于新的利用率,此时需要对存储池进行均衡处理,以使所有ro的利用率保持在平均利用率的有效范围之内。基于此,在选取VD创建RAID时,会先从新PD中选取VD来创建VDG,例如,VDG7由VD61、VD71、VD81、VD91组成,VDG8由VD62、VD72、VD82、VD92 组成,VDG9 由 VD63、VD73、VD83、VD93 组成,VDG10 由 VD64、VD74、VD84、VD94组成,以此类推。进一步的,第三个RAID由VDG7、VDG8和VDG9组成,以此类推。当新ro (PD6, PD7, PD8, PD9)中有任意一个(如TO6)发生故障时,会触发重构过程,此时基于H)7、PD8, PD9中的数据恢复PD6中的数据,而原有Η)(Η)1、PD2, PD3, PD4,PD5)并不会参与到重构过程中。基于上述方式,参与到重构过程中的Η)数量较少,导致重构速度大大降低,PD7,PD8, PD9的重构压力比较大,从而造成对业务的影响。
技术实现思路
本专利技术提供一种资源创建的方法,存储池内包括扩容前的κ个物理磁盘ro和扩容后的μ个ro,κ为正整数,μ为正整数,所述方法包括:在资源创建过程中,从所述κ个ro和μ个ro中,选择用于创建资源的虚拟磁盘vd ;其中,选择的vd均匀分布在所述κ个ro和μ个ro中;在资源创建完成后,对所述κ个ro和μ个ro中的VD进行均衡处理,以使所述κ个ro和μ个ro的利用率保持在平均利用率的有效范围之内。 所述从所述κ个ro和μ个ro中,选择用于创建资源的vd的过程,具体包括:按照伪随机算法和本次资源创建时ro上占用的vd均衡算法,从所述κ个ro和所述μ个ro中选择用于创建资源的VD,其中,选择的用于组建同一个虚拟磁盘组VDG的多个VD不能位于同一个PD上。所述方法进一步包括:在资源创建之前,则设置创建标记;在资源创建完成之后,则清除所述创建标记;其中,如果当前存在所述创建标记,则不允许执行对所述κ个ro和μ个ro中的VD进行均衡处理的过程;如果当前不存在所述创建标记,则执行对所述κ个ro和μ个ro中的VD进行均衡处理的过程。所述对所述κ个ro和所述μ个ro中的vd进行均衡处理,以使所述κ个ro和所述μ个ro的利用率保持在平均利用率的有效范围之内的过程,具体包括:将所述κ个ro中的部分vd的数据迀移到所述μ个ro中的vd上,以使所述κ个ro和所述μ个ro的利用率保持在平均利用率的有效范围之内;其中,在将所述κ个ro中的部分vd的数据迀移到所述Μ个ro中的VD上时,针对所述κ个ro中的位于同一个VDG的多个VD,所述多个VD中迀移部分VD的数据到所述Μ个ro中对应个数的VD上。所述平均利用率的有效范围具体包括:,所述N为平均利用率,X为预设阈值;所述平均利用率N = ((a% +b% )*K+b% *M)/(K+M);其中,为在资源创建过程之前,所述K个ro中的每个ro的利用率,b%为在资源创建过程中,所述κ个ro和所述μ个ro中的每个ro的利用率。本专利技术提供一种资源创建的装置,存储池内包括扩容前的κ个物理磁盘ro和扩容后的μ个ro,κ为正整数,μ为正整数,所述装置包括:选择模块,用于在资源创建过程中,从κ个ro和μ个ro中选择用于创建资源的虚拟磁盘vd ;选择的vd均匀分布在κ个ro和μ个ro中;处理模块,用于在资源创建完成之后,对所述κ个ro和所述μ个ro中的VD进行均衡处理,以使所述K个ro和所述μ个ro的利用率保持在平均利用率的有效范围之内。所述选择模块,具体用于在从所述κ个ro和所述μ个ro中,选择用于创建资源的虚拟磁盘vd的过程中,按照伪随机算法和本次资源创建时ro上占用的vd均衡算法,从所述κ个ro和所述μ个ro中选择用于创建资源的vd,且选择的用于组建同一个虚拟磁盘组VDG的多个vd不能位于同一个ro上。所述处理模块,还用于在资源创建之前,则设置创建标记;在资源创建完成之后,则清除所述创建标记;其中,如果当前存在所述创建标记,则不允许所述处理模块执行对所述κ个ro和μ个ro中的VD进行均衡处理的过程;如果当前不存在所述创建标记,则允许所述处理模块执行对所述κ个ro和μ个ro中的vd进行均衡处理的过程。所述处理模块,具体用于在对所述κ个ro和所述μ个ro中的VD进行均衡处理,以使所述K个ro和所述μ个ro的利用率保持在平均利用率的有效范围之内的过程中,将所述κ个ro中的部分VD的数据迀移到所述μ个ro中的VD上,以使所述κ个ro和所述μ个ro的利用率保持在平均利用率的有效范围之内;在将所述κ个ro中的部分vd的数据迀移到所述μ个ro中的vd上时,针对所述κ个ro中的位于同一个VDG的多个VD,所述多个VD中迀移部分VD的数据到所述Μ个ro中对应个数的VD上。所述平均利用率的有效范围具体包括:,所述N为平均利用率,X为预设阈值;所述平均利用率N = ((a% +b% )*K+b% *M)/(K+M);其中,为在资源创建过程之前,所述K个ro中的每个ro的利用率,b%为在资源创建过程中,所述κ个本文档来自技高网
...

【技术保护点】
一种资源创建的方法,存储池内包括扩容前的K个物理磁盘PD和扩容后的M个PD,K为正整数,M为正整数,其特征在于,所述方法包括:在资源创建过程中,从所述K个PD和M个PD中,选择用于创建资源的虚拟磁盘VD;其中,选择的VD均匀分布在所述K个PD和M个PD中;在资源创建完成后,对所述K个PD和M个PD中的VD进行均衡处理,以使所述K个PD和M个PD的利用率保持在平均利用率的有效范围之内。

【技术特征摘要】

【专利技术属性】
技术研发人员:郭永强王丽红郭鹏洲卢洪棚谢菲
申请(专利权)人:浙江宇视科技有限公司
类型:发明
国别省市:浙江;33

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

1
相关领域技术
  • 暂无相关专利