虚拟机调度器、调度需求管理器及方法和虚拟机调度系统的制作方法

文档序号:9235329阅读:341来源:国知局
虚拟机调度器、调度需求管理器及方法和虚拟机调度系统的制作方法
【技术领域】
[0001]本发明涉及分布式系统和计算机网络领域,更具体地说,本发明涉及一种虚拟机调度器、调度需求管理器及其方法和虚拟机调度系统。
【背景技术】
[0002]近年来云计算技术蓬勃发展,云计算技术提高了资源(例如硬件资源)的利用率,同时降低了成本,并且在支持海量数据分析、存储、搜索和灾备方面都有很好表现。同时,基于云计算技术的平台(云平台)具有很好的可扩展性和平衡负荷能力。但是,建立云平台同时也对于技术有较高要求,仍然有很多课题要完成。例如,如何调度系统资源以提高资源利用率并且平衡负荷就是一个棘手的问题。
[0003]为了改变这种情况,提出了基于云平台的虚拟机调度技术,例如公开号为CN101719081A的专利申请(以下称为专利文献I)。该专利文献I中提及一种虚拟机调度方法,利用一个虚拟机调度器,采用装箱算法来解决数据中心资源计算和实时调度虚拟机的问题(参考本发明的图1、图2)。
[0004]专利文献I中的方案做到了计算资源和调度,但是,该方案中采用了单一的虚拟机调度器,并且需要运用装箱算法计算全系统的资源之后统一调度,难以应对大规模系统的虚拟机调度问题。在大规模系统中,视频数据生成速度快、变化大,统一计算、统一调度的模式难以及时响应需求。

【发明内容】

[0005]基于以上的描述,希望提供一种能够更好地调度系统资源以提高资源利用率并且平衡负荷的虚拟机调度器、调度需求管理器及方法和虚拟机调度系统。
[0006](底层虚拟机调度器的虚拟机调度方法)
[0007]根据本发明的第一个方面,提供了一种虚拟机调度方法,其特征在于,包括:
[0008]监听来自调度需求管理器的虚拟机的调度请求,
[0009]判断在该调度请求是否包含表示所述调度需求管理器与邻近调度需求管理器达成了调度决议的信息,
[0010]在该调度请求包含表示所述调度需求管理器与邻近调度需求管理器达成了调度决议的信息的情况下,分别向所述调度需求管理器和所述邻近调度需求管理器发出调度指令,其中在达成了调度决议的情况下,该调度请求还包含有关所述邻近调度需求管理器的信息。
[0011]通过采用该方案,底层虚拟机调度器无需根据具体的物理服务器负荷信息进行调度,而仅仅根据调度请求是否包含表示所述调度需求管理器与邻近调度需求管理器达成了调度决议的信息来进行虚拟机调度,简化了虚拟机调服方法。
[0012]根据本发明的第二个方面,在第一个方面的虚拟机调度方法中,
[0013]在该调度请求未包含表示所述调度需求管理器与所述邻近调度需求管理器达成了调度决议的信息的情况下,监听来自其它调度需求管理器的虚拟机的调度请求,
[0014]根据所述调度需求管理器的虚拟机的调度请求和其它调度需求管理器的虚拟机的调度请求的需求量,判断所述调度需求管理器的虚拟机的调度请求和所述其它调度需求管理器的虚拟机的调度请求是否能够匹配,
[0015]如果能够匹配,则分别向所述调度需求管理器和所述其它调度需求管理器发送有关对方的信息,并发送调度指令,
[0016]其中,所述调度需求管理器的虚拟机的调度请求和所述其它调度需求管理器的调度请求是否能够匹配表示:所述调度需求管理器的虚拟机迁出的请求和所述其它调度需求管理器的虚拟机迁入的请求是否能够匹配;或者所述调度需求管理器的虚拟机迁入的请求和所述其它调度需求管理器的虚拟机迁出的请求是否能够匹配。
[0017]通过采用该方案,底层虚拟机调度器在该调度请求未包含表示所述调度需求管理器与所述邻近调度需求管理器达成了调度决议的信息的情况下,不是仅仅报错或上报调度请求,而是监听来自其它调度需求管理器的虚拟机的调度请求,并在能够匹配时,分别向所述调度需求管理器和所述其它调度需求管理器发送有关对方的信息,并发送调度指令。由此,可以提闻调度的成功率。
[0018](多级虚拟机调度器的底层虚拟机调度器的虚拟机调度方法)
[0019]根据本发明的第三个方面,在第一个方面的虚拟机调度方法中,
[0020]在该调度请求未包含表示所述调度需求管理器与邻近调度需求管理器达成了调度决议的信息的情况下,判断是否存在上一层虚拟机调度器,
[0021]在存在上一层虚拟机调度器的情况下,将上述调度请求上报给上一层虚拟机调度器,并将从上一层虚拟机调度器接收到的有关其它调度需求管理器的信息和调度指令传回所述调度需求管理器。
[0022]通过采用该方案,利用多级调度方案,能够更好地调度系统资源以提高资源利用率并且平衡负荷。
[0023]根据本发明的第四个方面,在第二个方面的虚拟机调度方法中,
[0024]在该调度请求未包含表示所述调度需求管理器与邻近调度需求管理器达成了调度决议的信息、并且所述调度需求管理器的调度请求与其它调度需求管理器的调度请求未能匹配的情况下,判断是否存在上一层虚拟机调度器,
[0025]在存在上一层虚拟机调度器的情况下,将上述调度请求上报给上一层虚拟机调度器,并将从上一层虚拟机调度器接收到的有关其它调度需求管理器的信息和调度指令传回所述调度需求管理器。
[0026]通过采用该方案,利用多级调度方案,能够更好地调度系统资源以提高资源利用率并且平衡负荷。
[0027]根据本发明的第五个方面,在第一个方面的虚拟机调度方法中,
[0028]所述调度请求包含将虚拟机迁出的请求或将虚拟机迁入的请求。
[0029](非底层虚拟机调度器的虚拟机调度方法)
[0030]根据本发明的第六个方面,提供一种虚拟机调度方法,其特征在于,
[0031]监听来自两个或更多个下一层虚拟机调度器的调度请求,所述调度请求包括将虚拟机迁出的请求或将虚拟机迁入的请求,
[0032]根据来自一个下一层虚拟机调度器的虚拟机迁出的请求和另一个下一层虚拟机调度器的虚拟机迁入的请求的需求量,判断所述一个下一层虚拟机调度器的虚拟机迁出的请求和所述另一个下一层虚拟机调度器的虚拟机迁入的请求是否能够匹配,
[0033]如果所述一个下一层虚拟机调度器的虚拟机迁出的请求和所述另一个下一层虚拟机调度器的虚拟机迁入的请求能够匹配,则分别向所述一个下一层虚拟机调度器和所述另一个下一层虚拟机调度器发送有关对方的调度请求中的有关调度需求管理器的信息,并发送调度指令。
[0034]通过采用该方案,利用多级调度方案,能够更好地调度系统资源以提高资源利用率并且平衡负荷。
[0035]根据本发明的第七个方面,在第六个方面的的虚拟机调度方法中,
[0036]如果所述一个下一层虚拟机调度器的虚拟机迁出的请求和所述另一个下一层虚拟机调度器的虚拟机迁入的请求不能够匹配,判断是否存在上一层虚拟机调度器,
[0037]在存在上一层虚拟机调度器的情况下,将上述调度请求上报给上一层虚拟机调度器,并将从上一层虚拟机调度器接收到的有关其它调度需求管理器的信息和调度指令传回下一层虚拟机调度器。
[0038]通过采用该方案,利用多级调度方案,能够更好地调度系统资源以提高资源利用率并且平衡负荷。
[0039](调度需求管理器的调度需求管理方法)
[0040]根据本发明的第八个方面,提供一种调度需求管理方法,其特征在于,
[0041]从物理机监控器获取物理服务器负荷信息,
[0042]根据该物理服务器负荷信息计算物理服务器负荷状态,并判断是否需要虚拟机的调度,
[0043]在判断为需要虚拟机的调度的情况下,与邻近调度需求管理器通信,询问是否接受虚拟机的调度,
[0044]在从所述邻近调度需求管理器接收到包含表示所述邻近调度需求管理器接受虚拟机的调度的信息的情况下,与所述邻近调度需求管理器达成调度决议,并向虚拟机调度器发送包含表示所述调度需求管理器与邻近调度需求管理器达成了调度决议的信息和有关所述邻近调度需求管理器的信息的虚拟机的调度请求,
[0045]在从所述邻近调度需求管理器接收到未包含表示所述邻近调度需求管理器接受虚拟机的调度的信息的情况下,向所述虚拟机调度器发送未包含表示所述调度需求管理器与邻近调度需求管理器达成了调度决议的信息的虚拟机的调度请求,
[0046]根据来自所述虚拟机调度器的调度指令、或有关其它调度需求管理器的信息和调度指令,指令虚拟机管理器进行虚拟机调度。
[0047]通过采用该方案,调度需求管理器并不是简单地将物理服务器负荷信息发送到虚拟机调度器,而是根据该物理服务器负荷信息计算物理服务器负荷状态,并判断是否需要虚拟机的调度,在判断为需要虚拟机的调度的情况下,与邻近调度需求管理器通信,询问是否接受虚拟机的调度,在从所述邻近调度需求管理器接收到包含表示所述邻近调度需求管理器接受虚拟机的调度的信息的情况下,与所述邻近调度需求管理器达成调度决议,并向虚拟机调度器发送。由此可以减少虚拟机调度器的工作负担。
[0048]根据本发明的第九个方面,在第八个方面的调度需求管理方法中,
[0049]虚拟机的调度是虚拟机的迁出或虚拟机的迁入。
[0050]根据本发明的第十个方面,在第八个方面的调度需求管理方法中,
[0051]在从所述邻近调度需求管理器接收到是否接受虚拟机的调度的询问的情况下,根据从物理机监控器获取的物理服务器负荷信息,判断是否接受虚拟机的调度,并将判断结果发送给所述邻近调度需求管理器,
[0052]在判断为接受虚拟机的调度的情况下,与所述邻近调度需求管理器达成调度决议。
[0053](底层虚拟机调度器)
[0054]根据本发明的第十一个方面,提供一种虚拟机调度器,其特征在于,具有:
[0055]监听部,监听来自调度需求管理器的虚拟机的调度请求;
[0056]调度控制部,判断在该调度请求是否包含表示所述调度需求管理器与邻近调度需求管理器达成了调度决议的信息;以及
[0057]调度指令部,在该调度请求包含表示所述调度需求管理器与邻近调度需求管理器达成了调度决议的信息的情况下,分别向所述调度需求管理器和所述邻近调度需求管理器发出调度指令,其中在达成了调度决议的情况下,该调度请求还包含有关所述邻近调度需求管理器的信息。
[0058]根据本发明的第十二个方面,在第十一个方面的虚拟机调度器中,
[0059]在该调度请求未包含表示所述调度需求管理器与邻近调度需求管理器达成了调度决议的信息的情况下,所述监听部监听来自其它调度需求管理器的虚拟机的调度请求,
[0060]所述调度控制部根据所述调度需求管理器的虚拟机的调度请求和其它调度需求管理器的虚拟机的调度请求的需求量,判断所述调度需求管理器的虚拟机的调度请求和所述其它调度需求管理器的虚拟机的调度请求是否能够匹配,
[0061]如果能够匹配,所述调度控制部分别向所述调度需求管理器和所述其它调度需求管理器发送有关对方的信息,并发送调度指令,
[0062]其中,所述调度需求管理器的虚拟机的调度请求和所述其它调度需求管理器的调度请求是否能够匹配表示:所述调度需求管理器的虚拟机迁出的请求和所述其它调度需求管理器的虚拟机迁入的请求是否能够匹配;或者所述调度需求管理器的虚拟机迁入的请求和所述其它调度需求管理器的虚拟机迁出的请求是否能够匹配。
[0063](多级虚拟机调度器中的底层虚拟机调度器
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1