专利名称:用于计算工具的计算环境的组件化自动供应和管理的制作方法
技术领域:
本发明涉及使用资源向客户提供计算服务的计算工具(utility)中的资源的 供应和管理。更具体地说,它涉及用于计算工具的计算环境的组件化自动供 应和管理。
背景技术:
托管(hosting)中心向多个客户提供计算服务。向每个客户分配例如服务 器的服务提供方的基础设施资源的子集,以满足其需要。客户需要随着时间 而变化,并且特别地,对资源的峰值需求可能超出平均需求多个数量级。用 于满足峰值需求的简单的静态资源分配使得资源利用不足。响应于客户需要 而动态地重新配置基础设施资源要求来自管理人员的即时关注,从而增加运 营成本和不能提供足够服务的风险。托管中心的问题是如何快速响应客户需 要的变化,以便以高效且节省成本的方式使用基础设施资源和工作人员。计 算工具通过使共享基础设施上的一个或多个计算服务的创建和管理自动化, 来试图解决该问题。
计算工具中的先前工作按照所提供的服务类型、所使用的资源、以及自
动化操作的程度而变化。经过自动化的操作是宽范围的,并且包括创建服务、 为客户部署服务、修改用来提供服务的资源集、以及将新的资源实例和类型 并入到托管中心及其服务中。一个系统基于诸如服务器负载和响应时间的量度,而自动化网站中的前 端服务器的供应。它包括自动发现服务器和网络拓朴结构的组件。另一系统 提供了各种多层网站,其中可以基于例如服务器负载的量度而自动地将预先 配置的服务器分配给不同层。另一系统也响应于服务器负载而分配服务器资 源,但是对向每个客户分配资源的价值、以及使用那些资源的成本进行建模, 其中着重于能量成本。更新近的工作包括诸如存储器和存储装置的其它资源 类型的分配、以及通用服务器的分配。
越来越多的工业产品旨在通过包括各种资源的物理基础设施来提供多层
应用。它们在多个方面不同,如所提供的资源(例如,服务器和存储装置) 的类型;所支持的特定操作系统和中间件;网络基础设施的假定和特性(例如, 是否通过VLAN提供网络隔离);监视支持的级别(例如,资源使用、故障检 测、SLA、基于阈值的警报);对资源发现的支持;对修改曾经部署的服务资 源的支持;是否可以自动地发生修改(例如,由SLA触发);以及可以或必须 对产品进行定制以适合预先存在的托管中心基础设施的程度。
在应用层进行用来使分布式应用的部署和管理自动化的工作。将应用描 述成相关、可重用(reusable)组件的集合,其可以代表资源或子系统。应用 的描述包括相依关系(dependency)信息,以确保例如以正确顺序启动组件。这 不用于例如在服务器上安装操作系统的低级别资源配置任务,而是用于高级 别应用特定配置。
供应指的是这样的处理,即,分配基础设施资源集,并配置它们,以提 供期望的计算服务,以便由客户使用。供应是复杂的任务集,其可以包括配 置网络设备、安装操作系统和应用软件、获得软件许可证、安装监视器、以 及通过创建用户帐户来允许客户访问。
通过对这些任务的过程或脚本进行编码(codify)来使供应自动化。 一些产 品提供GUI界面,以帮助这些过程的创建和选择。例如,拖放界面可以用来 指定用于要部署的应用环境的资源的"虚拟接线"。虚拟接线可以包括环境的 层结构、防火墙的规则、以及要在服务器上安装哪个操作系统。捕获接线图, 作为模板描述。该描述用来创建和删除环境,并且可以修改它,以向计算环 境添加或从计算环境移除资源。
在一些系统中,基于服务特定基础而对过程进行编码。资源类型、连接 性、或服务要求的变化可能需要这些过程的重新实现。如果以特别(adhoc)方式或独立地实现它们,则可能难以系统地实行最佳实施或梯:作约束。这样, 期望提供一种在现有技术上改进的系统。
发明内容
本发明提供用于自动供应和管理计算工具中的资源的方法和装置。其自 动化过程基于资源模型,其允许将资源特定供应和管理任务封装到组件中, 以便重用。将这些组件组装到更复杂的结构和最终的计算服务中。包括了用 于自动供应和管理计算工具中的资源的方法和装置。其自动化过程基于资源 模型,其允许将资源特定供应和管理任务封装到组件中,以便重用。将这些 组件组装到更复杂的结构和最终的计算服务中。本发明还提供一种用于在给 定高级规范的情况下从资源集构造计算服务的方法。 一旦被构造,服务就包 括提供管理功能的组件,其可以允许修改其底层资源集。
在示例实施例中,本发明提供一种用于供应计算工具中的至少一个计算
环境的方法。该方法包括采用所述至少一个计算环境中的每个的描述,所 述描述引导执行所述供应的第一服务的调用,所述描述为复合资源定义;以 及调用所述第一服务以执行所述供应。
在示例实施例中,本发明提供一种用于将基础资源类型添加到操作计算 工具的方法。添加步骤包括提供(fumish)基础资源库服务,以表示所述基础 资源类型的任何实例;将所述基础资源类型的任何实例添加到基础资源库服 务;开发所述基础资源类型的供应资源服务的实现;激活所述供应资源服务; 以及创建所述基础资源类型的管理资源服务的实现。
在一些实施例中,该方法还包括更新任何复合资源类型的任何供应资 源服务,以使用所述基础资源类型的所述供应资源服务;以及更新任何复合 资源类型的任何管理资源服务,以使用所述基础资源类型的所述管理资源服 务。
在另一示例实施例中,本发明提供一种用于将计算环境的至少一个第三 方工作负载管理系统适配到计算工具的方法。适配步骤包括开发管理资源 服务,所述管理资源服务解释所述至少一个第三方工作负载管理系统的状态; 以及根据所述至少 一个第三方工作负载管理系统的状态的指示,修改组成所 述计算环境的基础资源集。
在另 一示例实施例中,本发明提供一种用于在给定高级规范的情况下从
ii资源集构造计算服务的方法。这样,本发明也是计算工具的元素。
在另一示例实施例中,本发明提供一种用于供应计算工具中的至少一个 计算环境的装置。该装置包括第一处理器模块,用来釆用所述至少一个计 算环境中的每个的描述,所述描述引导执行所述供应的第一服务的调用,所
述描述为复合资源定义;以及第二处理器模块,用来调用所述第一服务以执
行所述供应。
根据下面参考附图对本发明的有利实施例的详细描述,将更好地理解前
述和其它目的、方面和优点,附图中
图l示出了托管中心,即可以使用本发明的系统;
图2示出了计算工具结构的示例,其中,根据本发明,PMRS是组件中 的一个。
图2a示出了根据本发明的PMRS的内部结构的示例; 图3示出了网站的复合资源实例;
图4示出了根据本发明的对应于图2的复合资源实例的MRS分级结构; 图5示出了根据本发明的对应于图2的复合资源实例的PRS分级结构; 图6示出了根据本发明的网站复合资源的实现; 图7示出了根据本发明的通过层属性剪枝(prune)的网站实现; 图8示出了根据本发明的通过服务器属性剪技的网站实现; 图9示出了根据本发明的通过层、服务器和WAS属性剪枝的网站实现; 图10示出了根据本发明的网站实现及其组件,其中每个组件对应于PRS 和MRS结构;
图11示出了根据本发明的在网站实现的构造中涉及的实现器(Realizer)
的操作的示例;
图12示出了根据本发明的用于构造复合资源的处理;
图13示出了根据本发明的用于通过提前预定来构造系统中的复合资源
的处理;
图14示出了#>据本发明的与BRDS的PMRS交互的示例;
图15示出了根据本发明的与第三方工作负载管理系统的MRS交互的示
例;图16示出了根据本发明的如何将新的基础或复合资源类型添加到系统
的示例;
图17是根据本发明的描述基于负载事件而将Linux服务器添加到Linux 服务器组服务的用例;以及
图18是根据本发明的描述基于负载事件而将网络(Web)服务器添加到网 站服务的用例。
术语定义
计算环境是向客户提供的计算服务。它包括硬件和软件资源,如服务器、 操作系统和中间件。本发明假定分配给计算环境的资源在其分配期间专用于 该计算环境。
服务提供方被假定为多个计算环境提供服务。服务提供方提供可被分配 以向其计算环境提供计算服务的资源集。
基础资源是原子性的资源;它不能被分解为其它资源。基础资源的示例 是服务器或软件许可证。服务提供方不想要细分的任何资源都可被视作基础 资源。添加、移除或修改基础资源改变系统的总体性能。我们假定基础资源 的数目和类型都随着时间而变化。基础资源的概念是服务提供方特定的。
复合资源由其它资源构建,以执行指定功能。复合资源可以具有与其相 关联的相依关系集。复合资源的示例是网站。它可由一定数目的前端服务器、 后端服务器、负载平衡器、服务器的IP地址集、网络服务器软件、数据库软 件、以及与软件相关联的许可证组成。用于实现复合资源的功能的基础资源 集可以随着时间而变化,不过不是所有复合资源都可以具有该性能。在某些 情况下,复合资源之内的资源被称为子资源。
资源可以由计算环境请求以用于立即或将来的分配。将来资源分配的允 诺是预定。
具体实施例方式
本发明提供这样的方法、系统和装置,其用于在拥有下列特性的环境中 自动地供应和管理计算工具中的资源。综合起来,这些特性概括了在先前工 作中研究的环境。
本发明提供用于自动供应和管理计算工具中的资源的方法和装置。其自 动化过程基于资源模型,其允许将资源特定供应和管理任务封装到组件中,以便重用。将这些组件组装到更复杂的结构和最终的计算服务中。本发明提 供一种用于在给定高级规范的情况下从资源集构造计算服务的方法。 一旦被 构造,服务就包括提供管理功能的组件,其可以允许修改其底层资源集。
示例方法规定了在给定高级规范的情况下,从资源集构造计算环境。
它是在拥有下列特性中的至少一个的环境内操作的计算工具的组件。综合起 来,这些特性概括了在先前工作中研究的环境。
第 一 ,资源可以以异构(heterogeneous)的组合分配给客户,可以是相互依 赖的,并且随着时间而变化。
第二,提供给每个客户的计算环境的类型可以不同。例如,可以向一个 客户提供用于网站的资源,而向另一个提供用于科学计算群集的资源。因此, 资源类型、数量、相依关系、以及分配模式将在客户之间变化。
第三,从服务提供方的基础设施中的资源构造计算环境可以存在多种方 式。对于给定计算环境的特定变化,如服务器的特定品牌,客户可以具有首 选项或要求。
第四,资源基础设施在服务提供方之间变化。此外,对于给定服务提供 方,基础设施随着时间而变化。这些变化可以是对物理基础设施的升级或添 加、占用另一提供方的服务、或在空闲时或在一日的特定时间包括附加资源 的结果。
最后,可以预先分配、或预定资源。
使用本发明的系统是分布式计算机系统,其具有通过网络互连的多个计 算资源。图1中示出了将在托管或数据中心中找到的这种系统的图。物理基 础设施中的计算资源包括处理器101、存储装置103、防火墙105、以及软件 107。该软件可以是操作系统、中间件或应用程序。在图1中,可用软件已被 预先配置到业务处理、业务应用、或服务中。如互连所有这些资源的连线网 格所示,通过网络109连接硬件资源。可以将该网络配置成一个或多个层, 其中由路由器或防火墙隔离每个层。由管理基础设施将软件资源分配给物理 资源。在该环境中,将资源子集分配给管理基础设施。在图1中,这些资源 111、 113和115通过环绕它们的虚线来表示。分配给管理基础设施的资源运 行在本发明中描述的管理软件。该软件管理其余资源。用于管理基础设施的 资源不被分配给被托管环境的客户。根据需要将剩余资源分配给客户。预期 客户端117将主要通过经由因特网119连接到其资源来接收服务。然而,如果客户端通过任何方式(例如通过与被管理的资源的直接连接)连接到其资 源,则客户端可接收服务。
图2示出了计算工具的高级视图,其中,本发明是组件。存在三层组件。 底层201表示基础资源。每个基础资源类型具有提供该资源类型的实例的预
定和分配的服务,其被称为基础资源库服务(BRLS)。本发明假定基础资源的 数目和类型都随着时间而变化。图2示出了四种类型的基础资源及其BRLS: DB2软件许可证203、 zSeries逻辑分区205、 xSeries服务器硬件207、以及 AIX许可证209。BRLS提供诸如编目、检出(check out)(分配)、检入(check in)(释 放)、以及预定的信息。每个计算环境具有被调用以供应和管理其资源的服务, 其被称为供应和管理资源服务(PMRS)。在图2中,顶层211示出了计算环境 及其PMRS。图2示出了计算环境的三个示例,即DB2环境213、 Linux环境 215、以及网站环境217。在中间层中,基础资源分配服务(BRDS)219确定如 何跨越各种计算环境而分配基础资源。BRDS指定哪些资源集可用于哪些计 算环境,并且在资源受到约束时基于业务策略而自动地重新分配那些资源。
为计算环境组装的资源被建模为复合资源。该模型在其组成资源方面定 义复合资源的结构。作为本发明的焦点的、被称为供应和管理资源服务(PMRS) 的服务集供应并管理复合资源。每一个资源类型具有PMRS,其封装如何创 建该类型的资源、以及如何管理该类型的资源的实例的知识。管理资源可以 包括诸如向资源实例添加或从资源实例移除性能的行为。这样,如图2a所示, PMRS 251由两个部分组成供应资源服务(PRS)253,其创建复合资源的实例; 以及管理资源服务(MRS)255,其管理复合资源的实例。对于每个资源类型, 存在单个PRS,并且,对于资源类型的每一个实例,存在MRS。
复合资源可以使用其它复合资源来组装。例如,网站复合资源实例可以 由负载平衡器、以及一组前端服务器组成。前端服务器是可以由服务器、操 作系统、以及网络服务器软件组成的复合资源。为此原因,可以在包含分级 结构中组成PMRS,该包含分级结构表示计算环境中的复合资源的结构。图3 示出了网站复合资源实例的示例。树中的每一个节点表示基础或复合资源。 树301的根是网站复合资源。它包含作为基础资源的负载平衡器资源303、 以及网络服务器组复合资源305。网络服务器资源又包含服务器资源307。
复合资源的PMRS可以使用子资源的PMRS来创建和管理子资源的实 例。该方案允许基于每资源类型而封装资源供应和管理。因为子资源的内部知识被封装在子资源的PMRS中,所以复合资源的PMRS仅必须并入和反映 复合资源的子资源之间的相互依赖关系的知识。
图4示出了对应于网站复合资源实例301的MRS分级结构。每一个MRS 负责管理单个资源实例。这样,网站MRS401负责管理整个网站,而网络服 务器MRS 403负责管理网络服务器309。从一个MRS框到另 一个MRS框的 箭头表示前者使用后者,以便执行其功能。这样,网站MRS401可以使用由 负载平衡器MRS 405以及各个网络服务器MRS 407提供的信息,以便确定 网站的性能问题的根本原因,并且,网络服务器MRS又可以使用服务器MRS 409。网站MRS401还可以使用子资源的MRS,以便对一些组成资源执行校 正的配置行为。后面将进一步描述该处理。
图5示出了对应于来自图3的网站复合资源实例的PRS分级结构。该图 中的PRS负责从对应的类型创建资源的所有实例。这样,该分级结构的根是 网站PRS 501,其负责创建计算工具中的所有网站复合资源实例。网络服务 器PRS 503负责创建计算工具中的所有网络服务器实例等。如在MRS分级结 构的情况下那样,从一个PRS框到另 一个PRS框的箭头表示前者使用后者, 以便执行其功能。这样,网站PRS 501使用网络服务器PRS 503和负载平衡 器PRS 505两者,以便构建网站资源。它不需要知道如何构建网络服务器或 负载平衡器;该知识被封装在其使用的对应PRS中。它只需要知道网站包括 网络服务器和负载平衡器,以及如何配置它们,以便一旦创建它们就一起工 作。后面将进一步描述该处理。
图3、图4和图5示出了将递归结构应用于系统的供应和管理的思想。 这样,PRS和MRS用作构建更复杂资源的一般构建块。新复合资源的PRS 或MRS的实现人员无须重新实现用于创建和管理任何子资源的逻辑。实现人 员只需实现增量;如何能够创建和管理资源,以一起工作,从而执行超出任 何单个资源执行的功能的更高功能。
供应资源服务
PRS创建复合资源类型的实例。它实现复合资源的创建中的两个阶 段——计划阶段和构建阶段。在PRS中,计划阶段由被称作实现器(realizer) 的组件实现。实现器将资源的抽象描述映射到大纲(schema),其描述创建其所 需的基础资源和对应复合资源结构的可能组合。它在实质上提供用于构建复 合资源的计划。由于可以存在多于一种方式来创建资源,所以实现器可以提供多个计划。在提供计划时,实现器考虑资源类型、而非特定类型的实例的 可用性。实现器可以在子资源的PRS中使用实现器,以创建计划。
第二组件构建器(builder)在给定所需基础资源的资源句柄和计划的情况 下构建资源实例。它在被请求时还分解资源。创建复合资源的实例可以是多 阶段的,其中在每个阶段,通过调用子资源供应服务的构建器服务,递增地 从子资源构建资源,然后彼此相关地配置资源。资源实例的创建包括用于管 理其的MRS的实例化。遵循相同的逻辑,在创建复合资源的处理中,将实例 化MRS集,以协作地管理复合资源及其子资源。
实现器
实现器封装从计算工具中可用的基础和复合资源构造特定类型的资源的 可能性。它可以提供用于构造资源的一个或多个可选计划。在这种情况下, 它还可以暴露特定设置,其可以用来限制其提供的可选项集。实现是对不同 可选项进行编码的结构。该实现可以以诸如图形或二元判定图的多个结构的 方式来表示。因为复杂结构的实现的可能数目可能较大,所以该表示应当是 压缩的。
图6示出了网站资源的示例实现。带子的图形中的节点具有两种类型 以黑色示出的与节点、以及以白色示出的或节点。与节点意味着构造由父 (parent)表示的资源需要节点的所有子(child)。或节点意味着其任何子可以用 来构造由父表示的资源。网站图形的根节点601是或节点,其表示二层可选 项603和三层可选项605。 二层节点603是由负载平4軒器607和网络服务器 609组成的与节点。三层节点605也是由负载平衡器611、前端网络服务器 613、以及后端网络服务器615组成的与节点。负载平衡器节点607和611是 基础资源;它们没有引出边(outgoingedge)。两层网络服务器节点609是仅具 有一个可选项即服务器节点617的或节点。服务器节点617是表示可选项 Apache网络服务器619和WAS网络服务器621的或节点。三层前端网络服 务器节点613在结构上与二层网络服务器节点609相同。Apache网络服务器 节点619是或节点,其表示三种IBM体系结构即iSeries 623、 xSeries 625、 以及pSeries 627的服务器。WAS网络服务器621是或节点,其表示四种IBM 体系结构即iSeries 629、 xSeries631、 pSeries633、以及zSeries 635的服务器。 如同DB2节点637那样,这些服务器是基础资源。
资源类型的实现器可以允许设置可限制其提供的可选项集的特定属性。这些设置被指定为上述realize()函数的实现规范参数的一部分。在图7所示的 与-或图形表示中,属性701指定有关针对或节点选择的后代的值的条件。该 图形被剪枝,以消除不满足属性中的条件的后代。图7示出了与"网站是二 层"属性相对应的可能实现。如果净皮:没置,则该属性在"网站"或节点601 处剪枝该图形。所得到的实现是以实边示出的、以节点603为根的子树。
图8示出了更复杂的示例。属性"服务器是Apache" 801指定实现中的 任何"服务器"或节点必须具有"Apache"节点作为直接后代,如服务器节 点617的后代。剪枝"服务器"或节点的其它后代,如节点621。如果在初 始实现中"Apache"节点未被指定为"服务器"节点的直接后代,则如在节 点807中那样,剪枝整个"服务器"节点。如果所剪枝的"服务器"节点是 或节点的仅有的直接后代,或者如果它是与节点的任意直接后代,则与节点 605 —同以递归方式剪枝该节点,如节点615等。该处理的应用导致这样的 实现,即以节点603为根的二层实现,其中网络服务器617被实现为Apache 服务器619。该实现用实箭头示出。节点619的任何后代是可接受的可选项。
可以指定多个属性,作为实现规范的一部分。图9示出了具有多个属性 的实现规范901。所得到的实现是三层网站605,其中前端服务器卯5被实现 为服务器类型zSeries 909上的WAS服务器907。类似地,还通过zSeries 913 来实现被实现为WAS服务器911的后端网络服务器。该实现用实箭头示出。
可以如下半正式地描述上述剪枝算法
Prune—one(S, R):
针对属性S = [NODE—NAME是CONDITION],并且针对具有节点集 NODES的实现R。
1. 设Pruned =空集。
2. 针对每个节点NENODES:
如果N是或节点,则
如果N:NODE—NAME,则
针对R中的N的每个直接后代M: 如果M不满足CONDITION,贝寸 Pruned=pruned U {M}
3. 针对每个节点N eNODES\Pruned:
如果N是或节点,则
18如果N的所有后代在Pruned中,则 Pruned=pruned U {N}
4. 针对每个节点N e NODESVPruned:
如果N是与节点,则
如果N具有后代M s.t. M e Pnmed,则 Pruned=pruned U {N}
5. 重复步骤3和4,直至到达集合Pruned不发生改变的循环为止。
6. 返回可从根到达并且未被剪枝的节点的树(如果根被剪枝,则返回空树)。
Prune—all(LS, R):
针对属性列表LS=L1, L2,..., Ln, 并且针对实现R
1. New—R=R
2. 针对i与,...,n:
New一R = prune—one(New—R, Li)
3. 返回New—R
注意,这些示例基于允许在实现请求中指定所有或节点属性的实现器。 实现器不需要暴露所有这些选项。它还可以将选项集编组为单个属性,如"非 Intel服务器"。
另外注意,可以定义和使用更复杂的属性。例如,使用关键字"包含" 代替"是,,,可以在以一节点为根的子树中的节点上而非仅仅其直接后代上指 定属性。可以以直接方式改变剪枝算法,以同样处理这些情况。作为示例, 再次考虑在图9中所述的实现的结果。相同实现结果也对应于下面仅仅具有 两个属性的实现M^范"网站是二层"和"服务器包含z"。虽然没有指定服务 器必须是WAS,但是Apache可能性915由于以其为根的子树不包含"z"资 源而一皮剪才支。
实现器的操作
由于复合资源可以使用基础或其它复合资源组装,所以实现器调用子资 源的实现器。图10示出了网站示例,其使用两个子资源,即网络服务器和服 务器。网络服务器实现器提供以带条紋节点1001、 1003和1005为根的子图 形。该实现器可以提供前端或后端网络服务器类型。节点1005比节点1001和1003更暗,这是因为它既是与节点又是子资源节点。服务器实现器提供以
例如节点1007的带点节点为根的子图形。服务器实现器可以提供具有兼容操 作系统的不同IBM服务器体系结构的服务器。注意,在该示例中,Apache 网络服务器实现器调用仅具有iSeries、 xSeries或pSeries服务器类型的服务器 实现器1007。对于该图形中的Apache,没有示出zSeries选项。
图11示出了生成实现的处理。网站PRS501接收具有属性"两层"的实 现规范(realization-spec)的实现(Realize)请求1103。网站实现器501通过实现 请求1107调用网络服务器实现器503。网络服务器实现器503又通过实现请 求1111和1113调用服务器实现器507两次。请求1111和1113的结果是通过 响应1119和1121返回的实现R1 1115和R2 1117。网络服务器实现器使用Rl 和R2来构建在作为对请求1107的回答的响应1125上返回的实现R3 1123。 最后,网站实现器使用R3来构造在来自初始请求1103的响应1129上返回的 实现R4 1127。
有利地,可以在构造复合资源的时间之前获得实现,并且它们可以长期 保持。应当重新生成实现的情形包括需求变化、以及系统中可用的基础或复 合资源类型的变化。注意,实现不依赖于资源可用性。因此,资源可用性的 变化不需要重新生成实现。
资源选择
一旦获得实现,就必须分配与单个可选项相对应的资源。由于实现可以 描述多个可选项,所以可以使用排名机制,来才艮据某个量度对可选项排序。 例如,可以针对实现之内的剩余可选项而表示一组首选项,并且,可以按照 所满足的首选项数目对可选项排序。另一排名量度可以是成本。然后,依次 选择可选项,并且针对特定可选项请求基础资源。如果资源请求成功,则用 基础资源的资源标识符(例如,预定票(ticket)或资源句柄)注解(annotate)树。一 旦获得基础资源,就可以调用构建器来构造资源。注意,如果资源可用性改 变(例如,预定被系统取消),则可以使用实现来取得(secure)可选的资源集。
构建器
构建器接收实现、以及从其组装资源的基础资源集,作为输入。在构建 器中对资源类型的构造所需的过程进行编码。这些过程封装资源相依关系和 操作的正确排序的细节。实现用与基础资源相对应的可选项注解。构建器以 深度优先方式遍历树,如所示出的,在节点处调用子资源的构建器,并且向
20其提供与子资源相对应的实现的子树。
图12示出了构造复合资源的处理。该处理在步骤1201开始,其中,若
有的话,通过作为实现规范中的属性设置而提供的需求,调用复合资源的PRS 的实现函数。接下来,在步骤1203,对实现进行排名,并且,按照排名来对 实现排序。如果存在多个可选项上的首选项,则在该步骤处理它们。然后, 该处理依次检查由实现实施的可选项,其中在步骤1205从第一实现开始。在 步骤1207,针对实现获得基础资源集,并且在步骤1209,针对该集合发出资 源请求。在步骤1211,检查请求结果。如果请求成功,则流程转到步骤1217, 其中,用当前可选项、以及为其取得的基础资源集的资源标识注解该实现。 然后,在步骤1219,调用PRS的构建函数。如果在步骤1211该请求不成功, 则流程传递到步骤1213,以确定是否存在可以尝试的可选实现。如果存在可 选实现,则在步骤1215选择列表上的下一实现,并且该处理从步骤1207继 续。如果没有剩余可选项,则流程转到步骤1221,并且复合资源的构造失败。 在支持提前预定的系统中,所返回的资源标识符可以表示对该资源的预 定。在这种情况下,要求与预定相关联的资源需要另一步骤。在该步骤发生 之前,可能存在相当长的时段,并且,由于该时段的其它活动,该步骤可能 最终失败。例如,在预定到期要开始的时候,由于诸如资源故障或预定超额 的原因,资源可能不可用。如果要求资源的初始尝试不成功,则可以尝试其 它可选项,并且,有可能用另一基础资源集进行恢复。图13中示出了在支持 提前预定的系统中构造复合资源的处理。该处理在步骤1301开始,其中,若 有的话,通过作为实现规范中的属性设置而提供的需求,调用复合资源的PRS 的实现函数。接下来,在步骤1303,对实现进行排名,并且,按照排名来对 实现排序。如果存在多个可选项上的首选项,则在该步骤处理它们。然后, 该处理依次^r查由实现实施的可选项,其中在步骤1305从第一实现开始。在 步骤1307,针对实现获得基础资源集,并且在步骤1309,针对该集合发出资 源请求。在步骤1311,检查请求结果。如果请求成功,则流程转到步骤1317, 其中,用当前可选项、以及为其预定的基础资源集的资源标识符注解该实现。 当在步骤1318到达构造时间时,在步骤1319,该处理尝试要求与预定相关 联的资源。构造时间酌留了足够的时间来构造资源,以便它在期望开始时间 可用。如果在步骤1321获取了所有资源,则流程转到步骤1323,其中,调 用PRS的构建函数。如果在步骤1321没有获取所有资源,则控制转回到步骤1305,其中,从第一实现开始重复该处理。如果在步骤1311资源请求不 成功,则流程转到步骤13B,以确定是否存在可以尝试的可选实现。如果存 在可选实现,则在步骤1315选择列表上的下一实现,并且该处理从步骤1307 起继续。如果没有剩余可选项,则流程转到步骤1325,并且,复合资源的构 造失败。
似凝#
Realize(n, realization-spec) -> realization^
发出该请求,以创建用于构建由PMRS表示的类型的资源的计划。 输入
n,期望实现的最大数目,
realization-spec,对由该实现器暴露的属性的设置。这些属性控制表示 资源的可能变化。它们的设置确定所提供的实现,Unspecified(未指定)属性 设置表示附加的自由度。 输出
Realization[]。表示实现的结构(列表、树、等等),每个实现包括大纲, 其包含其所需的基础资源("购物列表")及其结构。 Build(base國resource-handles, r) -> resource-handle
该接口用来请求从由基础资源句柄表示的基础资源构建由PMRS表示的 类型的资源。 输入
Base-resource-handles[],实现中的基础资源的列表句柄 Realization,由实现器预先提供,用于描述复合资源的结构。 输出
Resource-handle,指向新构造的资源的句柄 在失败时,可以将此设置成'null'句柄 UnBuild(composite-resource-handle) -> resource-handle[l
该接口用来将复合资源分解成用来构建它的基础资源集。它在要将资源 返回到BRDS时卩吏用。 输入
Composite-resource-handle , 复合资源的句柄。 输出Resource-handle[],指向基础资源的句柄的数组 管理资源服务
如前所述,资源类型(复合或基础)的MRS封装资源操作的知识。当资源 由对应PRS创建时,针对该资源实例化MRS。从PRS上的构建操作返回对 MRS实例的引用。
回忆一下,复合资源类型的MRS可以在复合资源的管理中使用子资源 的MRS。针对图4的网站计算环境,图14示出了该结构。具有分配给其的 资源的每一个计算环境具有一个指定的根MRS。图14中的根MRS是网站 MRS 401。所有其它MRS实例都关联于该根MRS之下。只有根MRS与BRDS 219通信。考虑诸如系统的性能和健康的因素,根MRS基于系统的知识而生 成资源管理请求1405。这些请求可以修改由与根MRS相对应的计算环境使 用的基础资源集。MRS必须实现交叉引用的、具有案号YOR920030587PCT1 的申i青"Hierarchical Resource Management for a Computing Utility"所述的 BRDS资源管理接口中所描述的操作。更低级别的MRS只能生成针对更多性 能的内部请求,其将通过分级结构而传播到根MRS。注意,给定资源类型的 MRS可以是一个计算环境中、而非另 一个计算环境中的才艮MRS。
为了组成MRS,在每个级别复制资源管理接口,其中,较高级别接口接 收和传播BRDS和最低级别MRS之间的请求,如在网络服务器MRS 493和 网站MRS 401之间。适当时,中间MRS可以过滤出请求。例如,网站MRS 401可进行选择,以通过重新配置现有资源而非向BRDS请求资源,响应来 自较低级别MRS的资源请求。该结构背后的理由是,高级别MRS可以基于 包括请求子资源和其它资源之间的相互依赖性的整个复合的知识,而作出更
明智的决定。
如图15所示,还可以在PMRS结构中表示诸如eWLM的第三方工作负 载管理系统,其中在标题为"SYSTEM AND METHOD FOR ADAPTIVE ADMISSION CONTROL AND RESOURCE MANAGEMENT FOR SERVICE TIME GUARANTEES"、具有案号YOR920020201US1的申请中描述了该 eWLM。两个计算环境1501和1503采用例如服务器1505的资源、以及用于 管理服务器上的工作负载的工作负载管理软件1507。工作负载管理软件通过 PMRS 1509的PRS部分配置并且构建到用于计算环境的复合资源中。PMRS 1509的MRS部分用作能够与工作负载管理软件交互的适配器。该适配器层解释其状态,并在必要时向BRDS219请求更多资源。 MRS的内部结构
由MRS提供的功能性和操作接口是资源特定的。多种函数是可能的。 一般而言,包含在MRS之内的所有函数都与资源管理相关联,其中资源管理 包括配置、操作和维护。例如,MRS可以能够进行监视,其包括从系统中的 其它源收集事件或其它量度、应用诸如平滑或聚合的某函数、以及生成描述 资源的操作状态的量度事件。可以提供一般接口,以表示由MRS产生和消耗 (consume)哪些量度或事件。可以将在MRS之内收集的量度才艮告给例如记账 系统的系统的另一部分或另一MRS。另一种功能性是配置,并且可以提供一 般操作,以获得和设置配置参数,并且改变资源的状态,以优化其行为。第 三种功能性通过接收描述被管理资源的状态的量度或事件、并且确定釆取什 么行为(如果有的话),以保持资源在所需级别操作(例如,如在SLA中指定的 那样),从而提供自我管理性能。实质上存在可以以这种方式启动的两种操作 通过使用适当的配置操作重新配置它或其子资源,改变资源的操作状态,以 及改变资源或子资源的性能。改变子资源的配置可以通过其MRS来进行。改 变资源的性能是更复杂的处理。可能由于无法满足SLA或由于一些计划的将 来负载修改而请求性能增加。在请求上将必须指定所请求的新资源,或者将 必须进行分析以确定瓶颈在哪里,并且将需要什么资源(或配置)以减轻该瓶 颈。 一旦这被执行,就使用实现器服务来获得基础资源的购物列表,并且将 请求发送到BRDS,以获得该资源。 一旦获得资源,就通过该资源句柄调用 构建器。性能下降也可以由SLA引起,并且将不需要实现步骤,这是因为将 返回现有资源。
用于并入新资源或服务的处理和方法
技术领域:
本发明的益处之一是用于对付引入新资源类型和服务的动态系统的装置 的能力。图16示出了在引入新基础资源时所要遵循的处理。该处理在步骤 1601开始,其中确定要引入的资源是否是基础资源。如果该资源是基础资源, 则流程转到步骤1613,其中需要提供用于新基础资源类型的BRLS。然后, 在步骤1615激活BRLS,并且在步骤1617通过BRLS管理性接口使用关于 可用资源实例的信息对其更新(参见交叉引用的申请YOR920030587PCT1)。 接下来,在步骤1619,必须针对新资源提供PRS实现。由于对于系统中的每 一个资源类型必须存在单个PRS,因此在步骤1621激活新PRS。在步骤1623,必须针对新资源提供MRS实现。最后,在步骤1611,需要更新希望支持新
资源的任何组件的逻辑。正是这一步骤允许先前存在的服务利用新定义的资 源。将新资源并入到先前存在的服务中的情形、以及自动化该并入的程度可 以是服务提供方或安装策略的事情。需要更新的组件的示例是现在可以使用
新的基础资源来实现它们表示的资源的复合资源的PRS和MRS。例如,引入 新机器类型(例如,xSeries服务器),可能需要更新网络服务器PRS,以提供 还包括使用新机器类型的可能性的实现。特别地,可能需要更新PRS的实现 器函数和构建函数两者。在系统的其它部分不需要变化。
对于复合资源,该处理从步骤1603继续,其中对复合资源的可能结构、 子资源的列表、如何使它们互相关联、以及特别是如何配置它们以一起工作 进行建模。其结果是步骤1605,使用现有资源的PRS作为其实现和构建复合 资源的逻辑的一部分的、用于新复合资源的PRS中的realizer(实现器)和 builder(构建器)函数的实现。在步骤1607,激活新PRS。接下来,在步骤1609, 针对新复合资源提供MRS实现,其使用现有子资源的MRS作为其管理复合 资源的逻辑的一部分。在步骤1611,该处理随着在必要时更新现有较高级别 复合资源、以利用新复合资源而完成。例如,可以更新网站复合资源,以利 用新安全网络服务器复合资源(假定先前仅仅简单的网络服务器复合资源可 用)。
当服务被建模为复合资源时,用来并入和支持新服务类型的处理类似于 针对复合资源的处理。这些处理允许涉及计算工具操作的服务提供方或其它 代理增加提供给客户的服务。注意,新服务的实现人员可以不同于计算工具 的服务提供方或操作者;可以将新的资源实现作为打包升级提供给服务提供 方,然后,该服务提供方安装它们,以添加新资源。本上下文中的服务提供 方可以表示客户或客户组织外部或内部的实体。后者的示例是公司内的IT部 门。对于超出内部使用的复合资源所需的服务而可能需要的其它步骤,例如, 向公众公布服务,超出了本发明的范围。
用例
在附图中示出了两个用例,以说明供应和管理资源的组件化操作。图17 中的第一用例示出了包括服务器集的计算环境。该集合被建模为存在PRS 1701和MRS 1703的复合资源。MRS 1703是所指定的用于计算环境的根 MRS。通过PRS 1705将每个独立服务器建模为资源。如由MRS 1707举例说明的那样,该集合中存在三个服务器。服务器集MRS接收监视数据1709, 其表示应当增加组的性能。MRS 1703决定添加服务器。它向服务器PRS 1705 发出实现请求1713,以获得用来构建另一服务器的资源列表B和计划。图中 仅仅示出了B。然后,它向BRDS 219发出资源请求1715,以获得资源。在 这种情况下,没有提前预定;BRDS返回资源句柄。然后,MRS 1703利用这 些资源句柄,通过请求1719而调用服务器PRS 1705的构建器。实例化新服 务器MRS 1721。 一旦完成构建请求,MRS 1703就可以用新服务器的资源句 柄更新其状态,并且,另外执行将新服务器添加到该集合所需的任何配置。
图18中的第二用例以网站的性能增加的形式示出了更复杂的资源结构。 根MRS是网站MRS401。此外,监视数据1803到达根MRS,其表示必须增 加网站的性能。MRS401决定添加网络服务器。它向网络服务器PRS 503发 出实现请求1807。网络服务器MRS又调用服务器PRS 507的实现操作1811。 如同在前面用例中一样,获得基础资源的列表,并且向BRDS 219发出请求 1815。返回资源句柄,并且通过构建请求1819和1821将其传递到组件资源 的构建器。服务器和网络服务器构建器分别实例化MRS 1825和1827,以表 示新服务器和网络服务器实例。最后,根MRS401经由通过负载平衡器MRS 405到该负载平衡器的配置请求1831来配置新服务器,以包括新服务器作为 网站的一部分。
这样,本发明包括一种用于在计算工具中供应一个或多个计算环境的方 法,所述方法包括采用该一个或多个计算环境中的每个的描述,该描述引 导执行供应的第一服务的调用,该描述为复合资源定义;以及调用第一服务 以执行供应。
在该方法的一些实施例中,当存在计算环境描述的变化、基础或复合资 源类型集的变化、或者这些变化的任何组合时,重复获得计划或实现的步骤。
在该方法的一些实施例中,当存在选择准则、资源可用性、资源预定状 态的变化、计划的变化、或者这些变化的任何组合时,重复选择计划和请求 与其相关联的资源的步骤。
在本发明的其它实施例中,供应资源服务和管理资源服务到资源类型和 实例的映射可以基于诸如性能、可用性和安全性的考虑而变化。例如,为了 更好的性能,可以使用多个供应资源服务来提供资源类型的实例。接受类型务可以管理资源类型的所有实例。可选地,如果不同的计算环境的组件之间 需要隔离,则单个管理资源服务可以管理计算环境内的资源类型的多个实例。 此外,将供应和管理资源服务划分成两个组件也可以改变。例如,可以将它 们实现成单个服务或一组服务。最后,供应资源服务和管理资源服务本身可
以被实现成单个服务或一组服务。例如,可以将供应资源服务的builder和 realizer函数实例化为独立的服务。本领域的技术人员应当意识到,多个这样
本发明还包括一种装置,其包括将计算环境的描述变换成用于构造资源 集的计划以提供计算环境的供应资源服务集,其中将计算环境表示为复合资 源定义。在该装置的一些实施例中,供应资源服务集根据计划、以及一个或
多个供应资源服务,将资源构造到计算环境中,以使得管理资源服务可用于 管理计算环境。
本发明还包括一种获得计算环境的描述的方法,其中将该描述表示为复 合资源定义,并且将计算环境的描述变换成用于构造资源集以提供计算环境 的计划。在该方法的一些实施例中,它还根据计划将资源构造到计算环境中, 并且使得管理资源服务可用于管理计算环境。
针对本发明描述的变化可以以针对每个具体应用所期望的任何组合来实 现。这样,针对特定应用可能具有特定优点的、在这里描述的特定限制和/或 实施例增强无需用于所有应用。另外,不是所有限制都需要在包括本发明的 一个或多个概念的方法、系统和/或装置中实现。
本发明可以采用硬件、软件或硬件和软件的组合实现。根据本发明的可 视化工具可以以在一个计算机系统中的集中方式、或者以跨越若干互连计算 机系统散布不同单元的分布方式来实现。被适配成用于执行在这里描述的方 法和/或功能的任何种类的计算机系统-或者其它设备都是适当的。硬件和软 件的典型组合可以是具有计算机程序的通用计算机系统,该计算机程序在被 加载和执行时,控制计算机系统,使得其执行在这里描述的方法。本发明还 可以嵌入在计算机程序产品中,其包括允许实现在这里描述的方法的所有特 征,并且-在被装载到计算机系统时-能够执行这些方法。
本上下文中的计算机程序装置或计算机程序包括以任何语言、代码或表 示法的任何表达,其意欲直接地或者在转换成另一语言、代码或表示法,并 且/或者以不同材料形式再现之后,使具有信息处理能力的系统执行特定功
27这样,本发明包括一种产品,该产品包括其中实施有计算机可读程序代 码装置的计算机可用介质。该产品中的计算机可读程序代码装置包括用于使 计算机实施本发明方法的步骤的计算机可读程序代码装置。类似地,可以将 本发明实现为一种计算机程序产品,该计算机程序产品包括其中实施有用于 产生上述功能的计算机可读程序代码装置的计算机可用介质。该计算机程序 产品中的计算机可读程序代码装置包括用于使计算机实施本发明的一个或多 个功能的计算机可读程序代码装置。此外,可以将本发明实现为可由机器读 取的程序存储装置,其有形地实施可由机器执行的指令程序,以执行用于产 生本发明的一个或多个功能的方法步骤。
注意,前文一既述了本发明的一些较贴切目标和实施例。本发明可以用于 多个应用。这样,虽然针对特定布置和方法进行了描述,但是本发明的意图 和概念适合且适用于其它布置和应用。本领域的技术人员应当清楚,可以对 所公开的实施例进行修改而不背离本发明的精神和范围。所述实施例应当被 解释成仅仅说明本发明的一些较突出的特征和应用。通过以不同方式应用所 公开的发明,或以本领域技术人员所公知的方式修改本发明,可以实现其它 有益结果。
权利要求
1. 一种用于在计算工具中供应至少一个计算环境的方法,所述方法包括采用所述至少一个计算环境中的每个的描述,所述描述引导执行所述供应的第一服务的调用,所述描述为复合资源定义;以及调用所述第一服务,以执行所述供应。
2. 如权利要求l所述的方法,其中所述第一服务是供应资源服务,并且 所述方法还包括所述第一服务使管理资源服务管理资源服务可用,以便管 理所述至少一个计算环境中的每个。
3. 如权利要求2所述的方法,其中存在与基础资源的每个类型和复合资 源的每个类型相关联的至少一个供应资源服务。
4. 如权利要求2所述的方法,其中所述供应资源服务提供多个供应实例。
5. 如权利要求2所述的方法,其中调用步骤包括 获得至少一个计划,以满足所述至少一个计算环境;选择特定计划;向所述计算工具请求与所述特定计划相对应的基础资源; 重复选择和请求的步骤,直至获得与所述特定计划相对应的所述基础资 源为止;以及将所述基础资源配置到所述计算环境的实例中。
6. 如权利要求5所述的方法,其中所述基础资源满足从包括下列项目的 请求准则组中获得的请求准则将供应资源的指定时间; 资源可用性的持续时间; 资源特定选"^准则;以及 这些请求准则的任何组合。
7. 如权利要求2所述的方法,其中所述供应资源服务由供应资源服务组 组成,所述供应资源服务组的每个成员与所述复合资源描述中的资源的特定 类型相关联。
8. 如权利要求7所述的方法,其中调用步骤还包括根据所述复合资源 描述,通过递归采用所述组的每个成员,采用用于计算环境的所述供应资源服务。
9. 如权利要求2所述的方法,其中每个基础资源具有基础资源实例,并 且其中存在与每个基础资源实例相关联的至少一个管理资源服务。
10. 如权利要求2所述的方法,其中每个复合资源具有复合资源实例, 并且其中存在与每个复合资源实例相关联的至少一个管理资源服务。
11. 如权利要求2所述的方法,其中所述管理资源服务由管理资源服务组组成,所述管理资源服务组的每个成员与所述复合资源描述中的资源的特 定实例相关联。
12. 如权利要求5所述的方法,其中所述供应资源服务由供应资源服务 组组成,所述供应资源服务组的每个成员与所述复合资源描述中的资源的特 定类型相关联;以及其中调用步骤还包括根据所述复合资源描述,通过递归采用所述组的 每个成员,采用用于计算环境的所述供应资源服务;以及其中获得所述至少一个计划的步骤包括递归获得用于每个子资源的至 少一个计划,并且组合该结果;以及其中将所述基础资源配置到所述计算环境的实例中的步骤包括递归配 置与每个子资源相对应的基础资源,并且配置该结果。
13. 如权利要求5所述的方法,其中获得步骤还包括指定限制所获得的 计划的至少一个条件。
14. 如权利要求5所述的方法,其中选择所述计划的步骤满足从包括下 列项目的选择准则组中获得的选择准则成本;性能;以及所满足的首选项的数目;以及 这些选择准则的任何组合。
15. 如权利要求5所述的方法,还包括将对基础资源的预定变换成所分 配的基础资源。
16. 如权利要求5所述的方法,其中根据从包括下列项目的重复准则组 中获得的重复准则而重复获得步骤计算环境的描述的变化; 基础资源类型集的变化;复合资源类型集的变化;以及这些变化的任何组合。
17. 如权利要求5所述的方法,其中根据从包括下列项目的重复准则组 中获得的重复准则而重复选择和请求步骤选择准则的变化; 资源可用性的变化; 资源预定状态的变化; 所述至少一个计划的变化;以及 这些变化的任何组合。
18. 如权利要求15所述的方法,还包括循环重复和变换的步骤,直至 获得所述基础资源为止。
19. 如权利要求5所述的方法,其中通过至少一个管理资源服务,调用 获得、选择、请求和配置的步骤至少一次,以将资源添加到所述计算环境。
20. —种产品,包括其中实施有计算机可读程序代码装置的计算机可用 介质,该计算机可读程序代码装置用于致使在计算工具中供应至少一个计算 环境,所述产品中的计算机可读程序代码装置包括用于使计算机实施如权利 要求1所述的步骤的计算机可读程序代码装置。
21. —种可由机器读取的程序存储装置,有形地实施可由机器执行的指 令的程序,以执行用于在计算工具中提供至少一个计算环境的方法步骤,所 述方法步骤包括如权利要求1所述的步骤。
22. —种方法,包括将基础资源类型添加到操作计算工具,所述添加步 骤包括提供基础资源库服务,以表示所述基础资源类型的任何实例;将所述基础资源类型的任何实例添加到基础资源库服务;开发用于所述基础资源类型的供应资源服务的实现;激活所述供应资源服务;以及创建用于所述基础资源类型的管理资源服务的实现。
23. 如权利要求22所述的方法,还包括更新任何复合资源类型的任何供应资源服务,以使用用于所述基础资源 类型的所述供应资源服务;以及更新任何复合资源类型的任何管理资源服务,以使用用于所述基础资源类型的所述管理资源服务。
24. 如权利要求22所述的方法,其中由服务提供方执行添加基础资源类 型的步骤,以增加向所述服务提供方的至少一个客户的服务提供。
25. —种方法,包括将复合资源类型添加到操作计算工具,所述添加步 骤包括创建用于所述复合资源类型的供应资源服务的实现,所述供应资源服务 使用用于所述复合资源类型的子资源的供应资源服务; 激活所述供应资源服务;以及开发用于所述复合资源类型的管理资源服务的实现,所述管理资源服务 使用用于所述复合资源类型的子资源的管理资源服务。
26. 如权利要求25所述的方法,还包括更新用于复合资源的任何供应资源服务,以使用用于所述复合资源类型 的所述供应资源服务;以及更新用于复合资源的任何管理资源服务,以使用用于所述复合资源类型 的所述管理资源服务。
27. 如权利要求25所述的方法,其中由服务提供方执行添加复合资源类 型的步骤,以增加向所述服务提供方的至少一个客户的服务提供。
28. —种方法,包括将用于计算环境的至少一个第三方工作负载管理系 统适配到计算工具,所述适配步骤包括开发管理资源服务,所述管理资源服务解释所述至少一个第三方工作负 载管理系统的状态;以及根据所述至少一个第三方工作负载管理系统的状态的指示,修改组成所 述计算环境的基础资源集。
29. 如权利要求2所述的方法,还包括从所述至少一个计算环境的至少一个计算环境接收用于从所述至少一个 基础资源返回至少 一个基础资源的事件;从所述至少一个计算环境的至少一个计算环境,反配置所述至少一个基 础资源;将所述至少一个基础资源返回到所述计算工具;以及 使所述至少一个基础资源可用于分配给另 一计算环境。
30. 如权利要求9所述的方法,其中在单个计算环境之内,对于资源类型的所有实例存在 一 个管理资源服务。
31. 如权利要求1所述的方法,其中所述描述还包括有关所述复合资源 定义的至少一个条件。
32. 如权利要求1所述的方法,还包括接收对所述至少一个计算环境中的至少一个的客户请求。
33. 如权利要求1所述的方法,其中所述复合资源定义是资源的递归组 合,所述组合是从包括下列项目的组合组中获得的组合至少一个基础资源; 至少一个其它复合资源;以及 基础资源和复合资源的任何组合。
34. 如权利要求11所述的方法,其中所述管理资源服务釆用可用于所述 管理资源服务组的特定成员的至少一个操作,由所述管理资源服务组的至少 一个成员执行所述操作,所述至少一个操作从包括下列项目的操作组中获得基于来自所述计算环境的监视数据,递送至少一个量度; 基于来自所述计算环境的监视数据,递送至少一个事件; 修改所述计算环境的状态; 修改所述计算环境的至少 一个资源;响应于至少一个特定量度,调用至少一个特定操作以修改计算环境;以及响应于至少一个特定事件,调用至少一个特定操作以修改计算环境。
35. —种产品,包括其中实施有计算机可读程序代码装置的计算机可用 介质,该计算机可读程序代码装置用于致使将基本资源类型添加到操作计算 工具,所述产品中的计算机可读程序代码装置包括用于使计算机实施如权利 要求1所述的步骤的计算机可读程序代码装置。
36. —种用于在计算工具中供应至少一个计算环境的装置,所述装置包括第一处理器^t块,用来采用所述至少一个计算环境中的每个的描述,所 述描述引导执行所述供应的第一服务的调用,所述描述为复合资源定义;以 及第二处理器模块,用来调用所述第一服务以执行所述供应。
37. 如权利要求36所述的装置,其中所述第二处理器模块使管理资源服务可用,以管理所述至少一个计算环境中的每个。
38. —种计算机程序产品,包括其中实施有计算机可读程序代码装置的 计算机可用介质,该计算机可读程序代码装置用于致使在计算工具中供应至 少一个计算环境,所述计算机程序产品中的计算机可读程序代码装置包括用 于使计算机实施如权利要求36所述的功能的计算机可读程序代码装置。
39. —种可由机器读取的程序存储装置,有形地实施可由机器执行的指 令的程序,以执行用于将基本资源类型添加到操作计算工具的方法步骤,所 述方法步骤包括如权利要求1所述的步骤。
40. —种产品,包括其中实施有计算机可读程序代码装置的计算机可用 介质,该计算机可读程序代码装置用于致使将复合资源类型添加到操作计算 工具,所述产品中的计算机可读程序代码装置包括用于使计算机实施如权利 要求1所述的步骤的计算机可读程序代码装置。
41. 一种可由机器读取的程序存储装置,有形地实施可由机器执行的指 令的程序,以执行用于将复合资源类型添加到操作计算工具的方法步骤,所 述方法步骤包括如权利要求1所述的步骤。
42. —种装置,包括多个供应资源服务,用于将计算环境的描述变换成用于构造资源集以提 供所述计算环境的计划,其中将计算环境表示为复合资源定义。
43. 如权利要求42所述的装置,其中所述多个供应资源服务根据所述计 划、以及一个或多个供应资源服务,将所述资源构建到所述计算环境中,以 使管理资源服务可用,以便管理计算环境。
44. 一种方法,包4舌获得计算环境的描述,其中将所述描述表示为复合资源定义;以及 将计算环境的描述变换成用于构造资源集以提供所述计算环境的计划。
45. 如权利要求44所述的方法,还包括 根据所述计划将所述资源构造到所述计算环境中;以及 使管理资源服务管理资源服务可用,以管理计算环境。
46. —种产品,包括其中实施有计算机可读程序代码装置的计算机可用 介质,该计算机可读程序代码装置用于获得计算环境的描述,所述产品中的 计算机可读程序代码装置包括用于使计算机实施如权利要求44所述的步骤的计算机可读程序代码装置。
47. —种可由机器读取的程序存储装置,有形地实施可由机器执行的指 令的程序,以执行用于获得计算环境的描述的方法步骤,所述方法步骤包括 如权利要求44所述的步骤。
48. —种产品,包括其中实施有计算机可读程序代码装置的计算机可用 介质,该计算机可读程序代码装置用于致使将用于计算环境的至少一个第三 方工作负载管理系统适配到计算工具,所述产品中的计算机可读程序代码装置包括用于使计算机实施如权利要求28所述的步骤的计算机可读程序代码装置。
49. 一种可由机器读取的程序存储装置,有形地实施可由机器执行的指 令的程序,以执行用于将用于计算环境的至少一个第三方工作负载管理系统 适配到计算工具的方法步骤,所述方法步骤包括如权利要求28所述的步骤。
50. —种计算机程序产品,包括其中实施有计算机可读程序代码装置的 计算机可用介质,该计算机可读程序代码装置用于致使开发计划,所述计算 机程序产品中的计算机可读程序代码装置包括用于使计算机实施如权利要求 42所述的功能的计算机可读程序代码装置。
51. 如权利要求1所述的方法,还包括复合资源的供应和管理资源服 务使用子资源的供应和管理资源服务来创建和管理子资源的实例。
全文摘要
本发明提供用于自动供应和管理计算工具中的资源的系统、方法和装置。其自动化过程基于资源模型,其允许将资源特定供应和管理任务封装到组件中,以便重用。将这些组件组装到更复杂的结构和最终的计算服务中。本发明提供了一种用于在给定高级规范的情况下从资源集构造计算服务的方法。一旦被构造,服务就包括提供管理功能的组件,其可以允许修改其底层资源集。
文档编号G06F15/173GK101427220SQ200480041192
公开日2009年5月6日 申请日期2004年1月30日 优先权日2004年1月30日
发明者塔马·艾拉姆, 格尔尼·D·亨特, 桑德拉·D·米勒, 莉莉·B·马默特 申请人:国际商业机器公司