用于动态资源分配的方法和系统的制作方法

文档序号:6564132阅读:235来源:国知局
专利名称:用于动态资源分配的方法和系统的制作方法
技术领域
本发明涉及数据处理领域。更确切地说,本发明涉及一种用于供应系统(provisioning system)中的动态资源分配的方法。特别地,本发明针对的是根据预定的需求选择将要被配置的新资源的问题。本发明进一步涉及用于执行该方法的计算机程序,以及含有该程序的产品。此外,本发明还涉及相应的装置。
背景技术
在具有信息技术(IT)基础设施的复杂工业组织中,资源(硬件和软件二者)的管理是关键因素,其可以影响整个公司的盈利能力。需要一种用于自动化基础设施的管理的系统来最小化IT相关的成本。使用供应管理器(Provisioning Manager)来自动化供应和部署过程是公知的。供应管理器具有管理数据中心过程的任务,包括安装、配置和部署服务器、操作系统、中间件、应用、存储器和网络设备。供应管理器技术现状的例子是国际商业机器公司的ITPM(IBM Tivoli供应管理器)产品。供应管理器可能面临的问题是对要被分派给例如需要新资源的应用的新服务器的选择,例如附加服务器。当这样的需求出现的时候,供应管理器从可用服务器池中选择服务器并且将其分派给请求者。然而,在分派可以发生之前,该服务器必须被“重构”,即必须根据由新的目的地所设置的需求来对其重新配置。重构活动包括多种类别和不同级别的配置,其一般包括硬件、操作系统、网络、中间件和应用安装和/或定制。根据系统技术现状,在不考虑初始状态和所期望的最终配置设置之间的逻辑“距离”的情况下进行对要被重构和被分派的服务器的选择。
因此一种能够优化限制配置活动的选择的改进方法会是非常值得期望的。
本发明的目的是提供一种减轻上述缺点的方法和系统。

发明内容
根据本发明,我们提供了一种用于管理包括多个开发者实体和多个资源的数据处理系统的供应方法,该系统维持具有所述多个开发者实体的系统需求的储存库,一组所述多个资源可供分派给所述多个开发者实体,所述方法包括以下步骤检测对至少一个资源的所述多个开发者实体中的至少一个的需求;将分数(score)分派给所述可用资源中的每一个,所述分数表现出将所述资源配置到达所述至少一个开发者实体的需求所需要的工作(effort);根据所分派的分数选择至少一个可用资源,以便最小化所述配置工作。
本发明的另一方面提供了一种用于执行上述方法的计算机程序。
本发明的再一方面提供了一种含有该程序的程序产品。
此外,本发明的又一方面提供了一种用于实现以上方法的相应的装置。
在所附的权利要求中阐明了被认为是本发明的特点的新颖性特征。然而,本发明本身以及它的这些和其它相关的目的和优点将通过参照以下结合附图所读到的详细的描述而得到最好的理解。


图1是在其中可应用本发明的方法的计算机网络的示意框图;图2示出了该系统的普通计算机的功能块;图3描述了可以用于实施该方法的主要组件;图4示出了描述与该方法的说明性实现有关的活动的流程的示图。
具体实施例方式
图1表示使用可以实现本发明的供应管理器系统的计算机(100)的典型网络。供应服务器101连接至网络110。供应服务器101根据相应的实时需求自动地将资源103添加到系统100或从系统100移除资源103。服务器101可以是,例如像由国际商业机器公司所生产的将AIX 5.3运行作为操作系统的IBM 7029-6E3的RISC服务器。资源节点103可以是由国际商业机器公司所生产的运行例如Windows或Linux操作系统的ThinkCentre 8142-37G。通过网络110(例如,局域网)连接供应服务器和资源节点103。
如图2中所示,用150表示该系统的普通计算机(供应服务器或资源节点)。计算机150由并行地连接至系统总线153的若干单元形成。详细地,一个或多个微处理器(μP)156控制计算机150的操作;RAM 159由微处理器156直接用作工作存储器,并且ROM 162存储用于计算机150的引导程序(bootstrap)的基本代码。外围单元聚集于局域总线165周围(借助于相应的接口)。特别地,大容量存储器包括硬盘168和用于读取CD-ROM 174的驱动器171。此外,计算机150包括输入设备177(例如,键盘和鼠标),以及输出设备180(例如,监视器和打印机)。网络接口卡(NIC)183用于将计算机150连接至网络。桥接单元(bridge unit)186连接系统总线153和局域总线165。每个微处理器156以及桥接单元186可以操作为主代理,其请求访问用于传送信息的系统总线153。仲裁器189管理对互斥于系统总线153的访问的准许。
如果系统具有不同的布局,或者其基于其它的网络,类似的考虑也适用。可选地,计算机具有不同的结构、包括等效单元,或者由其它的数据处理实体(例如个人数字助理(PDA)、移动电话等)组成。总之,本发明的解决方案同样适合用于其中工作站的控制是分散的系统中。
现在考虑图3,描述了可以用于实施本发明的优选实施例的方法的主要组件。信息(程序和数据)通常被存储于不同计算机的硬盘上,并且在程序运行时被装载(至少部分地)到相应的工作存储器中。
根据本发明的优选实施例,供应服务器101运行供应器(provisioner)301(例如,国际商业机器公司的“IBM Tivoli供应管理器或ITPM”)。供应器301的内核由管理器303组成,其控制系统中资源的分配。为此,供应管理器303将系统的虚拟表示(virtual representation)存储到模型储存库(model repository)305中。模型储存库305定义多种类型的应用(例如Web(网络)服务、数据库设备、批量作业等);各应用类型共享相应的资源池。供应管理器303通过接口311控制应用313(开发者)的操作并且当需求出现时分派资源315。特别地,将每个应用313与模型储存库305中相应的应用类型相关联(具有相同的池资源)。此外,对于每个开发者,模型储存库305还指定分配策略;该分配策略定义控制向相应的池分配资源的条件(例如,以便确保所期望的服务级别)。
供应管理器303与性能监控器307相连;性能监控器307连续地测量所管理的开发者的状态参数(或度量)(例如其处理能力使用、硬盘占用、工作存储器消耗等)。每当所测量的状态参数指示应该削弱普通应用类型的所期望的服务级别的临界条件时,供应管理器303便会采取适当的动作试图防止该问题(如由模型储存库305中相应的分配策略所定义的)。举例来说,供应管理器303可以将更多的资源(例如附加服务器)添加到池中或者从另一(欠开发的)池中搬移一些资源。与此同时,供应管理器303为所需要的任务自动地配置(被添加的或被搬移的)服务器;为此目的而要被执行的操作(例如安装软件应用、配置系统参数、设置硬件设备等)由相应的工作流来定义,其被存储到数据库309中。如果未仔细地选择服务器,则该自动配置任务可能是非常费力的。根据本发明的优选实施例,从可用资源中选择将要被分派给开发者的服务器,以便最小化重新配置(或“重构”)必要的时间和工作。
根据本发明的优选实施例,定义了需求的两个级别“硬特性”,即不能被轻易配置的那些系统特征;以及“软特性”,即可以被轻易配置的那些特征。当然,硬和软的定义可以根据预定的条件来定制。根据本发明的优选实施例,硬特性是不能被自动配置以及可能需要操作者介入或长等候时期的那些特征,而软特性是可以被自动修改的那些。例如,硬件特征通常更难以修改。另一例子是可能需要安装支持(例如安装CD-ROM)的物理有效性以及可能操作者介入的操作系统。
硬特性的例子是-硬件类型;-RAM大小;-磁盘空间;-CPU。
更易于可配置的特征例如是-操作系统(但在某些条件下这可能变得困难);-O.S.(操作系统)版本;-所安装的应用;-网络配置。
我们称这些特征为“软特性”。无疑,硬和软的“分类”可以是灵活的并且可以根据预定的条件或用户偏好而改变。
根据本发明的优选实施例,为每个软特性分派准备时间;该准备时间(PT)是更新或重新配置系统所需要的预期时间,并且可以由用户预先定义或者利用统计方法计算或利用其它的手段获得。
对于每个可用资源可以定义资源值(RV),其是资源的业务值(businessvalue)的估计。例如,具有2Gb RAM的多处理器系统会比具有500MbRAM的单处理器系统具有更大的资源值。好的资源值估计可以是资源硬件的现实化成本。
在可用服务器池中,标识满足硬特性的一组备选服务器。对于在第一步骤中所挑选的符合条件的机器中的每一个,可以计算出总的准备时间。该时间是配置所需求的软特性中的每一个所需要的准备时间的总和。根据本发明的优选实施例,然后根据以下公式将分数分派给备选服务器F(V,T)=KV*(资源值)+KT(总的准备时间)其中KV和KT是基于资源值相对于总的准备时间的优先级的预定的权重。例如,如果唯一的优先级是尽可能快地得到所期望的资源,则可以将KV设为0;在这种情况下,会浪费硬件资源。否则,为了最小化具有高资源值的资源的使用,应当将KT设为0。可以基于客户需要来确定两个系数之间合适的折衷。
现在考虑图4,利用方法400表示了根据本发明的实施例的具有安全备份的许可管理器过程的逻辑流程。该方法开始于黑色的起始圆401并且转到步骤403,在其中由供应管理器303检测对向开发者(例如应用)分派新资源的需求。可以由供应器本身根据性能监控器307和模型储存库305以及工作流数据库309来进行这样的检测。可选地,Orchestrator工具可以关联至供应器。此外,其可能是所接收到的明确的请求(例如从系统管理员)。总之,控制转到步骤405,在其中根据预定的硬特性进行所有可用资源的第一选择。在步骤407,根据上面所描述的公式将总分分派给每个所选择的资源,并且根据总分列出加权的资源,以及然后选择被认为是最佳资源的资源来分派给开发者(步骤409)。然后该过程以步骤411结束。
以上按照步骤的顺序所描述的方法,其只是可能的实现中的一种。本领域的技术人员将容易地理解到可以使用不同的实现代替。例如,有可能在进行选择之前一起考虑硬特性和软特性二者来分派总分。同样,可以使区分硬特性和软特性的阈值为动态可配置的,并且甚至可能使用两个以上的特性种类。
如果以不同的方式构造程序和数据、如果提供了其它的模块或功能、或者如果信息存储于等效的存储结构中,则类似的考虑也适用。
如果该方法包括等效的或附加的步骤,则类似的考虑也适用。
尽管以上已在某种详细的程度上参照其优选实施例描述了本发明,然而应当理解可能在形式和细节上的各种变化以及其它的实施例。特别地,那些实质上以相同的方式执行相同的功能以实现相同的结果的元件和/或方法步骤的所有组合明显地意味着是在本发明的范围之内。例如,如上面所提及的,可以以不同的方式和使用不同的公式进行对给予备选资源的总分的分派。
另外,程序可以分布于任何其它的计算机可读介质上(例如一个或多个DVD);可选地,程序被预加载到硬盘上、被传送至计算机、被广播,或者更一般地被以直接可载入计算机的工作存储器中的任何其它的形式提供。
此外,对本领域的技术人员来说显而易见的是,提供更多优点的附加特征并不是实现本发明所必需的,并且可以被省略或者利用不同的特征来替换。
总之,根据本发明的方法还适合于利用硬件结构来实现(例如,集成于半导体材料的芯片中),或者利用软件和硬件的组合来实现。
自然地,为了满足局域的和特殊的需求,本领域的技术人员可以将多种变型和改造应用于上述解决方案,然而,所有的这些变型和改造均包括在由以下权利要求所定义的本发明的保护范围之内。
权利要求
1.一种用于管理包括多个开发者实体和多个资源的数据处理系统的供应方法,所述数据处理系统维持具有所述多个开发者实体的系统需求的储存库,一组所述多个资源可供分派给所述多个开发者实体,所述方法包括以下步骤-检测对至少一个资源的所述多个开发者实体中的至少一个的需求;-将分数分派给所述可用资源中的每一个,所述分数表现出将所述资源配置到达所述至少一个开发者实体的需求所需要的工作;-根据所分派的分数选择至少一个可用资源,以便最小化所述配置工作。
2.根据权利要求1的方法,其进一步包括-预先选择不需要手动配置活动的可用资源的子集;-将所述分派分数的步骤应用于所述可用资源的子集。
3.根据任何一项前述权利要求的方法,其中每个资源具有多个特性,每个特性被分派了值,所述值表现出根据所述至少一个开发者实体的需求修改所述特性所需要的工作。
4.根据权利要求3的方法,其中所分派的值包括准备时间,所述准备时间表现出根据所述至少一个开发者实体的需求修改所述特性所需要的预期时间。
5.根据权利要求3或4的方法,其中所分派的值包括资源值,所述资源值表现出所述特性的业务值。
6.根据权利要求5的方法,其中所述分数包括利用以下公式所计算的值F(V,T)=KV*V+KT*T*其中V是总的资源值,其表现出所有资源特性的资源值,T是总的准备时间,其表现出所有资源特性的准备时间,KV和KT分别是V和T的预定的权重。
7.根据任何一项前述权利要求的方法,其进一步包括-为每个可用资源识别至少特性的第一和第二级别,所述第一级别表现出需要超过预定阈值的配置工作的资源特性;-仅将所述分派的步骤应用于具有满足所述至少一个开发者实体的需求的第一级别的特性的那些资源。
8.根据权利要求7的方法,其中仅为第二级别的特性计算所述准备时间。
9.一种系统,其包括用于执行根据权利要求1至8中任何一项的方法的步骤的装置。
全文摘要
一种用于管理包括多个开发者实体和多个资源的数据处理系统的供应方法和相应的装置,该系统维持具有所述多个开发者实体的系统需求的储存库。供应器监控所述开发者对更多资源的任何可能的需求。当这种需求出现时,所述供应器在可能的可用资源池内选择可用的资源。进行这样的选择以便减少用于根据开发者需求来配置所述资源的工作。本发明的方法的一个特征在于定义了需求的两个级别“硬特性”,即不能被轻易配置的那些系统特征;以及“软特性”,即可以被轻易配置的那些特征。当然,可以根据预定的条件来定制硬和软的定义。根据本发明的优选实施例,硬特性是不能被自动配置以及可能需要操作者介入或长等候时期的那些特征,而软特性是可以被自动修改的那些。
文档编号G06F9/46GK101017444SQ20061016411
公开日2007年8月15日 申请日期2006年11月14日 优先权日2005年12月21日
发明者L·阿塔那西奥, B·波塔鲁里 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1