CN103516781A - 用于实例化it服务的资源的方法和系统 - Google Patents

用于实例化it服务的资源的方法和系统 Download PDF

Info

Publication number
CN103516781A
CN103516781A CN201310247606.0A CN201310247606A CN103516781A CN 103516781 A CN103516781 A CN 103516781A CN 201310247606 A CN201310247606 A CN 201310247606A CN 103516781 A CN103516781 A CN 103516781A
Authority
CN
China
Prior art keywords
resource
explorer
service
node
api
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310247606.0A
Other languages
English (en)
Other versions
CN103516781B (zh
Inventor
J·E·阿维
T·斯帕齐尔
I·施韦尔特尔
S·莫瑟
G·布赖特
D·B·林德奎斯特
F·德罗斯
H·A·勒
N·科克利克延
M·丘多罗维斯基
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103516781A publication Critical patent/CN103516781A/zh
Application granted granted Critical
Publication of CN103516781B publication Critical patent/CN103516781B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/022Multivendor or multi-standard integration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/4492Inheritance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/046Network management architectures or arrangements comprising network management agents or mobile agents therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5048Automatic or semi-automatic definitions, e.g. definition templates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5051Service on demand, e.g. definition and deployment of services in real time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5629Admission control
    • H04L2012/5631Resource management and allocation

Abstract

本发明涉及一种用于实例化IT服务(227-231)的一个或多个资源(RI-RIV)的计算机实施的方法,该方法包括:分析(101)服务模型(211),所述服务模型包括代表资源并且指示资源类型的节点(N1-N5,514-523),每个所述节点包括通用API;对于每个所述节点:确定(103)由所述节点指示的资源类型;评估(104)服务提供商目录;选择(105)资源管理器其中之一;向所选择的资源管理器发送(106)请求;从所选择的资源管理器接收(107)所请求的资源-管理器特有API的描述;由所述资源-管理器-特有API的资源-管理器特有方法来覆盖(108)通用API的抽象方法;以及执行(109)被覆盖的抽象方法,以用于实例化资源。

Description

用于实例化IT服务的资源的方法和系统
技术领域
本公开涉及数据处理的领域。更具体地,本公开涉及实例化(instantiate)IT服务的资源。
背景技术
分布式计算系统越来越多地被用于支持各种领域的商业应用和技术应用。分布式计算系统包括例如在B2B或B2C服务的领域中,一起向各种客户端提供IT服务的多种基于硬件和/或基于软件的资源。例如在云计算范围中采用了分布式计算系统,其中在云计算中,应用程序、虚拟机、存储能力和/或处理能力作为服务被提供给多个客户端。在某些使用情形场景中,分布式计算系统经由例如因特网的网络向多个客户端提供服务,藉此服务基于多种冗余的基于软件和/或基于硬件的资源来确保高效和可靠的服务供给。
然而,部署和管理这种系统是一种组织性挑战,因为资源可能具有多个不同资源类型(应用服务器、存储介质、联网的装置、应用、处理单元),并且可以由不同制造商或软件开发商提供(并且因而可能仅仅经由制造商-特有/专有API而可寻址)。
结果,旨在将资源实例分配或重新分配到特定IT服务的分布式计算系统的运营商必须为负责实例化和/或将资源分配IT服务的模块提供专有API的所有细节,从而使得所述模块能够与各自使用的资源管理器通信。因而,在建模或构建新IT服务时,所述模块必须“知晓”多个不同资源管理器的协议和接口。换言之,用于实例化和分配资源的模块以及各自采用的资源管理器彼此紧密地耦合,并且不可能在操作中向IT服务动态地添加新资源类型的资源管理器或者采用不同的专有API。
发明内容
本发明各实施例的目的是提供一种改进的用于实例化IT服务的资源的计算机实施的方法、存储介质以及计算机系统。
在另一方面,本发明各实施例的目的是提供一种改进的用于将实例化资源(此处也称为′资源实例′)分配给IT服务的计算机实施的方法、存储介质和计算机系统。
该目的由独立权利要求的特征实现。有利实施例在从属权利要求中给出。如果没有另外明确地指出,在下文中描述的实施例的特征可以彼此自由组合。
此处使用的‘资源’是以服务的形式向一个或多个客户端处理装置提供一种功能性的某种东西,该功能性可以单独地或者与其它资源的功能性相结合来提供。资源可以是硬件部件,例如网卡、路由器、处理单元、非瞬态存储介质、瞬态存储介质(例如RAM)等。资源可以是软件部件、音频或视频文件的集合、应用程序、网络服务器、应用服务器等。资源也可以基于硬件和软件部件的混合,例如包括基于软件或固件的路由功能性的网络装置。资源也可以是虚拟机。
此处使用的‘资源类型’指定特定资源所属于的类别,其中所述类别优选地不依赖于资源的任何特定制造商、供应商或者经销商。例如,资源类型‘存储介质’可涵盖SATA磁盘、SAS磁盘和其它存储类型,资源类型‘应用服务器’可涵盖诸如WebSphere、Jboss、GlassFish等的应用服务器。例如并且非限制性地,资源类型可以是下述其中之一:‘应用程序’、‘应用服务器’、‘磁盘镜像’、‘虚拟机’、‘处理单元’、‘存储介质’、‘存储器’以及类似物。
此处使用的‘资源管理器’为适于提供特定资源类型的资源的程序模块。典型地,资源管理器由资源的供应商、经销商或开发商结合各自管理的资源提供。根据一些实施例,资源管理器为由资源管理器管理的资源的整体部分。此处使用的表述‘资源管理器提供资源’应理解为资源管理器可操作,以实例化所述资源,并且通过控制由所述资源实例执行的功能和/或通过根据需要删除所述资源实例而管理所述资源。对于可以从特定资源创建多个实例的情形(例如对于充当资源的应用程序或应用服务器,情况会是如此),所述多个实例的管理也应被考虑为归入表述‘管理资源’之内。
此处使用的‘IT服务’或‘服务’为由一组一个或多个资源提供的一组一个或更多功能性。IT服务可以经由例如因特网的网络提供给一个或多个客户端计算机。服务也可以基于不同类型的多种资源的混合,例如托管应用服务器(第二资源)的存储介质(第一资源),该应用服务器将应用程序(第三资源)作为服务提供给一个或多个远程客户端装置。根据各实施例,IT服务借助云计算环境被提供。
此处使用的‘IT服务管理系统’涉及数据处理系统,其可操作以将一个或多个IT服务的一个或多个实例提供给一个或多个服务客户,例如业务伙伴、终端用户、被许可方等的客户端计算机。IT服务管理系统可以提供一些接口以用于请求特定IT服务,并且可以提供一些装置以用于向IT服务管理系统添加和移除资源管理器和相应资源,该资源被用于构成并且提供(多个)IT服务。
此处使用的‘管理引擎’是IT服务管理系统的一个程序逻辑(例如一个固件、硬件、程序模块或者应用程序),其适于提供、管理由IT服务管理系统的一个或多个资源管理器提供的资源和/或用于向一个或多个IT服务分配所述资源。
此处使用的‘服务模型’或者‘服务模板’为一个或多个资源以及它们彼此之间相互关系的规范,所述资源共同地提供IT服务,该IT服务的结构在所述服务模型中被指定。换言之,服务模型指定IT服务的结构和构成。服务模型中的每个资源规范可以被注释有相应资源类型、资源类型特有方法和参数,并且注释有所述资源相对于一个或多个其它资源的一个或多个关系。在服务模型中,资源可以被表示为图的节点并且资源之间的关系可以被表示为边。根据各实施例,每个节点包括通用API,该通用API包括抽象方法和参数,所述抽象方法和参数仅仅取决于资源类型并且不取决于提供所述资源类型的资源的任何特定资源管理器。因而,服务模型包括资源的数目、类型和相互关系的通用规范,所述资源的实例共同地构成该IT服务。所述通用规范基于节点的通用API。根据各实施例,服务模型为文件,例如XML文件。
此处使用的‘节点’或‘节点模板’是服务模型的部分,该服务模型的部分代表资源并且包括在实例化所述资源时将由管理引擎评估的数据。服务模型还可以包括‘群组模板’,即指示服务模型的一个或多个节点属于一节点群组的服务模型的部分。节点群组可以被注释有或者以其它方式被指定一个或多个群组规则。
此处使用的‘通用API’包括抽象方法和参数,所述抽象方法和参数仅仅取决于资源类型并且不取决于提供所述资源类型的资源的任何特定资源管理器。代表资源的服务模型中的每个节点可以依据通用API被注释有方法和参数。根据各实施例,通用数据格式依据在http://www.oasis-open.org/committees/tosca/中指定的TOSCA标准来规定。
此处使用的通用API的‘参数’可以指通用API的抽象方法的输入或者输出参数,和/或可以指节点代表资源的‘属性’或者‘特性’。
此处使用的‘服务提供商目录’为存储了资源管理器的列表的数据库,例如关系数据库、文件、文件目录等,所述资源管理器当前属于IT服务管理系统并且可操作以实例化和/或管理特定资源类型的资源。资源实例目录可包括每个所列资源管理器的地址,从而允许将针对所述资源管理器的资源-管理器特有API的描述的请求发送至所述地址。
此处使用的‘资源实例目录’为数据库,例如关系数据库、文件、文件目录等,其存储了当前存在于IT服务管理系统中的资源实例的列表。针对每个所述实例,资源实例目录可以另外包括所述实例的资源类型的以及所述实例的一个或多个参数值的和/或当前托管所述资源实例的运行时间环境的参数值的指示。
此处使用的‘资源-管理器-特有API’包括具体方法和参数,其由特定资源管理器提供并且允许例如管理引擎的其它程序与所述资源管理器交互以用于实例化和/或管理由所述资源管理器提供的资源。根据各实施例,资源-管理器-特有API可以经由一个或多个传输协议被访问。
此处使用的‘覆盖方法’涉及用提供所述资源的资源管理器的资源管理器特有API的相应具体方法的实例,替代资源的通用API的抽象方法的实例的过程。‘相应’具体方法是其名称和输入参数被映射到所述抽象方法的相应名称和参数的方法。根据各实施例,所述映射由管理引擎在评估资源-管理器特有API的描述时动态地执行。被覆盖的方法也可以返回或接收由被覆盖方法返回或接收的参数类型的子类型。
此处使用的‘抽象方法’是这样的方法,其被声明但没有实施或者实施不足以执行所述方法的功能。
此处使用的‘过程模型’为任何如下步骤的时间顺序的规范,所述步骤将被执行以便依据所述IT服务的服务模型实例化IT服务。所述步骤可包括特定类型的资源的实例化,特定资源实例的抽象方法的调用,用于选择多个可能处理分支其中之一的条件表述的评估等。根据各实施例,除了代表资源的节点的图之外,服务模型包括过程模型。根据其它实施例,在所述图的拓扑中固有地指定将被执行用于实例化服务的步骤的时间顺序。
此处使用的‘关系类型’为连接服务模型的两个节点(并且因而也连接由被连接的节点代表的两个资源)的关系的类型。关系类型可以是定向或非定向。根据各实施例,连接两个节点的每个边可能已经被指定一个或多个关系类型,其中一个关系类型是有向的,并且指示实例化构成服务模型IT服务的资源的时间顺序。
此处使用的管理引擎和用于实例化资源和/或用于管理或者删除实例化资源的资源管理器的互操作意味着代表特定资源的节点的通用API使得管理引擎能够调用所述通用API的抽象函数以用于启动资源和/或用于控制或者删除所启动的资源。相应抽象方法由管理引擎调用的事实被通信传输给资源管理器并且触发如下步骤的执行,所述步骤使得与资源管理器互操作的管理引擎能够执行相应具体方法,由此覆盖所调用的抽象方法。根据各实施例,具体方法的执行经由资源-管理器特有API由调用相应具体方法的管理引擎触发。
此处使用的‘传输协议’为如下任何类型的通信标准和/或通信协议,所述通信标准和/或通信协议允许管理引擎与资源管理器交换数据,以用于与资源管理器互操作,从而执行资源管理器特有API的相应具体方法。
此处使用的‘规则’涵盖任何计算机可解释的表述,其包括两个部分:第一部分包括关于一个或多个参数值的待评估的一个或多个条件。规则的第二部分包括指令,其指定依照所述评估的结果将被执行的一个或多个函数。
在一个方面中,本发明涉及一种用于实例化IT服务的一个或多个资源的计算机实施的方法。每个资源为一个或多个资源类型其中之一。每个资源由IT服务管理系统的一个或多个资源管理器其中之一提供。该方法包括:
-通过管理引擎分析所述IT服务的服务模型,该服务模型包括分别代表资源其中之一并且分别指示所述所代表资源的资源类型的节点,每个节点包括通用API,该通用API对于资源管理器中任何特定的一个并非特有的,并且提供用于实例化由相应节点代表的资源的至少一个抽象方法;
-对于每个节点,在IT服务管理系统的运行时间,由该管理引擎执行:
-确定由所述节点指示的所述一个或多个资源类型其中之一;
-评估服务提供商目录,该服务提供商目录指示所述资源管理器中分别可操作以提供给定资源类型的资源的一个或多个资源管理器,用于确定所述资源管理器中分别可操作以提供具有所确定资源类型的资源的一个或多个资源管理器,并且用于确定所确定的所述一个或多个资源管理器的地址;
-选择所述一个或多个资源管理器其中之一;
-向所选择的资源管理器的地址发送请求,该请求为针对所述资源管理器的资源-管理器-特有API的描述的请求;
-从所选择的资源管理器接收所请求的描述;
-由用于实例化所述资源的资源-管理器-特有API的资源-管理器特有方法来覆盖所述至少一个抽象方法,所述资源-管理器特有方法在所接收的描述中被指定;以及
-执行被覆盖的所述至少一个抽象方法以用于实例化由所述节点代表的资源。
所述特征是有利的,因为它们可以允许在IT服务管理系统的运行时间将通用API的抽象方法转变为各自使用的资源管理器的具体方法。因而,也可能动态地选择将用于实例化资源的资源管理器,以用于在IT服务管理系统的运行时间实例化IT服务。因而,提供了高度的灵活性,因为管理引擎和多个资源管理器仅仅是松散耦合的。调换特定资源管理器因而不需要修改服务模型,因为服务模型仅仅包括通用API。例如如果由第一供应商提供并且具有第一专有API的第一资源管理器被由另一供应商提供并且具有第二专有API的第二资源管理器取代,以用于实例化与由第一资源管理器提供的相同的资源类型,则在服务模型中不需要引入任何变化。对于服务管理系统包括提供相同类型的资源的多个不同资源管理器的情形,有可能动态地决定哪个资源管理器应被用于实例化相应资源。例如如果第一和第二资源管理器均分别提供资源类型‘应用服务器’,第一资源管理器提供JBoss应用服务器而第二资源管理器提供WebSphere应用服务器,则有可能在IT服务管理系统的运行时间,例如基于当前负荷特性,决定选择哪个资源管理器用于实例化资源。因而,本发明各实施例提供高度通用的、灵活的IT服务管理系统和方法,其允许将管理引擎从相应资源管理器的任何专有API解耦合,由此使得IT服务管理系统的可操作性和可维护性变得容易。
根据各实施例,选择所述一个资源可以借助如下管理规则来实施,该管理规则可操作以在IT服务管理系统的运行时间,评估某些参数值,以用于确定应当选择可操作以实例化所请求的资源的资源管理器中的哪个。所述参数值可以指示资源管理器的当前负荷特性、特定资源管理器的预定义偏好、存在由特定资源管理器提供的一个或多个其它资源实例等。
根据各实施例,节点为图的节点。分析服务模型包括依据所述图的拓扑,遍历用于实例化由所述图的节点代表的资源的图。根据各实施例,遍历是在叶节点开始。所述特征是有利的,因为服务可以借助所述服务模型按照完全通用方式被指定。对于新资源管理器被添加到IT服务管理系统或者替代提供相同资源类型的另一资源管理器的情形,该服务模型不必被修改,因为它不包括资源管理器特有API的任何元素。此外,将资源表示为图的节点允许指定连接两个资源的一个或多个关系类型,例如指示一个资源需要在另一资源之前被实例化的关系类型。例如,首先,一个应用服务器资源需要在将被部署于所述应用服务器中并且充当资源类型‘应用程序’的应用程序能够被实例化之前被实例化。
根据各实施例,服务模型指示待实例化的资源的时间顺序。所述顺序借助包括所述节点的图的拓扑被指定,或者借助服务模型中包含的过程模型被指定。所述特征是有利的,因为依据图的拓扑遍历图的管理引擎可以按照由所述节点代表的相应资源需要被实例化的顺序而自动地检索节点。
根据各实施例,图的每对相连节点的节点借助一个或多个边彼此连接。每条边代表一个或多个关系类型其中之一。至少一个关系类型‘取决于’代表由源节点代表的第一资源和由目的节点代表的第二资源之间的依存性。对于第二资源‘取决于’第一资源的情形,例如由叶节点代表的第一资源需要在第二资源之前被实例化。代表所述关系类型的边可以被定向以用于提供有向图拓扑,该有向图拓扑根据待实例化的资源确定时间顺序。根据一些实施例,至少一些边代表另一关系类型‘托管于’,所述关系类型指定一对资源的哪个资源充当另一资源的主机(host)。所述种类的关系类型可以使得管理引擎能够在由所述关系类型指定为‘主机’的另一资源处实例化资源时自动地部署该资源。
根据各实施例,该方法还包括在IT服务管理系统的运行时间:将另一资源管理器添加到IT服务管理系统,另一资源管理器适于提供另一资源类型的资源;以及作为所述添加的结果,将另一条目添加到服务提供商目录,该另一条目指示另一资源管理器、另一资源类型以及该另一资源管理器的地址。该另一条目可以被完全自动地、手动地或者半自动地添加到服务提供商目录。可以例如通过部署.war文件而将该另一资源管理器添加到IT服务管理系统。所述特征会是有利的,因为操作员不必将资源-管理器的地址手动地输入到服务提供商目录中以用于使得管理引擎能够与资源管理器互操作。根据各实施例,添加另一条目依据生命周期协作开放服务(OSLC)技术来执行。
根据各实施例,节点包括至少第一和第二节点。第一节点代表第一资源类型的第一资源。第二节点代表第二资源类型的第二资源。第一和第二资源类型彼此不同,并且分别从包括下述各项的群组中按照任何组合来选择:用于提供数据存储即服务(StaaS)的数据存储资源类型,其中数据存储资源类型可涵盖例如SAAS存储介质、SAS存储介质、闪速存储介质等;用于提供软件即服务(SaaS)的应用程序资源类型,其中应用程序资源类型可涵盖任何类型的程序或者软件模块;Saas资源的示例为Google Docs和Apple iWork.com;用于提供基础架构即服务(IaaS)的计算资源类型,其中计算资源类型可涵盖例如‘虚拟机(VM)’、‘处理单元’等;用于提供网络即服务(NaaS)的联网部件资源类型,其可涵盖例如路由器;以及用于提供平台即服务(PaaS)的中间件部件资源类型。
根据各实施例,通过执行至少一个抽象方法来实例化资源是通过该管理引擎与所选择的资源管理器互操作来执行的。互操作经由所获得的资源-管理器-特有API被执行。因而,使得管理引擎能够充分利用由用于实例化和控制资源的资源管理器所提供的功能性,但是虽然如此管理引擎并非与管理引擎是紧耦合。
根据各实施例,通用API包括用于控制和/或删除由所述节点代表的资源的实例的另外抽象方法。该方法还包括:由资源-管理器-特有API的相应资源-管理器特有方法覆盖所述另外抽象方法;以及由管理引擎执行被重写的通用API,由此管理引擎与所选择的资源管理器互操作,其中互操作被执行以用于控制和/或删除所述实例。互操作可包括依据该描述经由资源-管理器特有API调用资源-管理器特有方法。
根据各实施例,从资源管理器其中之一接收的描述包括用于分别覆盖通用API的抽象方法的一个或多个具体方法,并且包括一个或多个传输协议的规范,所述传输协议可以由管理引擎动态地选择和使用以用于与所述一个资源管理器交互。
根据各实施例,该方法还包括:通过管理引擎评估所接收的描述,以用于确定该管理引擎与所确定资源管理器进行互操作将使用的数据传输协议;和/或确定该管理引擎与所确定资源管理器进行互操作将使用的一个或多个API方法和API参数。互操作借助所确定传输协议和/或借助所确定API方法和API参数被执行。所述特征会是有利的,因为例如远程过程调用等的传输协议可以在选择资源管理器时被动态地确定。因而,管理引擎和资源管理器不必关于特定的预定义且硬连线传输协议而“达成一致”,而可以依照所选择的资源管理器/所接收的资源管理器特有API的描述,而动态地选择适当传输协议。通过经由该描述而动态地确定资源管理器特有API,使得管理引擎能够直接调用资源管理器特有API的具体方法。根据一些实施例,资源管理器特有API包括比用于相应资源类型的服务模型中存在的抽象方法更加具体的方法,但是仅仅被成功地映射到相应通用方法的那些具体方法可以由管理引擎执行。
根据各实施例,评估在数据系管理统的运行时间被执行,以用于动态地确定该管理引擎与资源管理器进行交互将使用的传输协议。因而,抽象方法不是不变地绑定到特定传输协议,即,不是绑定到任何REST、SOAP、RPC协议等。在已经选择用于实例化所请求的资源类型的具体资源管理器之后,通用API的任何抽象方法的绑定被动态地执行。传输协议的所述松散的动态绑定可以大幅提高系统的灵活性。
根据各实施例,IT服务管理系统包括至少第一资源管理器和第二资源管理器。第一资源管理器包括第一资源-管理器特有API并且可操作以提供第一资源类型的第一资源。第二资源管理器包括第二资源-管理器特有API并且可操作以提供第二资源类型的第二资源。该方法还包括:
-借助第一组API方法和API参数和/或借助第一数据传输协议,经由第一资源管理器特有API来实例化至少第一资源;以及
-借助第二组API方法和API参数和/或借助第二数据传输协议,经由第二资源管理器特有API来实例化至少第二资源。
在另一方面,本发明涉及一种计算机可读存储介质,其包括程序指令,该所述程序指令在由处理器执行时,致使该处理器执行根据上述实施例其中任何一个的计算机实施的方法。
在另一方面中,本发明涉及一种用于实例化资源的计算机实施的方法。该计算机系统包括资源管理器,该资源管理器适于:
-在将资源管理器部署到IT服务管理系统时,向IT服务管理系统的服务提供商目录添加条目,另一条目指示资源管理器、由所述资源管理器提供的资源类型以及该资源管理器的地址;所述添加可以完全自动地、手动地或者半自动地执行。
-在收到来自IT服务管理系统的管理引擎的请求时,将资源管理器-特有API的描述发送给发出请求的管理引擎,该资源管理器-特有API包括用于实例化所述资源的至少一个资源-管理器特有方法,其中该条目使得访问服务提供商目录的管理引擎能够在数据处理系统的运行时间,将该请求发送给资源管理器的地址;以及用于
-借助资源管理器-特有API与管理引擎互操作以用于实例化资源。
所述特征会是有利的,因为另一资源管理器可以自动地或者用户交互地将自己登记在服务提供商目录处。因而,由另一资源管理器的地址的手动输入造成的任何延迟和错误被防止,并且提供了一种IT服务管理系统,其允许使用任何资源管理器作为IT服务管理系统的动态地可移除和/或可添加插件模块。该资源管理器可以适于接收来自管理引擎的请求,并且响应于该请求,而发送其资源-管理器-特有API的描述。
在另一方面,本发明涉及一种计算机可读存储介质,其包括程序指令,所述程序指令在由处理器执行时致使处理器执行根据上述实施例其中任一项的由资源管理器执行的计算机实施的方法。
在另一方面,本发明涉及一种计算机系统,其包括用于实例化IT服务的一个或多个资源的管理引擎。每个资源为一个或多个资源类型其中之一。每个资源由IT服务管理系统的一个或多个资源管理器其中之一提供。该管理引擎适于:
-分析所述IT服务的服务模型,该服务模型包括分别代表资源其中之一并且分别指示所代表的所述资源的资源类型的节点,每个节点包括通用API,该通用API并非对于任何特定一个资源管理器是特有的,并且提供用于实例化由相应节点代表的资源的至少一个抽象方法;
对于每个节点,在IT服务管理系统的运行时间,执行:
-确定由所述节点指示的所述一个或多个资源类型其中之一;
-评估服务提供商目录,该服务提供商目录指示所述资源管理器中分别可操作以提供给定资源类型的资源的一个或多个资源管理器,用于确定所述资源管理器中分别可操作以提供具有所确定资源类型的资源的一个或多个资源管理器,并且用于确定所确定的所述一个或多个资源管理器中每个的地址;
-选择所述一个或多个资源管理器其中之一;
-向所选择的资源管理器的地址发送请求,该请求为针对所述资源管理器的资源-管理器-特有API的描述的请求;
-从所选择的资源管理器接收所请求的描述;
-由用于实例化所述资源的资源-管理器-特有API的资源-管理器特有方法覆盖所述至少一个抽象方法,所述资源-管理器特有方法在所接收的描述中被指定;以及
-执行被覆盖的至少一个抽象方法以用于实例化由所述节点代表的资源。
根据各实施例,该计算机系统还包括所述一个或多个资源管理器,所述服务提供商目录,以及用于在将另一资源管理器部署到IT服务管理系统时将另一条目添加到服务提供商目录的装置,由此所述添加可以自动地、手动地(例如由系统的操作员)或者半自动地执行。该另一条目指示另一资源管理器、由所述另一资源管理器提供的资源类型以及所述另一资源管理器的地址。该另一条目使得访问服务提供商目录的管理引擎能够在IT服务管理系统的运行时间将该请求发送给该另一资源管理器。
在另一方面,本发明涉及一种计算机系统,其包括资源管理器,该资源管理器适于执行在上文针对本发明中与资源管理器有关的各实施例所描述的方法。
根据各实施例,该资源管理器特有API另外由管理引擎使用以用于在与资源管理器互操作时,管理和删除资源实例。
根据各实施例,IT服务由一个资源实例或者多个资源实例提供。对于IT服务由多个资源实例提供的情形,所述实例可以是相同或不同的资源类型。
根据各实施例,由所述资源管理器其中至少一个使用的数据传输协议为REST网络服务协议、SOAP协议、SNMP协议、WS管理协议或者远程过程接口协议。IT服务管理系统的不同资源管理器可以分别采用不同数据传输协议,并且一些资源管理器可以提供两种或者更多种不同传输协议,以使得管理引擎能够与资源管理器交互以用于实例化和/或管理资源。
分配资源实例
在另一方面中,本发明涉及一种用于将一个或多个资源的一个或多个实例分配给IT服务的计算机实施的方法。每个资源为一个或多个资源类型其中之一。每个资源实例由IT服务管理系统的一个或多个资源管理器其中之一提供。该方法包括:
-通过管理引擎分析服务模型,该服务模型指定IT服务的结构,并且包括分别代表所述资源其中之一并且分别指示所代表的所述资源的资源类型的节点,该服务模型还包括,对于至少一个所述节点,指定由所述节点代表的所述资源的管理的一个或多个资源管理规则;
-对于每个节点,在IT服务管理系统的运行时间,由该管理引擎执行:
确定由所述节点指示的资源类型;
确定指定给所述节点的一个或多个资源管理规则;
对资源实例目录和所确定的资源类型评估指定给所述节点的资源管理规则,其中该资源实例目录指示所述一个或多个资源的所有当前已有实例以及它们至所述IT服务的相应分配,以用于计算选择准则;
在服务提供商目录上应用该选择准则以用于选择所述一个或多个资源管理器其中之一,该服务提供商目录指示所述资源管理器中分别可操作以向IT提供给定资源类型的资源实例的一个或多个资源管理器;
创建由所选择资源管理器提供的资源的实例;
将所述实例分配给IT服务。
所述特征会是有利的,因为通过评估指示当前实例化资源的数目和类型的资源实例目录,以确定选择哪类资源管理器来实例化新资源实例,则有可能使资源实例化过程动态地适配于IT服务管理系统的动态确定的运行时间参数值。所述特征可以使得能够由已经提供给定类型的至少一个资源的资源管理器来有选择地实例化资源。例如,在许多使用情形场景中,将会是有利的是,在WebSphere应用服务器的实例已经存在的情况下,由适于提供WebSphere应用服务器的资源管理器来实例化类型‘应用服务器’的节点,而不是由适于提供Glassfish网络服务器的资源管理器来实例化。取决于实施例和所使用的管理规则,新资源可以按照它们与同一运行时间环境中已有给定资源类型的资源并置(collocated,‘一起被托管’)的方式,或者它们在不同运行时间环境中被分别实例化(anti-collocated反并置)的方式来实例化。运行时间环境也可以充当资源并且可以在服务模型中以节点的形式来代表。因而,提供了一种高度灵活和动态的IT服务管理系统,其可操作以从多个资源管理器动态地选择一个资源管理器,以用于依照IT系统的运行时间参数值,特别是依照资源实例库中指示的已有资源实例的数目、类型和/或参数值来实例化资源。
根据各实施例,资源实例目录针对每个实例化资源包括负荷特性,该负荷特性指示实例化资源的处理负荷。该方法还包括:由管理引擎监视分配给所述IT服务的所述一个或多个资源实例中每个的负荷特性;由管理引擎利用监视的负荷特性更新所述一个或多个资源实例的负荷特性;在对资源实例目录评估资源管理规则时,也对所述一个或多个资源实例的更新的负荷特性执行该评估。
所述特征会是有利的,因为它们可以允许提高IT服务的性能和/或可靠性。对于确定IT服务或者其资源实例其中之一被过于频繁地请求/访问的情形,例如对于单位时间的请求数目超过给定阈值的情形,可以作为IT服务的另一部件而创建所述应用服务器和应用程序的附加实例,从而减小IT服务的处理负荷和/或减小其资源实例其中之一的处理负荷。
此处使用的‘负荷特性’为通过监视已有资源实例或者包括所述资源实例的IT服务而获得的参数值。负荷特性可以是例如在给定时间周期中提交给IT服务或资源实例的请求的数目。所述数目可以作为下述而给出:百分比值,或者资源占据的处理单元、存储器或存储空间的总量,针对所述资源的I/O请求的网络流量等。
根据各实施例,资源管理规则作为服务模板中的节点的注释或者节点群组的注释而被存储。
根据各实施例,每个节点包括通用API。该通用API并非对于任何特定一个资源管理器是特有的,并且提供用于实例化由相应节点代表的资源的至少一个抽象方法。资源的实例的创建包括:
-由管理引擎评估服务提供商目录,以用于确定所选择的资源管理器的地址;
-由管理引擎向所选择的资源管理器的地址发送请求,该请求为针对所述资源管理器的资源-管理器-特有API的描述的请求;
-由管理引擎从所选择资的源管理器接收所请求的描述;
-由管理引擎利用用于实例化所述资源的资源-管理器-特有API的资源-管理器特有方法覆盖所述至少一个抽象方法,所述资源-管理器特有方法在所接收的描述中被指定;以及
-执行被覆盖的至少一个抽象方法,以用于实例化由所述节点代表的资源。所述执行可以通过该管理引擎与所选择资源管理器互操作来执行。
根据各实施例,节点为图的节点。每个节点为单实例节点类型或多实例节点类型。多实例节点代表可多次实例化的资源。单实例节点代表仅仅可一次实例化的资源。分析服务模型包括,依据所述图的拓扑并且依据节点的相应节点类型,遍历所述图,以用于实例化由所述图的节点代表的资源。利用多实例或单实例属性注释节点会是有利的,因为所述特征可以允许管理规则的更精细粒度的规定以及加速评估。例如,对于节点被确定为单实例节点的情形,在评估管理规则期间,可以略去可有选择地应用到多实例节点的所有规则,由此提高评估速度。
根据各实施例,管理规则包括这样的规则,该规则适于评估被指定给具有由该服务模型当前被评估节点所指示的资源类型的所有资源的所有已有资源实例的负荷特性。对于负荷特性超过在规则中规定的阈值的情形,附加节点实例可以被启动,由此附加管理规则可以被评估以用于计算用于选择适当资源管理器的选择准则。
根据各实施例,至少一个所述节点为多实例节点。资源管理规则包括多实例资源(MIR)规则,其提供由所述节点代表的资源的多个实例的协调管理。至少一个所述节点已经被分配一个或多个MIR规则。该方法包括,对于每个节点:评估节点是否为多实例节点;对于节点为多实例节点的情形,对资源实例目录评估至少所述一个或多个指定的MIR规则,以用于确定是否已经存在由所述节点代表的资源的其它实例;该资源实例目录指示所述其它实例的存在并且可以可选地也指示所述其它已有实例的参数值。选择准则依照MIR规则的评估结果来计算。
此处使用的‘资源的多个实例的协调管理’涵盖任何这样的资源管理工作流程,根据该资源管理工作流程,资源的实例化和/或所述资源的实例的控制或删除取决于所述资源的其它实例的存在和/或取决于所述其它实例或者托管所述其它实例的运行时间环境的某些属性值(负荷特性、指示例如托管资源实例的运行时间环境的类型和位置的运行时间属性)。
根据各实施例,MIR规则包括至少一个反并置规则。该反并置规则规定共同地提供IT服务或者所述IT服务的子服务的资源的所有实例必须分别在不同运行时间环境中被实例化。反并置规则的评估包括:
-确定是否存在由资源管理器其中之一提供的一个或多个第一资源实例以及所述一个或多个第一资源实例是否被分配给IT服务或者其子服务;
-如果所述实例的一个或多个存在,则选择准则的计算返回这样的选择准则,其适于选择所述所确定的资源管理器,用以在当前不托管任何一个所述一个或多个已有资源实例的运行时间环境中创建所述资源管理器的资源的至少一个另一实例。如果所述实例中任何一个实例都不存在,则资源管理器可以部署新资源实例到任何所述可用运行时间环境。
此处使用的‘运行时间环境’可以是基于硬件或者软件。运行时间环境可以是例如虚拟机、应用服务器或者服务器计算机。运行时间环境可以被表示为服务模型中的节点,所述节点连接到代表托管于所述运行时间环境中的资源的另一节点。所述两个节点可以在该服务模型中提供属于‘托管于’关系类型的边而彼此连接。
根据各实施例,MIR规则包括至少一个并置规则,该并置规则指定共同地提供IT服务或者所述IT服务的子服务的资源的所有实例必须分别在同一运行时间环境中被实例化。并置规则的评估包括:
-确定是否存在由资源管理器其中之一提供的一个或多个第一资源实例,并且所述一个或多个第一资源实例是否被分配给IT服务或者其子服务;
-如果所述实例的一个或多个存在,计算的选择准则适于选择所述所确定的资源管理器,用以有选择地在当前托管所有所述一个或多个已有资源实例的运行时间环境中创建所述资源管理器的资源的至少一个另一实例。
根据各实施例,两个或者更多所述节点的节点群组代表这样的资源,其相应实例共同地提供IT服务或者所述IT服务的子服务,其中所述所代表资源为相同或不同的资源类型,其中该资源管理规则包括这样的群组规则,该群组规则提供由所述节点群组代表的资源群组的实例的协调管理。至少一个节点群组已经被分配给一个或多个群组规则。该方法包括,对于服务模型的每个节点:
-确定当前检查的节点为其中的成员的节点群组;
-如果节点群组可以被确定,则确定被指定给所述节点群组的一个或多个群组规则;
-对资源实例目录至少评估所确定的群组规则,用以确定由所述两个或者更多节点的其它节点所代表的资源实例是否已经存在,该资源实例目录指示所述其它实例的存在并且可选地也指示所述其它实例的参数值。
该选择准则依照群组规则的评估结果而计算。
根据各实施例,所述群组规则其中之一为并置规则,其指定由所述节点群组的成员节点代表的资源的所有资源实例必须在同一资源实例上实例化和托管。因而,对于应用所述并置规则的情形,所述资源群组的任何资源的第一实例可以由可操作以实例化相应资源类型的资源管理器的任意一个来实例化。然而,对于所述群组的任何第二/另一资源实例,选择准则按照这样的方式计算,该方式确保所述资源管理器同样被用于在已经托管第一资源实例的同一资源实例上实例化第二/另一资源实例。根据各实施例,群组规则其中之一为反并置规则,其如上文针对代表同一资源类型的实例的多实例节点所描述,对包括混合资源类型的节点群组以类似方式作用。
根据各实施例,群组规则其中之一指定所述资源群组的资源的所有实例必须分别按这样的方式被实例化,该方式使得所述群组的资源能够满足一个或多个要求。所述要求可能关系到待实例化的资源和/或可能关系到托管资源实例的运行时间环境。对指定给所述节点群组的一个或多个群组规则的评估导致确定如下选择准则,所述选择准则用于选择可操作以按照满足所需要求的方式实例化资源的资源管理器。所述特征是有利的,因为它们允许指定自动的可执行实例化和管理工作流程,其中要求和约束不仅适用于单独资源实例或同一资源的实例,而且也适用于不同资源类型的和/或由不同资源管理器提供的资源的多个实例。
根据各实施例,群组规则包括均匀安全性环境规则,所述规则包括,在同一安全领域中,例如在服务器的网络中或者在满足特定安全性要求的应用服务器中,实例化由给定节点类型的节点代表的所有资源的要求。
根据各实施例,所述要求按照任何组合选自包括下述各项的群组:
-为所述群组中的成员的资源的所有实例必须在同一网络安全区域中被实例化;
-为所述群组中的成员的资源的所有实例必须满足一个或多个安全约束;
-为所述群组中的成员的资源的所有实例必须在给定地理位置中被实例化或托管;以及
-用于托管为所述群组中的成员的资源的实例的运行时间环境必须满足某些安全约束。
可能网络安全区域的示例为:组织边界以外的因特网(不受控制区域);为面向因特网的受控制区域的因特网DMZ(受控制区域),其包含客户端可以与其直接通信的部件;支持这样的功能的生产网络(受限制区域),对所述功能的访问必须受严格控制;在一个或多个防火墙和管理网络(安全区域)后面的内部网(受控制区域)。地理约束会要求资源在特定地国家实例化,例如从而由服务提供商满足某些法律要求。
根据各实施例,在下述出现事件时,对管理规进行评估以用于自动地计算或者重新计算选择准则,所述事件从包括下述各项的群组中选择:将新资源管理器添加到IT服务管理系统;由IT服务管理系统实例化IT服务;以及在确定IT服务的所述资源实例其中之一的所监视负荷特性超过负荷阈值时。可替换地,在收到手动地输入或触发的命令时,计算或者重新计算该准则。
根据各实施例,在将任何一个资源的实例分配到IT服务时,管理引擎通过自动地添加指示所分配资源实例与所确定的IT服务的关联的条目,而更新资源实例目录。
根据各实施例,每个节点至少包括用于创建由所述节点代表的资源的抽象方法。实例化资源包括:
-依据选择的准则选择所述一个或多个资源管理器其中之一;
-向所选择资源管理器的地址发送请求,该请求为针对所述资源管理器的资源-管理器-特有API的描述的请求;
-从所选择的资源管理器接收所请求的描述;
-由用于实例化所述资源的资源-管理器-特有API的资源-管理器特有方法覆盖所述至少一个抽象方法,所述资源-管理器特有方法在所接收的描述中被指定;以及
-执行被覆盖的至少一个抽象方法以用于实例化由所述节点代表的资源。
所述特征可以允许依照IT服务管理系统的动态地确定的运行时间参数值,高度灵活选择用于创建附加资源实例的资源管理器。
在另一方面中,本发明涉及一种计算机可读存储介质,其包括程序指令,该程序指令在由处理器执行时致使处理器执行根据用于将一个或多个资源的一个或多个实例分配给IT服务的上述方法的任何一个实施例的方法。
在另一方面中,本发明涉及一种计算机可读存储介质,其包括用于实例化资源的程序指令,该程序指令在由处理器执行时提供根据上述实施例其中任何一个所述的资源管理器。
在另一方面,本发明涉及一种用于将一个或多个资源的一个或多个实例分配给IT服务的计算机系统。每个资源为一个或多个资源类型其中之一。每个资源实例由IT服务管理系统的一个或多个资源管理器其中之一提供。该计算机系统包括管理引擎,其适于:
-分析服务模型,指定IT服务的结构的该服务模型包括分别代表资源其中之一并且分别指示所述所代表资源的资源类型的节点,该服务模型对于每个节点还包括指定所述节点的资源的管理的一个或多个资源管理规则;
-对于每个节点,在IT服务管理系统的运行时间执行:
确定由所述节点指示的资源类型;
确定分配到所述节点的一个或多个资源管理规则;
对资源实例目录评估指定给所述节点的资源管理规则,其中该资源实例目录指示所述一个或多个资源的所有当前已有实例以及它们相应服务分配,该评估返回评估结果;
通过将所确定的资源类型和该评估结果作为输入,计算选择准则;
在服务提供商目录上应用该选择准则,以用于选择所述一个或多个资源管理器其中之一,该服务提供商目录指示所述资源管理器中分别可操作以将给定资源类型的资源实例提供到IT服务的一个或多个资源管理器;
创建由所选择的资源管理器提供的资源的实例;以及
将所述实例分配给IT服务。
根据各实施例,该计算机系统还包括:所述一个或多个资源管理器;所述服务提供商目录;以及用于在将另一资源管理器部署到数据处理系统时,将另一条目自动地添加到服务提供商目录的装置。该另一条目指示另一资源管理器、由所述另一资源管理器提供的资源类型以及所述另一资源管理器的提供者-特有API。该另一条目使得访问服务提供商目录的管理引擎能够在数据处理系统的运行时间,确定该另一资源管理器可操作以提供所述一个资源类型的资源,并且使得该管理引擎能够与该另一资源管理器互操作。
在另一方面,本发明涉及一种包括用于实例化资源的资源管理器的计算机系统,该资源管理器适于:
-在将资源管理器部署到IT服务管理系统时,自动地将条目添加到IT服务管理系统的服务提供商目录,该另一条目指示资源管理器、由所述资源管理器提供的资源类型以及资源管理器的地址;
-在收到来自IT服务管理系统的管理引擎的请求时,将资源管理器-特有API的描述发送给发出请求的管理引擎,该资源管理器-特有API包括用于实例化所述资源的至少一个资源-管理器特有方法,其中该条目使得访问服务提供商目录的管理引擎能够在数据处理系统的运行时间,将该请求发送至资源管理器的地址;以及用于
-借助资源管理器-特有API与管理引擎互操作以用于实例化所述资源。
根据各实施例,该方法还包括,在IT服务管理系统的运行时间:将另一资源管理器添加到IT服务管理系统,该另一资源管理器适于提供另一资源类型的资源;以及作为所述添加的结果,自动地将另一条目添加到服务提供商目录,该另一条目指示另一资源管理器、另一资源类型以及该另一资源管理器的地址。
附图说明
通过结合附图阅读本发明各实施例的以下具体描述,本发明的上述和其它项目、特征和优点将被更好地理解,在附图中:
图1为用于实例化资源的方法的流程图,
图2描述了包括多个资源管理器和多个资源的IT服务管理系统,
图3更详细说明了所述资源管理器其中之一的模块,
图4为自动地在服务提供商目录处进行登记的资源管理器的框图,
图5为服务模型的示意性说明,
图6描述了具体实施为数据库表的服务提供商目录,
图7为用于分配资源实例的方法的流程图,以及
图8为服务模型的元素的框图。
具体实施方式
如本领域技术人员将会理解的,本发明的方面可以实现为系统、方法或计算机程序产品。因此,本发明的方面可以采取完全硬件实施方式、完全软件实施方式(包括固件、驻留软件、微代码等)或组合了软件和硬件方面的实施方式的形式,其全部可以一般性地在此称为“电路”、“模块”或“系统”。此外,本发明的方面可以采取在其上包含有计算机可读程序代码的一个或多个计算机可读介质中设施的计算机程序产品。可以使用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电的、磁的、光的、电磁的、红外线的、或半导体的系统、装置或器件或前述的任何适当组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括以下:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件或前述的任何适当组合。在本文件的上下文中,计算机可读存储介质可以是任何有形的介质,其可以包含或存储供指令执行系统、装置或设备使用或与之结合的程序。
云计算环境是面向服务的,其侧重于无国籍、低耦合、模块化以及语义互操作性。在云计算的核心处是包括互连云计算节点的网络的基础架构。应预先理解,尽管此公开内容可以在云计算环境中使用,此处记载的教导的实施并不局限于云计算环境。相反,本发明的实施例能够结合未知或者以后开发的任何其它类型的计算环境来实施。云计算为用于使得能够对可配置计算资源的共享池(例如网络、网络带宽、服务器、处理、内存、存储装置、应用、虚拟机和服务)便捷地按需网络访问的服务递送的模型,其可以以最少管理努力或者与服务提供商的最少交互而快速地置备和发行。这种云模型可以包括至少5个特性和至少3个服务模型以及至少4个部署模型。特性如下:按需自服务、宽网络接入、资源池化、快速弹性以及按标准的服务。服务模型如下:
软件即服务(SaaS):提供给客户的能力是使用在云基础架构上运行的提供商的应用程序。应用程序可以从各种客户端装置通过诸如网络浏览器(例如基于网络的电子邮件)的瘦客户端接口来访问。客户并不管理或者控制包括网络、服务器、操作系统、存储装置的底层云基础架构或者甚至单独的应用程序能力,但是可能例外的是受限的用户特有应用程序配置设置。
平台即服务(PaaS):提供给客户的能力是在云基础架构上部署使用提供商支持的编程语言和工具创建的客户创建或获取的应用。客户并不管理或者控制包括网络、服务器、操作系统或存储装置的底层云基础架构,但是控制所部署的应用以及有可能的应用托管环境配置。
基础架构即服务(IaaS):提供给客户的能力是配置(provision)处理、存储装置、网络和其它基础计算资源,其中客户能够部署和运行任意软件,所述软件包括操作系统和应用。客户并不管理或者控制底层云基础架构,但是控制操作系统、存储装置、部署的应用以及可能受限的对选择联网部件(例如主机防火墙)的控制。
图1描述根据本发明实施例的计算机实施的方法。所述方法可以例如由图2描述的分布式计算机系统管理引擎(ME)209执行。在图1的下述描述中,还将参照图2中描述的计算机系统的元件。在步骤101,分析服务模型211,并且在步骤102,将服务模型中的节点其中之一选择为当前节点。每个节点代表IT服务管理系统200的资源R01-R11。对于所选择的当前节点,执行步骤103-109。在步骤103,确定当前节点所代表的资源的资源类型。在步骤104,评估服务提供商目录210,从而确定所述资源管理器中分别可操作以实例化所确定的资源类型的资源的一个或多个资源管理器。此外,通过评估服务提供商目录确定了每个所确定资源管理器的地址。在步骤105选择已经在步骤104中确定的一个或多个资源管理器其中之一。在步骤106,将请求发送给所选择的资源管理器的地址,以便接收所选择资源管理器的资源-管理器-特有API的描述。在步骤107,ME响应于该请求而从所选择的资源管理器接收所请求的描述。在步骤108,由所选择资源管理器的资源-管理器-特有API的对应具体′create′方法重写用于实例化所确定资源类型的资源的至少一个抽象′create′方法。抽象方法的具体实施在由ME在步骤107接收的描述中被指定。通过由与所选择资源管理器互操作的ME执行被覆盖的至少一个抽象方法,在步骤109实例化由当前节点代表的资源。步骤102-109被重复,直至服务模块中的所有节点已经被选择为当前节点并且相应资源已经被实例化。
图2描述了IT服务管理系统200,其包括经由网络246彼此连接的多个计算机系统201-206。网络可以是例如因特网或内部网。管理引擎计算机系统201包括处理器207、内存208和存储介质215。存储介质包括计算机可读指令,该指令在由处理器207执行时致使提供管理引擎209(ME)。此外,存储介质包括服务提供商目录210、服务模型211,并且根据一些实施例,还可以包括资源实例目录250。存在多个可替换实施方式变型,根据该变型,服务提供商目录、服务模型和/或资源实例目录可以存储到可操作地耦合到ME209的附加存储介质。分别包括一个或多个处理器224、232以及存储器225、234的一个或多个服务器计算机系统205、206可以向一个或多个客户端计算机系统(未示出)提供一个或多个IT服务227-231,藉此服务分别基于一个或多个资源实例,所述资源实例的实例化和/或至相应IT服务的分配由与一个或多个资源管理器214、219、222互操作的ME209来控制。根据可替换实施方式变型,服务可以托管在托管ME209的计算机系统的存储介质215上。包括处理器212、存储器213和存储介质216的计算机系统202运行资源管理器214,该资源管理器可操作以实例化和管理第一资源类型的资源RI。当前,已经通过ME209与资源管理器214互操作创建所述资源的三个实例RI.01-RI.03。也包括处理器217、存储器218和存储介质247的计算机系统203可操作以实例化和管理第二资源类型的资源RII以及第三资源类型的另一资源RIII。第二资源类型可以是单实例资源类型,而第三资源类型可以是多实例资源类型。根据所描述系统状态,已经由互操作的资源管理器219和ME209创建了两个第三资源类型的实例RIII.01,RIII.02。包括处理器220、存储器221和存储介质248的计算机系统204运行资源管理器222,该资源管理器可操作以实例化和管理第四资源类型的资源,藉此根据所描述系统状态,已经创建5个第四资源类型的实例。
图2借助虚线示出各种资源实例至相应服务的分配。例如,第一资源RI的实例RI.03、第二资源RII的实例RII.01以及第三资源RIII的实例RIII.01共同地构成IT服务228。根据其它实施方式变型(未示出),资源管理器214、219、222可以运行于一个或多个其它计算机系统,例如运行于计算机系统202、托管ME209的计算机系统201或者托管IT服务的计算机系统205、206。资源的实例化分别由ME209与资源管理器214、219、222进行互操作完成。相应地,执行已有资源实例的各种方法以及单独资源实例的删除也是通过ME与资源实例的相应资源管理器互操作完成的,其中所述互操作是基于在运行时间ME和资源管理器的松散耦合/绑定。
图3更详细描述资源管理器214。资源管理器包括自动服务提供商目录登记单元301。在将新资源管理器部署到IT服务管理系统时,所述单元可操作以自动地向服务提供商目录210添加新条目,由此在服务提供商目录处登记了新资源管理器。对于通过资源管理器214可管理的每个资源类型,新条目包括有关所管理的资源类型以及有关用于绑定资源管理器的地址的信息。资源管理器包括响应单元304,该响应单元可操作以从ME209接收请求并且对于每个可管理资源,发送资源管理器特有API的方法和参数505的描述。此外,传输协议的描述也被发送到ME,以用于使得ME能够经由资源管理器特有API302与资源管理器214互操作。资源管理器特有API302可以揭露用于创建资源以及用于管理和销毁所述资源的实例的若干具体方法。
图4描述两个资源管理器401、402,所述资源管理器可操作从而在部署到IT服务管理系统时,经由它们各自的自动服务提供商目录登记单元301.1、301.2而自动地登记在服务提供商目录210处。资源管理器401、402分别揭露资源管理器特有API302.1、302.2。API302.1允许实例化资源以及将资源分配给IT服务,以用于提供基础架构即服务。所述资源可以涉及多个不同资源类型,诸如Vmware、处理能力、虚拟机以及类似物。API302.2允许实例化和分配资源,以用于提供一个或多个应用服务器作为服务。每次资源被实例化时以及每次资源实例被销毁时,通过执行被相应资源管理器特有API302.1、302.2的具体方法所重写的通用API的相应′create′或者′destroy′抽象方法,ME209可操作以更新资源实例目录250。
图5更详细描述服务模型211。服务模型包括节点514-523的图,其中每个节点代表由资源管理器214、219、222管理的资源RI-RIV其中之一。根据一些实施例,图的节点可以分类成为一个或多个群组524的成员。节点的群组524可以已经分配有一个或多个群组规则R3、R4。服务模型211包括代表用于实例化IT服务所必需的资源类型的所有节点类型503、507的规范502。节点类型503的每个规范包括:用于将节点映射到相应资源类型的节点名称504、一个或多个参数505以及一个或多个方法506。参数和方法依据通用API指定。通过将通用API的参数和方法映射到所选择的资源管理器的资源-管理器-特有API的具体参数和方法,ME可操作以动态地绑定到所述资源管理器并且利用其管理能力用于实例化所需要资源。另外,服务模型包括一个或多个关系类型509、512的规范508。每个关系类型RT-X包括关系类型的名称510以及关系类型的一个或多个属性511的规范。所述关系类型可以指示要求ME实例化在服务模型指定的资源所依据的时间顺序,和/或可以指示通过已被分配有相应关系类型的边而彼此连接的资源实例的角色′主机′/′被托管实体′。根据一些实施例,服务模型还可以包括过程模型525,其指示在实例化构成IT服务的资源时ME将遵循的时间顺序。这种情况下,图513的拓扑不需要指定时间顺序。
在IT服务管理系统的运行时间通用API的抽象方法至资源-管理器-特有API的具体方法的绑定可以例如规定如下。服务模型可以例如根据TOSCA标准以XML文档的形式定义。IT服务的结构,即其拓扑,被定义为服务模型(‘ServiceTemplate(服务模板)’)中的TopologyTemplate(拓扑模板)。在TopologyTemplate内部,此处被称作是‘NodeTemptate(节点模板)’的经由边(‘RelationshipTemplate(关系模板)’)连接的节点的图定义了经由特殊类型关系(经由边的relationshipType(关系类型)特性指示)彼此相关的特有类型(经由节点的‘nodeType(节点类型)’属性指示)的资源的实例。在所描述示例中,VirtualMachine(虚拟机)节点连接到StorageVolume(存储容量)节点:
节点类型和关系类型也可以定义相应节点和边可以具有的属性。这是借助由节点类型和关系类型定义所参照的XML架构定义来完成的。服务模型中的节点和边可以包括PropertyDefaults XML元素中的参数值。在实例化相应资源时,ME可以使用所述属性默认值。对于每个节点(‘NodeTemplate’),服务提供商目录被评估以用于确定支持由Node Template的节点类型特性指示的相应节点类型的资源管理器。随后,从自服务提供商目录返回的列表选择一个资源管理器,并且获得所选择资源管理器的地址。响应于针对所述地址的请求,接收节点类型(Node Type)的描述(包括该Node Type的操作的具体描述)。ME评估所返回的描述,以发现用于所述抽象方法的资源管理器特有的具体方法,并且构建用于实例化资源的、对资源管理器特有API的调用。在下文给出利用有关在所接收描述中指定的具体“create”方法的信息而被丰富的Node Type定义示例:
Figure BDA00003379598400301
上述XML片段示出必须如何通过发送对经由REST元素的abs_path特性指示的URL的HTTP POST调用,针对特定的所选择的资源管理器经由REST接口调用该抽象“Create”操作。
图6描述根据本发明实施例的服务提供商目录210。服务提供商目录可以实施为关系数据库中的表,其包括用于资源管理器名称601、资源类型602和资源管理器的地址的多个列,其中地址使得ME能够请求资源-管理器特有API的描述。在将新资源管理器添加到IT服务管理系统200时,(′数据库条目′)被添加到该表。例如,在将用于Websphere应用服务器的资源管理器添加到IT服务管理系统时,新条目被添加到数据库表,其包括例如托管新资源管理器的服务器的IP地址。
图7为用于将资源实例分配给IT服务的方法的流程图。在步骤701,ME分析服务模型。该服务模型包括多个节点,所述节点分别代表其结构由服务模型指定的IT服务的资源。在步骤702,所述节点的当前节点被选择,以用于在步骤703确定由所述当前节点代表的资源的资源类型。在步骤704,确定分配给所述节点的一个或多个资源管理规则。向所述节点的规则分配可以被直接指定,例如作为所述节点的注释,或者间接地由包括当前节点的节点群组的注释指定,其中所述节点群组被指定有一个或多个群组规则。在步骤705由ME针对资源实例目录和所确定的资源类型来评估所确定的规则,以用于计算选择准则。在步骤706,选择准则被应用在服务提供商目录上,用以选择所述服务提供商目录中列出的可操作以提供所需资源类型的资源的所述一个或多个资源管理器其中之一。在步骤707,提供ME与所选择资源管理器互操作来创建资源的实例。在步骤708,将实例化的资源分配给IT服务。步骤702-708可以被重复,直至服务模型中的所有节点已经被评估并且IT服务的实例化已经完成。
根据各实施例,对于负荷特性超过阈值的情形,可以自动地创建资源的实例。可替换地,由管理系统进行的新IT服务的实例化可以触发一个或多个资源的实例化。例如,在将新服务模型部署到IT服务管理系统时,例如可以通过将该服务模型部署到系统200,来实例化新IT服务。ME可以检查当前节点是否为多实例节点。如果是,ME可以进一步确定是否为当前节点指定了多实例规则,例如反并置或并置规则。如果情形不是如此,在适用情况下,可以对资源实例目录评估指定给所述节点的其它管理规则。如果指定了MIR规则,例如反并置规则或者并置规则,ME根据资源实例目录来检查当前节点的RT-X资源类型的资源实例的条目是否已经存在。如果情形不是如此,计算能够选择提供类型资源RT-X的任何一个资源管理器所依据的选择准则。然而,如果确定存在所述资源的至少一个实例,则ME计算必须选择已经提供所述已有(多个)RT-X资源实例的资源管理器所依据的选择准则。在实例化资源之后,ME更新资源实例目录。
图8描述包括5个节点N1-N5的服务模型的部件,所述节点分别代表依据不同关系类型(‘连接到’、‘托管于’、‘存档于’)的边而彼此连接的一个或多个资源实例。由节点N1代表的资源的一个实例,例如应用程序,可以托管于一个或多个(n)应用服务器上,所述应用服务器分别为节点N2的资源的实例。节点N1的资源的每个实例可以连接到由节点N3代表的资源的实例(数据库)。所述数据库可以托管于DBMS服务器的0,...,m实例中,该DBMS服务器由资源N4代表,n和m为大于0的整数。所述DBMS服务器存档于代表存档服务器资源的节点N5的实例上。节点N4和N5构成已经指定有群组规则R3和R4的节点群组G1,R3和R4适用于节点N4和N5的所有实例,所述节点N4和N5的被代表的资源实例共同地提供“数据服务器”。

Claims (14)

1.一种用于实例化IT服务(227-231)的一个或多个资源(RI-RIV)的计算机实施的方法,每个资源为一个或多个资源类型其中之一,每个资源由IT服务管理系统(200)的一个或多个资源管理器(214,219,222)其中之一提供,所述方法包括:
-通过管理引擎(209)分析(101)所述IT服务的服务模型(211),所述服务模型包括分别代表所述资源其中之一并且分别指示所代表的所述资源的资源类型的节点(N1-N5,414-523),所述节点中的每个包括通用API,所述通用API并非对于所述资源管理器中的任何特定的一个是特有的,并且提供用于实例化由相应的所述节点代表的资源的至少一个抽象方法(506);
-对于所述节点中的每个,在所述IT服务管理系统的运行时间,由所述管理引擎执行:
确定(103)由所述节点指示的所述一个或多个资源类型其中一个资源类型;
评估(104)服务提供商目录,所述服务提供商目录指示所述资源管理器中分别可操作以提供给定资源类型的资源的一个或多个资源管理器,用于确定所述资源管理器中分别可操作以提供具有所确定的资源类型的资源的一个或多个资源管理器,并且用于确定所确定的所述一个或多个资源管理器中每个的地址;
选择(105)所述一个或多个资源管理器其中一个资源管理器;
向所选择的所述资源管理器的所述地址发送(106)请求,所述请求为针对所述资源管理器的资源-管理器-特有API的描述的请求;
从所选择的所述资源管理器接收(107)所请求的所述描述;
由用于实例化所述资源的资源-管理器-特有API的资源-管理器特有方法来覆盖(108)所述至少一个抽象方法,所述资源-管理器特有方法在所接收的所述描述中被指定;以及
执行(109)被覆盖的所述至少一个抽象方法,以用于实例化由所述节点代表的所述资源。
2.根据前述权利要求任一项所述的计算机实施的方法,其中所述节点为图(513)的节点,其中分析所述服务模型(103)包括依据所述图的拓扑遍历所述图,以便实例化由所述图的节点代表的所述资源。
3.根据前述权利要求任一项所述的计算机实施的方法,其中所述服务模型指示资源将被实例化的时间顺序,所述顺序借助包括所述节点的图的拓扑来指定,或者借助所述服务模型中包含的过程模型(525)来指定。
4.根据前述权利要求任一项所述的计算机实施的方法,还包括,在所述IT服务管理系统的运行时间:
向所述IT服务管理系统添加另一资源管理器,所述另一资源管理器适于提供另一资源类型的资源;以及
作为所述添加的结果,向所述服务提供商目录(210)添加另一条目,所述另一条目指示所述另一资源管理器、所述另一资源类型以及所述另一资源管理器的地址。
5.根据权利要求4所述的计算机实施的方法,其中所述添加另一条目是依据生命周期协作开放服务(OSLC)技术执行的。
6.根据前述权利要求任一项所述的计算机实施的方法,所述节点包括至少第一节点和第二节点,所述第一节点代表第一资源类型的第一资源,所述第二节点代表第二资源类型的第二资源,所述第一资源类型和所述第二资源类型按照任何组合选自包括以下各项的群组:
-用于提供数据存储即服务(StaaS)的数据存储资源类型;
-用于提供软件即服务(SaaS)的应用程序资源类型;
-用于提供基础架构即服务(IaaS)的计算资源类型;
-用于提供网络即服务(NaaS)的联网部件资源类型;以及
-用于提供平台即服务(PaaS)的中间件部件资源类型。
7.根据前述权利要求任一项所述的计算机实施的方法,其中通过执行所述至少一个抽象方法来实例化所述资源是通过所述管理引擎与所选择的所述资源管理器互操作来执行的,所述互操作经由所获得的所述资源-管理器-特有API而执行。
8.根据前述权利要求任一项所述的计算机实施的方法,其中所述通用API包括用于控制和/或删除由所述节点代表的所述资源的实例的另外抽象方法,所述方法还包括:
-由所述资源-管理器-特有API(302)的相应资源-管理器特有方法来覆盖所述另外抽象方法;以及
-由管理引擎执行被重写的所述通用API,由此所述管理引擎与所选择的所述资源管理器互操作,其中所述互操作被执行以用于控制和/或删除所述实例。
9.根据前述权利要求任一项所述的计算机实施的方法,还包括:
-通过管理引擎评估所接收的描述,以用于确定所述管理引擎与所确定的所述资源管理器互操作将使用的数据传输协议;和/或
-确定所述管理引擎与所确定的所述资源管理器互操作将使用的一个或多个API方法(506)和API参数(505);
-其中所述互操作借助所确定的所述传输协议和/或借助所确定的所述API方法和API参数而执行。
10.根据前述权利要求任一项所述的计算机实施的方法,其中所述IT服务管理系统包括至少第一资源管理器和第二资源管理器,所述第一资源管理器包括第一资源-管理器特有API并且可操作以提供第一资源类型的第一资源,所述第二资源管理器包括第二资源-管理器特有API并且可操作以提供第二资源类型的第二资源,所述方法还包括:
-借助第一组API方法和API参数和/或借助第一数据传输协议,经由所述第一资源管理器特有API来实例化至少所述第一资源;以及
-借助第二组API方法和API参数和/或借助第二数据传输协议,经由所述第二资源管理器特有API来实例化至少所述第二资源。
11.一种用于实例化资源的计算机实施的方法,所述方法借助资源管理器来执行,所述方法包括:
-在向IT服务管理系统(200)部署所述资源管理器时,向所述IT服务管理系统的服务提供商目录(210)添加条目,所述另一条目指示所述资源管理器、由所述资源管理器提供的资源类型以及所述资源管理器的地址;
-在接收到来自所述IT服务管理系统的管理引擎的请求时,向发出请求的所述管理引擎发送资源管理器-特有API的描述,所述资源管理器-特有API包括用于实例化所述资源的至少一个资源-管理器特有方法,其中所述条目使得访问服务所述提供商目录的所述管理引擎能够在所述数据处理系统的运行时间,向所述资源管理器的所述地址发送所述请求;以及用于
借助所述资源管理器-特有API与所述管理引擎互操作,以用于实例化所述资源。
12.一种计算机系统(200,201),包括用于实例化IT服务的一个或多个资源的管理引擎(209),每个资源为一个或多个资源类型其中之一,每个资源由IT服务管理系统的一个或多个资源管理器(214,219,222)其中之一提供,所述管理引擎适于:
-通过管理引擎分析(101)所述IT服务的服务模型,所述服务模型包括分别代表所述资源其中之一并且分别指示所代表的所述资源的资源类型的节点,所述节点中的每个包括通用API,所述通用API并非对于所述资源管理器任何特定的一个是特有的,并且提供用于实例化由相应的所述节点代表的资源的至少一个抽象方法;
-对于所述节点中的每个,在所述IT服务管理系统的运行时间,由所述管理引擎执行:
确定(103)由所述节点指示的所述一个或多个资源类型其中一个资源类型;
评估(104)服务提供商目录,所述服务提供商目录指示所述资源管理器中分别可操作以提供给定资源类型的资源的一个或多个资源管理器,用于确定所述资源管理器中分别可操作以提供具有所确定的所述资源类型的资源的一个或多个资源管理器,并且用于确定所确定的所述一个或多个资源管理器中每个的地址;
选择(105)所述一个或多个资源管理器其中一个资源管理器;
向所选择的所述资源管理器的所述地址发送(106)请求,所述请求为针对所述资源管理器的资源-管理器-特有API的描述的请求;
从所选择的所述资源管理器接收(107)所请求的所述描述;
由用于实例化所述资源的所述资源-管理器-特有API的所述资源-管理器特有方法来覆盖所述至少一个抽象方法,所述资源-管理器特有方法在所接收的所述描述中被指定;以及
执行(108)被覆盖的所述至少一个抽象方法,以用于实例化由所述节点代表的所述资源。
13.根据权利要求12所述的计算机系统(200),还包括:
-所述一个或多个资源管理器,
-所述服务提供商目录,以及
-用于在向所述IT服务管理系统部署另一资源管理器时向所述服务提供商目录添加另一条目的装置,所述另一条目指示所述另一资源管理器、由所述另一资源管理器提供的资源类型以及所述另一资源管理器的地址,其中所述另一条目使得访问所述服务提供商目录的管理引擎能够在所述IT服务管理系统的运行时间向所述另一资源管理器发送所述请求。
14.一种计算机系统(202,203,204),包括用于实例化资源(RI-RIV)的资源管理器(214,219,222),所述资源管理器适于:
-在向IT服务管理系统(200)部署所述资源管理器时,向所述IT服务管理系统的服务提供商目录(210)添加条目,所述另一条目指示所述资源管理器、由所述资源管理器提供的资源类型以及所述资源管理器的地址;
-在接收到来自所述IT服务管理系统的管理引擎的请求时,向发出请求的所述管理引擎发送资源管理器-特有API的描述,所述资源管理器-特有API包括用于实例化所述资源的至少一个资源-管理器特有方法,其中所述条目使得访问服务提供商目录的管理引擎能够在所述数据处理系统的运行时间,向所述资源管理器的所述地址发送所述请求;以及用于
-借助所述资源管理器-特有API与所述管理引擎互操作,以用于实例化所述资源。
CN201310247606.0A 2012-06-27 2013-06-20 用于实例化it服务的资源的方法和系统 Active CN103516781B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1211388.2 2012-06-27
GB1211388.2A GB2503463A (en) 2012-06-27 2012-06-27 Overriding abstract resource manager methods to provide resources to implement nodes in a service definition

Publications (2)

Publication Number Publication Date
CN103516781A true CN103516781A (zh) 2014-01-15
CN103516781B CN103516781B (zh) 2017-04-12

Family

ID=46704285

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310247606.0A Active CN103516781B (zh) 2012-06-27 2013-06-20 用于实例化it服务的资源的方法和系统

Country Status (3)

Country Link
US (6) US9203774B2 (zh)
CN (1) CN103516781B (zh)
GB (1) GB2503463A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105100168A (zh) * 2014-05-21 2015-11-25 北京大学 一种基于应用执行单元的PaaS请求分发机制
CN106406834A (zh) * 2015-07-30 2017-02-15 中兴通讯股份有限公司 一种管理应用系统的方法、装置和系统
CN107533483A (zh) * 2016-01-28 2018-01-02 慧与发展有限责任合伙企业 服务编排
CN110825452A (zh) * 2019-10-10 2020-02-21 国云科技股份有限公司 一种多云管理的云服务适配模块管理方法
CN110908808A (zh) * 2018-09-14 2020-03-24 网宿科技股份有限公司 一种控制api调用资源的方法和装置
CN111404752A (zh) * 2020-03-23 2020-07-10 上海新炬网络信息技术股份有限公司 基于itsm指标模型的it服务水平测量方法
US11196643B2 (en) 2018-04-04 2021-12-07 Hewlett Packard Enterprise Development Lp State transitions for a set of services
US11281491B2 (en) 2018-11-21 2022-03-22 Hewlett Packard Enterprise Development Lp Execution of services concurrently
US11356340B2 (en) 2014-09-29 2022-06-07 Hewlett Packard Enterprise Development Lp Provisioning a service

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012008871A (ja) * 2010-06-25 2012-01-12 Ricoh Co Ltd 機器管理装置、機器管理方法、及び機器管理プログラム
US11144333B2 (en) * 2011-07-12 2021-10-12 Tongling Yuchen Software Technology Co., Ltd. Service model-oriented software system and operation method thereof
GB2503463A (en) 2012-06-27 2014-01-01 Ibm Overriding abstract resource manager methods to provide resources to implement nodes in a service definition
EP2870542A4 (en) 2012-07-03 2016-03-09 Hewlett Packard Development Co MANAGEMENT OF A CLOUD SERVICE
US10122596B2 (en) * 2012-09-07 2018-11-06 Oracle International Corporation System and method for providing a service management engine for use with a cloud computing environment
US20150074678A1 (en) * 2013-09-09 2015-03-12 Avraham Vachnis Device and method for automating a process of defining a cloud computing resource
US20150149535A1 (en) * 2013-11-27 2015-05-28 Massively Parallel Technologies, Inc. Systems And Methods For Application Execution And Deployment Cloud
CN104951855B (zh) * 2014-03-28 2022-08-02 伊姆西Ip控股有限责任公司 用于促进对资源的管理的装置和方法
CN104063282B (zh) * 2014-05-06 2017-02-15 重庆大学 IaaS云可变规模资源池管理方法、装置和服务器
US10757197B2 (en) * 2014-07-18 2020-08-25 Microsoft Technology Licensing, Llc Self-extending cloud
US20160043909A1 (en) * 2014-08-08 2016-02-11 Microsoft Corporation Hierarchical Subscription Management
US10089676B1 (en) 2014-11-11 2018-10-02 Amazon Technologies, Inc. Graph processing service component in a catalog service platform
US10031780B2 (en) 2014-11-25 2018-07-24 International Business Machines Corporation Component services integration with dynamic constraint provisioning
JP6392978B2 (ja) * 2015-04-22 2018-09-19 株式会社日立製作所 計算機システムの管理システム
US11714685B2 (en) * 2015-07-31 2023-08-01 The Conundrum Ip Llc Discovering and publishing API information
US11195216B2 (en) * 2015-07-31 2021-12-07 Ent. Services Development Corporation Lp Federated marketplace portal
US10601648B2 (en) * 2016-07-19 2020-03-24 T-Mobile Usa, Inc. Network nodes with intelligent integration
US10178045B2 (en) * 2016-09-07 2019-01-08 Sap Se Dynamic discovery and management of microservices for multi-cluster computing platforms
US11663052B2 (en) * 2018-01-08 2023-05-30 Telefonaktiebolaget Lm Ericsson (Publ) Adaptive application assignment to distributed cloud resources
US11106551B1 (en) * 2018-04-30 2021-08-31 Amazon Technologies, Inc. Compute capacity reservations for disaster recovery scenarios
US10761915B2 (en) 2018-09-26 2020-09-01 International Business Machines Corporation Preemptive deep diagnostics and health checking of resources in disaggregated data centers
US10838803B2 (en) 2018-09-26 2020-11-17 International Business Machines Corporation Resource provisioning and replacement according to a resource failure analysis in disaggregated data centers
US10831580B2 (en) 2018-09-26 2020-11-10 International Business Machines Corporation Diagnostic health checking and replacement of resources in disaggregated data centers
US11188408B2 (en) 2018-09-26 2021-11-30 International Business Machines Corporation Preemptive resource replacement according to failure pattern analysis in disaggregated data centers
US11050637B2 (en) 2018-09-26 2021-06-29 International Business Machines Corporation Resource lifecycle optimization in disaggregated data centers
US10754720B2 (en) * 2018-09-26 2020-08-25 International Business Machines Corporation Health check diagnostics of resources by instantiating workloads in disaggregated data centers
AU2019380719A1 (en) * 2018-11-08 2021-06-10 Iagon As Intelligent, decentralized and autonomous marketplace for distributed computing and storage
US11012776B2 (en) * 2019-04-09 2021-05-18 International Business Machines Corporation Volume adjustment model development
CN111221560B (zh) * 2019-11-14 2023-10-03 绿盟科技集团股份有限公司 一种资源管理方法、装置和电子设备
CN111124613B (zh) * 2019-12-20 2022-03-22 浪潮电子信息产业股份有限公司 虚拟化资源的服务化实现方法、装置、设备及存储介质
US11290527B2 (en) * 2020-06-30 2022-03-29 Fortinet, Inc. Automatic tagging of cloud resources for implementing security policies

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030177182A1 (en) * 1999-06-14 2003-09-18 International Business Machines Corporation Ensuring a given transactional unit of work arrives at an appropriate server instance
CN1659539A (zh) * 2002-04-19 2005-08-24 因卡网络工程公司 一种具有虚拟服务模块的网络系统
CN101427220A (zh) * 2004-01-30 2009-05-06 国际商业机器公司 用于计算工具的计算环境的组件化自动供应和管理
CN101776996A (zh) * 2010-01-26 2010-07-14 上海市共进通信技术有限公司 通信系统中基于对象的配置管理系统的构建实现方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2339621A (en) * 1998-07-15 2000-02-02 Ibm Client/server computing system provides extension to basic transaction service
US20040019898A1 (en) * 1999-06-14 2004-01-29 International Business Machines Corporation Accessing local objects using local access proxies
US7000238B2 (en) * 2001-10-10 2006-02-14 Borland Software Corporation Development system providing extensible remoting architecture
US7890543B2 (en) * 2003-03-06 2011-02-15 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US7072807B2 (en) * 2003-03-06 2006-07-04 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US20050071350A1 (en) 2003-08-28 2005-03-31 Hewlett-Packard Development Company, L.P. Systems and methods for information technology resource management
CN1892664A (zh) * 2005-06-30 2007-01-10 国际商业机器公司 控制对资源的访问的方法和系统
US7590661B2 (en) * 2006-07-31 2009-09-15 Ricoh Company, Ltd. Advanced Web Services on a legacy platform
CN100536479C (zh) * 2006-10-10 2009-09-02 华为技术有限公司 业务创建系统及方法
US8082548B2 (en) * 2007-02-06 2011-12-20 International Business Machines Corporation System and method for performing systems management on IT-resources using web services
US7895317B2 (en) 2007-06-27 2011-02-22 Computer Associates Think, Inc. Autonomic control of a distributed computing system using finite state machines
US9069599B2 (en) * 2008-06-19 2015-06-30 Servicemesh, Inc. System and method for a cloud computing abstraction layer with security zone facilities
US8578076B2 (en) * 2009-05-01 2013-11-05 Citrix Systems, Inc. Systems and methods for establishing a cloud bridge between virtual storage resources
US20100299677A1 (en) * 2009-05-22 2010-11-25 Bluestem Software Llc Article of manufacture for programmatically describing web service-driven applications
US20100332622A1 (en) 2009-06-25 2010-12-30 Sun Microsystems, Inc. Distributed Resource and Service Management System and Method for Managing Distributed Resources and Services
US9329951B2 (en) 2009-07-31 2016-05-03 Paypal, Inc. System and method to uniformly manage operational life cycles and service levels
US8484354B2 (en) 2009-11-02 2013-07-09 Beaumaris Networks, Inc. Distributed resource management
US8924559B2 (en) 2009-12-03 2014-12-30 International Business Machines Corporation Provisioning services using a cloud services catalog
US9009294B2 (en) 2009-12-11 2015-04-14 International Business Machines Corporation Dynamic provisioning of resources within a cloud computing environment
US9213574B2 (en) 2010-01-30 2015-12-15 International Business Machines Corporation Resources management in distributed computing environment
US9471384B2 (en) * 2012-03-16 2016-10-18 Rackspace Us, Inc. Method and system for utilizing spare cloud resources
US9141410B2 (en) * 2011-03-08 2015-09-22 Rackspace Us, Inc. Pluggable allocation in a cloud computing system
GB2503463A (en) 2012-06-27 2014-01-01 Ibm Overriding abstract resource manager methods to provide resources to implement nodes in a service definition

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030177182A1 (en) * 1999-06-14 2003-09-18 International Business Machines Corporation Ensuring a given transactional unit of work arrives at an appropriate server instance
CN1659539A (zh) * 2002-04-19 2005-08-24 因卡网络工程公司 一种具有虚拟服务模块的网络系统
CN101427220A (zh) * 2004-01-30 2009-05-06 国际商业机器公司 用于计算工具的计算环境的组件化自动供应和管理
CN101776996A (zh) * 2010-01-26 2010-07-14 上海市共进通信技术有限公司 通信系统中基于对象的配置管理系统的构建实现方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105100168A (zh) * 2014-05-21 2015-11-25 北京大学 一种基于应用执行单元的PaaS请求分发机制
US11924068B2 (en) 2014-09-29 2024-03-05 Hewlett Packard Enterprise Development Lp Provisioning a service
US11356340B2 (en) 2014-09-29 2022-06-07 Hewlett Packard Enterprise Development Lp Provisioning a service
CN106406834A (zh) * 2015-07-30 2017-02-15 中兴通讯股份有限公司 一种管理应用系统的方法、装置和系统
US11171841B2 (en) 2016-01-28 2021-11-09 Hewlett Packard Enterprise Development Lp System for propagating a modification of a first service, in a service graph, to a second service
CN107533483A (zh) * 2016-01-28 2018-01-02 慧与发展有限责任合伙企业 服务编排
US11196643B2 (en) 2018-04-04 2021-12-07 Hewlett Packard Enterprise Development Lp State transitions for a set of services
US11582117B2 (en) 2018-04-04 2023-02-14 Hewlett Packard Enterprise Development Lp State transitions for a set of services
CN110908808A (zh) * 2018-09-14 2020-03-24 网宿科技股份有限公司 一种控制api调用资源的方法和装置
CN110908808B (zh) * 2018-09-14 2023-06-23 深圳爱捷云科技有限公司 一种控制api调用资源的方法和装置
US11281491B2 (en) 2018-11-21 2022-03-22 Hewlett Packard Enterprise Development Lp Execution of services concurrently
US11947996B2 (en) 2018-11-21 2024-04-02 Hewlett Packard Enterprise Development Lp Execution of services concurrently
CN110825452A (zh) * 2019-10-10 2020-02-21 国云科技股份有限公司 一种多云管理的云服务适配模块管理方法
CN111404752A (zh) * 2020-03-23 2020-07-10 上海新炬网络信息技术股份有限公司 基于itsm指标模型的it服务水平测量方法

Also Published As

Publication number Publication date
US20140006627A1 (en) 2014-01-02
US10135669B2 (en) 2018-11-20
US9432247B2 (en) 2016-08-30
US20180026828A1 (en) 2018-01-25
US9787528B2 (en) 2017-10-10
US20160344840A1 (en) 2016-11-24
CN103516781B (zh) 2017-04-12
GB2503463A (en) 2014-01-01
US10764109B2 (en) 2020-09-01
US20160072661A1 (en) 2016-03-10
US9515866B2 (en) 2016-12-06
US20140095721A1 (en) 2014-04-03
GB201211388D0 (en) 2012-08-08
US9203774B2 (en) 2015-12-01
US20190081849A1 (en) 2019-03-14

Similar Documents

Publication Publication Date Title
CN103516781A (zh) 用于实例化it服务的资源的方法和系统
US9819606B2 (en) Allocating instantiated resources to an IT-service
US10958739B2 (en) Capturing a virtual configuration from cloud-provisioning data
US9609023B2 (en) System and method for software defined deployment of security appliances using policy templates
US11119746B2 (en) Extensions for deployment patterns
Fowley et al. A classification and comparison framework for cloud service brokerage architectures
EP3053052B1 (en) Managing a number of secondary clouds by a master cloud service manager
US8776011B2 (en) Method and apparatus for managing components of application enablement suite
US20170302537A1 (en) Topology based management of second day operations
CN105516233A (zh) 用于在一个或多个云系统上便携部署应用的方法和系统
US10594800B2 (en) Platform runtime abstraction
CN112994958B (zh) 一种网络管理系统、方法、装置及电子设备
NL2018627B1 (en) Cloud platform configurator
US20180241848A1 (en) Human-readable cloud structures
EP3828703A1 (en) System, device, method and datastack for managing applications that manage operation of assets
Stefanic et al. Application-Infrastructure Co-Programming: managing the entire complex application lifecycle
CN117834222A (zh) K8s系统中waf规则的配置方法和装置
US20170041198A1 (en) Cloud models based on network definition data
Collell Martin Extending Cloud Management Tools at the IaaS and PaaS Layers for Cloud Interoperabitliy

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant