CN103038788A - 提供多个网络资源 - Google Patents
提供多个网络资源 Download PDFInfo
- Publication number
- CN103038788A CN103038788A CN201180031239XA CN201180031239A CN103038788A CN 103038788 A CN103038788 A CN 103038788A CN 201180031239X A CN201180031239X A CN 201180031239XA CN 201180031239 A CN201180031239 A CN 201180031239A CN 103038788 A CN103038788 A CN 103038788A
- Authority
- CN
- China
- Prior art keywords
- storehouse
- internet resources
- template
- user
- different internet
- 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
Images
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/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/084—Configuration by using pre-existing information, e.g. using templates or copying from other elements
- H04L41/0843—Configuration by using pre-existing information, e.g. using templates or copying from other elements based on generic templates
-
- 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
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Stored Programmes (AREA)
Abstract
资源提供服务允许用户以原子方式并通过单次调用资源提供服务来提供多个不同的网络资源。在一些例子中,所述多个不同的网络资源包括形成一个或多个云计算平台的一部分的个别类型的资源。例如,一个或多个实体可托管并操作包括例如存储服务、负载平衡服务、计算服务、安全服务或任何其他类似或不同类型的网络可访问服务的不同类型的网络资源的云计算平台。
Description
相关申请案
本申请与2010年6月28日提交的美国正式申请第12/824,723号有关且要求其优先权,所述美国正式申请以引用方式并入本文。
背景技术
大规模、基于网络的计算代表从传统客户端-服务器计算关系转变的范例。有了大规模、基于网络的计算平台(例如,数据中心),客户能够通过租用第三方拥有和常驻“在云中”的资源来按需利用共享资源。有了这些资源,平台的客户能够启动并维持大型应用,而不需要实际拥有或服务于这些应用所必需的底层基础设施。这样,基于网络的计算平台扩大了能够有效地在计算应用领域竞争的个人和公司的类别。尽管取得了这些进展,但是这些个人和公司可能在与这些基于网络的计算平台的宿主协作来提供所需资源时还会遇到困难。
附图说明
参照附图阐述了具体实施方式。在附图中,参考编号最左边的数字表示参考编号第一次出现的附图。在不同附图中使用相同的参考编号来代表类似或相同的项目或特征。
图1示出用户团体的用户可与资源提供服务交互作用来提供多个不同的网络资源的示范性环境。在这个环境中,用户可提供多个资源,在一些实施中单次请求提供服务。
图2示出图1的架构可实施来提供多个不同的网络资源的示范性过程。
图3是资源提供服务可实施来提供多个不同的网络资源的示范性过程的流程图。这里,过程可包括原子过程,因为服务成功提供每个请求的资源或不提供请求的资源。
图4更详细地示出图1资源提供服务的基于模板的堆栈生成器的一个例子。
图5示出图1资源提供服务的示范性堆栈管理工作流。
图6示出使用模板来在图1、4和5架构中生成堆栈的示范性过程。
图7示出在图1、4和5架构中删除堆栈的示范性过程。
图8示出在图1、4和5架构中采用堆栈的示范性过程。
图9示出在请求生成或删除堆栈期间内部堆栈状态的示范性转变。
图10示出在请求生成或删除堆栈期间外部堆栈状态的示范性转变。
具体实施方式
本公开案描述用于允许用户以原子方式并通过单次调用资源提供服务来提供多个不同的网络资源的架构和技术。在一些例子中,多个不同的网络资源包括形成一个或多个云计算平台的一部分的个别类型的资源。例如,一个或多个实体可托管并操作包括例如存储服务、负载平衡服务、计算服务、安全服务或任何其他类似或不同类型的网络可访问服务的不同类型的网络资源的云计算平台。
在一个例子中,用户可能期望使用由一个或多个第三方实体提供的多个网络资源来启动应用(例如,网络应用)。用户可能需要负载平衡服务来在多个不同资源之间路由工作负载;计算服务来托管应用并提供计算能力;在线存储服务来存储客户端数据;和安全服务来向应用的用户提供安全。虽然单一实体可提供并操作这些网络资源中的每一个,但是在其它实施中多个不同的实体可提供并操作这些资源中的一个或多个。
在任一情况下,资源提供服务可与用户通信来提供这些多个不同的网络资源。例如,用户可向提供服务发出提供多个网络资源的堆栈的初始请求。在一些例子中,该请求可基于包括用于提供多个资源的预填充指令的模板。这个模板向用户提供说明性语言来建立堆栈创建请求,从而允许用户专注于提供哪些资源和这些资源的互连,而不是怎样生成这些堆栈和使用哪些应用编程接口(API)调用。例如,模板可指示(例如,用可扩展标记语言(XML)格式、JavaScript对象表示法(JSON)等)提供服务来提供一个或多个不同的网络资源。
在一些例子中,用户然后可改变模板中的指令来指定与资源相关的特定参数,且可把这个具有改变的模板保存成新模板。例如,用户可指定存储服务的特定所要大小、计算服务的所要计算机的数目等来生成新模板。另外,当创建新模板时,用户可向网络资源中的一个或多个或网络资源的组件指派逻辑名称。用户也可例如通过删除指令的部分或添加新指令来提供比模板先前调出的网络资源甚至更多的网络资源以任何其他方式改变原始模板,从而生成新模板。在另一例子中,用户也可在模板中建立对另一模板的调用。这样,模板可成为生成块来用于创建多个不同的网络资源的堆栈。
当用户对所得指令(具有或没有对模板的改变)感到满意时,用户再将指令提供到提供服务来把指令存储为新模板。例如,用户可提供包括新模板的文本文件。这个模板可包括XML或JSON格式或任何其他合适格式的指令。
在提供服务存储新模板之后,用户然后可请求使用该模板(或使用另一模板)来创建资源的堆栈。作为响应,提供服务可检索并解析模板来识别所需的网络资源的堆栈。在一个例子中,例如,提供服务可识别用户想要使用特定大小的负载平衡服务、计算服务的特定数目的服务器、特定大小的存储服务和特定类型的安全服务。作为响应,提供服务可尝试代表用户提供所请求的网络资源中的每一个。即,提供服务可尝试使负载平衡服务、计算服务等的所需的服务安全。
另外,提供服务可尝试提供彼此并行的网络资源的至少一部分。例如,提供服务可确定多个网络资源之间的依赖性,且可尝试根据这些依赖性来提供资源。提供服务可识别文本文件中的隐式依赖性,或提供服务可接收用户指定的显式依赖性。
在一些例子中,提供服务尝试自动提供网络资源的堆栈。即,当提供服务能够成功提供所请求的网络资源中的每一个时,提供服务将认为成功创建堆栈。响应于成功地提供堆栈,提供服务可将这个成功通知用户。在提供服务(例如,在多次重试之后)没能提供所请求的资源中的一个或多个的例子中,提供服务可认为提供堆栈失败,且可移除提供服务已成功提供的那些请求的资源或使其退回。另外,提供服务可将这个失败通知用户。这样,用户知道在提交提供多个网络资源的堆栈的请求时将提供所有请求的资源,或不提供任何资源。
讨论从题为“示范性架构”的部分开始,这部分描述了可实施上文介绍的技术的示范性架构。接下来是题为“示范性过程”的部分,描述了用于使用图1所述的示范性架构来提供多个网络资源的示范性过程。然后是题为“示范性资源提供服务和过程”的部分,描述了在图1中所述的资源提供服务的特定例子和示范性服务可实施来创建、删除和采用堆栈的过程。这个部分也描述了在这些过程期间内部和外部堆栈状态的示范性转变。最终,讨论以简短的结论结束。
这个包括部分标题和相应概要的简单介绍是为了方便读者而提供,而不旨在限制权利要求书和说明部分的范围。另外,上文和下文描述的技术可用许多方式并可在许多上下文中实施。如下文更详细描述,参照以下附图提供几个示范性实施和上下文。然而,以下的实施和上下文只是很多实施和上下文中的一些。
示范性架构
图1示出可实施所述技术的示范性架构100。架构100包括通过网络104与资源提供服务106通信来提供多个网络资源108(1)、108(2)、…、108(N)(或简称为“资源”)的用户团体102。例如,用户团体102的用户可提供可能在一个或多个大型数据中心托管的一个或多个云计算平台的服务。如上文所讨论,这些网络资源可包括存储服务、负载平衡服务、计算服务、安全服务、域名系统(DNS)服务或任何其他类似或不同类型的网络可访问服务。这些资源108(1)-(N)每个可与共同的实体或所有者相关、与单独的实体或所有者相关或与其组合相关。
同时,网络104代表例如互联网、有线电视网络、蜂窝网络、无线网络和有线网络的多个不同类型的网络中的任一个或其组合。网络104可以是公用或专用网络。另外,虽然图1示出几个箭头,但是示出的服务中每一个可直接或通过网络104或通过不同的网络间接与另一个通信。
在示出的例子中,代表用户102(1)使用计算设备110来访问资源提供服务106,以请求提供网络资源108(1)-(N)中的一个或多个。例如,用户102(1)可能期望使用基于云的资源来启动网络应用。这样,用户102(1)可发送提供多个资源(例如来自负载平衡服务器的负载平衡器、来自存储服务的数据库等)的请求。
响应于访问资源提供服务106并作出这个请求,资源提供服务106可把用户接口(UI)112用于用户102(1)的计算设备110。图1示出这种UI的一个例子。如图所示,UI 112包括第一区域112(1),第一区域112(1)允许用户选择模板来用于作出提供资源108(1)-(N)的特定集合的堆栈的请求。UI 112也包括第二区域112(1),第二区域112(1)允许用户102(1)为将创建的堆栈的指定名称。最终,示范性UI 112包括图标112(3),当选择图标112(3)时,发送请求到资源提供服务106。如下文详细描述,响应于接收到这个请求,资源提供服务106可尝试创建在模板中指定的资源的堆栈。虽然图1示出一个示范性UI,但是其它实施可使用任何其它类似或不同的UI。
如图所示,资源108(1)-(N)和资源提供服务106中的每一个被实施成共同地具有处理和存储能力来接收和发送请求的一个或多个服务器。可用任意数目的方式来实施这些服务器,包括实施成单个服务器、服务器簇、服务器场或数据中心等,但是也可使用其它服务器架构(例如,主机)。
资源提供服务106包括一个或多个处理器114和存储接口118和基于模板的堆栈生成器120的存储器116。服务106也存储或具有到数据库122、124和126的访问。接口118包括允许用户团体的用户访问资源提供服务106并与资源提供服务106通信的网络可访问接口。例如,用户团体102的用户可通过某些公用API调用到接口中。在这些或其它例子中,用户团体102的用户访问接口118,以便请求提供网络资源108(1)-(N)中的一个或多个。
同时,基于模板的堆栈生成器120用于从用户接收创建网络资源的堆栈的请求(如上文所述)且基于请求来向用户提供合适的模板。例如,在示出的例子中,生成器120可接收使用用户102(1)选择的特定模板来提供指定的资源堆栈的请求。作为响应,生成器120可从可存储或者以其它方式具有到先前生成的模板的访问的数据库124找出选择的模板。在一些例子中,资源提供服务106、用户团体102的用户和/或其它实体可在数据库124中先前生成了一些或所有的模板。
在找出选择的模板之后,生成器120把这个模板提供到用户102(1)的计算设备110。这个模板可包括用于提供网络资源108(1)-(N)的特定集合的预填充指令。然后,用户102(1)可整体或部分使用模板来形成对资源的实际请求。例如,用户可改变预填充指令的某些参数来指定请求的资源的大小、请求的资源的组件(例如,计算机、数据库等)的数目、资源的特定版本或任何其它参数。在一些例子中,用户102(1)可在模板中指定资源的一个或多个组件的逻辑名称。这些逻辑名称包括用户为了在后来通过向资源提供服务106作出状态或请求调用来管理这些资源时方便用户而选择的名称。
另外或替代地,用户102(1)可添加指令到模板来调用另外一些资源或可去除指令以便不提供资源。在修改(或未修改)服务106提供的模板之后,用户102(1)提交改变的模板,以便由资源提供服务106存储为新模板。然后,用户102(1)可发送如新模板指定的那样提供资源的请求。在一些例子中,模板可形成包括可扩展标记语言(XML)格式、JavaScript对象表示法(JSON)格式等的指令的文本文件。
在接收到基于模板的提供资源的请求之后,生成器120可检索并解析模板(例如,可呈文本文件形式)来确定所要资源的身份和参数(例如,大小等)以及提供这些资源的次序。生成器120可基于从文本文件的实际指令收集的隐式依赖性和/或基于用户102(1)提供的显式依赖性来确定次序。
在解析文件之后,生成器120然后可尝试代表用户可能以原子方式来提供所请求资源中的每一个。在这些例子中,资源提供服务106尝试在通知用户之前提供网络资源108(1)-(N)中被请求的网络资源中的每一个。如果资源提供服务106成功提供请求资源中的每一个,那么资源提供服务106通知用户102(1)服务106已成功创建所请求的堆栈。服务106也可更新数据库122来反映新提供的堆栈。最终,服务106可把与这些提供的资源相关的费用记入数据库126维持的用户102(1)的帐户。
在资源提供服务106的生成器120(例如,在多次重试之后)不能成功提供每个请求的资源的例子中,服务106可通知用户102(1)堆栈创建失败。另外,服务106可使服务106已成功提供的所请求的网络资源中的那些网络资源退回或将其移除。服务106可以向用户帐户记入或不记入那些成功提供的资源的费用。
通过用这种原子方式操作,资源提供服务106使用户102(1)安心,用户102(1)知道服务106将完全成功提供请求的资源堆栈或者将返回到在接收到用户请求之前的系统状态。即,即使在后一种例子中,用户102(1)也将不会被留下部分完成且不能发挥功能的堆栈,因为服务106将使每个提供的网络资源退回。除了使用户安心之外,架构100和相关技术允许用户向资源提供服务106作出单个请求而不是对应于每个请求的资源的多个请求。服务106进一步通过向用户102(1)提供请求所基于的模板来使此单个调用容易。
示范性过程
图2是图1的架构100可实施的示范性过程200。这个过程(和本文描述的其它过程)以逻辑流图示出,逻辑流图的每个操作代表可用硬件、软件或其组合实施的一系列操作。在软件上下文中,操作代表存储在一个或多个计算机可读存储介质上的计算机可执行指令,这些计算机可执行指令当由一个或多个处理器执行时执行所述操作。通常,计算机可执行指令包括执行特定功能或实施特定抽象数据类型的例程、程序、对象、组件、数据结构等。描述操作的次序不应理解为具有限制性,且任何数目的所述操作可以任何次序组合和/或并行来实施过程。
为了讨论目的,参照图1的架构100来描述过程200(和其它过程),但是其它架构也可实施这个过程。
在这个例子中,在“1”,资源提供服务106从用户102(1)的计算设备110接收来自用户的有效尝试代表用户来提供多个不同的网络资源的堆栈的新模板。例如,用户102(1)可能已经通过由资源提供服务106服务的UI提交了这个模板。另外,这个模板可能已经基于服务先前存储的模板。即,用户102(1)可能已经通过图1的UI 112请求并接收了模板、修改这个模板以形成新模板并然后发送新模板来由服务106存储。在一些例子中,用户102(1)可通过对资源提供服务106的“注册模板”调用来请求存储模板。在“2”,资源提供服务106把接收到的模板存储在数据库124中。
在“3”,资源提供服务106从用户102(1)接收代表用户提供资源堆栈的请求。在这个例子中,用户102(1)请求服务106以在“2”中存储的模板指定的方式来提供资源。即,在“3”,用户102(1)可调用由服务106存储的用户102(1)先前创建的模板。当然,在其它例子中,用户102(1)可调用由用户团体102的另一用户、由资源提供服务106和/或由其它任何实体创建的模板。
图2示出模板202的例子,模板202包括用于提供一组网络资源108(1)-(N)的XML格式的指令。虽然示范性模板202示出这些指令的一个示范性格式,但是提供的模板可包括其它基于文本的指令、可选择图标、单选按钮或用户可用来请求提供网络资源108(1)-(N)中的多个网络资源的任何其它接口(图形或其它形式)。
在“4”,在这个例子中,资源提供服务106检索用户102(1)的请求所基于的模板。在这个例子中,用户102(1)指定由该用户创建的最近存储的模板,因此服务106从数据库124检索这个模板。如上文所讨论,用户102(1)可能已经定制了这个模板。例如,用户102(1)可能已经指定了某些参数值,例如资源的特定版本、资源的大小、资源的逻辑名称等。
在“5”,资源提供服务106解析模板来识别网络资源108(1)-(N)中的请求的网络资源并识别尝试提供这些请求资源的顺序。服务106可完全基于这个顺序或部分基于隐式和/或显式依赖性。服务106可通过分析用户102(1)请求的资源的特征来识别隐式依赖性。服务106可响应于从用户102(1)显式地接收到这些依赖性来识别显式依赖性。例如,用户102(1)可整体或部分地规定尝试提供资源的所要次序。
在“6”,资源提供服务106尝试可能以确定的次序来提供请求的网络资源。在这个例子中,用户102(1)已请求提供网络资源108(1)、108(2)和108(N)。在一些例子中,资源提供服务106尝试并行提供这些被请求资源中的至少一些。
在“7”,资源提供服务106从资源中的每一个接收指示服务106(在一次或多次尝试之后)是否成功提供相应的资源的指示。在这个例子中,资源中的每一个提供成功指示,且因此资源提供服务106认为创建堆栈成功。这样,在“8”,资源提供服务106更新数据库122来反映新堆栈。资源提供服务106也可更新数据库126来使这个堆栈与用户102(1)的帐户相关并向用户102(1)的帐户记入创建的资源的费用。
最终,在“9”,资源提供服务106向用户102(1)提供成功或失败的指示。例如,资源提供服务106可把这个指示提供给计算设备110或可通过另一通信通道传递这个指示。在这个例子中,资源提供服务106提供服务106已代表用户102(1)成功提供请求的网络资源108(1)、108(2)和108(N)中的每一个的指示。在一些例子中,在“9”,用户102(1)在接收到指示之前可发送关于请求的堆栈创建的状态的查询。服务106又可响应于这个请求,通知用户102(1)是否已经成功创建堆栈。
图3是资源提供服务106可实施来提供多个不同网络资源的示范性过程300的流程图。这里,过程300可包括原子过程,因为服务成功提供每个请求的资源或不提供请求的资源中的任何一个。
过程300包括,在302,资源提供服务106从客户端计算设备接收模板且作为响应服务存储接收到的模板。这个模板可有助于提供网络资源的堆栈。在304,资源提供服务106接收使用模板来提供网络资源堆栈的请求。在一些例子中,可同时接收模板和请求(例如,模板可包括请求),但不是必须如此。在306,资源提供服务106解析模板来识别资源;且在308,资源提供服务106尝试提供识别的资源中的每一个。
在310,资源提供服务106确定是否每个提供尝试已经被证明为成功。如果不是,那么在312,资源提供服务106使每个已成功提供的网络资源退回。在一些例子中,一旦单个资源调用失败,服务就停止尝试提供资源。在任一例子中,在314,资源提供服务106也继续以通知请求的用户失败。在一些例子中,资源提供服务106也可向请求用户的用户帐户记入成功提供的资源的费用(例如,一旦服务106成功提供这些资源,而不考虑整个堆栈的创建是否成功)。
然而,如果资源提供服务106确定每个提供尝试已被证明为成功,那么在316,资源提供服务106向请求用户通知这个成功。在318,资源提供服务106可向请求用户的用户帐户记入成功提供的资源的费用。
示范性资源提供服务和过程
图4详细示出图1的资源提供服务106的一个例子。如图所示,资源提供服务106包括接口118和基于模板的堆栈生成器120,如上文所述。在一个例子中,基于模板的堆栈生成器120可包括堆栈生成器服务402、堆栈生成器守护进程404和一个或多个堆栈管理工作流406。
如上文所讨论,接口118是允许用户团体102的用户通过公用API调用的面向网络的组件。这层的一个功能是接受、验证、认证、授权并路由对网络资源108(1)-(N)的请求。其它功能包括节流、请求记录和委派令牌交换。接口118可代理用于以下网络资源108(1)-(N)的API中的一个或多个:注册模板、描述模板、删除模板、创建堆栈、描述堆栈、删除堆栈、描述堆栈资源、描述堆栈事件和采用堆栈。
同时,堆栈生成器服务402提供接口118面向的各种API的具体实施。这个服务402也可提供一个或多个内部API。在一些例子中,这个服务提供的API可被分类成模板管理API、堆栈管理API和审计跟踪API。
模板管理API负责存储和处理模板(例如,在图1的数据库124中)。原始、用户提供的模板被接受并被验证,然后被转换成标准/简化形式来与原始最初的模板存储在一起。堆栈生成器服务402提供通过名称查找这些上传的模板并将其标示成已弃用的能力。示范性模板管理API可包括注册模板、描述模板和/或删除模板。
同时,堆栈管理API是发起堆栈创建和删除和获得堆栈描述的入口点。可用异步方式来处理堆栈创建和删除调用。即,堆栈生成器服务402验证并记录用于堆栈创建和删除的用户请求,而堆栈生成器守护进程404异步地处理用户意图的实际处理。堆栈管理API也使得能够读出堆栈资源数据并把堆栈资源数据写入底层存储。用户团体102的用户可通过这些API来请求检查其堆栈资源的逻辑物理绑定。类似地,当堆栈管理工作流406分配或取消分配堆栈资源时,堆栈管理工作流406使用堆栈管理API来记录/更新物理逻辑映射。堆栈管理API可包括创建堆栈、描述堆栈、删除堆栈、采用堆栈、描述堆栈资源、添加堆栈资源(内部API)和/或删除堆栈资源(内部API)。
堆栈生成器服务402也可维持使能代表用户执行资源创建/删除动作的记录的审计跟踪API。在一些例子中,记录每个动作来维护向数据库126中的每个用户帐户记入的费用的记录。另外,在数据库126中具有帐户的用户团体102中的每个用户可通过借助描述堆栈事件API来检索该用户的记录。审计跟踪API可包括描述堆栈事件和/或添加堆栈事件。
同时,堆栈生成器守护进程404负责把堆栈管理工作流406和上文描述的作业状态存储整合。这个守护进程404可周期性地检查堆栈请求表中的新/未开始的请求且可产生堆栈管理工作流406来处理这些请求。堆栈生成器守护进程404也可周期性地检查现有堆栈管理工作流406,且可在作业存储记录中把这些工作流中的一些标记成完成。这样可把堆栈管理工作流406调用从任何前端服务有效分离。
最终,堆栈管理工作流406负责执行用于在堆栈创建期间网络资源108(1)-(N)的创建和配置以及在正常关机期间和在堆栈删除期间网络资源108(1)-(N)的终止的各种步骤。
图5示出图1和4的资源提供服务106的示范性堆栈管理工作流406。如图所示,示范性堆栈管理工作流406在简单工作流服务(SWF)502的上面构建。堆栈管理工作流406包括两个工作流类型:创建堆栈工作流类型和删除堆栈工作流类型。创建堆栈工作流类型与创建堆栈决定器504相关,而删除堆栈工作流类型与删除堆栈决定器506相关。另外,这些工作流与对应的创建活动508、描述活动510和删除活动512相关,上述活动一起使能在堆栈上下文中网络资源108(1)-(N)的创建、描述和删除。
图6示出使用模板来在图1、4和5的架构中创建堆栈的示范性过程600。在“1”,示范性用户102(1)调用创建堆栈(CreateStack)API,把模板名称和堆栈名称传到接口118中。在“2”,认证服务602认证请求。
在“3”,接口118把请求委派到堆栈生成器服务402,且具体来说,委派到堆栈生成器服务402的API服务器604。堆栈生成器服务402首先通过参考堆栈资源606来验证堆栈名称以确保所选名称不与另一堆栈重复。然后,堆栈生成器服务402通过参考模板元数据608来核实模板名称是否有效。如果堆栈名称和模板名称都是有效的,那么堆栈生成器服务402在堆栈元数据(SDB)表610中保存堆栈元数据(名称空间,堆栈名称,模板名称,状态=CREATE_PENDING)并将成功的回复发送回到用户102(1)。
在“4”,堆栈生成器守护进程404挑选具有状态(Status)=CREATE_PENDING(创建挂起)的堆栈,并开始创建堆栈(CreateStack)工作流,把名称空间(Namespace)、模板ID(TemplateID)、堆栈ID(StackID)传到创建的工作流。然后,守护进程404把这些堆栈的状态更新到CREATE_IN_PROGRESS(正在创建)。守护进程404也把审计跟踪条目输入到审计跟踪表612中,从而指示正在进行堆栈创建。
在“5”,创建堆栈工作流类型的创建堆栈决定器504周期性地轮询SWF502以获得决定事件。当创建堆栈决定器504中的一个或多个从SWF 502接收到开始工作流请求时,相应的决定器504开始处理创建工作流请求。
在“6”,在接收到创建堆栈请求之后,创建堆栈决定器504把关于堆栈创建的条目输入到审计跟踪表612中。
在“7”,创建堆栈决定器504联系模板服务(例如,模板元数据608)来获得针对给定模板ID的模板的内部表示。在获得模板之后,决定器504计算创建资源的次序。这可能基于来自模板或文本文件的隐式依赖性或基于用户102(1)指定的显式依赖性。一旦决定器504确定了资源创建的次序,决定器504就安排对应于计算的列表中的网络资源108(1)-(N)(以及在模板中捕获的配置元数据)的第一组创建资源活动508的计划,以成功创建并配置网络资源108(1)-(N)中的一个。
在“8”,创建资源活动508周期性地轮询SWF 502以获得工作。在“9”,在从SWF 502接收到创建并配置特定资源的工作之后,创建资源活动508联系对应网络资源以创建并配置该资源。一旦对资源的创建资源调用成功返回,创建资源活动508就通过成功完成活动来向SWF 502指示已成功创建资源。活动成功创建的资源的物理识别符可伴随活动完成指示。
然而,如果创建资源活动508从资源接收到错误/失败,那么活动508就通过活动失败的API把失败报告给SWF 502。活动508从资源获得的错误/失败消息可伴随到SWF 502的活动失败调用。
在“10”,创建堆栈决定器504周期性地轮询SWF 502以获得工作。在“11”,如果创建堆栈决定器504中的一个接收到指示创建资源活动508成功完成的消息,那么创建堆栈决定器504用关于已创建资源的消息来更新绑定服务。这包括把逻辑资源识别符映射到物理资源识别符和创建时间戳。决定器504也把关于成功创建资源的条目输入到审计跟踪表612中。然后,决定器504安排描述资源活动510来描述已创建资源的状态。
如果决定器504接收到创建资源活动超时的消息,那么决定器504重新安排创建资源活动508进行指定次数的尝试。可重复步骤8-11,直到活动508成功完成或直到达到最大重试次数。如果达到创建资源活动的最大重试次数,那么决定器504把对应的条目输入审计跟踪表612中并发起工作流的结束。如果决定器504接收到创建资源活动508失败的消息,那么决定器504检查由活动508返回的错误代码。基于错误代码,决定器504可用类似于活动超时的方式来处理错误且可重试活动。
相反地,基于错误代码,决定器504可决定不重试活动,而可用关于资源创建失败的消息来更新绑定服务。这个更新可包括记录活动508接收的错误消息同时尝试创建资源、把对应的条目输入到审计跟踪表612中和发起工作流的结束。
当决定器504发起工作流的结束时,可执行以下步骤序列。首先,决定器504把工作流(使用工作流记录的状态字段)注释为带有CREATE_FAILED(创建失败)标签。一旦工作流被注释为带有CREATE_FAILED标签,任何决定器504都将不会为该工作流再安排活动。相反,一旦工作流的先前安排的创建资源活动508已被说明(例如,完成或失败)或已达到最大重试次数,那么决定器504(通过结束工作流SWF API)结束工作流,并提供指示不能成功创建堆栈的错误消息。
在“12”,描述资源活动510周期性地轮询SWF 502以获得工作。在“13”,在从SWF 502接收到描述特定网络资源的工作之后,描述资源活动510联系对应网络资源来检查该资源的状态。如果资源处于“活动”状态,那么活动510成功完成。否则,活动510向SWF 502报告失败。
在“14”,创建堆栈决定器504周期性地轮询SWF 502以获得工作。如果创建堆栈决定器504接收到指示描述资源活动510成功完成的消息,那么决定器504把对应的条目输入到审计跟踪表612中,并再次联系模板服务(例如,模板元数据608)来获得模板的内部表示。决定器504比较模板中描述的资源与给定堆栈的已经创建的资源(从工作流堆栈历史获得)并确定将创建的资源。如果将创建的资源集合是空的(这指示已成功创建堆栈),那么决定器504结束工作流。然而,如果将创建资源,那么决定器504安排下一批创建资源活动508。过程600可重复步骤8-14,直到生成整个堆栈。
在“15”,如果决定器504接收到指示描述资源活动510已超时或失败的消息,那么决定器504重新安排创建资源活动510进行指定次数的尝试。过程600可重复步骤12-14,直到活动成功完成或达到最大重试次数。如果达到创建资源活动508的最大重试次数,那么决定器504把对应的条目输入审计跟踪表612中并发起工作流的结束。决定器结束工作流的过程可与之前在步骤10中详细描述的过程一样。
在“16”,堆栈生成器守护进程404周期性地轮询SWF 502来检查对于具有状态(status)=CREATE_IN_PROGRESS(正在创建)的堆栈工作流是否完成。一旦堆栈生成器守护进程404发现已成功完成堆栈创建,那么堆栈生成器守护进程404便把堆栈状态标记成CREATE_COMPLETE(创建完成)。然而,如果堆栈生成器守护进程404通过工作流状态中的CREATE_FIELD标签观察到堆栈创建已失败,那么守护进程404便把堆栈状态标记成CREATE_FAILED(创建失败)。在下文删除堆栈部分讨论了清理失败堆栈创建的细节。一旦堆栈创建工作流结束,堆栈生成器守护进程404就把关于堆栈创建成功/失败的条目输入到审计跟踪表612中。
图7示出在图1、4和5的架构中删除堆栈的示范性过程700。在“1”,示范性用户102(1)调用删除堆栈(DeleteStack)API,把堆栈名称传到接口118中。在“2”,认证服务602认证请求。
在“3”,接口118把请求委派到验证堆栈名称的堆栈生成器服务402。对应的堆栈的状态被标记成DELETE_PENDING(删除挂起)。
在“4”,堆栈生成器守护进程404寻找处于DELETE_PENDING状态的堆栈并通过联系SWF 502来开始删除堆栈类型的工作流。到工作流的输入包括堆栈ID和堆栈使用的模板ID。堆栈元数据610中的堆栈状态现在更新成DELETE_IN_PROGRESS(正在删除)。堆栈生成器守护进程404把指示已开始开始删除的条目写入审计跟踪表612。
在“5”,删除堆栈工作流类型的决定器506周期性地轮询SWF 502以获得决定事件。当删除堆栈决定器506中的一个或多个从SWF 502接收到开始工作流请求时,决定器506开始处理删除堆栈请求。
在“6”,在接收到删除堆栈请求之后,决定器506把对应的条目输入审计跟踪表612中。在“7”,决定器506联系模板服务(例如,模板元数据608)来获得对应于正被删除的堆栈的模板。在接收到模板之后,决定器506计算将删除资源的次序。这可基于堆栈和/或模板中的隐式依赖性和/或基于用户102(1)提供的显式依赖性来进行。
在“8”,基于步骤7中计算的资源次序,决定器506联系绑定服务来获得不是处于已删除状态的资源的物理资源识别符和资源类型。在获得资源类型和识别符之后,决定器506安排合适的删除资源活动512来删除属于给定堆栈的资源。如果决定器506不能找到任何不是处于已删除状态的资源,那么堆栈删除完整。然后,决定器506结束工作流。
在“9”,删除资源活动512周期性地轮询SWF 502以获得工作。在“10”,在从SWF 502接收到删除网络资源的工作之后,删除资源活动512联系对应的网络资源来删除该资源。到特定的删除资源活动512的输入包括将删除的资源的物理识别符。在向资源提交删除请求之后,删除资源活动512周期性地轮询对应的资源来检查该资源的状态。一旦资源声明已成功删除请求的资源,那么活动512通过成功完成活动512来向SWF 502指示已成功发生删除。如果网络返回特定错误类型,那么活动512报告失败并伴随资源返回到决定器506的错误消息和活动失败API。
在“11”,删除堆栈工作流类型的决定器506周期性地轮询SWF 502以获得决定事件。在“12”,在接收到关于活动完成的消息之后,绑定服务被更新来反映在堆栈内资源的删除。决定器506把关于成功资源删除的对应的条目输入到审计跟踪表612中。过程700可重复步骤7-12,直到删除整个堆栈。如果决定器506接收到删除资源活动512已超时或失败的消息,那么决定器506重新安排删除资源活动506指定次数。如果已超过最大重试尝试次数,那么决定器506把绑定服务中资源的归档状态和原因更新成DELETE_FAILED(删除失败)和“达到最大删除尝试”。决定器506也把对应的条目输入到审计跟踪表612中,并使用工作流元数据中的归档的状态来把工作流注释成具有DELETE_FAILED标签。
在“13”,堆栈生成器守护进程404周期性地轮询SWF 502来检查对于具有状态=DELETE_IN_PROGRESS(正在删除)的堆栈工作流是否结束。一旦它发现堆栈删除已成功完成,那么堆栈生成器守护进程404便把堆栈状态标记成DELETE_COMPLETE(删除完成)。如果守护进程404发现工作流已被注释为具有DELETE_FAILED标签,那么它把堆栈状态更新成DELETE_FAILED(删除失败)。
在一些例子中,当堆栈创建正在进行时且在完全创建堆栈之前,示范性用户102(1)可发起堆栈删除。在这个例子中,资源提供服务106可将此理解为终止堆栈创建的请求。在这种情况下,堆栈生成器服务402把堆栈状态标记成CREATE_CANCEL_PENDING(创建取消挂起)。堆栈生成器守护进程404扫描处于CREATE_CANCEL_PENDING状态的堆栈,并通知到对应的创建堆栈工作流中,以请求工作流终止。然后,堆栈生成器守护进程404把堆栈状态更新成CREATE_CANCEL_IN_PROGRESS(正在进行创建取消)。
在接收到通知事件之后,创建堆栈决定器504通过等待将被说明的未决活动来发起工作流的结束。结束工作流的过程可与上文生成堆栈情形中描述的过程一样。
堆栈生成器守护进程404周期性地轮询SWF 502来检查对于具有状态CREATE_CANCEL_IN_PROGRESS的堆栈创建堆栈工作流是否结束。一旦堆栈生成器守护进程404发现堆栈创建已经终止,那么堆栈生成器守护进程404便把堆栈状态标记成DELETE_PENDING(删除挂起)。堆栈删除的过程清理在堆栈生成期间创建的任何资源。
图8示出在图1、4和5的架构中采用堆栈的示范性过程。在“1”,示范性用户102(1)调用采用堆栈(AdoptStack)API,传入模板名称、堆栈名称和捕获堆栈绑定的映射。在“2”,认证服务602认证请求。
在“3”,接口118把请求委派到验证堆栈名称(例如,检查重复等)的堆栈生成器服务402。如果堆栈名称无效,那么将故障返回到用户。堆栈生成器服务402尝试验证模板名称,且如果模板名称有效,服务402就验证堆栈绑定映射的内容来确保按模板名称来识别的模板和绑定映射彼此一致。如果模板名称无效,或按名称来识别的模板和绑定映射不一致,那么将故障返回到用户。
在“4”,堆栈生成器服务402然后借助描述模板中列出的资源的描述资源(DescribeResource)API来核实绑定映射中列出的资源存在且由用户102(1)拥有。如果绑定映射中列出的任何资源不存在,那么将故障返回到用户。堆栈生成器服务402为堆栈创建唯一识别符并把新产生的堆栈识别符和绑定映射中存在绑定信息的新条目插入绑定服务。堆栈生成器服务402也插入/更新堆栈元数据表610来添加/更新用户提供的堆栈名称和产生的堆栈识别符之间的关联。堆栈生成器服务402也把指示堆栈的采用的条目插入审计跟踪表612中。
图9示出在请求创建或删除堆栈期间内部堆栈状态的示范性转变。在这个例子中,如在902所示,示范性堆栈状态的内部状态最初设定成“创建堆栈挂起”。在904,资源提供服务106开始创建堆栈工作流。如在906所示,这把内部堆栈状态改变成“正在进行创建”。然而,如果如在908所示服务106接收到删除堆栈的请求,那么内部堆栈状态如在910所示变成“创建取消挂起”。
当状态是“正在进行创建”(如在906所示)时,在912,服务106也可接收删除堆栈的请求。作为响应,如在910所示,内部堆栈状态也将转变成“创建取消挂起”。
当创建堆栈工作流正在进行且未接收到删除堆栈的请求时,在914,服务106确定创建堆栈工作流是否成功。如果是,那么在916内部堆栈状态转变成“创建完成”。否则,那么在918内部堆栈状态转变成“创建失败”。在前面的例子中,在920,服务106可接收删除堆栈的请求。在这个例子中,如在922所示,内部堆栈状态转变成“删除挂起”。
同时,在内部堆栈状态变成“创建失败”的例子中,在924,转变900发起堆栈清理。然后,如在922所示,内部堆栈状态转变成“删除挂起”。
在910返回到“创建取消挂起”的内部堆栈状态,如上文所讨论,在926转变900通知到创建堆栈工作流中。在928,内部堆栈状态然后转变成“正在进行创建取消”。然后,在930创建堆栈工作流完成,且如在922所示,堆栈状态被更新到“删除挂起”。
当内部堆栈状态是“删除挂起”时,在932删除堆栈工作流开始。如在934所示,内部堆栈状态然后转变成“正在进行删除”。在936,服务106确定删除堆栈工作流是否已成功完成。如果是,那么在938内部堆栈状态转变成“删除完成”。否则,在940内部堆栈状态转变成“删除失败”。然后,在942,服务106可清理工作流且可再次接收删除堆栈的请求。作为响应,如在922所示,内部堆栈状态转变成“删除挂起”。
图10示出在请求创建或删除堆栈期间外部堆栈状态的示范性转变1000。在这个例子中,如在1002所示,示范性堆栈状态的外部状态最初设定成“正在进行创建”。在1004,资源提供服务106确定创建是否成功。如果是,那么在1006外部堆栈状态转变成“创建完成”。否则,在1008外部堆栈状态转变成“创建失败”。
在1010,服务106接收删除堆栈的请求。这样,在1012,外部堆栈状态转变成“正在进行删除”。在1014,服务106确定删除是否成功。如果是,那么在1016外部堆栈状态变成“删除完成”。否则,在1018外部堆栈状态变成“删除失败”。然后,如在1010所示,服务106可再次接收删除堆栈的请求。
条款1.一种或多种存储当执行时使一个或多个处理器执行包括以下动作的计算机可执行指令的计算机可读介质:
从用户的计算设备接收包括根据与多个不同的网络资源中的每一个相关的一个或多个参数至少部分有效来提供所述多个不同的网络资源的堆栈的预填充指令的模板;
至少部分地响应于所述接收来存储模板;
从所述计算设备接收使用所述模板提供多个不同的网络资源的所述堆栈的请求;
检索并解析所述模板来识别请求提供的所述多个不同的网络资源中的每一个和所述相关的一个或多个参数中的每一个;和
至少部分地响应于所述解析,尝试代表用户根据所述相关的一个或多个参数来提供所述多个不同的网络资源中的每一个。
条款2.如条款1所述的一种或多种计算机可读介质,其中所述多个不同的网络资源包括存储服务、负载平衡服务、计算服务或安全服务。
条款3.如条款1所述的一种或多种计算机可读介质,其中所述多个不同的网络资源形成云计算平台的至少一部分。
条款4.如条款1所述的一种或多种计算机可读介质,其中与所述多个不同的网络资源中的相应一个网络资源相关的所述一个或多个参数指定所述相应的网络资源的被请求大小、能力或特征。
条款5.如条款1所述的一种或多种计算机可读介质,其中所述模板按由所述用户指定的逻辑名称来识别所述多个不同的网络资源中的至少一个。
条款6.如条款1所述的一种或多种计算机可读介质,其中所述模板指定所述多个不同的网络资源中的至少一个的多个不同版本中的特定版本。
条款7.如条款1所述的一种或多种计算机可读介质,其中所述尝试提供所述多个不同的网络资源中的每一个包括尝试并行提供所述多个不同的网络资源中的至少两个。
条款8.如条款1所述的一种或多种计算机可读介质,其中所述尝试提供所述多个不同的网络资源中的每一个包括:尝试以至少部分基于所述多个不同的网络资源的一部分之间的指定的依赖性的顺序来提供所述多个不同的网络资源中的每一个。
条款9.如条款8所述的一种或多种计算机可读介质,其中所述指定的依赖性包括隐式依赖性,且其中所述解析所述模板有效识别所述多个不同的网络资源的所述部分之间的所述隐式依赖性。
条款10.如条款8所述的一种或多种计算机可读介质,其中所述指定的依赖性包括由所述用户指定的显式依赖性。
条款11.如条款1所述的一种或多种计算机可读介质,其还存储当执行时使所述一个或多个处理器执行包括以下动作的计算机可执行指令:通知所述用户已至少部分地响应于成功提供所述多个不同的网络资源中的每一个来提供所述堆栈。
条款12.如条款1所述的一种或多种计算机可读介质,其还存储当执行时使所述一个或多个处理器执行包括以下动作的计算机可执行指令:
接收提供所述多个不同的网络资源中的一个网络资源已失败的指示;和
至少部分地响应于所述接收所述指示来使所述多个不同的网络资源中的每个已成功提供的网络资源退回。
条款13.如条款12所述的一种或多种计算机可读介质,其还存储当执行时使所述一个或多个处理器执行包括以下动作的计算机可执行指令:至少部分地响应于所述接收所述指示来通知所述用户提供所述堆栈已失败。
条款14.一种方法,其包括
在被配置具有可执行指令的一个或多个计算机系统控制下,
从用户接收提供通过模板识别的多个不同的网络资源的堆栈的请求;
解析所述模板来识别请求提供的所述多个不同的网络资源中的每一个;
尝试至少部分地响应于所述解析来提供所述多个不同的网络资源中的每一个;
当成功提供所述多个不同的网络资源中的每一个时,通知所述用户已成功提供所述堆栈;和
当未成功提供所述多个不同的网络资源中的一个或多个时,通知所述用户尚未成功提供所述堆栈。
条款15.如条款14所述的方法,其中所述多个不同的网络资源中的每一个常驻在云计算平台上。
条款16.如条款14所述的方法,其还包括维持与所述用户相关的用户帐户,且其中所述尝试提供所述多个不同的网络资源包括:尝试代表所述用户提供所述多个不同的网络资源,使得与成功提供网络资源相关的费用被记入与所述用户相关的所述用户帐户。
条款17.如条款14所述的方法,其中所述模板包括用于请求提供所述多个不同的资源中的至少两个的预填充指令。
条款18.如条款14所述的方法,其中所述模板包括文本文件,所述文本文件包括基于文本的指令,所述指令包括对所述多个不同的网络资源中的每一个的调用。
条款19.如条款14所述的方法,其中所述模板指定所述多个不同的网络资源中的至少一个的多个不同版本中的特定版本。
条款20.如条款14所述的方法,其中所述模板指定所述用户已选择的所述多个不同的网络资源中的一个网络资源的组件的逻辑名称。
条款21.如条款14所述的方法,其中所述解析所述模板包括解析所述模板来识别所述多个不同的网络资源之间的隐式依赖性,且其中所述尝试提供所述多个不同的网络资源包括:尝试以至少部分基于所述隐式依赖性的顺序来提供所述多个不同的网络资源。
条款22.如条款14所述的方法,其中所述请求显式指定所述多个不同的网络资源中的至少两个之间的依赖性,且其中所述尝试提供所述多个不同的网络资源包括:尝试以至少部分基于所述依赖性的顺序来提供所述多个不同的网络资源。
条款23.如条款14所述的方法,其中所述尝试提供所述多个不同的网络资源包括尝试并行提供所述多个不同的网络资源中的至少一些。
条款24.如条款14所述的方法,其还包括当未成功提供所述多个不同的网络资源中的一个或多个时,移除已成功提供的所述多个不同的网络资源中的那些网络资源。
条款25.一种装置,其包括:
一个或多个处理器;
可由所述一个或多个处理器访问的存储器;和
存储在存储器中且可在所述一个或多个处理器上执行来进行以下操作的基于模板的堆栈生成器:
从用户接收至少部分基于模板来创建不同的网络资源的堆栈的请求,所述模板包括用于创建包括所述不同的网络资源的所述堆栈的预填充指令;
解析所述模板来识别所述不同的网络资源中的每一个;和
尝试代表所述用户提供所述不同的网络资源中的每一个。
条款26.如条款25所述的装置,其中所述基于模板的堆栈生成器还可在所述一个或多个处理器上执行来:
当所述基于模板的堆栈生成器已代表所述用户成功提供所述不同的网络资源中的每一个时,通知所述用户已成功提供所述堆栈;
当所述基于模板的堆栈生成器没能代表所述用户成功提供所述不同的网络资源中的至少一个时,通知所述用户尚未成功提供所述堆栈。
条款27.如条款26所述的装置,其中所述基于模板的堆栈生成器还可在所述一个或多个处理器上执行来:
当所述基于模板的堆栈生成器没能代表所述用户成功提供所述不同的网络资源中的所述至少一个时,使所述基于模板的堆栈生成器已成功提供的所述不同的网络资源中的每一个退回。
条款28.如条款25所述的装置,其中所述请求包括请求创建网络应用的堆栈,且所述不同的网络资源包括基于云的负载平衡服务、基于云的计算服务和基于云的存储服务。
条款29.如条款25所述的装置,其中所述不同的网络资源形成由单一实体管理的云计算平台的至少一部分。
条款30.如条款25所述的装置,其中所述不同的网络资源中的一个形成由第一实体管理的云计算平台的至少一部分,且所述不同的网络资源中的另一个形成由与所述第一实体无关的第二实体管理的云计算平台的至少一部分。
条款31.如条款25所述的装置,其还包括存储或具有到多个不同模板的访问的数据库,所述多个不同模板中的每一个包括用于创建包括不同的网络资源的堆栈的预填充指令。
条款32.如条款31所述的装置,其中所述多个不同模板的至少一部分已由无关用户的团体提供。
条款33.一种或多种存储当执行时使一个或多个处理器呈现图形用户接口(GUI)的计算机可执行指令的计算机可读介质,所述GUI包括:
有助于选择多个不同模板中的一个模板的第一区域,所述多个不同模板中的每一个包括用于创建包括一组不同的网络资源的堆栈的预填充指令;
用于命名将使用所选择的模板创建的堆栈的第二区域;和
用于请求创建所述堆栈的第三区域。
条款34.如条款33所述的一种或多种计算机可读介质,其中所述多个不同模板中的每一个包括可扩展标记语言(XML)格式或JavaScript对象表示法(JSON)格式的指令。
条款35.如条款33所述的一种或多种计算机可读介质,其中所述多个不同模板的至少一部分已由用户的团体的不同用户提供。
结论
虽然用针对结构特征和/或方法论行为的语言描述了主题,但是应理解在权利要求书中定义的主题不一定限于所述特定特征或行为。相反,特定特征和行为是作为实施权利要求的示范形式来公开的。
Claims (15)
1.一种方法,包括:
在被配置具有可执行指令的一个或多个计算机系统控制下,
从用户接收提供通过模板识别的多个不同的网络资源的堆栈的请求;
解析所述模板来识别请求提供的所述多个不同的网络资源中的每一个;
尝试至少部分地响应于所述解析来提供所述多个不同的网络资源中的每一个;
当成功提供所述多个不同的网络资源中的每一个时,通知所述用户已成功提供所述堆栈;并且
当未成功提供所述多个不同的网络资源中的一个或多个时,通知所述用户尚未成功提供所述堆栈。
2.如权利要求1所述的方法,该方法还包括维持与所述用户相关的用户帐户,且其中所述尝试提供所述多个不同的网络资源包括:尝试代表所述用户提供所述多个不同的网络资源,使得与成功提供网络资源相关的费用被记入与所述用户相关的所述用户帐户。
3.如权利要求1所述的方法,其中所述模板包括用于请求提供所述多个不同资源中的至少两个的预填充指令。
4.如权利要求1所述的方法,其中所述模板包括文本文件,所述文本文件包括基于文本的指令,所述指令包括对所述多个不同的网络资源中的每一个的调用。
5.如权利要求1所述的方法,其中所述模板指定所述多个不同的网络资源中的至少一个的多个不同版本中的特定版本。
6.如权利要求1所述的方法,其中所述模板指定所述用户已选择的所述多个不同的网络资源中的一个网络资源的组件的逻辑名称。
7.如权利要求1所述的方法,其中所述解析所述模板包括解析所述模板来识别所述多个不同的网络资源中的隐式依赖性,且其中所述尝试提供所述多个不同的网络资源包括:尝试以至少部分地基于所述隐式依赖性的顺序来提供所述多个不同的网络资源。
8.如权利要求1所述的方法,其中所述请求显式指定所述多个不同的网络资源中的至少两个之间的依赖性,且其中所述尝试提供所述多个不同的网络资源包括:尝试以至少部分地基于所述依赖性的顺序来提供所述多个不同的网络资源。
9.如权利要求1所述的方法,该方法还包括当未成功提供所述多个不同的网络资源中的一个或多个时,移除已成功提供的所述多个不同的网络资源中的那些网络资源。
10.一种装置,其包括:
一个或多个处理器;
存储器,能由所述一个或多个处理器访问;和
基于模板的堆栈生成器,其存储在存储器中且能在所述一个或多个处理器上执行来进行以下操作:
从用户接收至少部分地基于模板来创建不同的网络资源的堆栈的请求,所述模板包括用于创建包括所述不同的网络资源的所述堆栈的预填充指令;
解析所述模板来识别所述不同的网络资源中的每一个;和
尝试代表所述用户提供所述不同的网络资源中的每一个。
11.如权利要求10所述的装置,其中所述基于模板的堆栈生成器还能在所述一个或多个处理器上执行来:
当所述基于模板的堆栈生成器已代表所述用户成功提供所述不同的网络资源中的每一个时,通知所述用户已成功提供所述堆栈;
当所述基于模板的堆栈生成器没能代表所述用户成功提供所述不同的网络资源中的至少一个时,通知所述用户尚未成功提供所述堆栈。
12.如权利要求11所述的装置,其中所述基于模板的堆栈生成器还能在所述一个或多个处理器上执行来:
当所述基于模板的堆栈生成器没能代表所述用户成功提供所述不同的网络资源中的所述至少一个时,使所述基于模板的堆栈生成器已成功提供的所述不同的网络资源中的每一个退回。
13.如权利要求10所述的装置,其中所述请求包括请求创建网络应用的堆栈,且所述不同的网络资源包括基于云的负载平衡服务、基于云的计算服务和基于云的存储服务。
14.如权利要求10所述的装置,其中所述不同的网络资源中的一个形成由第一实体管理的云计算平台的至少一部分,且所述不同的网络资源中的另一个形成由与所述第一实体无关的第二实体管理的云计算平台的至少一部分。
15.如权利要求10所述的装置,该装置还包括存储或具有到多个不同模板的访问的数据库,所述多个不同模板中的每一个包括用于创建包括不同的网络资源的堆栈的预填充指令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/824,723 | 2010-06-28 | ||
US12/824,723 US9178766B2 (en) | 2010-06-28 | 2010-06-28 | Provisioning multiple network resources |
PCT/US2011/042050 WO2012006034A1 (en) | 2010-06-28 | 2011-06-27 | Provisioning multiple network resources |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103038788A true CN103038788A (zh) | 2013-04-10 |
CN103038788B CN103038788B (zh) | 2020-03-31 |
Family
ID=45353589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180031239.XA Active CN103038788B (zh) | 2010-06-28 | 2011-06-27 | 提供多个网络资源 |
Country Status (7)
Country | Link |
---|---|
US (4) | US9178766B2 (zh) |
EP (2) | EP2585988B1 (zh) |
JP (1) | JP2013534675A (zh) |
CN (1) | CN103038788B (zh) |
CA (1) | CA2803603C (zh) |
SG (1) | SG186847A1 (zh) |
WO (1) | WO2012006034A1 (zh) |
Families Citing this family (72)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110264729A1 (en) * | 2010-04-27 | 2011-10-27 | Denis Kulgavin | Augmentation of network traffic |
US9178766B2 (en) | 2010-06-28 | 2015-11-03 | Amazon Technologies, Inc. | Provisioning multiple network resources |
US20120054626A1 (en) * | 2010-08-30 | 2012-03-01 | Jens Odenheimer | Service level agreements-based cloud provisioning |
US8639793B2 (en) | 2010-10-29 | 2014-01-28 | Cisco Technology, Inc. | Disaster recovery and automatic relocation of cloud services |
US8667138B2 (en) * | 2010-10-29 | 2014-03-04 | Cisco Technology, Inc. | Distributed hierarchical rendering and provisioning of cloud services |
US9276816B1 (en) * | 2011-01-17 | 2016-03-01 | Cisco Technology, Inc. | Resource management tools to create network containers and virtual machine associations |
US9235447B2 (en) | 2011-03-03 | 2016-01-12 | Cisco Technology, Inc. | Extensible attribute summarization |
JP2012243104A (ja) * | 2011-05-19 | 2012-12-10 | Buffalo Inc | ファイル管理装置及びその制御プログラム |
US8924542B1 (en) | 2011-05-31 | 2014-12-30 | Amazon Technologies, Inc. | Methods and apparatus for scalable private services |
US9251481B2 (en) * | 2011-06-13 | 2016-02-02 | Accenture Global Services Limited | Distributed metering and monitoring system |
US9319272B1 (en) * | 2011-09-21 | 2016-04-19 | Amazon Technologies, Inc. | Methods and apparatus for providing composed appliance services in virtualized private networks |
JP5484427B2 (ja) * | 2011-10-27 | 2014-05-07 | 株式会社日立製作所 | ネットワークシステムの管理方法、ネットワークシステム及び管理サーバ |
US9436509B2 (en) * | 2011-12-14 | 2016-09-06 | Microsoft Technology Licensing, Llc | Pre-provisioned web application platform site collections |
US9009319B2 (en) * | 2012-01-18 | 2015-04-14 | Rackspace Us, Inc. | Optimizing allocation of on-demand resources using performance |
US8990619B1 (en) * | 2012-02-21 | 2015-03-24 | Cisco Technology, Inc. | Method and systems to perform a rolling stack upgrade |
US8825817B1 (en) * | 2012-03-19 | 2014-09-02 | Amazon Technologies, Inc. | Using a template to update a stack of resources |
US8949930B1 (en) * | 2012-03-19 | 2015-02-03 | Amazon Technologies, Inc. | Template representation of security resources |
US10089152B1 (en) | 2012-03-19 | 2018-10-02 | Amazon Technologies, Inc. | Using scripts to bootstrap applications with metadata from a template |
JP6602669B2 (ja) * | 2012-06-15 | 2019-11-06 | サイクル コンピューティング,エルエルシー | クラウドインフラストラクチャ内のインフラストラクチャ欠陥を自動的に検出及び解決する方法及びシステム |
US9292352B2 (en) | 2012-08-10 | 2016-03-22 | Adobe Systems Incorporated | Systems and methods for cloud management |
US10963420B2 (en) * | 2012-08-10 | 2021-03-30 | Adobe Inc. | Systems and methods for providing hot spare nodes |
US9467355B2 (en) | 2012-09-07 | 2016-10-11 | Oracle International Corporation | Service association model |
US9542400B2 (en) | 2012-09-07 | 2017-01-10 | Oracle International Corporation | Service archive support |
US10521746B2 (en) | 2012-09-07 | 2019-12-31 | Oracle International Corporation | Recovery workflow for processing subscription orders in a computing infrastructure system |
US9621435B2 (en) | 2012-09-07 | 2017-04-11 | Oracle International Corporation | Declarative and extensible model for provisioning of cloud based services |
US10419524B2 (en) * | 2012-09-07 | 2019-09-17 | Oracle International Corporation | System and method for workflow orchestration for use with a cloud computing environment |
US9203866B2 (en) | 2012-09-07 | 2015-12-01 | Oracle International Corporation | Overage framework for cloud services |
US9276942B2 (en) | 2012-09-07 | 2016-03-01 | Oracle International Corporation | Multi-tenancy identity management system |
US9667470B2 (en) | 2012-09-07 | 2017-05-30 | Oracle International Corporation | Failure handling in the execution flow of provisioning operations in a cloud environment |
US10148530B2 (en) | 2012-09-07 | 2018-12-04 | Oracle International Corporation | Rule based subscription cloning |
US9253113B2 (en) | 2012-09-07 | 2016-02-02 | Oracle International Corporation | Customizable model for throttling and prioritizing orders in a cloud environment |
US9058219B2 (en) | 2012-11-02 | 2015-06-16 | Amazon Technologies, Inc. | Custom resources in a resource stack |
US9122510B2 (en) * | 2013-01-02 | 2015-09-01 | International Business Machines Corporation | Querying and managing computing resources in a networked computing environment |
US9569476B2 (en) | 2013-04-02 | 2017-02-14 | International Business Machines Corporation | Intelligent data routing and storage provisioning |
US20140358991A1 (en) * | 2013-05-31 | 2014-12-04 | Fluke Corporation | Integrating data from various network nodes using a template stack |
US9239715B1 (en) * | 2013-09-25 | 2016-01-19 | Amazon Technologies, Inc. | Cancel and rollback update stack requests |
US9479451B1 (en) | 2013-10-18 | 2016-10-25 | Google Inc. | Allocating resources |
CN104639361B (zh) * | 2013-11-15 | 2019-04-19 | 中兴通讯股份有限公司 | 网络服务模板的管理方法和装置 |
US9807057B1 (en) | 2013-12-17 | 2017-10-31 | Amazon Technologies, Inc. | Private network peering in virtual network environments |
US9444735B2 (en) | 2014-02-27 | 2016-09-13 | Cisco Technology, Inc. | Contextual summarization tag and type match using network subnetting |
US10673712B1 (en) * | 2014-03-27 | 2020-06-02 | Amazon Technologies, Inc. | Parallel asynchronous stack operations |
KR20180043385A (ko) | 2014-04-09 | 2018-04-27 | 콘비다 와이어리스, 엘엘씨 | 서비스 인에이블러 기능 |
US10089476B1 (en) | 2014-06-03 | 2018-10-02 | Amazon Technologies, Inc. | Compartments |
US10516667B1 (en) | 2014-06-03 | 2019-12-24 | Amazon Technologies, Inc. | Hidden compartments |
CN104092755B (zh) * | 2014-07-07 | 2017-06-13 | 武汉科技大学 | 一种云服务起源数据的捕获方法和装置 |
US9787499B2 (en) | 2014-09-19 | 2017-10-10 | Amazon Technologies, Inc. | Private alias endpoints for isolated virtual networks |
US9882775B1 (en) * | 2014-10-22 | 2018-01-30 | Amazon Technologies, Inc. | Dependent network resources |
US10089676B1 (en) | 2014-11-11 | 2018-10-02 | Amazon Technologies, Inc. | Graph processing service component in a catalog service platform |
US11244261B2 (en) * | 2014-11-11 | 2022-02-08 | Amazon Technologies, Inc. | Catalog service platform for deploying applications and services |
US10565534B2 (en) | 2014-11-11 | 2020-02-18 | Amazon Technologies, Inc. | Constraints and constraint sharing in a catalog service platform |
US9832118B1 (en) | 2014-11-14 | 2017-11-28 | Amazon Technologies, Inc. | Linking resource instances to virtual networks in provider network environments |
US10212161B1 (en) | 2014-11-19 | 2019-02-19 | Amazon Technologies, Inc. | Private network layering in provider network environments |
US10277522B1 (en) * | 2014-11-26 | 2019-04-30 | Amazon Technologies, Inc. | Automated association of computing resources with resource creators for usage allocation |
JP6458565B2 (ja) * | 2015-03-11 | 2019-01-30 | 日本電気株式会社 | プロビジョニング設定支援装置、プロビジョニング設定支援方法、そのプログラム及びシステム |
US10021196B1 (en) | 2015-06-22 | 2018-07-10 | Amazon Technologies, Inc. | Private service endpoints in isolated virtual networks |
US10142174B2 (en) | 2015-08-25 | 2018-11-27 | Oracle International Corporation | Service deployment infrastructure request provisioning |
US10523591B2 (en) * | 2015-12-08 | 2019-12-31 | Microsoft Technology Licensing, Llc | Discovering resource availability across regions |
US10389847B1 (en) * | 2015-12-23 | 2019-08-20 | Mitel Networks, Inc. | Provisioning resources in a communications system |
US10574523B2 (en) | 2016-01-15 | 2020-02-25 | RightScale Inc. | Systems and methods for cloud-deployments with imperatives |
US10341250B2 (en) | 2016-05-25 | 2019-07-02 | Accenture Global Solutions Limited | Device based automatic network provisioning |
US10623252B2 (en) * | 2016-12-13 | 2020-04-14 | International Business Machines Corporation | Performing actions that have been defined for provisioned instances |
US11044145B2 (en) | 2016-12-13 | 2021-06-22 | International Business Machines Corporation | Configuring and naming of cloud provisioning entities |
US11153273B2 (en) | 2016-12-13 | 2021-10-19 | International Business Machines Corporation | Generating and managing names of instances |
US10498810B2 (en) | 2017-05-04 | 2019-12-03 | Amazon Technologies, Inc. | Coordinating inter-region operations in provider network environments |
US11144363B1 (en) | 2017-09-18 | 2021-10-12 | Amazon Technologies, Inc. | Workflow management system |
US11108702B1 (en) * | 2017-12-11 | 2021-08-31 | Amazon Technologies, Inc. | Customized command execution for a computing resource fleet |
US11513864B2 (en) * | 2018-03-22 | 2022-11-29 | Amazon Technologies, Inc. | Adoption of existing virtual computing resources into logical containers for management operations |
US11086685B1 (en) | 2018-04-25 | 2021-08-10 | Amazon Technologies, Inc. | Deployment of virtual computing resources with repeatable configuration as a resource set |
US10595191B1 (en) | 2018-12-06 | 2020-03-17 | At&T Intellectual Property I, L.P. | Mobility management enhancer |
US10929200B1 (en) | 2019-09-16 | 2021-02-23 | International Business Machines Corporation | Live runtime infrastructure orchestration |
US11822878B2 (en) * | 2021-02-24 | 2023-11-21 | Think Research Corporation | Systems, methods and devices for structured dynamic electronic forms |
US11704484B2 (en) * | 2021-04-30 | 2023-07-18 | Bank Of America Corporation | Cross channel digital data parsing and generation system |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1326143A (zh) * | 2000-05-31 | 2001-12-12 | 国际商业机器公司 | 用于原子地及持续地交换资源组的方法、系统和程序产品 |
US20060075102A1 (en) * | 2004-09-29 | 2006-04-06 | Fujitsu Network Communications, Inc. | Method and system for provisioning services on a communication network |
CN1834978A (zh) * | 2005-03-14 | 2006-09-20 | 株式会社Ntt都科摩 | 访问控制装置以及访问控制方法 |
CN101156138A (zh) * | 2005-04-07 | 2008-04-02 | 国际商业机器公司 | 在网格计算环境中外包资源的方法、系统和程序产品 |
CN101166173A (zh) * | 2006-10-20 | 2008-04-23 | 北京直真节点技术开发有限公司 | 一种单点登录系统、装置及方法 |
CN101471960A (zh) * | 2007-12-25 | 2009-07-01 | 株式会社日立制作所 | 服务提供系统、网关、以及服务器 |
US20100131625A1 (en) * | 2008-11-26 | 2010-05-27 | Dehaan Michael Paul | Systems and methods for remote network management having multi-node awareness |
Family Cites Families (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7085834B2 (en) | 2000-12-22 | 2006-08-01 | Oracle International Corporation | Determining a user's groups |
US20020087734A1 (en) * | 2000-12-29 | 2002-07-04 | Marshall Donald Brent | System and method for managing dependencies in a component-based system |
US7352853B1 (en) | 2001-05-22 | 2008-04-01 | Cisco Technology, Inc. | Automation of customer premises equipment provisioning in a telecommunications network |
US6766364B2 (en) | 2002-01-15 | 2004-07-20 | Telcordia Technologies, Inc. | Template based configuration and validation of a network for enabling a requested service to be compatible with the previously enabled services |
US20040054690A1 (en) * | 2002-03-08 | 2004-03-18 | Hillerbrand Eric T. | Modeling and using computer resources over a heterogeneous distributed network using semantic ontologies |
JP3901060B2 (ja) | 2002-08-28 | 2007-04-04 | 日本電気株式会社 | アプリケーションの更新処理方法、更新処理システム及び更新処理プログラム |
US20050021688A1 (en) | 2003-02-25 | 2005-01-27 | David Felts | System and method for domain configuration |
US7457853B1 (en) | 2003-07-03 | 2008-11-25 | Cisco Technology, Inc. | Method and apparatus for automatically configuring a network device |
JP2005056201A (ja) | 2003-08-05 | 2005-03-03 | Hitachi Software Eng Co Ltd | 異種混合計算機接続システム及びシステムにおける処理割り当て方法及び課金方法 |
US20070112574A1 (en) | 2003-08-05 | 2007-05-17 | Greene William S | System and method for use of mobile policy agents and local services, within a geographically distributed service grid, to provide greater security via local intelligence and life-cycle management for RFlD tagged items |
US7246200B1 (en) | 2003-11-12 | 2007-07-17 | Veritas Operating Corporation | Provisioning and snapshotting using copy on read/write and transient virtual machine technology |
US7558864B2 (en) | 2004-01-27 | 2009-07-07 | International Business Machines Corporation | Method, system and product for identifying, reserving, and logically provisioning resources in provisioning data processing systems |
US7290164B1 (en) | 2004-03-03 | 2007-10-30 | Cisco Technology, Inc. | Method of reverting to a recovery configuration in response to device faults |
JP2005266917A (ja) | 2004-03-16 | 2005-09-29 | Nec Corp | 分散資源獲得システム、分散資源獲得方法および分散資源獲得用プログラム |
US8326658B1 (en) | 2004-04-12 | 2012-12-04 | Amazon Technologies, Inc. | Generation and contextual presentation of statistical data reflective of user selections from an electronic catalog |
US7873960B2 (en) | 2004-08-04 | 2011-01-18 | Microsoft Corporation | Generic packaging tool for packaging application and component therefor to be installed on computing device |
GB0514191D0 (en) * | 2005-07-12 | 2005-08-17 | Ibm | Methods, apparatus and computer programs for optimized parsing and service invocation |
JP2007193696A (ja) | 2006-01-20 | 2007-08-02 | Rikogaku Shinkokai | 支援プログラム、支援プログラム生成プログラム、支援プログラム生成方法、ファイル生成・配布方法、及びインストールサーバ |
US8024440B2 (en) | 2006-05-03 | 2011-09-20 | Netapp, Inc. | Configuration verification, recommendation, and animation method for a disk array in a storage area network (SAN) |
US7496893B2 (en) * | 2006-06-15 | 2009-02-24 | International Business Machines Corporation | Method for no-demand composition and teardown of service infrastructure |
US8327350B2 (en) | 2007-01-02 | 2012-12-04 | International Business Machines Corporation | Virtual resource templates |
US20080288239A1 (en) * | 2007-05-15 | 2008-11-20 | Microsoft Corporation | Localization and internationalization of document resources |
US7844903B2 (en) | 2007-05-25 | 2010-11-30 | Dell Products, Lp | System and method of automatically generating animated installation manuals |
US20080294777A1 (en) * | 2007-05-25 | 2008-11-27 | Alexei Karve | Method and apparatus for template-based provisioning in a service delivery environment |
US8938735B2 (en) | 2007-08-31 | 2015-01-20 | Thomson Reuters Global Resources | Bootstrapper and software download manager |
US8370802B2 (en) | 2007-09-18 | 2013-02-05 | International Business Machines Corporation | Specifying an order for changing an operational state of software application components |
US20090171730A1 (en) * | 2007-12-28 | 2009-07-02 | International Business Machines Corporation | Non-disruptively changing scope of computer business applications based on detected changes in topology |
US8332459B2 (en) | 2008-02-26 | 2012-12-11 | International Business Machines Corporation | Federation of composite applications |
JP2009217321A (ja) | 2008-03-07 | 2009-09-24 | Fuji Xerox Co Ltd | 情報処理装置及び情報処理プログラム |
US8510718B2 (en) | 2008-06-30 | 2013-08-13 | Ubs Ag | Platform verification portal |
US8572580B2 (en) | 2008-07-28 | 2013-10-29 | Microsoft Corporation | Computer application packages with customizations |
US8819201B2 (en) | 2008-08-07 | 2014-08-26 | At&T Intellectual Property I, L.P. | Method and apparatus for providing routing and access control filters |
US8336047B2 (en) | 2008-08-25 | 2012-12-18 | International Business Machines Corporation | Provisioning virtual resources using name resolution |
US9037692B2 (en) | 2008-11-26 | 2015-05-19 | Red Hat, Inc. | Multiple cloud marketplace aggregation |
US9870541B2 (en) * | 2008-11-26 | 2018-01-16 | Red Hat, Inc. | Service level backup using re-cloud network |
US20100154024A1 (en) | 2008-12-12 | 2010-06-17 | At&T Intellectual Property I, L.P. | Methods, appliances, and computer program products for controlling access to a communication network based on policy information |
JP5183448B2 (ja) | 2008-12-15 | 2013-04-17 | 三菱電機株式会社 | 情報処理装置及び情報処理方法及びプログラム |
US8331362B2 (en) | 2008-12-30 | 2012-12-11 | Juniper Networks, Inc. | Methods and apparatus for distributed dynamic network provisioning |
US8565118B2 (en) | 2008-12-30 | 2013-10-22 | Juniper Networks, Inc. | Methods and apparatus for distributed dynamic network provisioning |
US8856333B2 (en) * | 2009-06-16 | 2014-10-07 | Microsoft Corporation | Datacenter execution templates |
US8769391B2 (en) | 2009-08-24 | 2014-07-01 | Adobe Systems Incorporated | Application broker |
KR101768236B1 (ko) | 2009-10-01 | 2017-08-14 | 텔레폰악티에볼라겟엘엠에릭슨(펍) | 애플리케이션 범위 관리를 위한 방법 및 장치 |
US8615585B2 (en) * | 2010-05-28 | 2013-12-24 | International Business Machines Corporation | Ontology based resource provisioning and management for services |
US10073706B2 (en) | 2010-06-25 | 2018-09-11 | Oracle International Corporation | Method and system for performing application server configuration using configuration groups |
US9178766B2 (en) | 2010-06-28 | 2015-11-03 | Amazon Technologies, Inc. | Provisioning multiple network resources |
US8699499B2 (en) | 2010-12-08 | 2014-04-15 | At&T Intellectual Property I, L.P. | Methods and apparatus to provision cloud computing network elements |
JP5476485B2 (ja) | 2011-01-05 | 2014-04-23 | 株式会社日立製作所 | サービスの予約管理方法、仮想計算機システム及び記憶媒体 |
US20120246630A1 (en) | 2011-03-23 | 2012-09-27 | Secure By Design | System and Method for Automating Installation and Updating of Third Party Software |
US9177132B2 (en) | 2011-10-12 | 2015-11-03 | International Business Machines Corporation | Capturing data parameters in templates in a networked computing environment |
US9003141B2 (en) | 2011-11-14 | 2015-04-07 | Ca, Inc. | Enhanced software application platform |
US8984606B2 (en) | 2011-12-22 | 2015-03-17 | Hewlett-Packard Development Company, L.P. | Re-authentication |
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 |
US9047133B2 (en) | 2012-03-02 | 2015-06-02 | Vmware, Inc. | Single, logical, multi-tier application blueprint used for deployment and management of multiple physical applications in a cloud environment |
US8825817B1 (en) | 2012-03-19 | 2014-09-02 | Amazon Technologies, Inc. | Using a template to update a stack of resources |
-
2010
- 2010-06-28 US US12/824,723 patent/US9178766B2/en active Active
-
2011
- 2011-06-27 EP EP11804097.1A patent/EP2585988B1/en active Active
- 2011-06-27 WO PCT/US2011/042050 patent/WO2012006034A1/en active Application Filing
- 2011-06-27 CA CA2803603A patent/CA2803603C/en active Active
- 2011-06-27 CN CN201180031239.XA patent/CN103038788B/zh active Active
- 2011-06-27 SG SG2012095931A patent/SG186847A1/en unknown
- 2011-06-27 JP JP2013518539A patent/JP2013534675A/ja active Pending
- 2011-06-27 EP EP18184521.5A patent/EP3410357B1/en active Active
-
2015
- 2015-11-02 US US14/930,482 patent/US10057374B2/en active Active
-
2018
- 2018-08-20 US US16/105,449 patent/US11758006B2/en active Active
-
2023
- 2023-07-26 US US18/359,837 patent/US20240040006A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1326143A (zh) * | 2000-05-31 | 2001-12-12 | 国际商业机器公司 | 用于原子地及持续地交换资源组的方法、系统和程序产品 |
US20060075102A1 (en) * | 2004-09-29 | 2006-04-06 | Fujitsu Network Communications, Inc. | Method and system for provisioning services on a communication network |
CN1834978A (zh) * | 2005-03-14 | 2006-09-20 | 株式会社Ntt都科摩 | 访问控制装置以及访问控制方法 |
CN101156138A (zh) * | 2005-04-07 | 2008-04-02 | 国际商业机器公司 | 在网格计算环境中外包资源的方法、系统和程序产品 |
CN101166173A (zh) * | 2006-10-20 | 2008-04-23 | 北京直真节点技术开发有限公司 | 一种单点登录系统、装置及方法 |
CN101471960A (zh) * | 2007-12-25 | 2009-07-01 | 株式会社日立制作所 | 服务提供系统、网关、以及服务器 |
US20100131625A1 (en) * | 2008-11-26 | 2010-05-27 | Dehaan Michael Paul | Systems and methods for remote network management having multi-node awareness |
Also Published As
Publication number | Publication date |
---|---|
EP2585988A4 (en) | 2014-04-30 |
JP2013534675A (ja) | 2013-09-05 |
US9178766B2 (en) | 2015-11-03 |
US10057374B2 (en) | 2018-08-21 |
CA2803603A1 (en) | 2012-01-12 |
EP2585988B1 (en) | 2018-08-29 |
EP2585988A1 (en) | 2013-05-01 |
US20190007526A1 (en) | 2019-01-03 |
CN103038788B (zh) | 2020-03-31 |
CA2803603C (en) | 2017-07-11 |
US20160072920A1 (en) | 2016-03-10 |
US20240040006A1 (en) | 2024-02-01 |
WO2012006034A1 (en) | 2012-01-12 |
EP3410357A1 (en) | 2018-12-05 |
SG186847A1 (en) | 2013-02-28 |
EP3410357B1 (en) | 2020-10-21 |
US11758006B2 (en) | 2023-09-12 |
US20110320605A1 (en) | 2011-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103038788A (zh) | 提供多个网络资源 | |
US7610512B2 (en) | System and method for automated and assisted resolution of it incidents | |
RU2586866C2 (ru) | Дифференцирование набора признаков участником арендуемой среды и пользователем | |
CN110083455B (zh) | 图计算处理方法、装置、介质及电子设备 | |
US20030041095A1 (en) | Method and system for data transformation in a heterogeneous computer system | |
CN104899274B (zh) | 一种内存数据库高效远程访问方法 | |
WO2011129943A1 (en) | Data services framework workflow processing | |
JP2007148738A (ja) | 情報監視方法、システム及びプログラム | |
CN102164164A (zh) | 利用可配置的可执行应用的远程技术支持 | |
CN109785042A (zh) | 分布式部署的异常处理方法、服务器、存储介质及装置 | |
CN102196018A (zh) | 远程技术人员对多个同时会话的支持 | |
US20020161615A1 (en) | Workflow system | |
US20130290245A1 (en) | Database history management method and system thereof | |
CN104981793B (zh) | 成像设备、资源服务器及操作该成像设备的方法 | |
CN107911443A (zh) | 一种会话信息处理方法、装置、服务器和可读存储介质 | |
CN108829709A (zh) | 分布式数据库管理方法、装置、存储介质和处理器 | |
US7561530B2 (en) | Executing system and executing method of intelligent rule base service | |
JP5636394B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
CN112965745A (zh) | 一种系统接入方法、装置、设备及计算机可读介质 | |
US8015207B2 (en) | Method and apparatus for unstructured data mining and distributed processing | |
JP7490394B2 (ja) | 情報共有支援方法、及び情報共有支援システム | |
US20240184914A1 (en) | Multiple synonymous identifiers in data privacy integration protocols | |
CN118819747A (zh) | 业务执行方法、装置、设备、介质及程序产品 | |
CN117221262A (zh) | 业务操作方法、装置、设备、存储介质及程序产品 | |
CN116566946A (zh) | 一种友好域名体系生成与管理方法及相关设备 |
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 |