CN104731528A - 一种云计算块存储服务的构建方法及系统 - Google Patents
一种云计算块存储服务的构建方法及系统 Download PDFInfo
- Publication number
- CN104731528A CN104731528A CN201510115735.3A CN201510115735A CN104731528A CN 104731528 A CN104731528 A CN 104731528A CN 201510115735 A CN201510115735 A CN 201510115735A CN 104731528 A CN104731528 A CN 104731528A
- Authority
- CN
- China
- Prior art keywords
- mirror image
- server
- copy
- class
- dispose
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本发明涉及一种云计算块存储服务的构建方法及系统,所述方法包括:S1、根据块存储平台规模、服务数量、镜像请求的调度方式及镜像装载需求,进行参数初始化;S2、在块存储中为每类镜像构建一个副本;S3、计算所述块存储的剩余容量,并根据所述每类镜像的文件大小将与所述块存储的剩余容量对应的镜像的副本进行部署;S4、根据所述块存储中的每类镜像的位置判断需要调整物理位置的镜像以及所述需要调整位置的镜像的可调整位置;S5、对所述需要调整物理位置的镜像进行位置调整。本发明的方法完成了在集中式存储网络中镜像副本的数目和位置的优化选择,提高存储平台的整体性能。
Description
技术领域
本发明涉及云计算技术领域,尤其是涉及一种云计算块存储服务的构建方法及系统。
背景技术
IaaS(Infrastructure as a Service,基础设施即服务)是一种重要的云计算服务模式。云计算体系架构IaaS平台上以服务的方式为用户提供包括处理、存储、网络和其它基本的计算资源的使用,用户可以在其申请到的虚拟资源当中部署或运行应用程序,而不需要了解计算资源提供过程的细节。随着数据中心规模的日益增大,云平台中服务器的数目不断增加,同时虚拟化环境也日趋复杂。虚拟资源在为上层应用带来灵活性的同时,也给平台的资源管理带来巨大的挑战:如果不能够高效调度数据中心中各类镜像的装载,将会很大程度上降低整个数据中心的工作性能。因此,如何优化云平台中块存储架构的设计成为IaaS平台的一个重要问题,设计并实现一个能够优化镜像装载时间和资源使用效率的块存储服务的优化构建策略无论在理论研究还是实际应用方面都有非常重要的意义。
OpenStack是一个开源的云管理平台项目,由于其多方面的优势已得到了众多工业界和学术界同行的认可。在OpenStack Folsom版本推出了Cinder组件,对IaaS平台的计算节点提供弹性块存储服务。通过Cinder组件,OpenStack实现了对虚拟机存储临时动态的扩容以及应用镜像的实时装载使用功能,使得云平台对于资源的分配与管理更加灵活。然而,目前的Cinder组件只实现了块存储中镜像动态挂载的功能,并没有进一步关注块存储镜像挂载的性能,具体来说,没有提供有效的块存储服务的优化构建策略。
现有的块存储服务构建策略主要以提高镜像副本的装载速率为目标,学术界和工业界提出了很多平台架构设计和镜像部署策略。平台架构优化方面,现有策略主要集中在优化存储网络的拓扑架构以提高镜像的查询和装载速率;镜像副本的部署方面,一些研究提出了基于访问频率的镜像副本优化部署和镜像请求调度方案,分担各个镜像的访问负载。总体来说,现有的服务构建方案从平台特性和业务源特性分别来考虑存储架构的优化,而没有综合考虑存储平台和业务源特性两种因素的相互影响,因此构建方案无法反映具体镜像装载业务在特定平台架构上的全面性能。同时,在对云存储镜像的装载速度进行性能建模时,现有研究往往仅考虑了物理节点的I/O速率,而忽略了镜像并发传输和网络性能造成的传输速率衰退状况。
发明内容
本发明提供一种云计算快存储服务的构建方法及系统,完成了在集中式存储网络中镜像副本的数目和位置的优化选择,提高存储平台的整体性能。
根据本发明的一个方面,提供一种云计算块存储服务的构建方法,其特征在于,所述方法包括:
S1、根据块存储平台规模、服务数量、镜像请求的调度方式及镜像装载需求,进行参数初始化;
S2、在块存储中为每类镜像构建一个副本;
S3、计算所述块存储的剩余容量,并根据所述每类镜像的文件大小将与所述块存储的剩余容量对应的镜像的副本进行部署;
S4、根据所述块存储中的每类镜像的位置判断需要调整物理位置的镜像以及所述需要调整位置的镜像的可调整位置;
S5、对所述需要调整物理位置的镜像进行位置调整。
其中,进行初始化的参数包括:待装载镜像的种类,块存储平台中物理服务器的数目,每类镜像的文件大小,每个物理存储节点的容量,每个物理存储节点空载时的I/O速率;镜像单位传输总速率。
其中,所述步骤S2具体包括:
S21、对待装载镜像进行分类,并计所述待装载镜像的种类为m;
S22、从待装载镜像的种类中选择任一类作为当前类镜像,计算所述当前类镜像在所述块存储中每个服务器的镜像整体请求响应时间,并获取所述镜像整体请求响应时间最大的服务器对所述当前类镜像的副本进行部署;
S23、更新部署所述当前类镜像的副本的服务器的剩余容量,并更新所述部署当前类镜像的副本的服务器的负载非空时的I/O速率;
S24、将任务计数器的值f加1;
S25、判断此时f与待装载镜像的种类m的大小关系,若f<m,则将所述当前类镜像从待装载的镜像类别中除去,然后返回步骤S22,否则执行步骤S3。
其中,所述步骤S3具体包括:
S31、计算所述存储块中每个服务器的剩余容量S1~Sn,并判断每类镜像文本的大小si与所述每个服务器的剩余容量Sj的大小,若si<Max{S1,S2,…,Sn},则第i类镜像为可以继续部署副本的镜像;如果si>Max{S1,S2,…,Sn}则执行步骤S4,其中,i为所述待装载镜像的种类中的任一类,j为所述块存储中的服务器中的任一个;
S32、将所有所述可以继续部署副本的镜像组成可以继续部署副本的镜像组合;
S33、从所述可以继续部署副本的镜像的集合中选取任一类镜像作为当前可以继续部署副本的镜像,判断所述当前可以继续部署副本的镜像的文件大小si与所述块存储中每个服务器的剩余容量Sj的大小,若si>Sj,则所述当前可以继续部署副本的镜像不能在服务器j上部署;否则能在服务器j上进行部署;
S34、获取能部署所述当前可以继续部署副本的镜像的副本的服务器中选择响应时间最小的服务器;
S35、计算当所述当前可以继续部署副本的镜像部署在选择的服务器上后的存储平台整体请求响应时间;
S36、将所述当前可以继续部署副本的镜像从所述可以继续部署副本的镜像组合中除去,重复执行步骤S33-35;
S37、获取所有可以继续部署副本的镜像的存储平台整体请求相应时间,并选择所述存储平台整体请求相应时间最小的镜像和对应的服务器进行部署;
S38、将部署的可以继续部署副本的镜像从所述可以继续部署副本的镜像组合中除去,更新部署所述可以继续部署副本的镜像的服务器的剩余容量和负载非空时的I/O速率;
S39、重复步骤S31~S38。
其中,所述步骤S4具体包括:
S41、计算所述块存储平台处于稳态时并发传输的镜像数目和稳态时平均每类镜像在存储网络中的传输速率Bavg;
S42、计算所述存储池中每类镜像在应用场景中的传输速率γij,并依次比较γij与所述存储池中每类镜像副本的装载速率的大小μij,若μij>γij,则当前类镜像副本所在的服务器的I/O速率并未充分利用,将该当前类镜像副本所在的服务器加入到有能力继续部署新镜像的服务器集合中;
S43、依次比较每类镜像副本的装载速率的大小μij与Bavg/si的大小关系:若μij<Bavg/sj,则当前类镜像副本所在的服务器的负载过重,则将所述当前类镜像副本确定为需要调整物理位置的镜像,否则结束。
其中,所述步骤S5具体包括:
S51、找出需要调整物理位置的镜像中镜像装载的I/O性能与网络传输性能相差最大的镜像,即依次计算|μij-Bavg/sj|,找出令|μij-Bavg/sj|取得最大值的镜像作为当前需要调整物理位置的镜像;
S52、在所述有能力继续部署新镜像的服务器集合中查找所述镜像部署服务器之外的其他服务器中值最大的服务器作为所述当前需要调整物理位置的镜像的调整位置服务器;
S53、比较所述当前需要调整物理位置的镜像在原始部署位置和所述调整位置服务器上的存储平台整体请求响应时间的大小,如果在所述调整位置服务器上部署所述当前需要调整物理位置的镜像后的存储平台整体请求相应时间小,则对所述当前需要调整物理位置的镜像部署到所述调整位置服务器,然后执行下一步,否则直接执行下一步;
S54、更新所述调整位置服务器上的各类镜像的装载速率及所述调整位置服务器的剩余容量,并判断所述调整位置服务器是否能继续部署服务器,如不能,则从所述有能力继续部署新镜像的服务器集合中除去,并将重新部署位置的镜像从所述需要调整物理位置的镜像集合中除去;
S55、判断所述需要调整物理位置的镜像集合和所述有能力继续部署新镜像的服务器集合是否为空,若都不为空,则执行步骤S51,否则结束。
根据本发明的另一个方面,提供一种云计算块存储服务的构建系统,其特征在于,所述系统包括:
初始化单元,用于根据块存储平台规模、服务数量、镜像请求的调度方式及镜像装载需求,进行参数初始化;
副本部署单元,用于在块存储中为每类镜像构建一个副本;
剩余容量利用单元,用于计算所述块存储的剩余容量,并根据所述每类镜像的文件大小将与所述块存储的剩余容量对应的镜像的副本进行部署;
位置调整判断单元,用于根据所述块存储中的每类镜像的位置判断需要调整物理位置的镜像以及所述需要调整位置的镜像的可调整位置;
位置调整单元,用于对所述需要调整物理位置的镜像进行位置调整。
本发明的云计算块存储服务的构建方法及系统,解决现有存储平台构建方案在平台性能分析和业务源特性方面考虑因素不全面的问题,提出综合考虑业务源特性、平台特性的块存储服务的构建方案,为OpenStack Cinder组件提供存储平台部署策略上的支持。另外,本发明的方法综合考虑了平台因素和业务源特性对平台性能的影响,相比于OpenStack项目组Cinder插件的默认部署方案以及学术界提出的其它仅考虑业务源特性的部署方案,该方案使得块存储平台的性能有了明显的改进,整体上提高了云计算IaaS平台的镜像装载速率。
附图说明
通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
图1示出了本发明的实施例的物理节点并发传输的文件数目变化时,每个文件单位I/O速率变化曲线。
图2示出了本发明的云计算块服务的构架方法的流程图。
图3示出了本发明的一种云计算块存储服务的构建系统的结构框图。
图4示出了本发明的实施例的云平台物理架构示意图。
图5示出了使用本发明的方法与现有的部署方法后块存储平台整体作业处理率。
图6示出了使用本发明的方法与现有的部署方案后块存储系统达到稳态时各作业处理率。
具体实施方式
下面将结合附图对本发明的实施例进行详细描述。
在对本发明的方法和系统进行描述前,对块存储平台的性能评价指标进行说明。
存储系统的稳态请求处理时间(Tres):存储系统稳态请求处理时间记录了当时间足够长,存储系统处于稳定运行状态时(各个镜像请求积压程度相对固定),存储系统的整体镜像装载时间。具体地,假设第j台服务器上的第i类镜像副本装载请求的稳态响应时间为tij,则有:
镜像请求积压状况(L(t)):镜像请求的积压状况记录了在某一时刻尚未被处理的请求的数目,请求积压情况越严重,则该时刻服务响应的效率就会下降。具体地,我们定义t时刻第j台服务器上的第i类镜像副本上被积压的请求数目为Lij(t),该时刻的请求积压量由前一时刻的请求积压量,t时刻内到达的新的请求数目Aij(t)以及t时刻内处理掉的请求数目Dij(t)共同决定,具体关系为:
Lij(t)=Lij(t-1)+Aij(t)-Dij(t)
对于块存储系统整体的资源调度队列,t时刻所有任务积压量的总和L(t)则表示为:
为了减小请求的丢失情况同时提高系统的响应时间,增大吞吐率,合理的平台构建策略应当使存储系统处于稳定状态时,请求积压量维持在一个有限值,即尽可能的满足:
镜像平均装载时间(tij):镜像平均装载时间反映了块存储系统处于稳态时平均的工作效率。平均装载时间的长短不仅与稳态时系统的请求积压量有关,而且与请求到达的速率相关。具体来说,假设第j台服务器上的第i类镜像副本装载请求的到达服从强度为λij的泊松分布,某类镜像副本的装载时间近似为定值。根据排队论模型推算结果,稳态时该服务请求的平均处理时间tij为:
云平台块存储镜像装配场景中,镜像的单位装载速率是由块存储服务器的I/O速率,网络传输速率以及并发传输的镜像数目共同决定的。本发明综合考虑了不同部署方案下影响镜像传输速率的瓶颈性能参数,在固定规模的块存储平台中优化每类镜像部署的副本数目和副本位置,最终得到最优的存储服务构建方案。
本发明的构建方法分为两部分:
1.块存储平台性能建模
该模型对块存储平台的镜像装载过程进行了详细刻画,并采用基于排队论的随机模型,对某一特定的服务构建策略下块存储平台的稳态性能进行了量化计算。根据模型的计算结果,我们可以进一步确定云计算块存储服务的最优构建方案。具体地,当块存储平台规模固定、镜像请求的调度方式确定的时候,利用性能模型的计算结果计算出每类镜像的最佳副本数目以及在块存储平台的最佳部署位置。
性能建模部分引入了如下的模型参数:
m:块存储平台中镜像的种类
n:块存储平台中物理服务器的数目
N:块存储平台中允许部署的所有镜像的总数
ni:第i类镜像在存储平台中的副本数目
si:第i类镜像的文件大小
Si:第i个物理存储节点的容量
μi:第i个物理存储节点空载时的I/O速率
λi:第i类镜像的请求到达强度
lij:0/1变量,记录第i类服务的镜像副本是否在第j个存储节点上部署
假设每类镜像在一个存储节点上不会部署2个以上的副本,由于每个镜像副本都要被部署,因此可以得到如下的约束条件:
同时,每个存储节点上部署镜像的总容量不能超过节点容量,因此有:
目前已有的性能模型,在对镜像装载速率进行量化计算时,忽略了镜像并发传输对I/O速率造成的影响。针对此问题,我们做了简单的性能测试实验,统计了当物理节点并发传输的文件数目变化时,每个文件的单位I/O速率的变化,具体变化趋势如图1所示。
图1示出了本发明的实施例的物理节点并发传输的文件数目变化时,每个文件单位I/O速率变化曲线;
对图1所示的I/O变化趋势进行拟合,我们得出随着文件并发传输数目的增大,文件的单位I/O速率大致呈负指数型的下降趋势。假设第i个存储节点上的第j类服务镜像副本的装载速率为μij,则可以得出μij的表达式如下:
其中f函数表示某一特定的指数分布函数,具体指数分布的系数和参数由服务器和镜像的配置大小有关。具体在图1所示的服务器上,f函数的表达式可以具体化为:
在某一特定时刻,分配到一个具体镜像副本的装载请求无法被全部处理时,未能处理的请求会积压在等待队列中,等待后续被处理。假设每类镜像的请求到达服从泊松分布,镜像请求采用OpenStack Cinder默认的调度策略时,我们可以使用基于排队论的随机模型计算出不同队列的请求积压状况。
首先,OpenStack Cinder默认采用的是FIFO排序和随机分配的策略,在此策略下,同一镜像的多个副本被分配请求的概率是相等的。假设第i个存储节点上第j类镜像的请求到达频率为λij,则有:λij=λi/ni。
请求被分配之后,具体镜像装载的排队过程近似服从M/D/1排队模型,根据排队模型的结论,可以得出当运行时间足够长,存储系统处于稳定状态时第i个存储节点上第j类镜像队列非空概率为:
ρij=λij/μij
第j个存储节点上第i类镜像队列的稳态长度E(Lij)为:
稳态时该服务请求的平均处理时间tij为:
稳态时,块存储平台的整体请求响应时间为:
块存储服务优化构建策略的目标是提高存储镜像装载的速率,因此存储平台性能模型的优化目标为:
2.镜像装载作业流性能建模
实际镜像装载作业的性能,不仅与块存储平台的性能有关,还与作业装载的方式相关。当装载镜像的计算节点与存储节点的物理距离较近时,一般存储镜像在网络中的单位传输速率高于节点I/O速率,此时可以用第一部分的平台性能模型来近似分析镜像装载作业流的性能。当计算节点与存储节点距离较远时,网络传输速率可能会成为镜像装载速率的瓶颈,此时仅考虑平台性能是不全面的,需要综合考虑网络性能的影响,从而对镜像装载作业的整体性能有一个更准确的刻画。现有的研究工作往往从存储平台性能的角度对镜像装载作业进行性能建模,而忽略了存储网络对作业性能的影响,因此虽然对存储平台的性能有了详细的量化分析,但对具体作业性能的描述并不准确。
为了准确刻画镜像装载作业的性能,第二部分引入了如下一些新的性能参数:
B:存储物理网络中,镜像传输的总速率
Bavg:稳态时,平均每个镜像在存储网络中的传输速率
Ntrans:稳态时,存储网络中并发传输的镜像数目
γij:稳态时,平均每个镜像的单位装载速率
稳态时,镜像的装载速率由镜像在存储服务器中的I/O及存储网络传输速率中较慢的那个装载速率所决定,因此有:
γij=Min{μij,Bavg/sj}
假设当多个存储镜像在存储网络中并发传输时,网络传输总速率由多个镜像均匀分配。则有,稳态时平均每个镜像在存储网络中的单位传输速率由稳态时并发传输的镜像数目所决定。而由排队模型可知,如果一个镜像在某时刻有装载的任务,则此时刻该镜像的等待队列中至少积压了一个任务。因此,稳态时存储网络中并发传输的镜像数目Ntrans,即为等待队列非空的镜像数目。因此有:
综合考虑存储平台和存储网络的性能,最终的镜像装载速率可以量化为:
引入了存储网络对镜像装载性能的影响之后,最终镜像装载作业的性能模型优化目标变为:
块存储服务优化构建的过程,就是不断调整lij的取值,找出每类镜像副本的最优数目和最优物理位置,优化平台的整体性能,提高镜像装载请求的响应时间,提高镜像装载作业的工作效率。
以下详细描述本发明的云计算块存储服务的构建方法。
图2示出了本发明的云计算块服务的构架方法的流程图。
参照图2,本发明的实施例提供一种云计算块存储服务的构建方法,该方法具体包括:
S1、根据块存储平台规模、服务数量、镜像请求的调度方式及镜像装载需求,进行参数初始化;
在本实施例中,对参数进行初始化包括两个部分:
根据具体的系统规模、服务数量以及调度执行的阶段,上述方法需要初始化如下参数:
m:块存储平台中镜像的种类;
n:块存储平台中物理服务器的数目;
λi:第i类镜像的请求到达强度;
si:第i类镜像的文件大小;
Si:第i个物理存储节点的容量;
μi:第i个物理存储节点空载时的I/O速率。
根据具体的镜像装载作业的执行流程,需要初始化如下参数:
B:存储物理网络中,镜像的单位传输总速率;
μij:第j个存储节点上的第i类镜像副本的装载速率。
S2、在块存储中为每类镜像构建一个副本;
在此步骤中,每类镜像先在存储池中部署一个副本,保证每类应用的可用性。在一个实施例中,步骤S2具体包括:
S21、对待装载镜像进行分类,并计所述待装载镜像的种类为m;
S22、从待装载镜像的种类中选择任一类作为当前类镜像,计算所述当前类镜像在所述块存储中每个服务器的镜像整体请求响应时间,并获取所述镜像整体请求响应时间最大的服务器对所述当前类镜像的副本进行部署;
S23、更新部署所述当前类镜像的副本的服务器的剩余容量,并更新所述部署当前类镜像的副本的服务器的负载非空时的I/O速率;
S24、将任务计数器的值f加1;
S25、判断此时f与待装载镜像的种类m的大小关系,若f<m,则将所述当前类镜像从待装载的镜像类别中除去,然后返回步骤S22,否则执行步骤S3。
S3、计算所述块存储的剩余容量,并根据所述每类镜像的文件大小将与所述块存储的剩余容量对应的镜像的副本进行部署;
在步骤S2之后,每类镜像至少部署了一个副本,所有应用都保证了可用性。然后可以继续对镜像进行部署,以充分利用有限的块存储容量,提高块存储平台的性能。
在一个实施例中,步骤S3具体包括:
S31、计算所述存储块中每个服务器的剩余容量S1~Sn,并判断每类镜像文本的大小si与所述每个服务器的剩余容量Sj的大小,若si<Max{S1,S2,…,Sn},则第i类镜像为可以继续部署副本的镜像;如果si>Max{S1,S2,…,Sn}则执行步骤S4,其中,i为所述待装载镜像的种类中的任一类,j为所述块存储中的服务器中的任一个;
S32、将所有所述可以继续部署副本的镜像组成可以继续部署副本的镜像组合;
S33、从所述可以继续部署副本的镜像的集合中选取任一类镜像作为当前可以继续部署副本的镜像,判断所述当前可以继续部署副本的镜像的文件大小si与所述块存储中每个服务器的剩余容量Sj的大小,若si>Sj,则所述当前可以继续部署副本的镜像不能在服务器j上部署;否则能在服务器j上进行部署;
S34、获取能部署所述当前可以继续部署副本的镜像的副本的服务器中选择响应时间最小的服务器;
S35、计算当所述当前可以继续部署副本的镜像部署在选择的服务器上后的存储平台整体请求响应时间;
S36、将所述当前可以继续部署副本的镜像从所述可以继续部署副本的镜像组合中除去,重复执行步骤S33-35;
S37、获取所有可以继续部署副本的镜像的存储平台整体请求相应时间,并选择所述存储平台整体请求相应时间最小的镜像和对应的服务器进行部署;
S38、将部署的可以继续部署副本的镜像从所述可以继续部署副本的镜像组合中除去,更新部署所述可以继续部署副本的镜像的服务器的剩余容量和负载非空时的I/O速率;
S39、重复步骤S31~S38。
S4、根据所述块存储中的每类镜像的位置判断需要调整物理位置的镜像以及所述需要调整位置的镜像的可调整位置;
其中,所述步骤S4具体包括:
S41、计算所述块存储平台处于稳态时并发传输的镜像数目和稳态时平均每类镜像在存储网络中的传输速率Bavg;
S42、计算所述存储池中每类镜像在应用场景中的传输速率γij,并依次比较γij与所述存储池中每类镜像副本的装载速率的大小μij,若μij>γij,则当前类镜像副本所在的服务器的I/O速率并未充分利用,将该当前类镜像副本所在的服务器加入到有能力继续部署新镜像的服务器集合中;
S43、依次比较每类镜像副本的装载速率的大小μij与Bavg/si的大小关系:若μij<Bavg/sj,则当前类镜像副本所在的服务器的负载过重,则将所述当前类镜像副本确定为需要调整物理位置的镜像,否则结束。
S5、对所述需要调整物理位置的镜像进行位置调整。
在一个实施例中,所述步骤S5具体包括:
S51、找出需要调整物理位置的镜像中镜像装载的I/O性能与网络传输性能相差最大的镜像,即依次计算|μij-Bavg/sj|,找出令|μij-Bavg/sj|取得最大值的镜像作为当前需要调整物理位置的镜像;
S52、在所述有能力继续部署新镜像的服务器集合中查找所述镜像部署服务器之外的其他服务器中值最大的服务器作为所述当前需要调整物理位置的镜像的调整位置服务器;
S53、比较所述当前需要调整物理位置的镜像在原始部署位置和所述调整位置服务器上的存储平台整体请求响应时间的大小,如果在所述调整位置服务器上部署所述当前需要调整物理位置的镜像后的存储平台整体请求相应时间小,则对所述当前需要调整物理位置的镜像部署到所述调整位置服务器,然后执行下一步,否则直接执行下一步;
S54、更新所述调整位置服务器上的各类镜像的装载速率及所述调整位置服务器的剩余容量,并判断所述调整位置服务器是否能继续部署服务器,如不能,则从所述有能力继续部署新镜像的服务器集合中除去,并将重新部署位置的镜像从所述需要调整物理位置的镜像集合中除去;
S55、判断所述需要调整物理位置的镜像集合和所述有能力继续部署新镜像的服务器集合是否为空,若都不为空,则执行步骤S51,否则结束。
在本发明的另一个实施例中,提高一种云计算块存储服务的构建系统。
图3示出了本发明的一种云计算块存储服务的构建系统的结构框图。
参照图3,本发明的一种云计算块存储服务的构建系统,具体包括:
初始化单元10,用于根据块存储平台规模、服务数量、镜像请求的调度方式及镜像装载需求,进行参数初始化;
副本部署单元20,用于在块存储中为每类镜像构建一个副本;
剩余容量利用单元30,用于计算所述块存储的剩余容量,并根据所述每类镜像的文件大小将与所述块存储的剩余容量对应的镜像的副本进行部署;
位置调整判断单元40,用于根据所述块存储中的每类镜像的位置判断需要调整物理位置的镜像以及所述需要调整位置的镜像的可调整位置;
位置调整单元50,用于对所述需要调整物理位置的镜像进行位置调整。
本发明的云计算块存储服务的构建方法及系统,解决现有存储平台构建方案在平台性能分析和业务源特性方面考虑因素不全面的问题,提出综合考虑业务源特性、平台特性的块存储服务的构建方案,为OpenStack Cinder组件提供存储平台部署策略上的支持。该部署策略分为两部分:第一部分主要是针对业务源作业流的特性计算镜像副本的数目,我们使用了随机排队模型对不同镜像副本数目分布下存储平台的稳态性能进行建模,根据性能建模的结果计算出固定存储平台规模中各类镜像副本的最优数目;第二部分是利用平台特性,对每个镜像副本在存储平台的物理位置进行优化,综合考虑镜像并发装载的I/O性能衰退以及网络传输速率对镜像装载速率的影响,计算出所有镜像副本在云存储平台的最优位置分布。
另外,本发明的方法综合考虑了平台因素和业务源特性对平台性能的影响,相比于OpenStack项目组Cinder插件的默认部署方案以及学术界提出的其它仅考虑业务源特性的部署方案,该方案使得块存储平台的性能有了明显的改进,整体上提高了云计算IaaS平台的镜像装载速率。
为了进一步说明本发明的方法,以下通过具体实施例进行描述。
图4示出了本发明的实施例的云平台物理架构示意图;
参照图4,本实施基于OpenStack开源软件的Cinder组件以及Ceph分布式文件系统,构建了一个包含10台服务器的云计算块存储平台,具体服务器配置如表1所示。存储节点与计算节点之间采用树形结构相连,具体云平台物理架构如图4所示。为了对本发明提出的策略进行评估,将本发明提出的部署策略使用Ceph进行了实现,并整合到OpenStack Cinder组件当中,在实际IaaS应用场景中,对本发明策略的性能指标进行详细评估。
然后基于采集到的实际用户对于不同类型服务的需求频率和需求量等数据,对实际的IaaS镜像装载场景进行了模拟:对每种镜像副本模拟出特定的请求到达的序列,每种镜像请求到达频率服从强度不同的泊松分布,镜像从服务器上装载的I/O速率近似固定。之后,考察此场景中,不同镜像部署策略下块存储平台达到稳定状态时的性能。
表1 云计算IaaS平台服务器配置
机器名称 | ip | CPU | Memory | Disk | 网卡 |
server-43 | 166.111.xx.xx | 8 | 8G | 100G | 2 |
server-38 | 166.111.xx.xx | 8 | 8G | 100G | 2 |
tsinghuacloud-nc1 | 166.111.xx.xx | 24 | 80G | 500G | 4 |
tsinghuacloud-nc2 | 166.111.xx.xx | 24 | 80G | 500G | 4 |
dell-cloud1 | 166.111.xx.xx | 24 | 96G | 1T | 4 |
dell-cloud2 | 166.111.xx.xx | 24 | 96G | 1T | 4 |
Storage221 | 166.111.xx.xx | 16 | 16G | 1.5T | 2 |
Storage222 | 166.111.xx.xx | 16 | 16G | 1.5T | 2 |
Storage246 | 166.111.xx.xx | 16 | 16G | 1T | 2 |
Storage250 | 166.111.xx.xx | 16 | 16G | 1T | 2 |
表2 云计算IaaS平台快存储镜像种类
服务标号 | 镜像类型 | 镜像大小 |
1 | Ubuntu12.04 | 249.7M |
2 | Fedora_x86_64 | 530.1M |
3 | Hadoop-2.4.0 | 2.4G |
4 | Windows Server | 8.64G |
具体实验中,将表2中列出的存储镜像类型按照占用资源由小到大,编号为服务1—服务4,对应每种镜像服务我们模拟出一串服从特定强度的泊松到达请求序列。根据实际需求量的统计,用户对轻量级镜像的需求比对大型主机的需求量明显要大,因此在本实验中服务1~服务4的请求到达频率依次递减。另外,为了进行对比,采用了不同的服务构建策略,在此情景的作业流下对不同应用镜像进行部署。本实施例重点考察的服务构建策略有目前使用较为广泛的OpenStack Cinder默认的部署策略,学术界最新提出的基于镜像访问频率的CVIR部署策略(该研究发表于2014年HPCC学术会议)以及本发明提出的部署策略。
图5示出了使用本发明的方法与现有的部署方法后块存储平台整体作业处理率。
从图5中可以看出,采用仅考虑平台因素的Cinder+Ceph默认的镜像部署策略,请求积压量较大(处理率较低);采用仅考虑业务源特性的CVIR策略,请求积压量次之;而采用本发明提出的综合考虑平台特性和业务源特性的优化构建策略,存储平台的性能最好。
图6示出了使用本发明的方法与现有的部署方案后块存储系统达到稳态时各作业处理率。
为了进一步分析不同部署策略下,任务积压状况的形成原因,我们详细统计了稳定状态时,各个服务分别的请求处理百分比,结果如图6所示。从图6中可以看出,使用Cinder+Ceph默认的镜像部署策略(平台中所有镜像部署的副本个数完全相同),不同服务请求的积压量是不均匀的,具体来说访问频率较高的轻量级镜像服务请求积压状况相对严重。其原因主要是由于Cinder+Ceph默认的部署方案主要从平台的角度进行考虑,对所有镜像公平的分配平台资源而忽略了业务源自身的特性,从而造成了高访问量的服务副本数目不足而低访问量的服务副本数目过量,平台的资源没有得到充分合理的分配,整体性能相对较差。而本发明方法以及CVIR策略都考虑了业务源的特性,根据镜像随机访问的频率来调整镜像副本的数目,因此平台资源得到了更为合理的分配利用,不同服务的请求积压量较为平均。而相对于CVIR策略,本专利的第二部分进一步考虑了平台特性对装载速率的影响,因此性能刻画更为准确,对平台资源的分布更为合理,平台整体性能进一步得到了提高。
通过和其它部署方案的对比分析,可以发现,本发明的平台构建方法综合考虑了镜像装载业务和平台的双方面特性,根据不同镜像的访问频率和大小调整镜像副本的数目,根据服务器和网络传输的I/O速率进一步调整镜像副本的物理位置,从而优化了平台的整体性能,并尽量合理分配了存储平台的资源,均衡了不同服务的负载,使得块存储平台处于相对稳定的状态。该平台优化构建方案,很好的解决了现有的部署方案存在的问题,调度结果使得平台的性能更加理想。由此可见,本发明达到了预期目的。
虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (7)
1.一种云计算块存储服务的构建方法,其特征在于,所述方法包括:
S1、根据块存储平台规模、服务数量、镜像请求的调度方式及镜像装载需求,进行参数初始化;
S2、在块存储中为每类镜像构建一个副本;
S3、计算所述块存储的剩余容量,并根据所述每类镜像的文件大小将与所述块存储的剩余容量对应的镜像的副本进行部署;
S4、根据所述块存储中的每类镜像的位置判断需要调整物理位置的镜像以及所述需要调整位置的镜像的可调整位置;
S5、对所述需要调整物理位置的镜像进行位置调整。
2.根据权利要求1所述的云计算块存储服务的构建方法,其特征在于,进行初始化的参数包括:待装载镜像的种类,块存储平台中物理服务器的数目,每类镜像的文件大小,每个物理存储节点的容量,每个物理存储节点空载时的I/O速率;镜像单位传输总速率。
3.根据权利要求1或2所述的云计算块存储服务的构建方法,其特征在于,所述步骤S2具体包括:
S21、对待装载镜像进行分类,并计所述待装载镜像的种类为m;
S22、从待装载镜像的种类中选择任一类作为当前类镜像,计算所述当前类镜像在所述块存储中每个服务器的镜像整体请求响应时间,并获取所述镜像整体请求响应时间最大的服务器对所述当前类镜像的副本进行部署;
S23、更新部署所述当前类镜像的副本的服务器的剩余容量,并更新所述部署当前类镜像的副本的服务器的负载非空时的I/O速率;
S24、将任务计数器的值f加1;
S25、判断此时f与待装载镜像的种类m的大小关系,若f<m,则将所述当前类镜像从待装载的镜像类别中除去,然后返回步骤S22,否则执行步骤S3。
4.根据权利要求1或2所述的云计算块存储服务的构建方法,其特征在于,所述步骤S3具体包括:
S31、计算所述存储块中每个服务器的剩余容量S1~Sn,并判断每类镜像文本的大小si与所述每个服务器的剩余容量Sj的大小,若si<Max{S1,S2,…,Sn},则第i类镜像为可以继续部署副本的镜像;如果si>Max{S1,S2,…,Sn}则执行步骤S4,其中,i为所述待装载镜像的种类中的任一类,j为所述块存储中的服务器中的任一个;
S32、将所有所述可以继续部署副本的镜像组成可以继续部署副本的镜像组合;
S33、从所述可以继续部署副本的镜像的集合中选取任一类镜像作为当前可以继续部署副本的镜像,判断所述当前可以继续部署副本的镜像的文件大小si与所述块存储中每个服务器的剩余容量Sj的大小,若si>Sj,则所述当前可以继续部署副本的镜像不能在服务器j上部署;否则能在服务器j上进行部署;
S34、获取能部署所述当前可以继续部署副本的镜像的副本的服务器中选择响应时间最小的服务器;
S35、计算当所述当前可以继续部署副本的镜像部署在选择的服务器上后的存储平台整体请求响应时间;
S36、将所述当前可以继续部署副本的镜像从所述可以继续部署副本的镜像组合中除去,重复执行步骤S33-35;
S37、获取所有可以继续部署副本的镜像的存储平台整体请求相应时间,并选择所述存储平台整体请求相应时间最小的镜像和对应的服务器进行部署;
S38、将部署的可以继续部署副本的镜像从所述可以继续部署副本的镜像组合中除去,更新部署所述可以继续部署副本的镜像的服务器的剩余容量和负载非空时的I/O速率;
S39、重复步骤S31~S38。
5.根据权利要求4所述的云计算块存储服务的构建方法,其特征在于,所述步骤S4具体包括:
S41、计算所述块存储平台处于稳态时并发传输的镜像数目和稳态时平均每类镜像在存储网络中的传输速率Bavg;
S42、计算所述存储池中每类镜像在应用场景中的传输速率γij,并依次比较γij与所述存储池中每类镜像副本的装载速率的大小μij,若μij>γij,则当前类镜像副本所在的服务器的I/O速率并未充分利用,将该当前类镜像副本所在的服务器加入到有能力继续部署新镜像的服务器集合中;
S43、依次比较每类镜像副本的装载速率的大小μij与Bavg/si的大小关系:若μij<Bavg/sj,则当前类镜像副本所在的服务器的负载过重,则将所述当前类镜像副本确定为需要调整物理位置的镜像,否则结束。
6.根据权利要求5所述的云计算块存储服务的构建方法,其特征在于,所述步骤S5具体包括:
S51、找出需要调整物理位置的镜像中镜像装载的I/O性能与网络传输性能相差最大的镜像,即依次计算|μij-Bavg/sj|,找出令|μij-Bavg/sj|取得最大值的镜像作为当前需要调整物理位置的镜像;
S52、在所述有能力继续部署新镜像的服务器集合中查找所述镜像部署服务器之外的其他服务器中值最大的服务器作为所述当前需要调整物理位置的镜像的调整位置服务器;
S53、比较所述当前需要调整物理位置的镜像在原始部署位置和所述调整位置服务器上的存储平台整体请求响应时间的大小,如果在所述调整位置服务器上部署所述当前需要调整物理位置的镜像后的存储平台整体请求相应时间小,则对所述当前需要调整物理位置的镜像部署到所述调整位置服务器,然后执行下一步,否则直接执行下一步;
S54、更新所述调整位置服务器上的各类镜像的装载速率及所述调整位置服务器的剩余容量,并判断所述调整位置服务器是否能继续部署服务器,如不能,则从所述有能力继续部署新镜像的服务器集合中除去,并将重新部署位置的镜像从所述需要调整物理位置的镜像集合中除去;
S55、判断所述需要调整物理位置的镜像集合和所述有能力继续部署新镜像的服务器集合是否为空,若都不为空,则执行步骤S51,否则结束。
7.一种云计算块存储服务的构建系统,其特征在于,所述系统包括:
初始化单元,用于根据块存储平台规模、服务数量、镜像请求的调度方式及镜像装载需求,进行参数初始化;
副本部署单元,用于在块存储中为每类镜像构建一个副本;
剩余容量利用单元,用于计算所述块存储的剩余容量,并根据所述每类镜像的文件大小将与所述块存储的剩余容量对应的镜像的副本进行部署;
位置调整判断单元,用于根据所述块存储中的每类镜像的位置判断需要调整物理位置的镜像以及所述需要调整位置的镜像的可调整位置;
位置调整单元,用于对所述需要调整物理位置的镜像进行位置调整。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510115735.3A CN104731528B (zh) | 2015-03-17 | 2015-03-17 | 一种云计算块存储服务的构建方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510115735.3A CN104731528B (zh) | 2015-03-17 | 2015-03-17 | 一种云计算块存储服务的构建方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104731528A true CN104731528A (zh) | 2015-06-24 |
CN104731528B CN104731528B (zh) | 2017-12-15 |
Family
ID=53455462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510115735.3A Active CN104731528B (zh) | 2015-03-17 | 2015-03-17 | 一种云计算块存储服务的构建方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104731528B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106453546A (zh) * | 2016-10-08 | 2017-02-22 | 电子科技大学 | 分布式存储调度的方法 |
CN106713465A (zh) * | 2016-12-27 | 2017-05-24 | 北京锐安科技有限公司 | 一种分布式存储系统 |
CN107403637A (zh) * | 2016-05-20 | 2017-11-28 | 慧荣科技股份有限公司 | 数据储存装置的数据页对齐方法及其查找表的制作方法 |
CN108696550A (zh) * | 2017-04-05 | 2018-10-23 | 中国科学院上海高等研究院 | 快速构建和复制云的系统和方法 |
CN108804201A (zh) * | 2018-06-07 | 2018-11-13 | 郑州云海信息技术有限公司 | 一种基于云平台的虚拟机数据卷的扩容方法及装置 |
CN106790719B (zh) * | 2017-03-21 | 2019-12-06 | 杭州迪普科技股份有限公司 | 一种存储镜像配置信息的方法及装置 |
CN114205416A (zh) * | 2021-10-27 | 2022-03-18 | 北京旷视科技有限公司 | 资源缓存方法、装置、电子设备和计算机可读介质 |
CN115879867A (zh) * | 2022-08-19 | 2023-03-31 | 华能临沂发电有限公司 | 一种应用于电厂用电申请的终端系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110191556A1 (en) * | 2010-02-01 | 2011-08-04 | International Business Machines Corporation | Optimization of data migration between storage mediums |
CN103026343A (zh) * | 2010-05-04 | 2013-04-03 | 赛门铁克公司 | 基于计划表的数据生命周期管理 |
CN103455391A (zh) * | 2013-09-06 | 2013-12-18 | 南宁博大全讯科技有限公司 | 一种动态调整的数据保护的装置和方法 |
CN103685368A (zh) * | 2012-09-10 | 2014-03-26 | 中国电信股份有限公司 | 用于迁移数据的方法及系统 |
-
2015
- 2015-03-17 CN CN201510115735.3A patent/CN104731528B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110191556A1 (en) * | 2010-02-01 | 2011-08-04 | International Business Machines Corporation | Optimization of data migration between storage mediums |
CN103026343A (zh) * | 2010-05-04 | 2013-04-03 | 赛门铁克公司 | 基于计划表的数据生命周期管理 |
CN103685368A (zh) * | 2012-09-10 | 2014-03-26 | 中国电信股份有限公司 | 用于迁移数据的方法及系统 |
CN103455391A (zh) * | 2013-09-06 | 2013-12-18 | 南宁博大全讯科技有限公司 | 一种动态调整的数据保护的装置和方法 |
Non-Patent Citations (3)
Title |
---|
李立耀等: "云环境下虚拟机集群系统动态负载均衡机制", 《计算机应用》 * |
赵少卡等: "基于SaaS的弹性云平台优化调度策略设计", 《计算机应用研究》 * |
赵少卡等: "基于随机模型的云平台资源调度策略设计", 《计算机工程与应用》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107403637B (zh) * | 2016-05-20 | 2020-05-19 | 慧荣科技股份有限公司 | 数据储存装置的数据页对齐方法及其查找表的制作方法 |
CN107403637A (zh) * | 2016-05-20 | 2017-11-28 | 慧荣科技股份有限公司 | 数据储存装置的数据页对齐方法及其查找表的制作方法 |
CN106453546A (zh) * | 2016-10-08 | 2017-02-22 | 电子科技大学 | 分布式存储调度的方法 |
CN106453546B (zh) * | 2016-10-08 | 2019-05-07 | 电子科技大学 | 分布式存储调度的方法 |
CN106713465A (zh) * | 2016-12-27 | 2017-05-24 | 北京锐安科技有限公司 | 一种分布式存储系统 |
CN106713465B (zh) * | 2016-12-27 | 2020-11-17 | 北京锐安科技有限公司 | 一种分布式存储系统 |
CN106790719B (zh) * | 2017-03-21 | 2019-12-06 | 杭州迪普科技股份有限公司 | 一种存储镜像配置信息的方法及装置 |
CN108696550A (zh) * | 2017-04-05 | 2018-10-23 | 中国科学院上海高等研究院 | 快速构建和复制云的系统和方法 |
CN108696550B (zh) * | 2017-04-05 | 2021-04-06 | 中国科学院上海高等研究院 | 快速构建和复制云的系统和方法 |
CN108804201A (zh) * | 2018-06-07 | 2018-11-13 | 郑州云海信息技术有限公司 | 一种基于云平台的虚拟机数据卷的扩容方法及装置 |
CN114205416A (zh) * | 2021-10-27 | 2022-03-18 | 北京旷视科技有限公司 | 资源缓存方法、装置、电子设备和计算机可读介质 |
CN114205416B (zh) * | 2021-10-27 | 2024-03-12 | 北京旷视科技有限公司 | 资源缓存方法、装置、电子设备和计算机可读介质 |
CN115879867A (zh) * | 2022-08-19 | 2023-03-31 | 华能临沂发电有限公司 | 一种应用于电厂用电申请的终端系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104731528B (zh) | 2017-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104731528A (zh) | 一种云计算块存储服务的构建方法及系统 | |
Hu et al. | Flutter: Scheduling tasks closer to data across geo-distributed datacenters | |
CN110297699B (zh) | 调度方法、调度器、存储介质及系统 | |
CN104871130B (zh) | 负载均衡方案 | |
CN109788046B (zh) | 一种基于改进蜂群算法的多策略边缘计算资源调度方法 | |
CN105471985A (zh) | 负载均衡方法及云平台计算方法、云平台 | |
CN107734052A (zh) | 面向组件依赖的负载均衡容器调度方法 | |
CN103197976A (zh) | 异构系统的任务处理方法及装置 | |
CN105808339B (zh) | 大数据并行计算方法及装置 | |
CN107203412A (zh) | 一种基于膜系统改进粒子群算法的云资源调度优化方法 | |
CN108366082A (zh) | 扩容方法及扩容装置 | |
CN114138486A (zh) | 面向云边异构环境的容器化微服务编排方法、系统及介质 | |
CN105975340A (zh) | 一种虚拟机应用分配部署算法 | |
CN104735095A (zh) | 一种云计算平台作业调度方法及装置 | |
CN109343942A (zh) | 基于边缘计算网络的任务调度方法 | |
CN101739248A (zh) | 执行规则集的方法和系统 | |
CN106095529B (zh) | 一种c-ran架构下的载波迁移方法 | |
CN106250240A (zh) | 一种任务优化调度方法 | |
US20150095916A1 (en) | Information processing system and control method of information processing system | |
CN109062668A (zh) | 一种基于5g接入网络的多优先级的虚拟网络功能迁移方法 | |
CN108605017A (zh) | 查询计划和操作感知通信缓冲区管理 | |
CN105975345A (zh) | 一种基于分布式内存的视频帧数据动态均衡存储管理方法 | |
CN110990154A (zh) | 一种大数据应用优化方法、装置及存储介质 | |
CN112506650A (zh) | 资源分配方法、系统、计算机设备和存储介质 | |
Chen et al. | Latency minimization for mobile edge computing networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |