一种资源调度方法和资源调度系统的制作方法_4

文档序号:8905135阅读:来源:国知局
合发送给每个物理节点,物理节点根据资源集合确定物理节点上每个虚拟机分 配的最小资源量,再将分配最小资源量后物理节点的剩余资源量按比例分配给物理节点上 的每个虚拟机,物理节点将分配后物理节点上的每个虚拟机得到的总资源量发送给管理结 点,管理结点根据物理节点上的每个虚拟机对应的总资源量与物理节点上的每个虚拟机当 前的资源使用量获取物理节点的资源使用率,进而根据资源使用率调度各个物理节点的资 源负载,该样,通过该资源调度系统,可优先考虑应用层的调度,在保证用户的资源需求的 基础上,从虚拟化层、物理层的调度对资源进行调度,该种自顶而下的建模方案,基于应用 层、虚拟机和物理节及的资源使用量,能够对系统中的物理节点、虚拟机节点进行统一的性 能监控和调度,从而从全局上更为合理地分配资源,能够解决调度技术不兼容造成的资源 分配不合理的问题。
[0120] 本发明又一实施例提供一种管理结点3,如图3所示,该管理结点包括主控 (Master)装置30,主控装置30包括虚拟机监视器(VirtualMachineManager,VMM)接口 301、接口模块302、数据收集模块303、数据存储模块304、数据监控模块305、虚拟化调度模 块306、通信模块307和告警模块308。
[0121] 其中,接口模块302和通信模块307用于收集管理结点W及集群内其它物理节点 收集的数据,W形成集群的监控数据,并集中存储在数据存储模块304中。虚拟化调度模块 306用于根据历史及实时的监控数据,对整个集群的资源分配情况进行调整,并将调整策略 通过通信模块307传输给物理节点和管理结点自身的其他虚拟机。
[0122] 在本发明实施例中,虚拟化调度模块306,用于根据用户的调度策略获取达到调度 策略的目标时每个应用程序对应的资源集合,资源集合包括任一应用程序运行于虚拟机上 时每个虚拟机占用的资源量;
[0123] 数据存储模块304,用于存储每个应用程序对应的资源集合;
[0124] 通信模块307,用于将数据存储模块存储的资源集合发送给每个物理节点;
[0125] 通信模块307,还用于接收物理节点的每个虚拟机得到的总资源量;
[0126] 数据监控模块305,用于根据通信模块接收到的物理节点上的每个虚拟机对应的 总资源量与物理节点上的每个虚拟机当前的资源使用量获取物理节点的资源使用率;
[0127] 虚拟化调度模块306,还用于根据数据监控模块获取的资源使用率调度各个物理 节点的资源负载。
[012引可选的,虚拟化调度模块306可W具体用于:
[0129] 根据用户的调度策略的效用函数获取达到调度策略的目标时每个应用程序对应 的资源集合;
[0130] 其中,效用函数包括:
[0131]
f_app(appk)表示调度策略的目标,目标为用户购买虚拟机资源的费用最小或虚拟机完 成任务的时间最短,cost,表示分配给第k个应用程序的第t个虚拟机VMt的单位资源 单位时间内的价格,Rt表示分配给第k个应用程序的第t个虚拟机占用的资源量,f_ time(Rt,missiont)表示第t个虚拟机完成所分配的任务量missiorit时所占用的时间。
[0132] 可选的,虚拟化调度模块306可W具体用于:
[0133]根据公式
获取物理节点的资源使用率,与表示第i个物 理节点的资源使用率,^胃,,表示第i个物理节点上的第j个虚拟机对应的总资源量,馬。 表示第i个物理节点对应的资源总量,表示第i个物理节点上的第j个虚拟机当前的 资源使用量;
[0134] 若管理结点需要均衡各个物理节点的负载,则获取各个物理节点的资源使用率的 方差最小时,各个物理节点上的虚拟机资源分布;
[0135] 若管理结点需要减少物理节点的个数,则先按照各个物理节点的资源总量从大到 小的顺序将各个物理节点进行排列,而后依次将虚拟机分配至物理节点上,直至当前分配 的物理节点的资源总量均被分配完再对下一物理节点进行分配;
[0136] 确定在将所有虚拟机均分配至物理节点上之后,是否存在未分配虚拟机的物理节 点,若存在,则关闭未分配虚拟机的物理节点。
[0137] 本发明实施例中各模块的具体实现方式可W参考上述资源调度系统的实施例和 方法实施例中的具体描述,该里不再寶述。
[013引本发明实施例提供一种管理结点,该管理结点中的虚拟化调度模块,用于根据用 户的调度策略获取达到调度策略的目标时每个应用程序对应的资源集合,资源集合包括任 一应用程序运行于虚拟机上时每个虚拟机占用的资源量,数据存储模块,用于存储每个应 用程序对应的资源集合,通信模块,用于将数据存储模块存储的资源集合发送给每个物理 节点,通信模块,还用于接收物理节点的每个虚拟机得到的总资源量;数据监控模块,用于 根据通信模块接收到的物理节点上的每个虚拟机对应的总资源量与物理节点上的每个虚 拟机当前的资源使用量获取物理节点的资源使用率;虚拟化调度模块,还用于根据数据监 控模块获取的资源使用率调度各个物理节点的资源负载,该样,可优先考虑应用层的调度, 在保证用户的资源需求的基础上,从虚拟化层、物理层的调度对资源进行调度,该种自顶而 下的建模方案,基于应用层、虚拟机和物理节及的资源使用量,能够对资源调度系统中的物 理节点、虚拟机节点进行统一的性能监控和调度,从而从全局上更为合理地分配资源,能够 解决调度技术不兼容造成的资源分配不合理的问题。
[0139] 本发明又一实施例提供一种物理节点4,如图4所示,包括从属(Sensor)装置40, 该从属装置40包括VMM接口 401、接口模块402、数据收集及存储模块403、虚拟化调度模块 404和通信模块405。
[0140] 其中,数据收集及存储模块403可W通过VMM接口 401对所有的虚拟机及物理节 点的资源进行监控,并将收集到的数据传递给虚拟化调度模块404,虚拟化调度模块404根 据调度策略做出是否对当前的资源分配方案进行变更的决定。通信模块405负责向VMM 或者管理结点传输控制命令或者数据信息,W便管理结点做出全面的调度策略,同时也将 物理节点内部的资源调度策略置于物理节点内部,可W简化不同物理节点的虚拟机间的交 互。
[0141] 在本发明实施例中,通信模块405,可W用于接收管理结点发送的每个应用程序的 资源集合,资源集合包括任一应用程序运行于虚拟机上时每个虚拟机占用的资源量;
[0142] 虚拟化调度模块404,用于根据资源集合确定物理节点上每个虚拟机分配的最小 资源量,再将分配最小资源量后物理节点的剩余资源量按比例分配给物理节点上的每个虚 拟机;
[0143] 通信模块405,还用于将分配后物理节点上的每个虚拟机得到的总资源量发送给 管理结点,W使管理结点根据总资源量调度各个物理节点的资源负载。
[0144] 可选的,虚拟化调度模块404可W具体用于:
[0145] 根据每个应用程序对应的资源集合中任一应用程序运行于虚拟机上时每个虚拟 机占用的资源量,确定属于物理节点上的每个虚拟机应分配的最小资源量,物理节点上的 任一虚拟机占用的最小资源量为任一虚拟机在每个应用程序中对应的资源量之和;
[0146] 获取物理节点的剩余资源量,剩余资源量为物理节点的总资源量减去为物理节点 上的每个虚拟机确定的最小资源量
[0147] 将剩余资源量按比例分配给物理节点上的每个虚拟机,物理节点上的任一虚拟机 分配到的剩余资源量为任一虚拟机的最小资源量占物理节点已分配的资源量的比例与剩 余资源量的乘积,已分配的资源量为物理节点上的每个虚拟机的最小资源量之和。
[014引本发明实施例中的各模块的具体实现方式可W参见上述资源调度系统和方法实 施例中的具体阐述,该里不再寶述。
[0149] 本发明实施例提供一种物理节点,其中的通信模块,用于接收管理结点发送的每 个应用程序的资源集合,资源集合包括任一应用程序运行于虚拟机上时每个虚拟机占用的 资源量;虚拟化调度模块,用于根据资源集合确定物理节点上每个虚拟机分配的最小资源 量,再将分配最小资源量后物理节点的剩余资源量按比例分配给物理节点上的每个虚拟 机;通信模块,还用于将分配后物理节点上的每个虚拟机得到的总资源量发送给管理结点, W使管理结点根据总资源量调度各个物理节点的资源负载,该样,可优先考虑应用层的调 度,在保证用户的资源需求的基础上,从虚拟化层、物理层的调度对资源进行调度,该种自 顶而下的建模方案,基于应用层、虚拟机和物理节及的资源使用量,能够对资源调度系统中 的物理节点、虚拟机节点进行统一的性能监控和调度,从而从全局上更为合理地分配资源, 能够解决调度技术不兼容造成的资源分配不合理的问题。
[0150] 在本申请所提供的几个实施例中,应该理解到,所揭露的节点和方法,可W通过其 它的方式实现。例如,W上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅 仅为一种逻辑功能划分,实际实现时可W有另外的划分方式,例如多个单元或组件可W结 合或者可W集成到另一个系统,或一些特征可W忽略,或不执行。另一点,所显示或讨论的 相互之间的禪合或直接禪合或通信连接可W是通过一些接口,装置或单元的间接禪合或通 信连接,可W是电性,机械或其它的形式。
[0151] 所述作为分离部件说明的单元可W是或者也可W不是物理上分开的,作为单元显 示的部件可W是或者也可W不是物理单元,即可W位于一个地方,或者也可W分布到多个 网络单元上。可W根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目 的。
[0152] 另外,在本发明各个实施例中的各功能单元可W集成在一个处理单元中,也可W 是各个单元单独物理包括,也可W两个或两个W上单元集成在一个单元中。上述集成的单 元既可W采用硬件的形式实现,也可W采用硬件加软件功能单元的形式实现。
[0153] 上述W软件功能单元的形式实现的集成的单元,可W存储在一个计算机可读取存 储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用w使得一台计算机 设备(可W是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的 部分步骤。而前述的存储介质包括;U盘、移动
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1