CN104541246A - 用于提供在云计算环境下使用的服务管理引擎的***和方法 - Google Patents

用于提供在云计算环境下使用的服务管理引擎的***和方法 Download PDF

Info

Publication number
CN104541246A
CN104541246A CN201380040906.XA CN201380040906A CN104541246A CN 104541246 A CN104541246 A CN 104541246A CN 201380040906 A CN201380040906 A CN 201380040906A CN 104541246 A CN104541246 A CN 104541246A
Authority
CN
China
Prior art keywords
service
cos
management engine
service management
cloud
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
CN201380040906.XA
Other languages
English (en)
Other versions
CN104541246B (zh
Inventor
R·莫达尼
A·库马尔
B·萨帕利加
S·赛亚加拉詹
N·A·艾兰姆
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.)
Oracle International Corp
Original Assignee
Oracle International 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 Oracle International Corp filed Critical Oracle International Corp
Publication of CN104541246A publication Critical patent/CN104541246A/zh
Application granted granted Critical
Publication of CN104541246B publication Critical patent/CN104541246B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5058Service discovery by the service manager
    • 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/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种用于提供在云计算环境下使用的服务管理引擎的***和方法。根据一种实施例,企业软件应用(例如,Fusion Middleware应用)能够被实例化为云平台内的服务,然后,它们在云平台上可由其他(例如,消费者)应用访问。在一种实施例中,与编排引擎通信的服务管理引擎(SME)能够被用来根据服务定义包(SDP)将服务作为一个或多个不同的服务类型来供应。服务类型能够按照云平台自身的配置以及SDP的内容来实例化,包括发现和供应服务类型并将其与***资源相关联,以适合于不同的用户要求。

Description

用于提供在云计算环境下使用的服务管理引擎的***和方法
版权声明
本专利文献的公开内容的一部分含有受到版权保护的材料。版权所有者不反对任何人对本专利文献或专利公开内容进行复制,按照其在(美国)专利和商标局的专利文件或记录中的形式,但版权所有人保留所有其它的权利。
技术领域
本发明的实施例一般地涉及云计算,并且特别地涉及用于提供在云计算环境下使用的服务管理引擎的***和方法。
背景技术
术语“云计算”一般用来描述允许对诸如计算机网络、服务器、软件应用和服务之类的计算资源的共享池按需访问的并且允许以最低限度的管理工作或者服务提供者交互进行快速的资源供应和释放的计算模型。
云计算环境(有时称为云环境或云)能够以各种不同的方式来实现以最佳地适合于不同的要求。例如,在公共云环境中,底层的计算基础设施为使其云服务可由其他组织或公众使用的组织所拥有。相比之下,私有云环境一般地预期由单个组织或者在单个组织内单独使用。社区云预期由社区内的若干组织共用;而混合云包含通过数据和应用的可移植性结合在一起的两种或更多种类型的云(例如,私有云、社区云或公共云)。
一般地,云计算模型允许之前可以由组织自己的信息技术部门提供的那些职责中的一些职责改为作为云环境中的服务层来传递给消费者(组织内消费者或组织外消费者,依据云的公共/私有特性)使用。根据特定的实现方式,由每个云服务层提供的或者在每个云服务层内的构件或特征的准确定义能够改变,但是共同的示例包括:
软件即服务(SaaS),其中消费者使用在云基础设施上运行的软件应用,而SaaS提供者管理或控制底层的云基础设施和应用。
平台即服务(PaaS),其中消费者能够使用由PaaS提供者支持的软件编程语言和开发工具来开发、部署及(否则的话)控制他们自己的应用,而PaaS提供者管理或控制云环境的其他方面(即,在运行时执行环境之下的所有事)。
基础设施即服务(IaaS),其中消费者能够部署和运行任意软件应用和/或供应处理、存储、网络及其他基础计算资源,而IaaS提供者管理或控制底层的实体云基础设施(即,在操作***层之下的所有事)。
上述实例被提供用于说明本发明的实施例一般能够用于其中的某些类型的环境。根据各种实施例,本文所描述的***和方法同样能够用于其他类型的云或计算环境。
发明内容
本文所描述的是用于提供在云计算环境下使用的服务管理引擎的***和方法。根据一种实施例,企业软件应用(例如,FusionMiddleware应用)能够作为云平台内的服务的例示,然后,这些应用在该云平台上可由其他(例如,消费者)应用访问。在一种实施例中,根据服务定义包(SDP),与编排引擎通信的服务管理引擎(SME)能够被用来供应作为一种或多种不同服务类型的服务。服务类型能够按照云平台自身的配置以及SDP的内容来例示,包括发现和提供服务类型,并将其与***资源关联,以处理不同的消费者要求。
附图说明
图1示出了根据一种实施例的包含服务层的云计算环境。
图2进一步示出了根据一种实施例的环境。
图3示出了根据一种实施例的能够包含PaaS平台构件的云计算环境。
图4进一步示出了根据一种实施例的包含管理服务器和服务域的PaaS平台构件。
图5进一步示出了根据一种实施例的包括服务定义包和服务管理引擎在管理服务器上的使用的PaaS平台构件。
图6进一步示出了根据一种实施例的包括管理服务器与虚拟化管理器之间的交互的PaaS平台构件。
图7进一步示出了根据一种实施例的包括多租户服务域的PaaS平台构件。
图8进一步示出了根据一种实施例的包括云账户管理器的PaaS平台构件。
图9进一步示出了根据一种实施例的服务定义包在PaaS平台构件上的使用。
图10是根据一种实施例的用于将服务定义包在PaaS平台构件上使用的过程的流程图。
图11进一步示出了根据一种实施例的服务管理引擎在PaaS平台构件上的使用。
图12是根据一种实施例的用于将服务管理引擎在PaaS平台构件上使用的过程的流程图。
图13进一步示出了根据一种实施例的编排引擎在PaaS平台构件上的使用。
图14是根据一种实施例的用于将编排引擎在PaaS平台构件上使用的过程的流程图。
图15进一步示出了根据一种实施例的弹性管理器在PaaS平台构件上的使用。
图16是根据一种实施例的用于将弹性管理器在PaaS平台构件上使用的过程的流程图。
图17进一步示出了根据一种实施例的服务定义包在PaaS平台构件上的打补丁。
图18是根据一种实施例的用于将服务定义包在PaaS平台构件上打补丁的过程的流程图。
具体实施方式
如上所述,云计算环境(云环境或云)能够以各种不同的方式来实现以最佳地适合于不同的要求:例如,公共云、私有云、社区云或混合云。云计算模型允许之前可以由组织自己的信息技术部门提供的那些职责中的某些职责改为作为云环境中的服务层来传递给消费者(组织内消费者或组织外消费者,依据云的公共/私有特性)使用。
本文所描述的是能够用来提供基础设施、平台和/或应用以支持云计算环境的各种硬件和/或软件的构件和特征。根据各种实施例,该***还能够使用诸如Oracle的Exalogic和/或Exadata机器、WebLogic和/或Fusion Middleware以及其他硬件和/或软件构件和特征之类的硬件和软件来提供企业级的云计算环境,该云计算环境允许平台开发及部署应用,提供一组建立于现代的体系结构上的企业应用及用例,和/或提供灵活的消费选择。
图1示出了根据一种实施例的包含服务层的云计算环境。如图1所示,根据一种实施例,云计算环境(云环境或云)100一般能够包含一个或多个基础设施即服务(IaaS)层110、平台即服务(PaaS)层160和/或软件即服务(SaaS)层170的组合,这些服务层每个都作为云环境中的服务层来传递,并且这些服务层能够由组织之内或之外的消费者使用,取决于被使用的特定的云计算模型。
根据一种实施例,云计算环境能够被实现为包含一个或多个常规的通用或专用的数字计算机、计算设备、机器、微处理器、存储器和/或计算机可读存储介质(例如,计算机硬件、软件以及由Oracle的Exalogic、Exadata或类似的机器提供的资源)的***。
如同图1所进一步示出的,根据一种实施例,云计算环境能够包含共用的启用和管理基础设施120,该基础设施120将在下文更详细地描述并且提供能够用来支持各种服务层的启用和管理工具。
图1所示的实例作为本发明的实施例一般能够于其中使用的一种类型的云计算环境的图示来提供。根据各种实施例,本文所描述的***和方法同样能够用于不同的和/或其他类型的云或计算环境。
图2进一步示出了根据一种实施例的环境。如图2所示,根据一种实施例,IaaS、PaaS和/或SaaS层每个一般地都能够包含各种构件。例如,根据一种实施例,IaaS层能够包含共用的数据库硬件(例如,Exadata机器)112,和/或共用的应用服务器硬件(例如,Exalogic机器)。PaaS层能够包含一个或多个PaaS服务,例如,数据库服务162、应用服务器服务164和/或WebCenter服务166。SaaS层能够包含各种SaaS服务,例如,企业应用(例如,Oracle Fusion SaaS)172和/或ISV或定制应用176。
如上所述,根据一种实施例,云计算环境还能够包含共用的启用和管理基础设施。例如,如图2所示,共用的启用和管理基础设施能够包含一个或多个身份管理122、数据集成124、复制(例如,OracleGoldenGate)126、虚拟组件构建器(virtual assembly builder)128、***供应130、租户管理132和/或企业管理器构件134。
如同图2所进一步示出的,根据一种实施例,共用的启用和管理基础设施还能够包含其他构件,例如,病毒扫描142、安全文件传输144、HTTP路由146、白名单148、通知150、安全备份152、集成网关154和/或用量与计费156构件。
图2所示的实例作为能够包含于云计算环境内的或者于共用的启用和管理基础设施内的那些类型的构件中的一些的图示来提供。根据其他实施例,能够包含不同的和/或其他的构件类型或布局。
PaaS平台构件
根据一种实施例,云计算环境能够包含允许在云环境中提供企业软件应用的PaaS平台构件(PaaS平台)。
图3示出了根据一种实施例的能够包含PaaS平台构件的云计算环境。如图3所示,根据一种实施例,PaaS平台500能够作为可安装的软件套件来提供,该软件套件为企业应用(例如,Fusion Middleware或其他企业应用)提供自服务供应体验。
一般地,为组织的内部或私有云环境安装和配置企业应用能够包括相当大量的管理工作,包括管理员在设法水平地调整它们的环境以满足所增加的工作量要求时所面对的挑战。根据一种实施例,PaaS平台构件能够容易进行扩展以在需要时托管新的企业应用套件,并且其后根据负荷的增加来调整实例化的运行时间量。
如图3所示,根据一种实施例,PaaS平台能够包含一个或多个服务定义包(SDP)502、服务管理引擎(SME)504、虚拟组件(VA)506、PaaS管理服务器508、服务域510(包括由一个或多个云账户或租户513使用的一个或多个服务应用512)和/或云弹性管理器514构件。这些构件中的每一个连同其他构件和特征一起将在下文更详细地描述。
术语表
根据一种实施例,本文使用了下列术语。根据其他实施例,能够使用不同的和/或其他的术语。
PaaS平台构件(PaaS平台,平台):根据一种实施例,PaaS平台构件(PaaS平台、平台)是为企业应用(例如,Fusion Middleware或其他企业应用)提供自服务供应体验的可安装的软件套件。
云账户(租户):根据一种实施例,云账户(租户)是与消费PaaS平台即服务的那些用户/消费者关联的实体。云账户建立管理范围,然后账户管理员能够使用该管理范围来访问PaaS服务。例如,能够为正从公共PaaS提供者处购买PaaS服务的组织或公司创建云账户。作为另一示例,能够为正消费来自充当私有PaaS提供者的内部信息技术部门的PaaS服务的部门或群组创建云账户。根据一种实施例,不同的PaaS用户角色,例如,以下所述的云账户管理员角色,能够与云账户关联。根据一种实施例,在PaaS平台内,所消费的资源,例如,连同它们的虚拟机、数据库、DNS条目、负载平衡器及其他配置一起的服务,能够与云账户关联。一个或多个用户以及零个或更多个服务能够类似地与云账户关联。PaaS平台域能够与一个或多个云账户(租户)关联。
服务定义包:根据一种实施例,服务定义包(SDP)是含有为待由PaaS平台提供的特定类型的服务所需的全部信息的数据包。例如,当用于Fusion Middleware时,每种类型的Fusion Middleware服务都能够提供其自身的SDP。根据一种实施例,SDP包含安装于平台上的自定义代码,连同含有将会包含以前部署于一组虚拟机(VM)上的服务的运行实例的一组虚拟设备的拓扑和配置的虚拟组件(例如,OVAB组件)一起。例如,Fusion Middleware应用SDP能够包含自定义代码,连同含有为将该Fusion Middleware应用的运行实例部署为服务所需的拓扑和配置的Fusion Middleware OVAB组件一起。
服务类型:根据一种实施例,服务类型是能够在PaaS平台内为云账户进行实例化的软件功能的表示。根据一种实施例,服务类型能够基于SDP来创建,附加的配置信息由***管理员提供。该配置信息中的一些可以提供为平台产品的安装或它正于其内运行的企业所特有的值;而其他配置信息可以反映出***管理员对SDP所支持的选项的选择。根据一种实施例,多个(不同的)服务类型能够通过作出不同的配置选择而根据单个SDP来创建。
服务:根据一种实施例,服务是服务类型的实例化。云账户能够与多个服务关联。在单个云账户中,能够存在用于单个服务类型的多个服务。根据一种实施例,服务提供服务管理接口和终端用户接口两者。服务能够与身份、数据库或者该服务所需的其他服务特征关联。服务与在一个或多个虚拟机(VM)上运行的服务运行时间关联。
提供者类型:根据一种实施例,提供者类型是支持提供者而不是服务的一种特殊的服务类型。提供者类型由***管理员按照与服务类型相同的方式创建。与以上所描述的服务类型一样,提供者类型能够基于SDP来创建,附加的配置信息由***管理员提供。同样地,该配置信息中的一些可以提供为平台产品的安装或者它正于其内运行的企业所特有的值;而其他配置信息可以反映出***管理员对SDP所支持的选项的选择。根据一种实施例,多个(不同的)提供者类型能够通过做出不同的配置选择而根据单个SDP来创建。
提供者:根据一种实施例,提供者是服务的特殊化。与一般由云账户管理员的显式动作创建的服务不同,能够根据需求来创建提供者以满足服务的依赖关系。根据一种实施例,提供者是提供者类型的实例化,并且通过服务类型的特定实例来表示提供者类型所管理的资源的使用。服务能够与多个提供者关联。根据一种实施例,在创建服务时,编排引擎使所期望的服务类型的要求与所配置的提供者类型的能力相匹配。然后,编排引擎请求服务类型创建服务的实例;请求提供者类型创建待由该服务实例使用的提供者的实例;并且将服务与提供者关联起来。
关联资源:根据一种实施例,关联资源(提供者资源)使服务能够了解特定关联的配置信息。例如,如果Java服务与两个不同的数据库提供者关联,则它可能需要为每个数据库创建连接池。关联资源允许Java服务了解哪个连接池与哪个数据库关联,使得如果编排引擎以后需要改变这些关联之一,则Java服务将会知道哪个连接池要改变。
运行时间:根据一种实施例,运行时间表示提供服务功能的已安装的操作软件应用或提供者。根据一种实施例,运行时间由包含于SDP内的自定义代码管理,在某些情况下使用由PaaS平台提供的设施(例如,虚拟化和供应支持)来进行。
环境:根据一种实施例,环境是能够作为群组共同被管理的服务及其关联的提供者的集合。环境能够为了运行应用或者提供更高级的服务而创建。环境提供将包括诸如启动、停止、备份或销毁之类的操作在内的服务集合作为一个整体来操作的能力。根据一种实施例,环境能够提供“关联组(association group)”和“管理组”的功能。
***管理员(角色):根据一种实施例,***管理员负责安装,配置,管理及维护云环境和/或PaaS平台基础设施和环境,包括可为环境中所运行的应用访问的资源。例如,根据一种实施例,***管理员负责下载并安装SDP以支持新的/附加的服务类型;设置或配置由PaaS平台使用的虚拟化技术;并且安装并配置提供者。
云账户管理员(角色):根据一种实施例,云账户管理员负责新服务的供应、通用服务属性(例如,它们的服务质量/QoS设定)及其关联的管理,以及服务的锁定和终止。根据一种实施例,云账户管理员能够为每个服务指派服务管理员。
服务管理员(角色):根据一种实施例,服务管理员负责在具体的服务已被供应之后对其进行实施及管理。服务管理员能够与服务的接***互以执行实行及管理操作。
应用部署器(角色):根据一种实施例,应用部署器为所供应的服务部署应用,并且负责安装,配置及运行该应用。一旦应用运行了,它就能够由终端用户使用。
终端用户(角色):根据一种实施例,终端用户是应用部署器已经为服务部署的应用的用户。终端用户能够与由为服务所部署的应用提供的用户界面交互。如果服务提供让用户消费其所显示的功能的界面,则终端用户能够使用服务所提供的那个界面,无需应用部署器来部署应用。
图4进一步示出了根据一种实施例的包含管理服务器和服务域的PaaS平台构件。如图4所示,根据一种实施例,PaaS平台(平台)一旦被安装好后就会包含PaaS管理服务器508,该PaaS管理服务器508支持管理控制台520、云平台供应/管理逻辑521以及虚拟组件构建器(VAB)部署器522,连同组件或VAB库一起。
根据一种实施例,VAB部署器能够由功能、构件或产品(例如,Oracle虚拟组件构建器(OVAB))提供。然后,VAB部署器(例如,OVAB Deployer)能够由PaaS平台用来管理将会托管服务应用的那些虚拟机(VM)。根据其他实施例,能够使用提供组件构建器功能或构件的其他装置。
根据一种实施例,PaaS管理服务器能够被实现为WebLogic(WLS)服务器应用,以连同例如嵌入其内的Glassfish模块一起提供云平台功能。含有服务应用和服务控制台532的服务域510能够被提供用于容纳将最终服务于用户请求的那些企业应用,例如,FusionMiddleware应用。根据一种实施例,服务域构件可以被多次实例化为供应请求的一部分。
根据一种实施例,将由PaaS管理服务器及服务域使用的提供者服务器类型(其实例能够包括LDAP 526、数据库527及负载平衡器528提供者)能够被提供于不是由管理服务器供应的池内,因为这些是注册于云环境的外部服务。根据一种实施例,PaaS平台能够利用单个负载平衡器提供者来转发所有传入的、定向到服务的例如Web请求。例如,每个服务能够与将在服务供应期间注册到负载平衡器提供者的虚拟主机名关联,并且PaaS平台能够包含那些服务能够利用的数据库提供者池。当服务以后被供应时,则所有对数据库服务的外部引用都被解析以指向数据库提供者池中的一个或多个实例。
图5进一步示出了根据一种实施例的包括服务定义包和服务管理引擎在管理服务器上的使用的PaaS平台构件。如图5所示,根据一种实施例,管理员希望可在PaaS平台内使用的新的企业应用服务类型(例如,新的Fusion Middleware服务类型)能够从SDP安装。
根据一种实施例,SDP能够经由英特网来下载,或者能够通过其他方法来提供。每个SDP都含有能够注入PaaS平台内的自定义代码,以用来支持例如弹性和供应;连同含有一旦组件被部署于一组虚拟机(VM)上时就将会包含企业应用服务的运行实例的一组虚拟设备的拓扑和配置的组件(例如,OVAB组件)一起。PaaS管理员与其交互的每个服务类型/提供者都能够以此方式在***中注册。其他提供者服务类型,例如,外部服务,一般能够被预先安装。
图6进一步示出了根据一种实施例的包括管理服务器与虚拟化管理器之间的交互的PaaS平台构件。如图6所示,根据一种实施例,VM管理器构件541(例如,OVM管理器)能够由PaaS平台用来管理VM542、543、544的VM池540,所述VM 542、543、544然后被用来对服务组件进行实例化。
当由PaaS平台模块做出使组件(或者在放大请求的情形中的单个设备)实例化的请求时,VAB部署器应用(例如,OVAB部署器)然后能够与VM管理器(例如,OVM管理器)交互以实现该请求。通过以此方式将基础设施/虚拟化职责委派给VM管理器和VAB部署器,PaaS平台能够被从目标部署平台抽象出来。
图7进一步示出了根据一种实施例的包括多租户服务域在内的PaaS平台构件。
如图7所示,服务域能够包含可使用服务控制台来配置的多个租户550、551、552。多租户,像虚拟化一样,是允许使用较少资源来支持较多客户的密度型优化(density optimization),并且类似于虚拟化,对于应用本身应当是透明的。尽管多租户涉及共用资源的使用,但是该共用不需要是应用的逻辑模型的一部分。这些模型涉及使用“多租户”和“专用”资源。
个别地,应用还可以按照作为应用的逻辑模型的一部分的方式来共用资源。例如,两个应用可以特意地访问共用的数据库,因为它们意在对同一数据进行操作。这些模型涉及使用“共用的”和“非共用的”资源。
根据一种实施例,某些服务类型可以支持专用和多租户使用两种使用,基于它们特定的配置。其他服务类型可以要么只支持专用,要么只支持多租户使用。能够在同一运行时间上支持多个租户的服务类型能够在实例化过程中按照多租户的方式来供应它们的运行时间,基于服务类型的配置。已经被标记为允许多租户的单个实例化的服务运行时间将被重新用于有限数量的附加服务供应请求,如同服务类型所确定的那样并且基于其配置。一般地,它被留给服务应用以支持这种租赁模式;不支持多租户的服务应用将只能够每个服务实例支持单个账户。
一旦服务已经从其VM组件中进行了实例化,终端用户546就能够按照它们与该服务的内部部署的(on-premise)版本交互的相同方式与***及实例化的服务交互。
图8进一步示出了根据一种实施例的包括云账户管理器在内的PaaS平台构件。如图8所示,根据一种实施例,PaaS平台能够包含云平台管理服务(CPAS)560,连同云账户管理器570一起,该云账户管理器570负责支持诸如账户管理之类的功能,并且提供PaaS平台的其他模块(例如,编排引擎/SME 562、CEM 564或身份管理服务566)能够用以访问或保持账户特定的数据的架构。
根据一种实施例,配置管理构件573能够使用配置层580来将账户特定的配置583和其他文件584保持于账户存储区582,这然后使得CPAS的各种服务和其他构件能够访问并操作账户特定的数据。
根据一种实施例,账户管理模块574还提供了管理CPAS域的账户的能力。这能够通过使用命令行、REST或者其他身份管理应用程序接口(API)581来显示。每个账户都能够具有多个用户。根据一种实施例,用户能够在由PaaS平台管理的身份存储区586内进行管理,或者作为选择,能够由外部(例如,企业)LDAP或者由别的用户标识装置提供。
根据一种实施例,用户能够通过管理接口572来访问云账户管理器。账户和配置数据同样能够存储于可从CPAS群集的所有节点访问的文件***或其他存储装置上。
服务定义包(SDP)
图9进一步示出了根据一种实施例的服务定义包在PaaS平台构件上的使用。根据一种实施例,服务定义包(SDP)是用以将特定的企业应用构件(例如,Fusion Middleware构件)作为服务类型传递给PaaS平台的装置。
根据一种实施例,SDP一般地具有以下特性:它能够容易地针对特定的企业应用构件进行创建;它能够对各种虚拟化技术(例如,OVM、Amazon、KVM或VirtualBox)进行部署;它能够被部署于非虚拟化的环境(例如,笔记本计算机模式);并且它包含对供应前的服务类型或提供者的支持。
如图9所示,根据一种实施例,每个SDP 592、596都能够包含:二进制593、597;元数据594、598(例如,SDP名称、服务类型、版本、供应商或者虚拟化支持元数据,例如,指示SDP是否支持OVAB、EC2或Native);以及允许SDP在PaaS平台或云环境内使用的一个或多个插件595、599。根据一种示例性实施例,每个SDP还能够包含:
能够被用来将服务安装于特定的虚拟化提供者(例如,OVAB)上的组件、引用、包、档案文件或模板;绑定于SDP内的组件;或者对组件的引用(例如,EC2特定的引用)。
用于服务类型的服务管理插件或SME插件,该服务管理插件或SME插件使诸如弹性度量采集器或警报之类的PaaS平台功能能够用于服务。
在VAB部署器(例如,OVAB Deployer)的组件补液过程(rehydration process)中用于该VAB部署器的插件。
有关服务提供者的依赖关系信息,例如,关联规则或其他关联伪像(artifact);例如,与数据库提供者的关联可能需要诸如数据库模式之类的信息或者适当的表。
配置元数据,该配置元数据在某些情况下可以进一步细分为服务配置元数据和服务运行时间配置元数据。
访问界面,例如,由服务管理员使用的服务管理接口或URL模式(例如,WLS管理服务器URL)。
用于服务及其运行时间的服务质量元数据。
可扩展性元数据,例如,不同构件的可扩展性限制;例如,组件内的不同设备的可扩展性限制能够被定义,并且这些可扩展性限制被显示给***管理员或云账户管理员和弹性管理器,用于适当的缩放和处理。
关于所支持的租赁模型的指示,例如,服务是多租户还是专用服务。
用于服务的安全模板/证书。
以上关于SDP内容的示例性实施例的描述作为对能够包含于SDP内的信息的某些类型的说明而提供。根据其他实施例,不同的和/或其他的信息类型能够包含于SDP内。
根据一种实施例,为了让PaaS***管理员将对特定的企业应用或其他软件构件的支持作为服务类型来提供,***管理员能够下载特定的服务类型的SDP,并且将该SDP安装于PaaS平台。
根据一种实施例,安装SDP将会将例如OVAB组件安装到OVAB库中;适当的SME插件将会被注册到云平台;并且度量采集器、警报及动作将被安装于PaaS平台上。在***管理员安装了SDP之后,云账户管理员然后能够使用云账户管理接口来请求那种类型的服务。服务是特定的服务类型的实现。
例如,在Fusion Middleware构件的背景下,Fusion Middleware构件的每个版本都能够具有单独的SDP。当云账户管理员/服务管理员想要升级到Fusion Middleware构件的新版本时,他们能够选择SDP的新版本。例如,要能够支持SOA套件11g以及SOA套件12.1.3,能够存在用于SOA套件产品的这两个版本的单独的SDP。
根据一种实施例,SDP能够被封装为zip或jar文件,例如:
<SDP Name~>.zip
->.ova(OVAB assembly if bundled)
->sme-plugin.jar(includes elasticity components)
->service-definition.xml(metadata for the service)
SDP还能够被封装为其他文件格式,根据特定的实现方式。如图9所示,根据一种实施例,当SDP被安装到PaaS平台域内时,它随后由SDP管理器590消费,该SDP管理器590负责获得可用于安装于本地***的SDP列表;若需要则下载SDP,并将SDP的各部分安装到正确的地方;维护已安装的那些SDP的列表;并且,如果需要,则通过将其所有部分从它们之前被安装到的地方卸载来卸载SDP。
根据一种实施例,除了对SDP的现有版本打补丁之外,SDP管理器还支持给定的SDP的多个版本(例如,SOA 11和SOA 12)。一般地,当SDP被打补丁(将在下文更详细地描述)时,这将仅影响与PaaS基础设施内的SDP相关的已安装构件;它不会影响该服务类型的服务。
根据一种实施例,SDP管理器使PaaS***与SDP文件的格式隔离开。PaaS平台体系结构没有其他部分需要知道准确的SDP文件格式。SDP管理器能够通过将SME插件安装到CPAS而与其他***构件连接,该CPAS然后能够负责将该SME插件复制到群集中的其他CPAS实例;将VAB组件602、604(例如,OVAB组件)安装到VAB部署器(例如,OVAB Deployer)内;如果服务提供一个控制台界面,则与其他工具(例如,企业管理器)连接以给该服务提供定制的控制台界面;并且将服务的配置数据安装到CPAS内。
随后,在服务的实现606期间,服务610能够被实现为由SDP定义的那些服务类型的实例,并作为组件安装于VAB库内。
图10是根据一种实施例的用于将服务定义包在PaaS平台构件上使用的过程的流程图。如图10所示,在步骤612,提供一台或多台计算机,包括在其上执行的云环境和PaaS平台构件(PaaS平台)。
在步骤614,一个或多个服务定义包被提供用于平台构件,其中每个服务定义包都包含应用二进制构件和元数据。
在步骤616,该一个或多个服务定义包被解析以为特定的企业应用构件确定服务的特性和要求,该特性和要求确定该特定的企业应用构件可如何作为平台构件内的服务类型来传递的。
在步骤618,相应的企业应用构件作为服务类型供应给平台构件,以在云环境中使用。
服务管理引擎(SME)
图11进一步示出了根据一种实施例的服务管理引擎在PaaS平台构件上的使用。
大体上说,根据一种实施例,服务管理引擎(SME)提供了用于将任意服务类型******内的通用装置。例如,SME处理服务类型或提供者类型的所有服务特定的供应、生命周期、管理及监测支持。作为与服务无关的编排引擎(OE,将在下文更详细地描述)完全取决于SME,以处理所有服务相关的动作。
根据一种实施例,在PaaS平台域内能够存在若干不同类别的SME。例如,提供者SME能够被提供用于处理在PaaS平台域内所支持的不同提供者。能够得到支持的提供者的类型的实例包括Database(数据库)、Web-Tier(Web层)和Identity-Management(身份-管理)提供者。根据一种实施例,提供者SME被配置为通过根据提供者SDP来创建提供者类型而指向企业内的现有外部服务。提供者SME还负责可以作为与被创建的服务的关联和分离的一部分而被要求的所有动作,例如,模式管理。提供者SME一般不被配置用于处理由提供者类型所指向的外部服务的供应、取消供应或管理;尽管提供者SME能够被配置为这样做。
根据一种实施例,服务SME能够使用SDP来添加到PaaS平台域。例如,服务SME能够通过安装适当的SDP而动态地并入PaaS平台域之内。根据一种实施例,SDP管理器处理绑定于SDP内的服务SME在PaaS平台域上的安装/注册。所注册的服务SME的集合然后成为可由云账户管理员用来创建服务的服务类型。
根据一种实施例,在PaaS平台域内所支持的每个服务类型映射到具体的服务SME。服务SME处理所有服务相关的活动,例如,用于该服务的生成关系(spanning)创建,监测,管理,打补丁,升级及删除。根据一种实施例,通过SME来实现的合同(contract)被称为服务管理接口(SMI),其定义了对服务的监测、打补丁及升级的支持。
根据一种实施例,编排引擎与提供者和服务SME交互,以在PaaS平台域内创建服务。编排引擎策划服务的创建;但是所有服务层的活动都由SME来处理。在图11所示的实例中,当OVAB被用作虚拟化提供者时,与OVAB部署器的所有交互通过虚拟化API(例如,OVAB客户端API)来处理。根据一种实施例,编排过程然后能够如下进行:
云账户管理员发现例如可在PaaS平台域内使用的SOA服务类型620、622,并且在本例中启动SOA服务的创建。
编排引擎迭代***内的所有可用服务SME,并且确定哪些服务SME能够处理该服务类型624。在本例中,编排引擎将在本例中发现SOA SME,以处理SOA服务的创建。
编排引擎然后调用SOA SME以获得该SME 625的所有提供者依赖关系。在本例中,SOA SME返回数据库以及负载平衡器提供者的依赖关系。
编排引擎然后为SOA SME调用get-user(获取用户)或者类似的可配置的属性函数,并且在用户界面或GUI中显示那些属性,使得云账户管理员能够按照期望来编辑属性。
用户提供的输入然后被供应给SOA SME。由于OVAB在本例中正被使用,因而用户提供的输入能够被用来更新OVAB部署计划。
编排引擎执行在SOA SME与其所依赖的提供者SME之间的任何供应前关联。例如,编排引擎将会执行在SOA SME与数据库提供者SME之间的供应前关联,除了以数据库提供者配置来填充部署计划之外,这还会导致SOA服务所需的模式和表格的创建。
一旦任何供应前关联完成,编排引擎就调用SOA SME 626以供应SOA服务。此时,除了网络配置外,部署计划已大体完成。所更新的部署计划连同组件ID一起能够被推送给OVAB API,该OVAB API负责以剩余的网络配置来填充部署计划。然后,编排引擎能够调用OVAB部署器的Web服务API来供应OVAB组件。一旦该组件被供应,虚拟机信息就全被检索出并被传递回到SOA SME,该SOA SME进而将该信息传递回到编排引擎。编排引擎可以存留该信息以待以后使用。
编排引擎然后执行在SOA SME与其所依赖的提供者SME之间的任意供应后关联。例如,在SOA SME与负载平衡器提供者SME之间的供应后关联会导致虚拟服务器创建以处理对该SOA服务的请求并适当地路由它们。
最后,服务创建的状态被返回给云账户管理员。
以上关于将OVAB部署器用作部署组件的方式,将SOA服务和SOA SME用作示例SME,并且将数据库与负载平衡器提供者关联起来的编排过程的描述被提供用于说明示例性的编排过程。根据其他实施例,能够使用例如VAB部署器、SME及提供者的不同的和/或其他的类型。
图12是根据一种实施例的用于将服务管理引擎在PaaS平台构件上使用的过程的流程图。如图12所示,在步骤630,提供了一台或多台计算机,包括在其上执行的云环境和PaaS平台构件(PaaS平台)。
在步骤632,提供与编排引擎通信的一个或多个服务管理引擎,该一个或多个服务管理引擎被用来将服务作为服务类型来供应,包括服务类型的供应、生命周期管理及监测中的一项或多项。
在步骤634,特定的服务类型被确定以待供应以在云环境中使用。
在步骤636,服务管理引擎被用来解析平台构件自身的配置和/或服务定义包,并且根据平台构件的配置和/或服务定义包的内容将服务作为一个或多个不同的服务类型来供应。
在步骤638,相应的服务管理引擎被配置于平台构件内以支持那些特定的服务类型。
编排引擎
图13进一步示出了根据一种实施例的编排引擎在PaaS平台构件上的使用。
根据一种实施例,编排引擎(OE)允许服务创建,提供者依赖关系分辨,服务与提供者的关联,并且一般地允许对PaaS平台内的服务的端到端的生命周期管理。特别地,编排引擎在创建或管理服务的同时协调在PaaS平台域内的各种构件间的所有交互;允许各种服务类型的SME可***平台内;并且帮助通过从平台内那些可获得的SME当中选出适当的SME来供应服务。编排引擎还帮助管理诸如DB提供者、IDM提供者及LB提供者之类的提供者的配置。
根据一种实施例,编排引擎,作为创建服务的一部分,通过选择适当的提供者(提供者SME)并且协调提供者与服务之间的关联来确保满足服务的所有依赖关系(例如,服务的提供者依赖关系)。关联动作能够在供应前和/或供应后的阶段内执行。安装及配置SME的动作能够由SDP管理器来执行,作为注册预先封装的服务类型或定制的服务类型的一部分。编排引擎帮助显示部署计划配置,该部署计划配置能够由云账户管理员在供应服务的操作期间通过控制台来配置。
根据一种实施例,编排引擎识别与PaaS平台对其“服务创建”动作以及其他生命周期相关的活动的要求匹配的一组阶段和任务。编排引擎还被设计为可扩展的并且允许配置由编排引擎管理的所有动作中的阶段及任务。
在虚拟化的环境中供应及管理服务通常是耗时的动作,并且一般需要按照异步的方式来执行。***还必须能够处理任何瞬时(或可重试的)失败,并且继续进行供应活动。根据一种实施例,管理员能够在需要时查询或监测任意这些异步活动。还能够给诸如供应、取消供应等动作提供唯一的标识符,以便确定、显示并记录所有已启动的动作的进展状态。
根据一种实施例,编排引擎还帮助重试任务,或者基于任务的可恢复性(resiliency)来回滚操作,其中任务或阶段能够具有标记(注释)以指出可恢复性级别以及任意补偿操作。
根据一种实施例,编排引擎充当用于能够由PaaS平台域内的其他容器或者由管理员启动的所有的服务管理、监测、缩放动作的网关。例如,弹性引擎(将在下文更详细地描述)与编排引擎通信以基于服务的QoS配置来管理、监测及缩放服务。编排引擎还能够在服务维护动作(例如,打补丁和升级)中起作用,该服务维护动作能够按照帮助避免服务的停机时间的滚动方式在活动的***中执行。这样的动作可能需要按分阶段的方式来要求分离或再关联服务。
根据一种实施例,由云账户管理员创建的服务仅由该特定的云账户(租户)可见及访问,并且与PaaS平台域内的其他云账户隔离开。根据一种实施例,这样的隔离能够在云账户管理模块的帮助下由编排引擎来提供。存储并管理服务的配置、状态及可访问性通过拥有单独的云账户数据存储区来实现。多租户模型和专用租赁模型两者在平台域内都能够支持。编排引擎基于服务元数据所提供的偏好来选择支持所要求的租赁水平的适当的提供者类型。同样地,能够基于多租户服务运行时间或者基于每个服务的专用服务运行时间来支持服务的多租户模型和专用租赁模型。
根据一种实施例,SME能够被注册到编排引擎,使得给定的服务“族”(例如,“数据库”)的多个SME能够存在于***中。还可以在每个云账户的基础上为特定的服务族配置缺省的SME。
如图13所示,根据一种实施例,CPAS的虚拟化特征主要围绕VAB部署器(例如,OVAB Deployer)来构建,VAB组件(例如,OVAB Assembly)作为供应的单元。根据其他实施例,CPAS能够支持可替换的虚拟化解决方案。
根据一种实施例,编排和服务管理构件能够通过虚拟化服务640、插件642以及抽象所支持的基本虚拟化操作的虚拟化API 646与虚拟化层连接。根据使用OVAB的一种实施例,该API能够是OVAB部署器接口,该OVAB部署器接口允许OVAB部署器执行组件创建的任务。除了计算机硬件机器(例如,ExaLogic)之外,产品(例如,OVAB)还支持虚拟化提供者,例如,OVM。产品(例如,OVAB部署器)还提供用于允许插件开发以支持附加的虚拟化技术的SPI,例如,EC2。根据一种实施例,除了管理组件的生命周期之外,编排引擎/SME还能够通过OVAB虚拟化API来上载和部署组件。
为了支持开发者/演示场景,根据一种实施例,***还能够实现能够在本地的OS进程上运行的有限的解决方案(即,没有虚拟化)。这种能力能够通过提供实现虚拟组件服务API的一部分的实体插件来实现。
图14是根据一种实施例的用于将编排引擎在PaaS平台构件上使用的过程的流程图。如图14所示,在步骤650,提供了一台或多台计算机,包括在其上执行的云环境和PaaS平台构件(PaaS平台)。
在步骤652,一个或多个服务定义包被接收以用于平台构件,其中每个服务定义包都为特定的企业应用构件定义了该特定的企业应用构件可如何作为平台构件内的服务类型来传递的。
在步骤654,过程在服务定义包内确定为一组虚拟设备定义拓扑和配置的虚拟组件。
在步骤656,特定的服务类型被确定以待供应于云环境中使用,并且相应的服务管理引擎被配置于平台构件内以支持那些特定的服务类型。
在步骤658,过程与多个服务管理引擎通信,以控制服务创建、提供者依赖关系分辨、服务与提供者的关联、以及云环境内的服务的生命周期管理的流程。
弹性管理器
图15进一步示出了根据一种实施例的弹性管理器在PaaS平台构件上的使用。
如图15所示,根据一种实施例,包括环境管理器662在内的云弹性管理器660能够使用度量采集器664、665和警报670来确定运行于环境中的服务的健康状况。一旦环境的状态被确定,云弹性管理器就能够采取适当的动作672。根据一种实施例,度量采集器、警报及动作能够作为HK2合同来提供,使得度量采集器、警报及动作的集合是可扩展的。
根据一种实施例,度量采集器是周期性地收集并维持有关服务的度量数据的对象。例如,度量采集器可以周期性地收集堆统计数据,例如,所使用的存储器和所提交的存储器。其他度量采集器能够周期性地采集有关CPU使用量的度量。一般地,度量采集器提供有关某些资源使用的状态的信息。度量还能够由外部监测工具提供并且不需要为度量采集器对象。根据一种实施例,云弹性管理器允许任意Java Bean构件提供度量数据以用来生成警报。
根据一种实施例,警报对象通过分析由一个或多个度量采集器在一段时间内采集的度量数据来周期性地检查环境中的服务的健康状况。例如,警报可以检查过去10分钟的CPU使用量,以确定环境是否处于压力之下。在警报确定了服务或环境的状态之后,它能够执行某些动作,例如:发送电子邮件;记录消息;发送事件;或者放大或缩小服务。根据一种实施例,警报能够采取多个动作。
根据一种实施例,云弹性管理器能够包含允许警报被指定为表达语言(EL)表达式的统一的EL引擎668。EL表达式还能够在它们的表达式中使用度量采集器和警报。根据一种实施例,云弹性管理器还允许外部EL解析器对象667进行注册;这会允许其他类型的对象(例如,MBean或POJO)用于表达式中。
度量采集器、警报及动作典型地需要某些配置数据。例如,度量采集器可能需要指定度量数据应当被保持的持续时间的某些配置数据。同样地,警报可能需要指定阈值的某些配置数据。根据一种实施例,云弹性管理器依靠云账户管理器来保持这样的配置数据。再者,配置数据能够基于HK2,由此允许简单的可扩展性。
图16是根据一种实施例的用于将弹性管理器在PaaS平台构件上使用的过程的流程图。如图16所示,在步骤673,提供了一台或多台计算机,包括在其上执行的云环境和PaaS平台构件(PaaS平台)。
在步骤674,编排引擎确定待供应于云环境中使用的特定的服务类型,并且在平台构件内配置相应的服务管理引擎以支持那些特定的服务类型。
在步骤676,弹性管理器确定平台构件内的服务的健康状况,并且采取适当的动作,包括检测事件,发出警报和/或通知编排引擎来管理服务生命周期。
在步骤677,一个或多个度量采集器对象周期性地收集并维持有关服务资源使用量的度量数据;而一个或多个警报对象通过分析由一个或多个度量采集器在一段时间内采集的度量数据来周期性地检查环境中的服务的健康状况。
在步骤679,弹性管理器被配置用于管理服务生命周期,以对包括所增加的对特定服务的需求在内的要求作出响应。
SDP的更新及打补丁
图17进一步示出了根据一种实施例的服务定义包在PaaS平台构件上的打补丁。根据一种实施例,服务能够被周期性地维持以确保它们在例如漏洞修复、安全更新和配置修改方面是最新的。为了帮助确保同质的环境,服务应当按照及时的方式以同一组补丁及配置更新来更新。
根据一种实施例,更新被定义为必须对***做出的改变。更新的实例包括安全补丁的应用、构件的升级,或者配置值的改变。根据更新的类型,某些更新可能需要停机时间,而其他更新可能不需要停机时间。***能够考虑到这两种情形。
根据一种实施例,更新能够包括硬更新——需要服务停机时间的更新(例如,中间件的补丁,操作***(OS)更新等),或者服务重启;以软更新——不需要***停机时间的更新(例如,某些配置改变)。
软更新避免了停机时间,但是会牺牲服务稳定性。对于这种情形,重要的是***管理员对更新进行准确分类。重要的还有:所有服务都要更新以保持环境同质,并且维护窗口受到限制以确保所有的服务都被准确更新。
根据一种实施例,维护窗口被定义为更新将被应用于特定服务的时间帧。对于不同的服务,不同的维护窗口能够是不同的。一般地,下列动作中的一项或多项将会在维护窗口内发生,取决于更新类型:锁定服务(典型地,仅对于硬更新);备份服务;应用任意或所有OS更新;执行***配置改变;应用企业应用(例如,Fusion Middleware构件)的补丁;执行服务配置改变(例如,调整线程,IO超时等);执行其他非标准构件的更新;重启服务VM;执行健康检查;和/或开放公共访问的服务。
对于软更新,并非所有上述步骤都可能是必要的。但是,软更新仍然被优选地在服务访问处于最低限度时(例如,在夜间)应用。尽管某些更新可能不需要服务运行时间的重新开始或重新引导,但是一般建议重启托管着服务的虚拟机(VM)以提供干净的状态。
根据一种实施例,服务的升级类似于硬更新,除了一个或多个构件将会经历大的改变,该大的变化会涉及下列项中的一项或多项:具有不同版本的软件构件的安装;软件构件的次要版本升级;或者配置迁移。
根据一种实施例,如果正在升级的构件提供必要的工具以及使迁移场景自动化的能力,则服务可以进行升级。
根据一种实施例,假定库在服务运行时间内可作为本地(或已安装的)文件***来使用。库能够被用来保持将会在维护窗口内被要求的所有构件(补丁、配置文件、脚本等)。例如,库能够保持不同版本的服务的伪像,例如,
repository://.../<service-name>/<version-#>/<maintenance-window-#>/...
如图17所示,根据一种实施例,在维护窗口之前,库以必要的构件682(例如,补丁、Puppet清单或Shell脚本)来更新。更新能够使用配置工具(例如,Puppet)或者提供相似功能的工具或构件来驱动。根据一种实施例,如果服务不具有Puppet或者已安装的适当的配置工具,则打补丁的基础设施将会安装配置工具并且将会应用在库中可利用的清单。
服务管理员还可以选择不同的自动化架构来处理更新。所有的更新都应当是事务性的,并且应当能够在失败的情况下进行回滚。
根据一种实施例,***管理员然后定义维护窗口685,以由服务升级逻辑684使用。根据一种实施例,云管理控制台能够被用来定义维护窗口。***管理员然后配置信息,例如:待打补丁的服务的服务名称及SDP的版本;维护窗口是硬窗口还是软窗口;维护窗口的长度(典型地,对于硬更新为60分钟);用于安排更新的时间帧(典型地,对于硬更新为一周);以及用于限定更新的适当时间的任意其他参数。
根据一种实施例,服务升级逻辑然后将给每个服务分配缺省的时隙。如果发生“硬”更新,则能够给服务管理员发送电子邮件通知,对他们通告***停机时间。根据一种实施例,当服务管理员的服务将会导致停机时间并更新时,他/她会具有在三个时隙当中进行选择的选项。
在更新时间,更新由服务升级逻辑687请求,并且在库中的信息被用来对服务打补丁或更新,从其原始配置686到修改的配置689。
图18是根据一种实施例的用于将服务定义包在PaaS平台构件上打补丁的过程的流程图。如图18所示,在步骤690,提供了一台或多台计算机,包括在其上执行的云环境和PaaS平台构件(PaaS平台)。
在步骤691,提供了用于平台构件的一个或多个服务定义包,其中每个服务定义包为特定的企业应用构件定义了该特定的企业应用构件可如何作为平台构件内的服务类型来传递的。
在步骤692,服务升级逻辑被提供用于在维护窗口内根据与服务定义包关联的一个或多个补丁或更新来修改该一个或多个服务定义包。
在步骤694,库在服务运行时间被提供作为本地的或已安装的文件***之一,并且该库包含在维护窗口内由服务升级逻辑用来修改服务定义包的补丁、配置文件、脚本和/或其他构件。
在步骤696,服务的特性和/或要求通过重新配置平台构件自身和/或通过安装与服务的服务定义包对应的磁盘卷并直接修改其文件***内容来进动作态修改或更新。
本发明可以根据本公开内容的教导方便地使用一个或多个常规的通用或专用的数字计算机、计算器件、机器或微处理器(包括一个或多个处理器、存储器和/或所编程的计算机可读存储介质)来实现。适当的软件编码能够由熟练的编程人员基于本公开内容的教导容易地准备,如同本领域技术人员所清楚的。
在某些实施例中,本发明包括作为具有存储于其上/内的能够被用来对计算机进行编程以执行本发明的任意过程的指令的非临时性存储介质或计算机可读介质(介质)的计算机程序产品。存储介质能够包括(但不限于)任意类型的磁盘(包括软盘、光盘、DVD、CD-ROM、微型硬盘和磁光盘)、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、闪存器件、磁卡或光卡、纳米***(包括分子存储器IC),或者适用于存储指令和/或数据的任意类型的介质或器件。
根据一种实施例,本发明提供了一种用于提供在云计算环境下使用的服务管理引擎的装置。该装置包含:作为云环境内的可安装的软件套件来提供的且支持企业应用的自服务供应的平台构件;以及与编排引擎通信的一个或多个服务管理引擎,该一个或多个服务管理引擎被用来将服务作为服务类型来供应,包括服务类型的供应、生命周期管理及监测中的一项或多项。该装置确定待供应于云环境中使用的特定的服务类型,并且在平台构件内配置相应的服务管理引擎以支持那些特定的服务类型。
根据另一种实施例,该一个或多个服务管理引擎每个都被用来解析服务定义包,并且根据服务定义包的内容将服务作为一个或多个不同的服务类型来供应。
根据另一种实施例,平台内容使服务类型能够由该一个或多个服务管理引擎根据平台构件自身的配置实例化为提供者服务管理引擎。
以上关于本发明的描述已经出于说明和描述的目的而给出。它并非意指是穷尽性的或者将本发明限定于所公开的精确形式。本领域技术人员应当清楚许多修改和变更。修改和变更包括所公开特征的任意相关组合。实施例被选择并被描述以便最佳地解释本发明的原理及其实际应用,由此使本领域技术人员能够在各种实施例以及适合于想得到的特定用途的各种修改方面更好地理解本发明。本发明的范围意指由下面的权利要求及其等效形式来定义。

Claims (14)

1.一种用于提供在云计算环境下使用的服务管理引擎的***,包含:
一台或多台计算机,包含在其上执行的云环境;
平台构件,作为在所述云环境内可安装的软件套件而提供且支持企业应用的自服务供应;
与编排引擎通信的一个或多个服务管理引擎,所述一个或多个服务管理引擎被用来将服务作为服务类型来提供,包括所述服务类型的供应、生命周期管理和/或监测;并且
其中所述***确定待提供于所述云环境中使用的特定的服务类型,并且配置所述平台构件内的相应服务管理引擎以支持那些特定的服务类型。
2.根据权利要求1所述的***,其中所述一个或多个服务管理引擎的每一个被用来解析服务定义包,并且根据所述服务定义包的内容将服务作为一个或多个不同的服务类型来供应。
3.根据权利要求1或2所述的***,其中所述平台构件使服务类型能够由所述一个或多个服务管理引擎根据所述平台构件自身的配置来实例化为提供者服务管理引擎。
4.一种提供在云计算环境下使用的服务管理引擎的方法,包括:
提供包含在其上执行的云环境的一台或多台计算机;
提供作为在所述云环境内可安装的软件套件而提供的且支持企业应用的自服务供应的平台构件;
提供与编排引擎通信的一个或多个服务管理引擎,所述一个或多个服务管理引擎被用来将服务作为服务类型来供应,包括所述服务类型的供应、生命周期管理和/或监测;以及
确定待提供于所述云环境中使用的特定的服务类型,并且配置所述平台构件内的相应服务管理引擎以支持那些特定的服务类型。
5.根据权利要求4所述的方法,其中所述一个或多个服务管理引擎的每一个被用来解析服务定义包,并且根据所述服务定义包的内容将服务作为一个或多个不同的服务类型来供应。
6.根据权利要求4或5所述的方法,其中所述平台构件使服务类型能够由所述一个或多个服务管理引擎根据所述平台构件自身的配置来实例化为提供者服务管理引擎。
7.一种包含存储于其上的指令的非临时性计算机可读介质,所述指令在由一台或多台计算机读取并执行时使得所述一台或多台计算机执行步骤,包括:
在包含在其上执行的云环境的一台或多台计算机处提供作为在所述云环境内可安装的软件套件而提供的且支持企业应用的自服务供应的平台构件;
提供与编排引擎通信的一个或多个服务管理引擎,所述一个或多个服务管理引擎被用来将服务作为服务类型来供应,包括所述服务类型的供应、生命周期管理和/或监测;以及
确定待提供于所述云环境中使用的特定的服务类型,并且配置所述平台构件内的相应服务管理引擎以支持那些特定的服务类型。
8.根据权利要求7所述的非临时性计算机可读介质,其中所述一个或多个服务管理引擎的每一个被用来解析服务定义包,并且根据所述服务定义包的内容将服务作为一个或多个不同的服务类型来供应。
9.根据权利要求7或8所述的非临时性计算机可读介质,其中所述平台构件使服务类型能够由所述一个或多个服务管理引擎根据所述平台构件自身的配置来实例化为提供者服务管理引擎。
10.一种包含机器可读指令的计算机程序,所述指令在由一个或多个计算机***执行时使得所述一个或多个计算机***执行根据权利要求4至6中的任一项所述的方法。
11.一种用于使得一台或多台计算机来实施根据权利要求4至6中的任一项所述的方法的程序。
12.一种用于提供在云计算环境下使用的服务管理引擎的装置,包含:
平台构件,作为在云环境内可安装的软件套件而提供的且支持企业应用的自服务供应;
一个或多个服务管理引擎,与编排引擎通信,所述一个或多个服务管理引擎被用来将服务作为服务类型来供应,包括所述服务类型的供应、生命周期管理和/或监测中的一项或多项;并且
其中所述装置确定待提供于所述云环境中使用的特定的服务类型,并且配置所述平台构件内的相应服务管理引擎以支持那些特定的服务类型。
13.根据权利要求12所述的装置,其中所述一个或多个服务管理引擎的每一个被用来解析服务定义包,并且根据所述服务定义包的内容将服务作为一个或多个不同的服务类型来供应。
14.根据权利要求12所述的装置,其中所述平台内容使服务类型能够由所述一个或多个服务管理引擎根据所述平台构件自身的配置来实例化为提供者服务管理引擎。
CN201380040906.XA 2012-09-07 2013-09-06 用于提供在云计算环境下使用的服务管理引擎的***和方法 Active CN104541246B (zh)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US201261698467P 2012-09-07 2012-09-07
US61/698,467 2012-09-07
US201361748658P 2013-01-03 2013-01-03
US61/748,658 2013-01-03
US201361766819P 2013-02-20 2013-02-20
US61/766,819 2013-02-20
US201361799126P 2013-03-15 2013-03-15
US61/799,126 2013-03-15
US13/970,403 US10122596B2 (en) 2012-09-07 2013-08-19 System and method for providing a service management engine for use with a cloud computing environment
US13/970,403 2013-08-19
PCT/US2013/058574 WO2014039866A1 (en) 2012-09-07 2013-09-06 System and method for providing a service management engine for use with a cloud computing environment

Publications (2)

Publication Number Publication Date
CN104541246A true CN104541246A (zh) 2015-04-22
CN104541246B CN104541246B (zh) 2020-03-03

Family

ID=50234529

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380040906.XA Active CN104541246B (zh) 2012-09-07 2013-09-06 用于提供在云计算环境下使用的服务管理引擎的***和方法

Country Status (5)

Country Link
US (3) US10122596B2 (zh)
EP (1) EP2893445A1 (zh)
JP (1) JP6329547B2 (zh)
CN (1) CN104541246B (zh)
WO (1) WO2014039866A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105376225A (zh) * 2015-11-02 2016-03-02 亚信科技(南京)有限公司 一种软件服务化的方法及装置
CN105700964A (zh) * 2016-02-23 2016-06-22 浪潮通用软件有限公司 一种实现异构软件***间远程通讯的方法
CN106406834A (zh) * 2015-07-30 2017-02-15 中兴通讯股份有限公司 一种管理应用***的方法、装置和***
CN108292240A (zh) * 2015-10-05 2018-07-17 富古股份有限公司 用于在基于云的计算环境中构建、优化和实施基础架构的***和方法
CN114930785A (zh) * 2020-01-10 2022-08-19 摩根大通国家银行 用于实现编配引擎的***和方法

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10326978B2 (en) 2010-06-30 2019-06-18 Warner Bros. Entertainment Inc. Method and apparatus for generating virtual or augmented reality presentations with 3D audio positioning
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
US20140280964A1 (en) * 2013-03-15 2014-09-18 Gravitant, Inc. Systems, methods and computer readable mediums for implementing cloud service brokerage platform functionalities
US9634965B2 (en) 2013-09-20 2017-04-25 Oracle International Corporation System and method for providing a job manager for use with a cloud platform environment
WO2015112614A1 (en) 2014-01-21 2015-07-30 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
US11570065B2 (en) * 2014-04-09 2023-01-31 Convida Wireless, Llc Service enabler function
US10356155B2 (en) * 2014-04-30 2019-07-16 Suse Llc Service onboarding
US9843478B2 (en) 2014-06-12 2017-12-12 Dell Products L.P. Template builder for end-to-end provisioning and lifecycle management of it infrastructure and services
US11477278B2 (en) * 2014-06-24 2022-10-18 Oracle International Corporation System and method for supporting partitions in a multitenant application server environment
JP6748638B2 (ja) 2014-09-24 2020-09-02 オラクル・インターナショナル・コーポレイション マルチテナントアプリケーションサーバ環境においてパッチングをサポートするためのシステムおよび方法
US10318280B2 (en) 2014-09-24 2019-06-11 Oracle International Corporation System and method for supporting patching in a multitenant application server environment
US10225209B2 (en) * 2015-01-21 2019-03-05 Oracle International Corporation System and method for interceptors in a multitenant application server environment
US10250512B2 (en) 2015-01-21 2019-04-02 Oracle International Corporation System and method for traffic director support in a multitenant application server environment
US9652612B2 (en) 2015-03-25 2017-05-16 International Business Machines Corporation Security within a software-defined infrastructure
US10140159B1 (en) 2016-03-04 2018-11-27 Quest Software Inc. Systems and methods for dynamic creation of container manifests
US10127030B1 (en) 2016-03-04 2018-11-13 Quest Software Inc. Systems and methods for controlled container execution
US10270841B1 (en) 2016-03-04 2019-04-23 Quest Software Inc. Systems and methods of real-time container deployment
US10289457B1 (en) 2016-03-30 2019-05-14 Quest Software Inc. Systems and methods for dynamic discovery of container-based microservices
US10270846B2 (en) * 2016-08-11 2019-04-23 Dell Products L.P. System and method for monitoring a service-oriented architecture in a load-balanced environment
US11138017B2 (en) 2016-09-16 2021-10-05 Oracle International Corporation System and method for partition administrative targeting in an application server environment
JP6419234B2 (ja) 2017-02-28 2018-11-07 株式会社テクロック 測定ソリューションサービス提供システム
JP6363246B1 (ja) 2017-04-03 2018-07-25 株式会社テクロック 測定ソリューションサービス提供システム
US11184432B2 (en) * 2017-09-28 2021-11-23 Oracle International Corporation System and method for dynamic auto-scaling based on roles
JP6649349B2 (ja) * 2017-11-21 2020-02-19 株式会社テクロック・スマートソリューションズ 測定ソリューションサービス提供システム
JP7391862B2 (ja) 2017-12-08 2023-12-05 ネット-サンダー,エル・エル・シー 自動的に配備される情報技術(it)システム及び方法
JP2022536706A (ja) 2019-06-11 2022-08-18 ネット-サンダー,エル・エル・シー セキュリティが強化された自動的に配備される情報技術(it)システム及び方法
CN112243016B (zh) * 2019-07-18 2024-04-23 北京森格寰瑞智能科技有限公司 一种中间件平台、终端设备、5g人工智能云处理***及处理方法
US11461091B2 (en) 2021-02-03 2022-10-04 Oracle International Corporation System and method for creating or updating tenant artifacts by a multi-tenant cloud service
US11789774B2 (en) 2021-02-22 2023-10-17 International Business Machines Corporation Optimization of workload scheduling in a distributed shared resource environment
JP7284791B2 (ja) 2021-09-22 2023-05-31 株式会社日立製作所 分散トランザクションシステム及び分散トランザクションシステムにおける分散トランザクション処理方法
US11985032B2 (en) 2022-08-31 2024-05-14 6Connect, Inc Metadata-aware templating engine for assigning internet protocol address space in an organization

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100042449A1 (en) * 2008-08-14 2010-02-18 Electronic Data Systems Corporation Heterogeneous Information Technology (IT) Infrastructure Management Orchestration
US20120016681A1 (en) * 2010-07-13 2012-01-19 Salesforce.Com, Inc. System, method and computer program product for analyzing monitored usage of a resource
US20120072985A1 (en) * 2010-05-18 2012-03-22 Freedom Professional Service & Technologies LLC d/b/a Freedom OSS Managing services in a cloud computing environment
WO2012100092A2 (en) * 2011-01-19 2012-07-26 Servicemesh, Inc. System and method for a cloud computing abstraction layer with security zone facilities
US20130346945A1 (en) * 2012-06-22 2013-12-26 Shenol YOUSOUF Deployment of software applications on a cloud computing platform

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6243451B1 (en) * 1997-10-09 2001-06-05 Alcatel Usa Sourcing, L.P. Service management access point
EP3282358A1 (en) * 2005-02-11 2018-02-14 Comptel Corporation Service provisioning method, system and computer program product
WO2008097801A2 (en) * 2007-02-05 2008-08-14 Skyway Software, Inc. Method and system for creating, deploying, and utilizing a service
US8271974B2 (en) * 2008-10-08 2012-09-18 Kaavo Inc. Cloud computing lifecycle management for N-tier applications
US8392566B1 (en) * 2008-10-30 2013-03-05 Hewlett-Packard Development Company, L.P. Computer executable services
US9442810B2 (en) * 2009-07-31 2016-09-13 Paypal, Inc. Cloud computing: unified management console for services and resources in a data center
US8813065B2 (en) 2010-04-26 2014-08-19 Vmware, Inc. Microcloud platform delivery system
US8627426B2 (en) 2010-04-26 2014-01-07 Vmware, Inc. Cloud platform architecture
JP4852734B1 (ja) 2010-09-22 2012-01-11 株式会社Csk サービス制御システム
US8805970B2 (en) * 2010-10-25 2014-08-12 International Business Machines Corporation Automatic management of configuration parameters and parameter management engine
JP5598319B2 (ja) 2010-12-27 2014-10-01 富士通株式会社 アプリケーションプログラムの動作管理方法、動作管理装置及び動作管理プログラム
US9063789B2 (en) 2011-02-08 2015-06-23 International Business Machines Corporation Hybrid cloud integrator plug-in components
ES2429215B1 (es) * 2011-04-07 2014-09-02 Telefónica, S.A. Sistema intermediario de servicios
US9015710B2 (en) 2011-04-12 2015-04-21 Pivotal Software, Inc. Deployment system for multi-node applications
US9336060B2 (en) * 2011-06-17 2016-05-10 Microsoft Technology Licensing, Llc Middleware services framework for on-premises and cloud deployment
US20130227143A1 (en) 2012-02-27 2013-08-29 Verizon Patent And Licensing Inc. Method and system for providing transaction management in a request-oriented service architecture using meta-models
US9052961B2 (en) * 2012-03-02 2015-06-09 Vmware, Inc. System to generate a deployment plan for a cloud infrastructure according to logical, multi-tier application blueprint
CN104067257B (zh) * 2012-04-30 2018-01-12 惠普发展公司,有限责任合伙企业 自动化事件管理***,管理事件方法及事件管理***
US9317325B2 (en) 2012-05-01 2016-04-19 Red Hat, Inc. Application idling in a multi-tenant cloud-based application hosting environment
US9245111B2 (en) 2012-05-01 2016-01-26 Red Hat, Inc. Owner command execution in a multi-tenant cloud hosting environment
DE102012210698A1 (de) 2012-06-25 2014-01-02 Robert Bosch Gmbh Verfahren zum Durchführen eines Energiemanagements eines Fahrzeuges
GB2503463A (en) * 2012-06-27 2014-01-01 Ibm Overriding abstract resource manager methods to provide resources to implement nodes in a service definition
US9342536B2 (en) * 2012-07-31 2016-05-17 International Business Machines Corporation Intent based automation of data management operations by a data management engine
EP2831746A1 (en) * 2012-07-31 2015-02-04 Hewlett-Packard Development Company, L.P. Orchestrating hybrid cloud services
US9201639B2 (en) 2012-09-07 2015-12-01 Oracle International Corporation System and method for service definition packages for use with a cloud computing environment
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
US9424024B2 (en) 2012-09-07 2016-08-23 Oracle International Corporation System and method for elasticity management of services with a cloud computing environment
US9323517B2 (en) 2012-09-07 2016-04-26 Oracle International Corporation System and method for dynamic modification of service definition packages with a cloud computing environment
US9357034B2 (en) 2012-09-07 2016-05-31 Oracle International Corporation System and method for orchestration of services for use with a cloud computing environment
US9818127B2 (en) * 2013-03-15 2017-11-14 International Business Machines Corporation Implementing comparison of cloud service provider package offerings
US9898344B2 (en) 2013-09-20 2018-02-20 Oracle International Corporation System and method for providing configuration modularity in an application server, cloud platform, or other environment
US9634965B2 (en) 2013-09-20 2017-04-25 Oracle International Corporation System and method for providing a job manager for use with a cloud platform environment
US10122650B2 (en) 2013-09-20 2018-11-06 Oracle International Corporation System and method for tenant management in a cloud platform environment
WO2015065374A1 (en) * 2013-10-30 2015-05-07 Hewlett-Packard Development Company, L.P. Management of the lifecycle of a cloud service modeled as a topology

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100042449A1 (en) * 2008-08-14 2010-02-18 Electronic Data Systems Corporation Heterogeneous Information Technology (IT) Infrastructure Management Orchestration
US20120072985A1 (en) * 2010-05-18 2012-03-22 Freedom Professional Service & Technologies LLC d/b/a Freedom OSS Managing services in a cloud computing environment
US20120016681A1 (en) * 2010-07-13 2012-01-19 Salesforce.Com, Inc. System, method and computer program product for analyzing monitored usage of a resource
WO2012100092A2 (en) * 2011-01-19 2012-07-26 Servicemesh, Inc. System and method for a cloud computing abstraction layer with security zone facilities
US20130346945A1 (en) * 2012-06-22 2013-12-26 Shenol YOUSOUF Deployment of software applications on a cloud computing platform

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LUIS RODERO-MERINO ET AL.: "From infrastructure delivery to service management in clouds", 《FUTURE GENERATION COMPUTER SYSTEMS》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106406834A (zh) * 2015-07-30 2017-02-15 中兴通讯股份有限公司 一种管理应用***的方法、装置和***
CN108292240A (zh) * 2015-10-05 2018-07-17 富古股份有限公司 用于在基于云的计算环境中构建、优化和实施基础架构的***和方法
CN105376225A (zh) * 2015-11-02 2016-03-02 亚信科技(南京)有限公司 一种软件服务化的方法及装置
CN105700964A (zh) * 2016-02-23 2016-06-22 浪潮通用软件有限公司 一种实现异构软件***间远程通讯的方法
CN114930785A (zh) * 2020-01-10 2022-08-19 摩根大通国家银行 用于实现编配引擎的***和方法
CN114930785B (zh) * 2020-01-10 2023-12-08 摩根大通国家银行 用于实现编配引擎的***和方法

Also Published As

Publication number Publication date
US11374833B2 (en) 2022-06-28
WO2014039866A1 (en) 2014-03-13
US10122596B2 (en) 2018-11-06
JP6329547B2 (ja) 2018-05-23
US20140075019A1 (en) 2014-03-13
CN104541246B (zh) 2020-03-03
JP2015534167A (ja) 2015-11-26
US20190052550A1 (en) 2019-02-14
EP2893445A1 (en) 2015-07-15
US20220321430A1 (en) 2022-10-06
US12009999B2 (en) 2024-06-11

Similar Documents

Publication Publication Date Title
CN104541246A (zh) 用于提供在云计算环境下使用的服务管理引擎的***和方法
US11050642B2 (en) System and method for placement logic in a cloud platform environment
US9760358B2 (en) System and method for test to production support in a cloud platform environment
US9684502B2 (en) Apparatus, systems, and methods for distributed application orchestration and deployment
US9612817B2 (en) System and method for providing a physical plugin for use in a cloud platform environment
US9424024B2 (en) System and method for elasticity management of services with a cloud computing environment
US9201639B2 (en) System and method for service definition packages for use with a cloud computing environment
US9357034B2 (en) System and method for orchestration of services for use with a cloud computing environment
US9323517B2 (en) System and method for dynamic modification of service definition packages with a cloud computing environment
US9817994B2 (en) System and method for integrating a database with a service deployed on a cloud platform
US20140082131A1 (en) Automatically configured management service payloads for cloud it services delivery
US9742688B2 (en) System and method for supporting service resources and feature sets in a cloud platform environment
US11915049B2 (en) Method and apparatus for scaling a custom resource with custom metrics in a containerized application handling system
CN108701035A (zh) 应用属性的管理
Draft RFP 133 Cloud Computing

Legal Events

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