CN105531688A - 提供作为其它服务的资源的服务 - Google Patents
提供作为其它服务的资源的服务 Download PDFInfo
- Publication number
- CN105531688A CN105531688A CN201380079373.6A CN201380079373A CN105531688A CN 105531688 A CN105531688 A CN 105531688A CN 201380079373 A CN201380079373 A CN 201380079373A CN 105531688 A CN105531688 A CN 105531688A
- Authority
- CN
- China
- Prior art keywords
- resource
- instantiation
- service
- building block
- instruction
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
提供服务可包括接收对资源提供者所提供的第一服务的请求并提供资源提供者所实例化的实例化第一资源的引用。提供服务可包括接收对资源提供者所提供的第二服务的请求。提供服务可包括如果第一实例化资源能够提供第二服务,则分割第一实例化资源,以创建第二实例化资源。提供服务可包括将资源提供者和第一实例化资源进一步分割的可用性注册在一系列构件块中。提供服务可包括更新该一系列构件块中的一个构件块并将该更新传播到该一系列构件块。
Description
背景技术
云服务通常指允许最终接收方计算机系统通过网络访问托管计算和/或存储资源或联网资源的池和/或在以这些为基础的要求上提供的能力的服务。云服务可提供软件即服务(SaaS)、基础设施即服务(IaaS)和/或平台即服务(PaaS)以及其它服务。云服务可提供公共服务和/或如客户所请求的私人服务。
附图说明
图1示出根据本公开的用于提供资源的例子的流程图。
图2示出根据本公开的实例化服务的例子的块图。
图3示出根据本公开的用于创建云服务提供系统的实例化服务的环境的例子的块图。
图4示出根据本公开的用于选择云服务的资源的例子的流程图。
图5示出根据本公开的计算设备的例子的块图。
图6示出根据本公开的用于提供资源的系统的例子的块图。
图7示出根据本公开的用于提供资源的方法的例子的流程图。
具体实施方式
对于基于云的提供系统,例如服务器、存储器、网络安全、安装的应用的整个资源单元作为服务被提供。在之前的方法中,可通过预留和/或分割服务的整个实例以及所有相关支持服务来为用户提供服务。也就是说,所分割的服务和所有相关支持服务不被划分,且用户可使用整个分割的服务。
在多个例子中,可通过预留和/或分割服务实例的一部分和/或所有相关支持服务的一部分来为用户提供服务。相比于提供服务实例的一部分,通过分割服务的整个实例进行提供可以以较少的计算步骤来完成。然而,服务实例可被共享,且相关支持服务可通过将服务实例的第一部分提供给第一用户并通过将服务实例的第二部分提供给第一用户和/或第二用户而被共享。
例如,在多个例子中,用户可通过应用请求第一数量的资源。资源提供者可实例化资源并向用户提供第一实例化资源。用户可随后请求第二数量的资源。第二数量的资源可由充当不同资源提供者的第一实例化资源实例化,以节约资源。第一实例化资源可被划分,例如分割,以节约资源而不是为第二数量的实例化资源分配不同数量的资源。因此,第一数量的实例化资源和第二数量的实例化资源可共享资源,同时彼此独立和隔离。
相对于创建不共享资源的第一数量的实例化资源和第二数量的实例化资源,将第一数量的实例化资源分割成第一数量的实例化资源和第二数量的实例化资源可提供提高的资源利用率。如在本文使用的,用户可以是客户和/或客户做出多个请求所借助的应用。应用指可在硬件处理器、存储器等上运行以处理多个请求并通过网络将请求发送到资源提供者的机器可读指令,例如软件、固件等。在多个例子中,应用可以是最终用户应用和/或用于管理多个资源的应用。资源可以是物理资源和/或逻辑资源。例如,资源可包括软件即服务(SaaS)、基础设施即服务(IaaS)和/或平台即服务(PaaS)。结合图1-7讨论资源的其它例子。
在本公开中,参考了形成本公开的一部分的附图,附图作为例证示出了本公开的多个例子可如何被实践。这些例子足够详细地被描述以使本领域中的普通技术人员能够实践本公开的例子,且应理解,可使用其它例子以及可做出过程、电气和/或结构变化而不偏离本公开的范围。
本文的附图遵循编号约定,其中第一数字相应于附图号,且其余数字识别在附图中的元件或组件。在本文的各种图中所示的元件可被添加、交换和/或消除,以便提供本公开的多个额外的例子。此外,在附图中提供的元件的比例和相对标度旨在示出本公开的例子,且不应在限制性意义上被理解。
图1示出根据本公开的提供资源的例子的流程图。图1包括资源提供者102-1、资源提供者102-2、资源提供品104、服务设计106、实例化资源108-1和实例化资源108-2。如在本文使用的,服务设计106可被称为蓝图106。
应用和/或用户可从资源提供者102-1请求第一数量的资源。资源提供者可以是创建、组织或预留实例化资源以供应用(例如消费者)使用的物理提供者和/或逻辑提供者。例如,资源提供者102-1可以是能够配置特定端口以允许网络业务穿越特定端口的接入层交换机。接入层交换机可以是资源提供者,且特定端口的配置(例如关闭和/或打开端口)可以是接入层提供的资源,例如服务。资源提供者和资源对的其它例子可包括用于实例化虚拟机(VM)的虚拟中心和/或用于创建存储容器的存储自动化工具。
资源提供者102-1可识别在实例化资源108中应用可调用的多个资源提供品104。资源提供品104是与实例化资源108-1相关的能力。能力可包括创建和/或修改实例化资源108-1。能力可包括开始和/或停止实例化资源108-1连同其它能力。如在本文使用的,术语“能力”意在包容的。能力是实例化资源108-1所特有的。例如,如果实例化资源108-1是数据库,则能力可包括创建数据库,填充数据库、修改数据库和/或重构数据库以及与数据库相关的其它能力。
在多个资源提供品104被识别出之后,服务设计106可被创建。服务设计106是允许应用通过描述(例如安排)为此(例如,为执行特定的生命周期管理行动)所需的步骤来提供并接着管理实例化资源108-1的拓扑、蓝图和/或工作流。
实例化资源108-1和实例化资源108-2可以是所请求的资源的实例。资源或所请求的资源是没有被实例化的资源。例如,所请求的资源可以是服务器,而实例化的资源可以是服务器的实例化。实例化资源108-1可基于与应用所做出的资源请求一起提供的多个规范来创建。实例化的资源108-1的例子可包括操作系统、服务器和/或网络连接连同实例化资源108-1的其它例子。在多个例子中,实例化资源108-1可执行多个逻辑和/或硬件功能。实例化资源108-1可消耗多个其它实例化资源,例如硬件和/或逻辑资源。例如,作为服务器的实例化资源108-1可消耗多个存储器资源以提供多个功能。
在之前的方法中,每当请求服务时,通过将未使用的资源分配到实例化资源来实例化资源。例如,应用可请求第一服务器,且资源提供者102可创建实例化资源108-1连同其它实例化资源,实例化资源108-1为消耗第一存储器、第一数量的网络连接和第一操作系统的第一服务器。应用可请求第二服务器,且第二提供者102可创建不同的实例化资源,该实例化资源为第二服务器。第二服务器可消耗第二存储器、第二数量的网络连接和第二操作系统。也就是说,在之前的方法中,每当服务器被实例化时,为服务器预留新的一组实例化资源(例如存储器)、多个网络连接和操作系统。因此,可为第二实例化资源预留不同数量的实例化资源,即使为第一实例化资源108-1预留的实例化资源的初始数量保持未充分使用。然而,在本公开的多个例子中,第二实例化资源可通过分割第一实例化资源108-1来与第一实例化资源108-1共享初始数量的实例化资源。
在多个例子中,资源提供者102-1可如上所述创建实例化资源108-1。实例化资源108-1可使用多个实例化资源,来向请求实例化资源108-1的应用提供多个功能。在多个例子中,实例化资源108-1可被分割以创建实例化资源108-1和实例化资源108-2。也就是说,实例化资源108-1所使用的多个实例化资源可被分割,使得多个实例化资源的第一部分由实例化资源108-1使用,且多个实例化资源的第二部分由实例化资源108-2使用。
例如,实例化资源108-1可以是数据库。数据库可被分割,使得实例化资源108-2可以是由数据库例如实例化资源108-1支持的模式。因此,数据库例如实例化资源108-1所使用的实例化资源可在实例化资源108-1和实例化资源108-2之间被分割和划分,以提供对数据库和/或与数据库相关的模式的隔离用户访问。也就是说,实例化资源108-2可以是数据库的一部分,而不需要新实例化资源被分配以支持用于实例化资源108-2的不同数据库。相对于创建两个不同的数据库,特别是如果这两个不同的数据库是未充分使用的,使用单个数据库提供实例化资源108-1和实例化资源108-2可节约资源。
实例化资源108-1和实例化资源108-2可由资源提供者102-2分割。实例化资源108可以是和/或充当资源提供者102-2。在多个例子中,实例化资源108-1可独立于资源提供者102-2和/或实例化资源108-1可被包括在资源提供者102-2中。
创建资源提供者102-2可包括向资源提供者102-1注册(110)资源提供者102-2。在多个例子中,创建资源提供者102-2可包括向请求实例化资源108-1和/或实例化资源108-2的应用注册(110)资源提供者102-2。
注册(110)资源提供者102-2可包括注册与实例化资源108-1和/或实例化资源108-2相关的能力和/或功能。注册(110)资源提供者102-2可包括注册一种类型的资源提供者102-2或一种类型的实例化资源108-1和实例化资源108-2。例如,类型可以是数据库类型、服务器类型、网络连接类型和/或实例化资源的其它描述。注册110还可包括注册进一步描述实例化资源108-1和实例化资源108-2的多个参数。例如,参数可以是结构查询语言(SQL)连同描述资源提供者102-2和/或实例化资源108-1(例如数据库)的其它参数。
注册(110)资源提供者102-2还可包括注册与实例化资源108-1和/或实例化资源108-2相关的多个命令。与实例化资源108-1和108-2相关的命令可以是由应用使用来与实例化资源108-1和/或108-2通信的命令。
图2示出根据本公开的实例化服务的例子的块图。图2包括实例化服务228、抽象服务226和例如通称为构件块220的构件块220-1、220-2、220-3、220-4、220-5、220-6、220-7、220-8、220-9等。例子不限于图2所示的构件块220的数量。
构件块220是与向用户提供服务的实例化资源的拓扑中的拓扑位置相关的资源提供者。实例化资源的拓扑可以以自顶向下的方式(例如从例如实例化资源的根节点到例如实例化资源的叶节点)和/或以自下向上的方式(例如从叶节点到根节点)构建。根节点可代表第一级。从根节点分支的节点可代表第二级,等等,直到叶节点代表第N级为止。实例化资源的拓扑可描述实例化资源之间的相关性的数量。在多个例子中,多个实例化资源的拓扑可扩展到产生实例化资源的构件块的拓扑。例如,构件块220-1、构件块220-2和构件块220-3代表第一级,构件块220-4、构件块220-5和构件块220-6代表第二级,以及构件块220-7、构件块220-8和构件块220-9代表第N级。
每个构件块220可创建实例化资源。在多个例子中,构件块可被注册为和/或可构成实例化资源。在多个例子中,构件块220可用于创建实例化构件块。实例化构件块是与拓扑位置例如服务设计和/或蓝图相关的实例化资源。与由构件块220创建的实例化资源相关的功能和/或能力被称为资源提供品。例如,构件块220-1可创建可提供资源提供品222-1、资源提供品222-2和/或资源提供品222-3的实例化资源。构件块220-4可创建可提供资源提供品222-4、资源提供品222-5和/或资源提供品222-6的实例化资源。构件块220-7可创建可提供资源提供品222-7、资源提供品222-8和/或资源提供品222-8的实例化资源。构件块220可创建可提供与图2所示的不同的资源提供品的实例化资源。
构件块220可由多个不同的应用和/或由应用的多个实例使用。例如,实例化资源的第一拓扑可使用第一构件块来创建第一实例化资源。实例化资源的第二拓扑也可使用第一构件块来创建第二实例资源,其中第一实例化资源和第二实例化资源可取决于相同的实例化资源。也就是说,实例化资源的多个拓扑可分割实例化资源并部分地和/或全部使用实例化资源。
在多个例子中,多个构件块220可被创建,以针对应用(例如使用应用的用户)实例化多个实例化资源。产生服务的请求可由该应用和/或不同的应用接收。该请求可被分析,以确定多个构件块220是否可用于创建所请求的服务。该分析可确定构件块220是否可创建所请求的服务类型和/或是否存在策略、安全、租期和/或阻止所请求的服务的创建的其它上下文考虑因素。如果确定构件块220可实例化所请求的服务,则所请求的服务从构件块220被实例化。如果确定构件块220不能实例化所请求的服务,则新构件块被创建,且所请求的服务从新构件块被实例化。
例如,如果接收到对操作系统服务的请求,则多个构件块220可被分析,以确定多个构件块220是否可实例化操作系统服务,考虑到策略、安全、租期和/或其它上下文考虑因素。如果构件块220可实例化操作系统服务并且如果没有策略、安全、租期和/或其它上下文考虑因素,则操作系统服务从多个构件块220被实例化。如果构件块220因为例如构件块220实例化数据库相关服务和/或因为存在策略、安全、租期和/或其它上下文考虑因素而不能实例化操作系统服务,则可以创建用于实例化操作系统服务并与政策、安全、租期和/或其它上下文考虑因素一致的新构件块,以实现对操作系统服务的请求。
抽象服务226可使用模型基于拓扑(例如服务设计和/或蓝图)被建模或管理。拓扑可定义实例化资源之间和/或由属于不同级的构件块220创建的实例化构件块之间的多个相关性。例如,实例化资源的拓扑可定义由构件块220-7创建的第一实例化资源与由构件块220-4创建的第二实例化资源之间的相关性和/或连接。例如,拓扑可定义作为第一实例化资源的操作系统与在作为第二实例化资源的操作系统上运行的应用之间的相关性。
实例化服务228被提供给应用。实例化服务228由所实现的拓扑建模或描述。如在本文所述的,实例化服务228可由被提供给用户的应用和/或由直接由用户使用的应用使用。也就是说,实例化服务228可直接和/或间接地由用户使用。
在多个例子中,云服务资源的基于策略的选择可在云服务管理系统(例如HP云服务自动化(CSA))中实现。云服务管理系统可编排计算和基础设施资源以及复杂多层应用体系结构的部署。在多个例子中,云服务管理系统可包括基于类别的订阅过程。例如,订户可请求特定的云服务提供品在云服务中实现。在一些例子中,订户可修改预定云服务提供品,其中预定云服务提供品包括定价和其它客户特定特征。
图3示出根据本公开的用于创建云服务提供系统的实例化服务的环境的例子的块图。如图3所示,云服务管理系统300可包括多个不同的体系结构组件。例如,云服务管理系统300可包括云服务管理门户350、云订户门户352、云分发门户354、处理引擎模块356和多个应用管理模块358。
云服务管理门户350可包括硬件和/或硬件和程序的组合,以执行管理云服务的多个不同功能。例如,云服务管理门户350可执行管理功能和设计功能。云订户门户352可包括硬件和/或硬件和程序的组合,以执行支持云订户的多个不同功能。例如,云订户门户可执行允许云订户浏览云服务类别、订购云服务、批准云服务提供品和/或观看订阅的功能。
云分发平台354可包括硬件和/或硬件和程序的组合,以执行分发云服务的多个不同功能。例如,云分发平台354可包括服务消费子模块,其包括关于云服务定价、可用云服务的类别、提供品的数量和/或对云服务的订阅的信息。类似地,云服务分发平台354可包括服务分发子模块,其可包括关于服务蓝图、云服务组件、实例和/或绑定的信息。此外,云服务分发平台354可包括资源供给子模块,其可包括关于资源池、云服务提供者、云服务提供品和/或云服务订阅的信息。
在多个例子中,云管理系统300可包括处理引擎356。处理引擎356可包括硬件和/或硬件和程序的组合,以编排云服务管理操作。例如,处理引擎356可递归地提供多个实例化资源,例如分割第一实例化资源,以提供第二实例化资源,如图1-2和4-7所示。在多个例子中,处理引擎356可使用资源提供者来基于多个不同策略选择服务提供者。例如,可接收对服务的请求。可确定已有的资源提供者是否可提供服务。如果资源提供者可提供所请求的服务,则由资源提供者实例化的实例化资源可被分割以创建新实例化资源。如果资源提供者不能提供所请求的服务,则可创建新的资源提供者。新的资源提供者可用于创建新实例化资源。多个实例化资源可用作构件块以提供服务。多个实例化资源以及它们的相关资源提供者用于分割的可用性可被注册为一系列构件块。可通过更新对一系列构件块中的任一个做出的变化到整个一系列构件块,作为服务的生命周期来管理该一系列构件块。
图4示出根据本公开的选择云服务的资源的例子的流程图。如图4所示,云服务管理系统400可管理信息在订户(例如消费者、用户和/或应用)、云服务和资源提供者之间的流动。例如,在460,云服务管理系统400可产生资源提供品。产生信息提供品可包括创建资源提供品和/或从基本资源提供者导入资源提供品。在461,云服务管理系统400可产生服务蓝图。产生服务蓝图可包括设计云服务,包括配置、拓扑、行为、资源绑定和/或被包括在云服务中的服务选项。在462,云服务管理系统400可创建服务提供品。创建服务提供品可包括例如限定特定云服务的定价、限定与云服务有关的多个选项、限定与云服务有关的默认选项和/或限定与云服务有关的服务水平协定(SLA)。
在463,云服务管理系统400可向订户提供服务提供品,以进行复审、批准和订阅。在464,云服务管理系统400可创建特定服务提供品的实例。创建特定服务提供品的实例可包括选择服务组件、绑定资源以提供云服务和/或产生资源订阅。在多个例子中,特定服务提供品的实例和/或特定服务提供品的资源订阅可被发送到操作编排者,以进行实现。
在一些例子中,资源提供者可分割实例化资源,以创建多个实例化资源。如果资源提供者不能提供所请求的服务,则可创建新的资源提供者。新的资源提供者可实例化提供所请求的服务的资源。资源提供者和第一实例化资源用于进一步分割的可用性可被注册在一系列构件块中。可更新该一系列构件块的一部分。更新可传播到整个一系列构件块。
图5示出根据本公开的计算设备的例子的块图。计算设备590可利用软件、硬件、固件和/或逻辑来执行本文所述的多个功能。
计算设备590可以是被配置成实例化多个资源的硬件和程序指令的任何组合。硬件例如可包括处理资源591和/或例如机器可读介质(MRM)、数据库等的存储器资源593。如在本文使用的,处理资源591可包括能够执行由存储器资源593存储的指令的任何数量的处理器。处理资源591可被集成在单个设备中或分布在多个设备当中。例如机器可读指令(MRI)的程序指令可包括存储在存储器资源593上并由处理资源591可执行来实现期望功能(例如提供多个资源)的指令。
存储器资源593可与处理资源591通信。如在本文使用的,存储器资源593可包括能够存储可由处理资源591执行的指令的任何数量的存储器组件。这样的存储器资源593可以是非临时性MRM。存储器资源593可集成在单个设备或分布在多个设备当中。此外,存储器资源593可全部或部分地与处理资源591集成在相同的设备中,或它可以是单独的,但可由该设备和处理资源591访问的。因此,注意,计算设备590可在参与者设备上、在服务器设备上、在服务器设备集合上和/或在参与者设备和服务器设备的组合上实现。
存储器资源593可经由通信链路(例如路径592)与处理资源591通信。通信链路592相对于机器(例如与处理资源591相关的计算设备)可以是本地的或远程的。本地通信链路592的例子可包括在机器(例如计算设备)内部的电子总线,其中存储器资源593是经由电子总线与处理资源591通信的易失性、非易失性、固定和/或可移动存储介质之一。
多个模块594、595、596、597、598可包括MRI,MRI在由处理资源591执行时可执行多个功能。多个模块594、595、596、597、598可以是其它模块的子模块。例如,第二资源模块595和第二实例化资源模块596可以是子模块和/或被包含在同一计算设备内。在另一例子中,多个模块594、595、596、597、598可包括位于分开且不同的位置处的单独模块,例如MRM等。
多个模块594、595、596、597、598中的每个可包括在由处理资源591执行时可以充当如本文所述的相应引擎的指令。例如,第一实例化资源模块594可包括在由处理资源591执行时可以充当第一资源引擎的指令。
在图5的例子中,第一实例化资源模块594可包括由处理资源591执行以接收对第一资源的请求并实例化第一资源的MRI。可从应用或经由应用从客户接收请求。应用可托管在消费者的计算设备上和/或在另一计算系统上。在多个例子中,应用可给出创建实例化资源、毁坏实例化资源和/或更新实例化资源的请求。可在资源提供者处接收该请求。请求可包括被请求的实例化资源的类型以及用于进一步定义实例化资源和/或资源提供者的多个参数。实例化资源可包括提供、创建、选择和/或识别第一实例化资源。第一引用可包括对第一实例化资源的引用。引用可以是链接、指针、地址和/或任何其它工具,消费者和/或应用可借助于这些工具来与实例化资源通信。
在多个例子中,第一实例化资源可被提供给应用。可通过在托管应用的计算设备上创建第一实例化资源,来将第一实例化资源提供给应用。可通过将第一实例化资源移动到托管应用的计算设备,来将第一实例化资源提供给应用。
可从第一实例化资源创建不同的资源提供者。在多个例子中,第一实例化资源可以是不同的资源提供者,和/或第一实例化资源可以独立于不同的资源提供者。不同的资源提供者独立于创建第一实例化资源的资源提供者。
第二资源模块595可包括MRI,该MRI由处理资源591执行,以在第一实例化资源处从应用接收对第二资源的第二请求。在第一实例化资源处对第二资源的请求可包括在不同的资源提供者处接收第二请求。第二请求可包括与第一实例化资源的类型和/或不同资源提供者的类型相同的实例化资源类型。第二请求也可请求第一实例化资源和/或不同的资源提供者所提供的资源提供品。
第二实例化资源模块596可包括MRI,该MRI由处理资源591执行,以通过第一实例化资源向应用提供第二实例化资源的第二引用。可通过分割第一实例化资源来从第一实例化资源的分割创建第二实例化资源。第二实例化资源和第一实例化资源可支持隔离的访问,使得第二实例化资源和实例化的第二资源独立于彼此。
注册模块597可包括MRI,该MRI由处理资源591执行,以将资源提供者和第一实例化资源用于进一步分割的可用性注册在一系列构件块中。第一实例化资源和资源提供者用于分割的可用性可包括确定第一实例化资源的当前使用、并比较当前使用和与第一实例化资源相关的能力。
更新模块598可包括MRI,该MRI由处理资源591执行,以更新一系列构件块。在多个例子中,可更新一系列构件块中的一个。对一系列构件块中的任一个构件块的更新可传播到一系列构件块中的其它构件块。例如,如果一系列构件块中的一构件块被删除,则该删除可传播到通过删除从属构件块而与所删除的构件块无关的构件块。
在多个例子中,对第一资源的请求和对第二资源的请求可由单个应用发起和/或可起源于与单个客户相关的多个应用。此外,对第一资源的请求和对第二资源的请求可由与多个不同的客户相关的多个不同的应用发起。
图6示出根据本公开的用于提供资源的系统670的例子的块图。系统670可包括计算系统672和/或多个引擎674、676、678、679。计算系统672可包括多个引擎,例如请求引擎674、资源引擎676、注册引擎678、更新引擎679等。计算系统672可包括额外的或比所示的更少的引擎以执行本文所述的各种功能。
多个引擎可包括配置成执行本文所述的多个功能(例如将第一实例化资源注册为资源提供者等)的硬件和程序的组合。程序可包括存储在存储器资源(例如机器可读介质等)中的例如软件、固件等的程序指令以及例如逻辑的硬连线程序。
请求引擎674可包括用于在资源提供者处接收来自应用的对第一资源的请求的硬件和/或硬件和程序的组合。在多个例子中,该请求可在运行时间被接收。在多个例子中,该请求可在开发期间被处理。
资源引擎676可包括用于通过资源提供者向应用提供第一实例化资源的第一引用的硬件和/或硬件和程序的组合。第一引用可在运行时间被提供。
注册引擎678可包括将第一实例化资源注册为不同的资源提供者以提供多个资源的硬件和/或硬件和程序的组合。在多个例子中,注册可发生在运行时间。可向创建第一实例化资源的资源提供者、应用和/或用于管理资源提供者和/或实例化资源的管理引擎注册不同的资源提供者。
创建实例化资源并在运行时间注册资源提供者提供了在向应用(例如客户)提供实例化资源方面的灵活性。例如,如果应用请求多个资源,则在运行时间提供实例化资源并注册与实例化资源相关的资源提供者可节约实例化资源,且可允许更多的实例化资源被提供给应用和/或多个应用,这是因为实例化资源可在新资源被实例化之前被全部利用。相比于在没有从实例化资源创建资源提供者的情况下实例化资源,具有实例化资源并注册与实例化资源相关的资源提供者的能力允许更少的实例化资源被使用,这是因为当实例化资源经由相关资源提供者被分割时,实例化资源在新资源被实例化之前被全部利用。
不同的资源提供者可注册第一实例化资源所提供的多个能力和/或资源提供品。不同的资源提供者可注册一种类型的第一实例化资源连同第一实例化资源的描述。其它描述可包括第一实例化资源所接受的命令和/或通信协议。第一实例化资源可接收命令以提供多个能力。
更新引擎678可包括用于更新多个构件块的硬件和/或硬件和程序的组合。更新多个构件块可包括将对多个构件块之一的变化传播到多个构件块的一部分和/或全部。
图7示出根据本公开的用于提供资源的例子的流程图。在780,可在资源提供者处接收来自应用的对服务的请求。可确定现有的资源提供者是否可提供与请求相关的服务。
在782,如果相关资源提供者可提供服务,则可选择提供该服务的构件块的多个实例。构件块的多个实例可由应用的不同实例使用和/或共享。在多个例子中,应用的多个实例可引用单个客户。
在784,实例化资源的引用可被提供给应用。实例化资源可由多个构件块的多个实例组成。例如,实例化资源可以是服务器,且多个构件块的多个实例可以是支持服务器的操作的硬件和/或软件。
在多个例子中,选择构件块的多个实例可包括建立构件块的多个实例与实例化资源之间的多个相关性。可基于拓扑来建立多个相关性。拓扑可定义构件块的实例如何用于创建实例化资源。例如,服务器(例如实例化资源)可以在第一级处,而硬件和/或软件(例如支持服务器的实例化构件块)可在第二级处。拓扑中的级可定义相关性的方向。例如,第一级可取决于第二级。级以及各级之间的相关性作为例子被给出。可在拓扑中利用其它级以及各级之间的相关性,来使用构件块提供实例化服务。
在多个例子中,实例化服务被提供给应用。实例化服务可包括拓扑、实例化资源与构件块的多个实例之间的多个相关性、实例化资源和/或构件块的多个实例。
在786,如果多个实例化资源不提供服务,则可创建用于创建实例化资源的新构件块。当策略、安全、租期和/或其它上下文考虑因素阻止从多个实例化资源创建实例化资源时,可创建新构件块。
在787,可更新多个构件块。例如,对多个构件块之一的变化可传播到多个构件中的其它构件块。变化可包括对构件块、实例化资源和相关资源提供者的任何变化。例如,对被分割以创建第二实例化资源的第一实例化资源的变化可传播到第二实例化资源以及与第二实例化资源相关的资源提供者和构件块。
如在本文使用的,“逻辑”是执行本文所述的特定行动和/或功能等的可选或额外的处理资源,其包括硬件,例如各种形式的晶体管逻辑、专用集成电路(ASIC)等,与存储在存储器中和由处理器可执行的计算机可执行指令例如软件固件等相反。
如在本文使用的,“一个”或“多个”某物可以指一个或多个这样的东西。例如,“多个小组件”可以指一个或多个小组件。
上面的说明书、例子和数据提供了本方法和应用的描述以及本公开的系统和方法的使用。因为可做出很多例子而不偏离本公开的系统和方法的精神和范围,因此该说明书仅仅阐述很多可能的实施方式配置和实现中的一些。
Claims (15)
1.一种用于存储指令的非临时性机器可读介质,所述指令由机器可执行以使所述机器:
接收对资源提供者所提供的第一服务的请求并提供对所述资源提供者所实例化的第一实例化资源的引用;
接收对所述资源提供者所提供的第二服务的请求;
如果所述第一实例化资源能够提供所述第二服务,则分割所述第一实例化资源,以创建第二实例化资源;以及
将所述资源提供者和所述第一实例化资源进一步分割的可用性注册在一系列构件块中;
更新所述一系列构件块中的一个构件块并将所述更新传播到所述一系列构件块。
2.如权利要求1所述的介质,其中可执行为更新所述一系列构件块中的一个构件块的指令包括用于管理第一服务的生命周期的指令。
3.如权利要求2所述的介质,其中可执行为管理第一服务的生命周期的指令包括用于更新所述一系列构件块的可用性的指令。
4.如权利要求1所述的介质,其中如果所述第一实例化资源不提供所述第二服务,则所述指令可执行为创建用于提供第二服务的新资源提供者。
5.如权利要求1所述的介质,其中所述指令可执行为注册所述资源提供者和所述第二实例化资源在所述一系列构件块中进一步分割的可用性的状态。
6.如权利要求1所述的介质,其中可执行为分割所述第一实例化资源的指令包括用于支持对分割中的每一个的隔离访问的指令。
7.如权利要求1所述的介质,其中可执行为分割所述第一实例化资源的指令包括:将所述第一实例化资源的多个分割中的每一个作为实例化资源提供给应用的多个不同实例。
8.一种用于提供资源的系统,所述系统包括与非临时性机器可读介质通信的处理资源,所述非临时性机器可读介质具有由所述处理资源执行以实现请求引擎、资源提供者引擎和注册引擎的指令,其中:
所述请求引擎在资源提供者处接收来自应用的对第一服务的请求;
所述资源提供者引擎通过所述资源提供者向所述应用提供第一实例化资源的第一引用;
所述注册引擎将作为一系列构件块的所述第一实例化资源注册为递归地提供多个资源的不同资源提供者;并且
所述更新引擎更新所述一系列构件块中的一个构件块并将所述更新传播到所述一系列构件块。
9.如权利要求8所述的系统,包括用于实现所述注册引擎以向所述资源提供者注册作为所述不同资源提供者的所述第一实例化资源的指令。
10.如权利要求8所述的系统,包括用于实现所述注册引擎以向所述应用注册作为所述不同资源提供者的所述第一实例化资源的指令。
11.如权利要求8所述的系统,包括用于实现所述注册引擎以注册所述第一实例化资源所提供的多个服务的指令。
12.如权利要求8所述的系统,包括用于实现所述注册引擎以注册所述第一实例化资源所提供的、用于提供多个服务的多个命令的指令。
13.一种用于提供资源的方法,包括:
在资源提供者处接收来自应用的对服务的请求;
选择提供所述服务的多个实例化资源,
其中所述多个实例化资源从代表多个资源提供者的多个构件块创建;并且
其中所述多个实例化资源在所述应用的不同实例之间被共享;
通过所述资源提供者向所述应用提供实例化资源的引用,其中如果所述多个实例化资源提供所述服务,则所述实例化资源由所述多个实例化资源组成;
如果所述多个实例化资源不提供所述服务,则创建用于创建所述实例化资源的新构件块;以及
更新所述多个构件块中的一个并将所述更新传播到所述多个构件块。
14.如权利要求13所述的方法,其中选择多个实例化资源包括建立所述多个实例化资源与所述实例化资源之间的多个相关性。
15.如权利要求13所述的方法,其中所述实例化资源处于实例化资源拓扑中的第一级处,并且所述多个实例化资源处于所述实例化资源拓扑中的第二级处。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/058043 WO2015034485A1 (en) | 2013-09-04 | 2013-09-04 | Providing services as resources for other services |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105531688A true CN105531688A (zh) | 2016-04-27 |
CN105531688B CN105531688B (zh) | 2018-05-29 |
Family
ID=52628788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380079373.6A Active CN105531688B (zh) | 2013-09-04 | 2013-09-04 | 提供作为其它服务的资源的服务 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10681116B2 (zh) |
EP (1) | EP3042299A1 (zh) |
CN (1) | CN105531688B (zh) |
WO (1) | WO2015034485A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023115522A1 (en) * | 2021-12-24 | 2023-06-29 | Huawei Technologies Co., Ltd. | Systems and methods for enabling network-based reusable computing |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10212050B2 (en) | 2013-09-04 | 2019-02-19 | Entit Software Llc | Providing recursively-generated instantiated computing resource in a multi-tenant environment |
CN105531688B (zh) | 2013-09-04 | 2018-05-29 | 慧与发展有限责任合伙企业 | 提供作为其它服务的资源的服务 |
US10467567B2 (en) | 2013-09-04 | 2019-11-05 | Micro Focus Llc | Providing resources to customers via node-relationship models |
US10033662B2 (en) | 2013-09-04 | 2018-07-24 | Hewlett Packard Enterprise Development Lp | Policy based selection of resources for a cloud service |
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 |
US10230568B2 (en) | 2013-10-30 | 2019-03-12 | Hewlett Packard Enterprise Development Lp | Monitoring a cloud service modeled as a topology |
EP3063668A4 (en) * | 2013-10-30 | 2017-05-31 | Hewlett-Packard Enterprise Development LP | Managing the lifecycle of a cloud service modeled as topology decorated by a number of policies |
WO2015065389A1 (en) | 2013-10-30 | 2015-05-07 | Hewlett-Packard Development Company, L.P. | Execution of a topology |
US10177988B2 (en) | 2013-10-30 | 2019-01-08 | Hewlett Packard Enterprise Development Lp | Topology remediation |
EP3063663A4 (en) | 2013-10-30 | 2017-04-19 | Hewlett-Packard Enterprise Development LP | Stitching an application model to an infrastructure template |
CN106209947B (zh) * | 2015-05-07 | 2020-08-04 | 中兴通讯股份有限公司 | 一种去中心化自治组织的数据处理方法及系统 |
US10536277B1 (en) | 2015-12-22 | 2020-01-14 | Amazon Technologies, Inc. | Contribution signatures for tagging |
US10701137B2 (en) | 2016-09-30 | 2020-06-30 | Micro Focus Llc | Exchange service management contents with a cloud entity via a self-contained cloud content package |
US11082295B2 (en) * | 2019-07-01 | 2021-08-03 | Vmware, Inc. | Methods and apparatus to implement cloud specific functionality in a cloud agnostic system |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1523844A (zh) * | 2003-02-20 | 2004-08-25 | 国际商业机器公司 | 用于在计算网格中创建服务实例的方法和系统 |
US20040167959A1 (en) * | 2003-02-21 | 2004-08-26 | International Business Machines Corporation | Autonomic service routing using observed resource requirement for self-optimization |
US6901446B2 (en) * | 2001-02-28 | 2005-05-31 | Microsoft Corp. | System and method for describing and automatically managing resources |
CN101968859A (zh) * | 2010-09-29 | 2011-02-09 | 用友软件股份有限公司 | 基于云计算环境的业务流程管理方法和系统 |
CN102281290A (zh) * | 2011-07-18 | 2011-12-14 | 北京邮电大学 | 一种PaaS云平台的仿真系统及方法 |
CN102713849A (zh) * | 2010-01-26 | 2012-10-03 | 国际商业机器公司 | 用于抽象对虚拟机的基于非功能需求的部署的方法和系统 |
US20130042004A1 (en) * | 2011-08-08 | 2013-02-14 | International Business Machines Corporation | Dynamically acquiring computing resources in a networked computing environment |
CN102981890A (zh) * | 2012-11-30 | 2013-03-20 | 华南理工大学 | 一种在虚拟化数据中心内的计算任务及虚拟机部署方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6799208B1 (en) * | 2000-05-02 | 2004-09-28 | Microsoft Corporation | Resource manager architecture |
US8176487B2 (en) | 2007-08-02 | 2012-05-08 | International Business Machines Corporation | Client partition scheduling and prioritization of service partition work |
US8424078B2 (en) * | 2007-11-06 | 2013-04-16 | International Business Machines Corporation | Methodology for secure application partitioning enablement |
US10007767B1 (en) | 2007-12-21 | 2018-06-26 | EMC IP Holding Company LLC | System and method for securing tenant data on a local appliance prior to delivery to a SaaS data center hosted application service |
US8347355B2 (en) | 2008-01-17 | 2013-01-01 | Aerohive Networks, Inc. | Networking as a service: delivering network services using remote appliances controlled via a hosted, multi-tenant management system |
US8473594B2 (en) | 2008-05-02 | 2013-06-25 | Skytap | Multitenant hosted virtual machine infrastructure |
US9069599B2 (en) | 2008-06-19 | 2015-06-30 | Servicemesh, Inc. | System and method for a cloud computing abstraction layer with security zone facilities |
US20110179173A1 (en) * | 2010-01-15 | 2011-07-21 | Carol Colrain | Conditional dependency in a computing cluster |
US9245246B2 (en) | 2010-04-22 | 2016-01-26 | International Business Machines Corporation | Capacity over-commit management in resource provisioning environments |
US9021435B2 (en) | 2010-05-20 | 2015-04-28 | Salesforce.Com, Inc. | Methods and systems for providing a user interface in a multi-tenant database environment |
US8495570B2 (en) * | 2010-12-23 | 2013-07-23 | Microsoft Corporation | Resource deployment based on conditions |
US8504691B1 (en) | 2010-12-29 | 2013-08-06 | Amazon Technologies, Inc. | System and method for allocating resources for heterogeneous service requests |
US8806003B2 (en) | 2011-06-14 | 2014-08-12 | International Business Machines Corporation | Forecasting capacity available for processing workloads in a networked computing environment |
US20130036213A1 (en) | 2011-08-02 | 2013-02-07 | Masum Hasan | Virtual private clouds |
US8612599B2 (en) | 2011-09-07 | 2013-12-17 | Accenture Global Services Limited | Cloud service monitoring system |
US8589481B2 (en) | 2011-09-14 | 2013-11-19 | Microsoft Corporation | Multi tenant access to applications |
US9825823B2 (en) | 2012-07-03 | 2017-11-21 | Hewlett Packard Enterprise Development Lp | Managing a cloud service |
US20150304231A1 (en) | 2012-12-03 | 2015-10-22 | Hewlett-Packard Development Company, L.P. | Generic resource provider for cloud service |
US10212050B2 (en) | 2013-09-04 | 2019-02-19 | Entit Software Llc | Providing recursively-generated instantiated computing resource in a multi-tenant environment |
US10467567B2 (en) | 2013-09-04 | 2019-11-05 | Micro Focus Llc | Providing resources to customers via node-relationship models |
CN105531688B (zh) | 2013-09-04 | 2018-05-29 | 慧与发展有限责任合伙企业 | 提供作为其它服务的资源的服务 |
US20160212020A1 (en) | 2013-09-04 | 2016-07-21 | Hewlett Packard Enterprise Development Lp | Selection of resource providers for multi-tenancy provision of building blocks |
-
2013
- 2013-09-04 CN CN201380079373.6A patent/CN105531688B/zh active Active
- 2013-09-04 WO PCT/US2013/058043 patent/WO2015034485A1/en active Application Filing
- 2013-09-04 EP EP13892818.9A patent/EP3042299A1/en not_active Withdrawn
- 2013-09-04 US US14/914,286 patent/US10681116B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6901446B2 (en) * | 2001-02-28 | 2005-05-31 | Microsoft Corp. | System and method for describing and automatically managing resources |
CN1523844A (zh) * | 2003-02-20 | 2004-08-25 | 国际商业机器公司 | 用于在计算网格中创建服务实例的方法和系统 |
US20040167959A1 (en) * | 2003-02-21 | 2004-08-26 | International Business Machines Corporation | Autonomic service routing using observed resource requirement for self-optimization |
CN102713849A (zh) * | 2010-01-26 | 2012-10-03 | 国际商业机器公司 | 用于抽象对虚拟机的基于非功能需求的部署的方法和系统 |
CN101968859A (zh) * | 2010-09-29 | 2011-02-09 | 用友软件股份有限公司 | 基于云计算环境的业务流程管理方法和系统 |
CN102281290A (zh) * | 2011-07-18 | 2011-12-14 | 北京邮电大学 | 一种PaaS云平台的仿真系统及方法 |
US20130042004A1 (en) * | 2011-08-08 | 2013-02-14 | International Business Machines Corporation | Dynamically acquiring computing resources in a networked computing environment |
CN102981890A (zh) * | 2012-11-30 | 2013-03-20 | 华南理工大学 | 一种在虚拟化数据中心内的计算任务及虚拟机部署方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023115522A1 (en) * | 2021-12-24 | 2023-06-29 | Huawei Technologies Co., Ltd. | Systems and methods for enabling network-based reusable computing |
Also Published As
Publication number | Publication date |
---|---|
US10681116B2 (en) | 2020-06-09 |
WO2015034485A1 (en) | 2015-03-12 |
EP3042299A1 (en) | 2016-07-13 |
CN105531688B (zh) | 2018-05-29 |
US20160219097A1 (en) | 2016-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105531688A (zh) | 提供作为其它服务的资源的服务 | |
Naseri et al. | A new agent-based method for QoS-aware cloud service composition using particle swarm optimization algorithm | |
US10467567B2 (en) | Providing resources to customers via node-relationship models | |
CN105518649A (zh) | 在多租户环境下提供递归式生成实例化的计算资源 | |
CN108965468A (zh) | 区块链网络服务平台及其链码安装方法、存储介质 | |
CN102893272B (zh) | 对象的共享和同步 | |
CN111742295A (zh) | 区块链网络基础结构的服务管理 | |
CN110442652A (zh) | 一种基于区块链的跨链数据处理方法及装置 | |
CN108369537A (zh) | 启用fpga的计算实例 | |
CN108989389A (zh) | 一种建立智能合约微服务化的方法 | |
KR20200023706A (ko) | 스마트 계약을 지원하는 블록체인에 기반한, 분산형 컴퓨팅 자원 공유 시스템 및 컴퓨팅 장치 | |
CN110249310A (zh) | 云计算系统中的用于虚拟机的资源管理 | |
CN105897805A (zh) | 对多层架构的数据中心的资源进行跨层调度的方法和装置 | |
CN110532025A (zh) | 基于微服务架构的数据处理方法、装置、设备及存储介质 | |
CN101820428A (zh) | 基于协议组合机制的组合服务优化方法和装置 | |
CN106503091A (zh) | 一种可变数据结构自动同步匹配的实现方法 | |
CN109743202B (zh) | 数据的管理方法、装置、设备及可读存储介质 | |
CN109462508A (zh) | 节点部署方法、装置和存储介质 | |
CN106856438A (zh) | 一种网络业务实例化的方法、装置及nfv系统 | |
CN113516507A (zh) | 一种多云管理平台资源计费方法及装置 | |
CN106462459A (zh) | 为分布式处理系统管理元数据 | |
WO2020215752A1 (zh) | 图计算方法及装置 | |
CN102511041B (zh) | 计算机实现方法和计算系统 | |
CN104239412B (zh) | 数据存储库中应用至存储库的数据映射及相关方法、系统和计算机可读介质 | |
US8832156B2 (en) | Distributed computing management |
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 |