一种基于装箱模型的集群资源调度方法及装置的制造方法

文档序号:8905132阅读:498来源:国知局
一种基于装箱模型的集群资源调度方法及装置的制造方法
【技术领域】
[0001]本发明涉及大规模分布式系统中的集群资源的调度,属于云计算领域,特别涉及一种基于装箱模型的集群资源调度方法及装置。
【背景技术】
[0002]随着互联网的普及和日益发展,我们进入了一个数据爆炸的时代,根据数字宇宙(digital universe)项目统计得出,2011年的数据总量为1.8ZB,并预测在2020年将达到40ZB,每时每刻都有大量的数据需要处理,基于数据密集型应用的计算框架不断出现,从支持离线处理的MapReduce,到支持在线处理的Storm,从迭代式计算框架Spark到流式处理框架S4,这些框架各有所长,各自解决了某一类应用问题。
[0003]各种框架诞生于不同的公司或者实验室,运行在各个集群上,虽然单台计算机的功率并不大,但是在计算机总数庞大的集群中,电力的消耗却相当惊人,一方面,大幅的能量消耗增长会排放出大量的CO2,加剧温室效应;另一方面,不断增长的能源消耗已经成为重要的成本来源。在很多公司中,可能同时采用多种计算框架,考虑到资源利用率、运维成本、数据共享等因素,公司一般希望将所有这些框架都部署到一个公共集群中,让它们共享集群的资源,并对资源进行统一使用,同时采用某种资源隔离方案(如轻量级Cgroups)对各个任务进行隔离,这样便诞生了轻量级弹性计算平台,其中Hadoop YARN便是弹性计算平台的典型代表。多种框架共享集群资源,使得集群资源得到更加充分的利用。为了支持多维资源调度,Hadoop YARN的资源调度器采用了 DRF算法,YARN共有三种调度器,分别是FIFO、Fair Scheduler和Capacity Scheduler,其中FIFO适用于批处理作业的场景,调度顺序按照作业到达的时间顺序确定,先到达的先分配资源;但随着Hadoop的普及,集群中的用户量和应用程序种类不断增加,FIFO的调度机制已经不能满足服务质量要求,需要设计适用于多用户的资源调度算法。Fair scheduler和Capacity Scheduler是多用户调度器,以队列为单位划分资源,每个队列可设置资源上限和下限,每个用户又可以设置资源上限,以防止资源滥用。当一个队列资源有剩余时,可暂时分配给其他队列;而Fair Scheduler除了具有Capacity Scheduler的功能外,还支持多种调度策略。这两种调度器都支持多维资源,目前支持CPU和内存,另外它们对调度语义的支持有限,比如不支持超细粒度资源、动态调整Container资源等。
[0004]发明专利“一种集群资源分配方法及装置”,该发明实施例公开了一种集群资源分配方法及装置,该发明方法包括:按照预置策略将计算机集群划分为第一集群和第二集群;采用负载均衡策略将待创建虚拟机分配给第一集群中的计算机,以在第一集群中的计算机上创建待创建虚拟机;若创建失败,则采用填满策略将待创建虚拟机分配给第二集群中的计算机,以在第二集群中的计算机上创建待创建虚拟机。该发明实施例中,将两种资源分配方法相结合来实现资源分配,能够减少资源碎片,提高集群资源的利用率,保证集群的性能。该发明是一种集群资源分配方法,在集群中部署和创建虚拟机。通过将集群分为两个集群,创建时分别采用不同的策略依次在两个集群中部署每个待创建的虚拟机(两个子集群中只有一个创建成功的同一个虚拟机);结合两种资源分配方式结合来减少资源碎片;而本发明是在一个集群中为用户的应用程序的任务分配系统资源,通过动态确定资源请求的分类,并根据集群节点上分配的资源情况将节点分组,在分配资源时采用装箱算法的思想选择合适的节点为任务分配资源,达到减少资源碎片的目的。
[0005]发明专利“一种提高云计算网络运算资源的方法及系统”,该发明公开了一种提高云计算网络运算资源的方法及系统,所述方法包括:监控云计算网络中的运算资源;确定运算资源的类型;根据运算资源的类型,将运算资源分配给高功率的处理器或低功率的协处理器处理。进一步,所述系统包括:运算资源监控单元;运算资源类型评估单元;运算资源分配单元。根据本发明的一种提高云计算网络运算资源的方法及系统,将云网络中的运算资源进行区分式计算,采用低运算率的协处理器进行休眠系统的状态保存运算,采用高运算率的处理器运算实时运行的虚拟系统,使得云网络的运算速率大幅提高,进而提高了云计算网络的运算资源,并降低了云网络的设备成本。该发明根据运算资源的类型分别将其分配给高功率的处理器或低功率的协处理器处理,而本发明根据资源请求的主资源类型和资源量的大小在不同的服务器组中选择合适的服务器为请求资源的任务分配资源。

