用于在云环境中进行资源分配的方法和装置的制造方法_3

文档序号:8361286阅读:来源:国知局
如 iBMpSeries? 系统;iBMxSeries? 系统;iBMBladeCenter? 系统;存储设备;网络和 网络组件。软件组件的例子包括:网络应用服务器软件,例如IBM^WebSphere?应用服 务器软件;数据库软件,例如IBMDB2?数据库软件。(IBM,zSeries,pSeries,xSeries, BladeCenter,WebSphere以及DB2是国际商业机器公司在全世界各地的注册商标)。
[0058] 虚拟层62提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器、虚 拟存储、虚拟网络(包括虚拟私有网络)、虚拟应用和操作系统,以及虚拟客户端。
[0059] 在一个示例中,管理层64可以提供下述功能:资源供应功能:提供用于在云计算 环境中执行任务的计算资源和其他资源的动态获取;计量和定价功能:在云计算环境内对 资源的使用进行成本跟踪,并为此提供帐单和发票。在一个例子中,该资源可以包括应用软 件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其他资源提供保护。用户 门户功能:为消费者和系统管理员提供对云计算环境的访问。服务水平管理功能:提供云 计算资源的分配和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能:为 根据SLA预测的对云计算资源未来需求提供预先安排和供应。
[0060] 工作负载层66提供云计算环境可能实现的功能的示例。在该层中,可提供的工作 负载或功能的示例包括:地图绘制与导航;软件开发及生命周期管理;虚拟教室的教学提 供;数据分析处理;交易处理。
[0061] 在本发明的一个实施方式中,可以在虚拟层62处实现根据本发明的各个实施方 式的资源分配方案,以便在云计算环境中的虚拟系统内的多个虚拟机之间自适应地进行资 源分配。
[0062] 图4示意性示出了根据一个技术方案的资源分配方法的框图。在此技术方案中, 虚拟系统410包括多个虚拟机,分别为VM-1412、VM-2414、...、以及VM-N416。假设虚拟系 统410中分别运行了多个应用,这些应用可以分别被部署在多个虚拟机VM-1412至VM-M16 上。具体地,应用可以包括:应用1,运行在VM-1412上并配置用于处理用户对于购物网站 访问;应用2,运行在VM-2414上并配置用于处理存储商品相关数据,等等。
[0063] 在此技术方案中,当应用1因无法处理过量的用户访问而变得过载时,可以向云 计算系统的资源池420请求(如箭头A所示)请求额外的计算资源。尽管如图4所示的技 术方案可以使得虚拟系统410获得所需计算资源以处理不断增加的用户访问,然而当资源 池420中没有额外的计算资源时,该技术方案无法保证虚拟系统410的正常运行。另外, 还可能会存在如下情况,尽管虚拟机VM-1412因用户访问量过大而变得过载,然而虚拟机 VM-2414上仍然存在大量空闲的计算资源。按照图4所示的技术方案,应用1并不能调用虚 拟机VM-2414上的空闲计算资源,S卩,一旦各个虚拟机的配置已经确定,在虚拟系统410中 的各个虚拟机之间并不能进行资源再分配。
[0064] 针对如图4所示技术方案的不足,期望能够开发出一种可以在云计算环境中的虚 拟系统中的多个虚拟机之间自适应地进行资源分配的方法和装置。具体地,图5示意性示 出了根据本发明一个实施方式的、在云环境中进行资源分配的技术方案的架构图500。不 同于图4所示的向资源池请求额外的计算资源,在图5所示的实施方式中,通过在虚拟机 VM-1412、VM-2414、...、以及VM-N416之间进行资源再分配,以便保证虚拟系统410的正常 运行。
[0065] 具体地,在本发明的一个实施方式中,提供了检测云环境内的虚拟系统中的多个 虚拟机中的至少第一虚拟机的度量参数;根据度量参数计算关键性能指标,关键性能指标 指示至少第一虚拟机的运行状态;以及响应于关键性能指标指示至少第一虚拟机过载,通 过云环境来基于关键性能指标在至少第一虚拟机与虚拟系统内部的其他虚拟机之间进行 资源再分配。
[0066] 具体地,图6示意性示出了根据本发明一个实施方式的、在云环境中进行资源分 配的方法的流程图600。在步骤S602中,检测云环境内的虚拟系统中的多个虚拟机中的至 少第一虚拟机的度量参数(metricsparameter)。在此实施方式中,度量参数是指可以衡量 虚拟机的运行状态的参数。可以采集来自虚拟系统中的一个或者多个虚拟机的度量参数。 例如,可以实时地监控每个虚拟机的度量参数,或者还可以监控运行状态浮动较大的虚拟 机的度量参数。
[0067] 在步骤S604中,根据度量参数计算关键性能指标,关键性能指标指示至少第一虚 拟机的运行状态。在此实施方式中,度量参数可以包括用于评估虚拟机的不同方面的多个 参数,例如,可以通过对多个参数进行加权等具体方式,来计算关键性能指标。
[0068] 在步骤S606中,响应于关键性能指标指示至少第一虚拟机过载,通过云环境来基 于关键性能指标在至少第一虚拟机与虚拟系统内部的其他虚拟机之间进行资源再分配。由 于关键性能指标可以指示至少第一虚拟机的运行状态,因而可以基于该关键性能指标判断 第一虚拟机是否过载,继而从虚拟系统内的其他虚拟机选择计算资源充足的虚拟机,并且 在第一虚拟机与该其他虚拟机之间进行资源再分配。
[0069] 本发明的实施方式中的各个虚拟机并非常规计算环境中的普通虚拟机,而是需要 受到云环境的控制中心的统一调度。因而,当关键性能指标指示至少所述第一虚拟机过载 时,云环境在虚拟系统内部调整各个虚拟机之间的资源分配,而不是如同现有技术那样由 云环境向该第一虚拟机分配额外的资源。应当注意,采用本发明的实施方式所述的技术方 案,除了可以在云环境的控制中心的层级提供虚拟机之间的资源分配以外,还可以在云环 境内的各个虚拟系统的层级处实现虚拟系统内的资源调度。
[0070] 应当注意,本发明的上下文中所述的虚拟系统不同于常规的集群。在集群环境中 的各个节点是同质的(homogeneous),即各个节点的物理配置以及逻辑配置通常都是相同 的。然而,由于云环境的复杂性,云环境中提供计算资源的计算设备在物理上通常具有多样 性,例如某些计算资源可能来自于个人计算机,而某些计算资源可能来自于服务器设备;另 一方面,各个计算设备上的软件配置也不尽相同。例如,对于上文所述的在线机票预定网 站的虚拟系统而言,其中可能会涉及多种类型的计算设备,并且每个计算设备上可以运行 多种类型的应用,例如,用于访问航空公司数据库的应用、以及用于管理在线支付的应用等 等。由于云环境的复杂性,现有技术中关于集群的资源调度方法并不适合于在云环境中进 行资源分配。
[0071] 在本发明的一个实施方式中,可以计算虚拟系统中的每个虚拟机的关键性能指 标,并且根据该指标来选择计算资源充足的其他虚拟机。
[0072] 在本发明的一个实施方式中,在再分配期间虚拟系统占有的资源总量保持不变。 根据本发明的原理,优先考虑在虚拟系统内部的多个虚拟机之间进行资源再分配,当资源 再分配不能满足虚拟系统的运行要求时,再向云计算环境请求额外的计算资源。因而,在本 发明的资源再分配期间,虚拟系统占有的资源总量保持不变。
[0073] 本领域技术人员可以自行设计如何实现资源再分配,例如,可以将造成第一虚拟 机过载的应用迁移至具有更充足计算资源的其他虚拟机,或者还可以将具有更充足计算资 源的其他虚拟机中的空闲计算资源分配给该第一虚拟机,以缓和第一虚拟机的过载状况。
[0074] 在本发明的一个实施方式中,度量参数包括以下中的任一项:应用度量参数,指示 运行于多个虚拟机中的至少第一虚拟机之上的应用的性能参数;以及硬件度量参数,指示 多个虚拟机中的至少第一虚拟机的硬件的性能参数。
[0075] 在本发明的实施方式中,可以从多个方面来衡量虚拟机的性能状态,一方面,可以 基于运行于特定虚拟机上的应用的性能来衡量该特定虚拟机的性能状态。例如,在上文参 见图4所述的具体示例中,运行在VM-1412上的应用1配置用于处理用户对于购物网站的 访问,此时可以将应用1对于用户访问的响应时间作为一个度量参数。当响应时间较快(例 如,小于10毫秒时),可以认为VM-1412的运行状态良好;而当响应时间变慢(例如,大于3 秒时),则可以认为VM-1412的运行状态已经恶化,并需要进行资源再分配。
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1