基于分布式计算机集群架构的云平台存储资源调度方法

文档序号:25490440发布日期:2021-06-15 21:55阅读:78来源:国知局
基于分布式计算机集群架构的云平台存储资源调度方法

基于分布式计算机集群架构的云平台存储资源调度方法属于云存储资源的分配调度方法领域。



背景技术:

近些年来,随着可用数据的爆炸式增长,人们越来越意识到数据的重要性,而计算机技术和网络技术越来越成熟,互联网技术的应用也越来越广泛。在分布式计算、并行计算和网格计算逐步发展成熟的基础上,云计算应运而生。云计算是一种通过网络获得各种应用、数据和it服务的最新计算模式。云计算的核心思想是将大量计算资源、存储资源和服务资源等通过网络连接起来,形成一个资源池,然后根据用户的需求,对资源进行统一的调度和管理。而用户则不需要关心任务在哪台机器上以什么样的方式运行。因此,云计算的目标是按照用户的需求动态地提供以数据为中心的计算服务系统,并最大限度地保证所提供服务的可靠性、定制性和安全性。目前,大型it公司,如google、ibm、microsoft、amazon等,都推出了各自的云计算平台,并将其作为未来最主要的发展战略之一,而facebook、youtube、myspace等也都开始运用云计算模式。

以docker容器为代表的容器技术给云计算甚至是整个it行业带来了强大的支持[,由于docker在应用程序的开发、发布和部署上具有简单、便捷、实用的特点,迅速获得市场的支持。而构建在docker容器技术之上的kubernetes,为用户提供了一个容器化应用的整体解决方案,它具有强大的容器编排能力,遵循微服务架构理论,并且开放开源,现今kubernetes已成为docker生态圈最流行的开源容器集群调度系统。有了强大的技术基础,云计算平台的发展越来越迅速。

然而,企业处理数据的需求越来越多,也越来越广,在云计算平台上如何及时、高效地对任务进行调度,合理安全地分配集群重要资源,提高资源的利用率,成为云计算研究的核心问题之一。

专利中下文所说的pod为kubernetes集群的最小调度单位。pod可以看作为一个或一组容器在集群中的工作形式,容器是docker的运行状态。专利公布号为cn110780998a专利名称为基于kubemetes的动态负载均衡资源调度方法提出了kubernetes的容器资源调度策略。解决了kubernetes的调度策略单一,无法根据容器应用中对系统内核、网络传输速度等特定因素的约束调度需求,实现集群中容器到机器节点的合理调度。并实现了将某个工作节点上运行的pod迁移到另一个与调度策略匹配程度更高的新工作节点上的动态负载均衡调度策略,但是专利中忽略了对集群中机器的资源利用率的考察,在实际应用中会提高企业的使用成本,造成资源浪费。

专利公布号为cn110300130a专利名称为一种资源调度方法、装置、电子设备及存储介质提出了获取当前调度周期内生成的每个待调度的pod,将资源需求量相同的pod划分到同一pod集合中,并针对每个pod集合,将该pod集合中任意一个pod的资源需求量作为该pod集合对应的目标资源需求量;将每个pod集合依次确定为目标pod集合,针对当前目标pod集合,当剩余资源满足该目标pod集合的目标资源需求量的目标node的数量,不少于该目标pod集合中包含pod的数量时,为该目标pod集合中每个pod分配一个目标node,并在被分配的目标node上部署对应的pod,其中不同pod分配的目标node不同。虽然能够在一定程度上提高利用率,但整个系统比较庞大,对于集群来说加大了通信量,增加了集群安全风险。

专利公布号为cn109960585a专利名称为一种基于kubernetes的资源调度方法提出了以固定规则计算集群中所有node分值生成第一节点优先级队列,以动态优先级算法获得pod优先级队列,两队列过滤不能调度的node生成第二节点优先级队列,从中选择优先级最高节点与pod优先级队列弹出的pod绑定,绑定成功进入下一个pod调度循环,失败则采用自带的优先级算法从第二节点优先级队列中优选node绑定,再次失败则没有合适的node可供该pod运行,进入下一个pod的调度循环。该专利对节点资源进行打分,能够获得较优的方案,但是调度规则是静态的,缺少一定的迁移性和适用性。

当前许多任务调度方法没有考虑到集群资源的利用率,造成了极大的浪费,而部分方法虽然采用了对集群资源打分的方式,但也存在着调度资源单一,打分规则过于简单等问题,另外,当前基于显存实现gpu共享的技术越来越成熟,多数任务已经能够在同一节点上实现共享,现有大多数调度方法不能有效得提高资源利用率,降低企业成本。

综合以上所述,现有的技术中对云资源利用率以及调度方法的研究存在以下的不足之处:

1.忽略了对作为云存储资源供应商实现云存储的物质基础,即忽略了云存储资源供应端对计算机存储架构的研究。

2.忽略了云存储资源服务器对容器调度方法的研究,只注意到了容器到机器节点的合理调度的方法,没有从源端抓起。

3.忽略了契约规则的基础作用,企图用一个所有用户都能满意的固定规则代替建立在市场调节基础上的市场契约,从而由此提出了一个打分方法来解决优先调度的问题,也背离了市场经济的调节机制。

4.缺乏一个建立在云服务基础架构上的、能够有计划地、批量处理云资源分配、调度需要的一个能够实现的完整方法,尤其是一种能适应用户量、需求量、云存储供应量不断变化下的完整的分配调度方法。



技术实现要素:

本发明的目的在于提出一种处于云服务任务源端的,在分布式计算机集群架构上的,以24小时作为分配调度周期,对不断随机变化着的用户数、对云存储资源需求量以及不断动态更新着的所述架构内作为云资源基本单位的容器空闲存储容量而提出的一种基于分布式计算机集群架构的云平台存储资源的调度方法。

本发明的特征在于,是在云平台paas上,以容器docker,以下简称容器、为分布式计算机集群架构基本存控单元的一种云存储资源分配调度方法,是在一个云存储资源分配调度系统、以下简称系统中依次按以下步骤实现的:

步骤(1),系统构建:

所述系统包括:云存储资源分配调度服务器,以下简称云服务器,分布式计算机集群架构以及层分配调度控制器,以下简称层控制器,其中:

分布式计算机集群架构,是一个蠕虫型云存储资源网,是由一个多个容器闭环连接而形成的环形存储层以存储容量等级按设定倍率纵向重叠而成的蠕虫型云存储资源网络,其中:

容器,是一种其操作系统与系统之间的软件界面采用统一可扩展固件接口的基板管理器uefibios系统且已可信启动过的个人电脑,其存储容量统一选取同时具有无线通信功能,在其控制器中,还设定以下两类统计日志的格式:

空闲存储量统计日志,用映射表{统计日期——客户密码——客户名称——在用存储量——空闲存储量},其前缀用层序号、容器序号标识,

客户信息日志,用映射表{客户名称——客户密码——客户需求量——容器序号}表示,前缀标识与前述相同,

层控制器在数量上,与所述环形存储层相同,并通过中心辐射网控制同层的所有容器,并设有:

层无线通信模块,其上与云服务器,下与所在层的各容器构成一个三级无线通信系统,

各层容器的空闲存储容量统计模块,每一个容器都设有:统计日期——层序号——容器序号——容器在用存储量——容器空闲存量共同形成的映射表,

层空闲存储容量统计模块,内设统计日期——层序号——层额定存储容量——层在用存储用量——层空闲存储容量——降序排列的容器空闲率数组

云服务器设有:云处理器、云无线通信模块、云数据库集合、客户日需求量统计及预处理模块以及云存储资源日调度模块,其中:

云无线通信模块,分别与各层的无线通信模块通信,

数据库集合,设有客户信息数据库、层空闲存储容量统计日志库以及层属容器的空闲存储容量统计日志库,其中:

客户信息数据库,用数组{客户名,客户密码,客户序号,统计日期及对应的云存储资源需求量}表示,

层空闲存储容量统计日志库,设有数组{统计日期,层序号,层空闲存储容量,降序排列的层内容器空闲存储容量序列};

客户日需求量统计及预处理模块,设有以下两个数组:

客户日需求量序列数组,用数组{统计日期,客户密码,客户序号,客户日存储需求量,按客户日需求存储量降序从大到小排列的数列},

云日空间存储资源供给量序列数组,用数组{统计日期,层序号,层存储容量等级,把客户需求量先按层存储容量等级分层再按层内容器空闲存储容量下降序列排列出来的客户序列}表示;

云控制器分别与各云无线通信模块、云数据库集合、客户日需求量统计及预处理模块、云存储资源日调度模块分别互连,同时,也与各层控制器互连;

步骤(2),云控制器依次按以下步骤实现基于分布式计算机集群架构的云存储资源分配调度方法:

步骤(2.1)系统初始化,云控制器设定:

以24小时作为云存储资源分配调度的时频,

在当前24小时内,分配调度在先24小时内收到的用户对云存储资源订单的同时,预约后24小时用户订单,

根据实际需要,云控制器设定:

在所述的24小时末,统一设定:结束预约,即时分配调度的时间,

所述蠕虫型云存储资源网的总存储容量、标志着层存储容量等级的所述各个环形存储层的层允许存储容量,层序号以及层数,

所述各环形存储层内的容器总数,容器序号及按各层存储容量等级制定的容器额定存储容量,

还设定层存储等级越高,则层内的容器存储容量也越大,其容器数量也相应下降;

步骤(2.2),根据设定的时频,云控制器按以下步骤成批量地进行逐层、逐容器的二级分配:

步骤(2.2.1),在初始日前24小时内:

步骤(2.2.1.1),当日预约需求量的注册用户在云控制器核实身份后,向所述客户需求量统计处理模块发出请求数组{申请日,注册用户名,客户密码,云存储资源需求量},

步骤(2.2.1.2),步骤(2.2.1.1)中所述模块先对注册用户需求量,按层存储容量等级归类,再按对应层内各容器内空闲存储容量的多少,按利用率最高的原则与用户需求量一一对应,制成按用户需求量高低排序的对应于各层的容器空闲存储容量的用户名——用户需求量——用容器序号表示的至少一个容器的空闲存储供应量的一对多的映射表组合,

步骤(2.2.2),在初始日的24小时内:

步骤(2.2.2.1),调度模块按步骤(2.2.1.2)中的映射表通知注册用户满足其存储资源需求量的层号及容器号,

步骤(2.2.2.2),同时,按步骤(2.2.1.2)中的映射表格式,用同样的方法,制作出对应于当日所有新预约的注册用户的、对应于按日变化着的各层内各容器空闲存储资源的,只在当日适合的映射表组合,

步骤(2.2.3),在初始日后的24小时内:

步骤(2.2.3.1),按步骤(2.2.2.1)中所述的方法,调度模块通知注册用户满足其存储资源需求的层序号和容器序号,然后云控制器判断:

若用户对空闲存储的需求量大于对应的层内的最后一个,即序号最大的一个容器所提供的存储资源时,则为了避免由于用户的存储区域丧失空间连续性而导致使用的不方便,把所述用户在同一层内推迟一个频次后重新分配,

若在同一层内,对应的注册用户数大于容器数时,则将余下按需求量大小排列的用户群以最后一个容器为起点反向地把余下用户分配到同层内的所有容器上,提高所述蠕虫型云存储资源网的空闲资源的利用率,

步骤(3),反复循环执行步骤(2),直到设定的循环次数后结束。

本发明的优点在于:

1.以24小时为一个周期进行云存储资源的源端分配和调度,以保证高效率利用源端的云存储资源。

2.提出了一个以分布式计算机集群架构作为平台,以层存储资源容量等级同时对用户需求量、云存储资源的动态供给量进行分类,以闭环的方式连接起来的作为云资源分配调度的基本单元的容器docker拼成的环形存储层作为层元,并把具有不同存储容量级别层元按设定的倍率,逐层叠加而成的蠕虫型云存储网作为硬件架构,其中所述的容器是具有可信启动功能,并以uefibios固件文件系统把用户的存储信息作为文件树的形式挂靠在系统内核上的一台个人电脑。

3.为了应对不断随机变化着的用户数、用户的存储资源需求量和各容器每日所提供的空闲存储容量,本发明提出了当用户需求量超过容器所提供的空闲存储容量时以及当用户人数超过层内容器个数时对应的处理方法,以适合供、需双方以日为单位时所述三个参数的变化。

附图说明

图1:本发明的程序流程框图。

图2:本发明的系统结构图:

具体实施方式

本发明的目的在于提供一种能应对随机变化的用户数、用户对存储资源的需求量以及随之变动的各容器空闲存储容量的情况,以便适用于源端存储资源相对于容器空闲存储容量的分配调度需求的方法。

在硬件平台上,提出一种可以用不变的格式来应对万变的用户需求的蠕虫型云存储资源网,这是一个以容器为基本存储控制单元的环形存储层,以层存储量的等级来分层,再以层内容器空闲存储容量的多少来调度分配的三级蠕虫型云存储资源网,其格式是固定不变的。随着分级的数量不断变化,层元的个数以及层内容器空闲存储容量是万变的,这样一种分布式计算机存储集群架构。

在存储方法上有以下特点:

1.以24小时作为分配调度的周期,以便用较高的分配调度的频次来应对快速变化着的需求。

2.在24小时内边预约后继24小时内的用户,边实现在先24小时内所有预约的用户的需求,既保证了前24小时内预约用户需求的实现,又保证了当日24小时内预约用户的预分配形式,同时,用分日的方法保证了用户需求预约的日连续性,又保证了分配调度的日连续性。

3.使用一个预约用户名——需求量——层序号——至少一个容器的当日空闲存储量的这四个参数映射表,既保证了预约——分配的过渡,又保证了日预约用户需求量的日批量处理,提高了分配调度的效率。

4.用所述映射表中表示一个用户的需求量,可以用至少一个容器空闲存储资源的一对多的方式,应对一般情况下当调度过程中出现容器空闲存储资源容量小于对应用户需求的存储容量时,能用至少一个容器的空闲存储容量来应对一个用户的需求,但当调度的层内最后一个容器的空闲存储容量小于用户需求时,提出了这种情况下对应用户在本层内延后一天处理的方法以保证调度到该特殊用户,用延迟处理方法保证了用户存储性、连续性。

5.调度到层内末端容器时,若层内用户数大于容器数时,在层内以末端容器为起点,把按需求量大小排列的余下用户反向在同一层内分配的方法,来避免用户溢出,同时也提高了层空闲存储资源的利用率,因为,这是在用逐渐降低着的小到更小的用户需求量来与显著由大到小排列的容器空闲存储资源对应的二次分配关系。

综上证明:本发明有强大的批处理能力,较强的反应能力和灵活的应变能力。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1