【发明内容】

[0006]本发明的目的是解决大规模集群中资源分配时产生资源碎片的问题,本发明在Hamonic装箱模型的基础上设计了一种基于装箱模型的集群资源调度方法及装置。
[0007]为了支持多维度资源的调度,通过计算资源请求中每一维资源所占比例,使用主资源调度算法(Dominant Resource Fit, DRF)确定资源请求的主资源类型,根据不同的主资源类型及资源量的大小将资源请求划分为若干类(资源量大小在同一个范围内的资源请求归为一类),同时,根据每个服务器上满足的资源请求的种类将服务器分组(初始时刻任何服务器上都未分配任务,将所有服务器归为一组),当有资源请求到达时,根据该资源请求的类别,为其选择一个合适的服务器分配任务以满足其需求。
[0008]本发明提出一种基于装箱模型的集群资源调度方法,包括:
[0009]步骤1,获取资源请求,通过主资源调度算法计算所述资源请求中各维度资源数量占所述集群中总资源数量的比重,设置一阈值,将所述比重大于所述阈值的资源请求作为主资源请求;
[0010]步骤2,设置所述资源请求的最大值与规整化单位,将集群资源划分成若干资源区间,其中所述规整化单位作为所述资源区间的值,所述资源区间的值不大于所述资源请求的最大值;
[0011]步骤3,获取新资源请求,并获取所述新资源请求的新主资源请求,查找与所述新主资源请求相对应的所述资源区间,根据所述资源区间,将与所述新资源请求相匹配的物理节点进行分配,以完成集群资源调度。
[0012]所述基于装箱模型的集群资源调度方法,所述步骤I之前还包括:加载并解析配置文件,获取管理员的配置项值。
[0013]所述基于装箱模型的集群资源调度方法,所述资源请求与所述新资源请求包括:内存资源请求与中央处理器资源请求,并将所述内存资源请求与中央处理器资源请求进行染色。
[0014]所述基于装箱模型的集群资源调度方法,所述步骤3还包括:将所述新主资源请求与所述新资源请求中除所述新主资源请求之外的资源请求分配到同一物理节点,其中所述新主资源请求与所述新主资源请求之外的资源请求的和,不大于所述物理节点的资源总量。
[0015]所述基于装箱模型的集群资源调度方法,所述步骤3还包括:当所述物理节点中各资源所占比例相当,则优先分配到与所述物理节点中资源占比更大的资源相匹配的资源请求。
[0016]本发明还提出一种基于装箱模型的集群资源调度装置,包括:
[0017]获取主资源请求模块,用于获取资源请求,通过主资源调度算法计算所述资源请求中各维度资源数量占所述集群中总资源数量的比重,设置一阈值,将所述比重大于所述阈值的资源请求作为主资源请求;
[0018]划分资源区间模块,用于设置所述资源请求的最大值与规整化单位,将集群资源划分成若干资源区间,其中所述规整化单位作为所述资源区间的值,所述资源区间的值不大于所述资源请求的最大值;
[0019]资源调度模块,用于获取新资源请求,并获取所述新资源请求的新主资源
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1