CN105579965B - 经由提供商定义接口的客户端驻地资源控制 - Google Patents
经由提供商定义接口的客户端驻地资源控制 Download PDFInfo
- Publication number
- CN105579965B CN105579965B CN201480052197.1A CN201480052197A CN105579965B CN 105579965 B CN105579965 B CN 105579965B CN 201480052197 A CN201480052197 A CN 201480052197A CN 105579965 B CN105579965 B CN 105579965B
- Authority
- CN
- China
- Prior art keywords
- resource
- network
- provider network
- client
- service
- 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.)
- Active
Links
Classifications
-
- 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/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- 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
-
- 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/18—Delegation of network management function, e.g. customer network management [CNM]
-
- 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/28—Restricting access to network management systems or functions, e.g. using authorisation function to access network configuration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明描述使用提供商定义接口进行客户端驻地资源控制的方法和设备。实施了使得客户端能够提交注册请求的一组程序化接口。注册请求指示位于所述提供商网络外部的数据中心处的资源作为用于经由与所述提供商网络的服务相关联的不同组程序化接口所发布的控制操作请求的候选目标。在注册请求中所指示的特定资源与位于所述提供商网络的数据中心内的管理资源之间建立网络连接。响应于经由所述不同组的程序化接口而接收的特定控制操作请求,将控制命令从所述管理资源经由所述网络连接传送至所述特定资源。
Description
背景技术
许多公司和其他组织运营计算机网络,这些计算机网络使众多计算系统互连以支持它们的操作,如其中计算系统位于同一位置(例如,作为本地网络的一部分)或者相反地位于多个截然不同的地理位置中(例如,经由一个或多个私有或公共中间网络加以连接)。例如,容纳显著数量互连计算系统的数据中心已变得司空见惯,如由单一组织运营或代表所述组织运营的私有数据中心,以及由实体作为业务加以运营来向客户提供计算资源的公共数据中心。一些公共数据中心运营商为由各种客户所拥有的硬件提供网络访问、电力以及安全安装设施,而其他公共数据中心运营商提供“全方位服务”设施,这些设施也包括可供其客户使用的硬件资源。然而,随着典型数据中心的规模和范围不断增加,供应、操纵以及管理物理计算资源的任务已变得日益复杂。
用于商用硬件的虚拟化技术的出现已针对管理大规模计算资源而为具有多样化需求的许多客户提供益处,从而允许各种计算资源有效且安全地由多个客户共享。例如,虚拟化技术可通过为每个用户提供由单一物理计算机器托管的一个或多个虚拟机而允许所述单一物理计算机器在多个用户之间共享,其中每个此类虚拟机作为充当截然不同逻辑计算系统的软件模拟,所述逻辑计算系统为用户提供以为自己是给定硬件计算资源的唯一操作者和管理员的错觉,同时还提供各种虚拟机之间的应用隔离和安全性。此外,一些虚拟化技术能够提供跨越两个或更多个物理资源的虚拟资源,如具有跨越多个截然不同物理计算系统的多个虚拟处理器的单一虚拟机。
使得客户端能够根据需要使用虚拟化资源的网络运营商简化了应用管理的许多方面,如检测故障并从故障中恢复的责任、随着工作负荷增加而缩放基础设施的责任等等。然而,一些企业IT(信息技术)部门仍然反对运用此类基于云的体系结构,尤其是针对已长期存在的遗留应用、可处理敏感数据集的应用或者可利用提供竞争优势的专有技术的应用。从完全在客户端拥有的驻地内实施应用到完全在云提供商的数据中心处实施相同应用的突然转变,对于一些组织而言可能是太大的飞跃。可有助于使从客户端驻地应用到云环境的转变更加容易的技术,对于云运营商(其收入可以增加)和客户端(其成本可以降低)而言都可具有巨大益处。
附图说明
图1示出根据至少一些实施方案的系统的示例,其中一组共同的控制接口可用来管理提供商网络内外的数据中心处的资源。
图2示出根据至少一些实施方案的、处于提供商网络数据中心与外部数据中心之间的数据流路径和控制流路径的示例。
图3示出根据至少一些实施方案的、依赖提供商网络资源和外部资源的组合的多层应用的示例性配置。
图4示出根据至少一些实施方案的、客户端与注册管理器之间的交互的示例,所述注册管理器被配置来注册客户端指定资源作为用于控制操作的候选目标。
图5是流程图,其示出根据至少一些实施方案的、可执行来经由提供商定义的控制接口而实施客户端数据中心处的资源控制的操作方面。
图6是流程图,其示出根据至少一些实施方案的、可执行来将客户端驻地资源与提供商网络资源之间的预先配置数据路由用于控制操作的操作方面。
图7是流程图,其示出根据至少一些实施方案的、可执行来使用提供商网络资源和外部资源的组合来配置应用的操作方面。
图8是流程图,其示出根据至少一些实施方案的、可执行来静默提供商网络外部的数据中心处的虚拟化资源并且重新实例化提供商网络内的资源的操作方面。
图9示出根据至少一些实施方案的系统的示例,其中提供商网络服务被配置来管理包括外部数据中心处的资源的资源池。
图10a和图10b分别示出根据至少一些实施方案的、用于控制流的两个替代方案,所述替代方案可用于控制平面从提供商网络延伸到外部数据中心中的池化资源服务。
图11示出根据至少一些实施方案的、提供商网络外部的数据中心处的各类资源池的示例。
图12示出根据至少一些实施方案的、可跨越多个可用性容器的池配置的示例。
图13是流程图,其示出根据至少一些实施方案的、可执行来使用提供商网络内实施的服务而支持提供商网络外部位置处的池化资源的管理的操作方面。
图14是流程图,其示出根据至少一些实施方案的、可执行来改变资源池内的资源的激活状态的操作方面。
图15是示出可在至少一些实施方案中使用的示例性计算装置的框图。
虽然在本文中通过列举若干实施方案和说明性附图的方式描述实施方案,但是本领域的技术人员将认识到,实施方案并不限于所描述的实施方案或附图。应理解,附图和对其的详细描述并非意图将实施方案限于所公开的特定形式,而是相反地,其意图在于涵盖落入由所附权利要求书所界定的精神和范围内的所有修改、等同物以及替代方案。本文中使用的任何标题都仅用于组织目的,并且并不意图用于限制描述或权利要求书的范围。如贯穿本申请所使用的,词语“可”是以允许意义(即,意味着有可能)而不是强制意义(即,意味着必须)使用的。类似地,词语“包括(include/including/includes)”意味着“包括但不限于”。
具体实施方式
本文描述方法和设备的各种实施方案,所述方法和设备使用提供商网络处实施的程序化控制接口来帮助管理位于提供商网络外部的驻地上的客户端资源的。例如,处于客户端的数据中心处的、客户端拥有的虚拟化主机可使用同一组控制接口(例如,基于万维网的控制台或各种类型的应用接口(API))加以管理,客户端可使用此组控制接口来管理位于提供商网络数据中心处的资源。此类方式可使得客户端将应用最终转变到提供商网络基础设施变得容易得多,假设此类改变是所希望的话。
实体(如公司或公共部门组织)所建立的用来将可经由互联网和/或其他网络访问的一个或多个网络可访问服务(如各种类型的基于云的计算、存储或数据库服务)提供给一组分布式客户端的网络在本文中可称为提供商网络。在此文件的其余部分中,当用作为给定通信的来源或目的地时,术语“客户端”可指代能够访问和利用提供商网络的至少一个网络可访问服务的实体(如组织、具有多个用户的群组或单一用户)所拥有、管理或分配给他们的计算装置、进程、硬件模块或软件模块中的任何一个。给定提供商网络可包括众多数据中心(其可分布在不同的地理区域上),所述数据中心托管用以实施、配置和分布提供商所提供的基础设施和服务而需要的各种资源池,如物理和/或虚拟化计算机服务器、各自具有一个或多个存储装置的存储服务器、联网设备等等的集合。大量不同的硬件和/或软件部件(其中一些可在不同数据中心处或在不同地理区域中实例化或运行)可共同用来实施各种实施方案中的每个服务。客户端可从位于客户端拥有或客户端管理的驻地或提供商网络外部的数据中心处的装置而与提供商网络处的资源和服务交互。客户端驻地上或外部数据中心处的这组资源在本文中可统称为“客户端网络”或“客户端侧资源”。应注意的是,并非客户端网络中的所有资源都需要由客户端所拥有—例如,客户端可租用位于提供商网络外部的第三方驻地处的资源,并且此类租用的资源也可视为客户端网络的一部分。
一般而言,在提供商网络的各种部件与其客户端之间流动的网络流量可分成两个宽泛类别:数据流量和控制流量。数据流量可包括与客户端应用相关联的网络传输,如响应于来自客户端装置的HTTP(超文本传输协议)请求而从在提供商网络内的虚拟化计算服务器处实例化的网站来传输网页的内容。控制流量可包括与管理任务相关联的网络传输,如从控制器装置传送至虚拟化计算服务器的配置更改命令,等等。在至少一些实施方式中,出于安全性、性能和其他原因,数据流量和控制流量可以尽可能地彼此保持逻辑隔离(尽管如下所述,在至少一些情况下,网络路由或链路可由两个类型的流量共享)。因此,在一些实施方案中,给定提供商网络的至少一个子组的资源和基础设施部件可分组为两个类别:分别用于数据流量的流动和控制流量的流动的“数据平面”和“控制平面”。每个平面可包括大量不同类型的资源,包括(例如)联网装置(如路由器、网关、交换机等等)、联网链路、存储装置和/或服务器。
根据一些实施方案,提供商网络可实施私有网络服务,从而使得客户端能够在提供商网络内建立隔离虚拟网络(IVN)。此类IVN在一些实施方案中可称为“虚拟私有云”或VPC。被配置用于IVN内的装置的网络地址中的至少一些可不暴露于或公布于IVN外部。因此,可授予客户端有关IVN内的网络配置设定的实质灵活性,从而相对于IVN而给予它们类似级别的网络有关管理控制,因为它们将通过网络完全建立在客户端拥有的数据中心内。在至少一些实施方案中,客户端可能能够在客户端网络与IVN之间设定建立私有网关,和/或可能能够使用各种类型的安全网络协议(如虚拟专用网络(VPN)协议等等)来在客户端驻地与它们的IVN之间建立连接性。在客户端已经建立IVN的实施方案中,数据流量可在客户端网络与提供商网络内的IVN之间无缝且安全地流动,并且因此提供商网络的数据平面可视为逻辑扩展到客户端网络或客户端驻地。
虽然数据流量流动可通过IVN的使用而变得容易,但是至少在一些情况下客户端仍不得不针对客户端驻地上的资源使用与用于管理提供商网络内的资源不同组的控制接口。例如,基于万维网的管理控制台可被实施来允许客户端对提供商网络资源请求控制操作,如实例化或停止IVN内的虚拟化计算服务器,但是不同组的接口可经常用来实例化并停止客户端数据中心内的计算服务器。不得不使用两个不同组的控制接口可能导致用于客户端组织的IT员工的大量培训成本,并且还可能相对于将应用移动到提供商网络而言造成更大磁阻。因此,在至少一些实施方案中,提供商网络的运营商可提供解决方案用于将提供商网络控制平面的方面扩展到客户端网络中,从而允许一组共同的控制接口用来管理提供商网络内外的资源。
根据一个此类实施方案,可实施第一组程序化接口,从而使得客户端能够请求与提供商网络的一个或多个网络可访问服务的资源相关联的控制操作。另外,可实施第二组程序化接口,从而使得客户端能够经由资源注册请求来指示可经由第一组程序化接口进行控制的客户端侧资源。在此类实施方案中,资源注册请求可指示位于提供商网络外部的数据中心处的一个或多个资源作为用于经由第一组程序化接口所接收的一类控制操作请求的候选目标。这类控制操作请求可与提供商网络处所支持的网络可访问服务中的至少一些相关联。取决于实施方式,这类控制操作中只有在位于提供商网络内的资源上准许的子组可被支持在有待从外部数据中心注册的资源上—例如,依赖具体硬件或软件的一些类型的安全有关控制操作可仅被支持在提供商网络内,或者一些类型的重新配置操作可仅被支持在提供商网络内。在一些实施方案中,提供商网络中被称为注册管理器的部件可负责接收并响应于资源注册请求。
当资源注册请求被接收从而指示位于外部(例如,客户端拥有的)数据中心处的特定资源时,在一些实施方案中特定资源的一个或多个能力(例如)可通过与安装在资源处的一个或多个软件堆栈部件通信来验证。例如,如果特定资源包括一个或多个虚拟化计算服务器或实例有待建立在此处的虚拟化主机,那么注册管理器可验证特定资源处的虚拟化管理软件堆栈能够响应于通常发布来起始提供商网络主机处的类似操作的各种控制操作请求(如开始或停止计算实例的请求)。除了与提供商网络的程序化控制接口的兼容性验证之外,也可验证资源的其他方面(例如,可检查执行能力来确保资源可支持所期望的工作负载层级、可检查安全能力,等等)。在一些实施方案中,虚拟化管理软件堆栈的一个或多个模块(例如,管理程序部件或管理操作系统部件)可能在资源可注册用于经由提供商网络的控制平面控制之前不得不安装在客户端侧资源处。可能出于各种理由而需要所述模块,以便(例如)确保与提供商网络控制接口的兼容性、允许资源以与提供商网络资源被监控的方式类似的方式来监控,等等。在一些实施方案中,模块的安装可作为预备步骤被客户端执行,例如,通过从提供商网络资源下载适当的安装包并且在提交注册请求前安装此类包。在一个实施方式中,可安装软件的传送可(例如)响应于资源注册请求从提供商网络资源起始到客户端数据中心中的目标装置。在一些实施方案中,作为提供商网络运营商的合作伙伴的硬件和/或软件供应商可将所需模块捆绑在他们自己的硬件/软件堆栈中,进而将客户端从以后不得不安装模块的负担中释放。因此,在至少一些实施方案中,附加软件安装步骤可能不需要用于有待注册的客户端侧资源,即,注册候选项可与必要的软件堆栈部件一起预安装。在至少一些情况下,例如,当注册请求中指定的客户端侧资源包括来自合作伙伴供应商的主机或装置时,可能不需要资源能力的验证。在一些实施方案中安装在客户端侧资源处用来促进使用提供商网络的控制平面接口所做出的控制操作的模块可称为“控制模块”或“控制平面模块”。如下文进一步详细描述的,在一些情况下,位于数据中心外部的设施处的多池或多组资源可使用提供商网络的控制接口来管理,而不需要在每个群组成员上具有控制模块—例如,配置有兼容控制模块的单个器件可用来管理一池客户端侧资源。
在至少一些实施方案中,安全网络连接可建立在客户端侧资源与位于提供商网络的数据中心内的管理资源之间。在执行上述类型的能力验证的一些实施方案中,此类连接可建立为验证过程的一部分,而在其他实施方案中,安全连接可独立于验证而建立(例如,在验证前或后)。例如,如果与服务S1相关联的控制命令有待用来管理客户端侧资源,那么控制器节点或S1的一些其他管理部件可使用如IPSec(互联网协议安全)、TLS(传送层安全)或SSL(安全套接层)等协议而安全地连接至客户端侧资源处的控制平面模块。在一些实施方案中,提供商网络处的代理服务器可用于安全连接,例如,客户端侧资源与一个或多个提供商网络服务的服务管理节点之间的流量可通过中间代理来引送。在至少一些实施方案中,安全网络连接可利用已被配置用于提供商网络与客户端网络之间的数据流通量的一个或多个网络链路和/或装置—例如,如果客户端已预先建立了IVN,那么用于IVN数据流量的网络链路还可用于控制流量的虚拟专用网络(VPN)连接。
在各种实施方案中,安全连接的建立可有效地将提供商网络的控制平面的至少一部分扩展到客户端网络中。随后,相对于管理已注册资源而言,客户端可能能够使用可用来管理提供商网络的数据中心内实例化的类似资源的同一组接口(例如,控制台或API)来提交控制操作请求。因此,(例如)响应于从属于控制平面模块已经在客户端侧资源处安装/验证的一类控制操作请求的特定客户端提交的控制操作请求,控制命令可经由安全网络连接而从提供商网络内的服务控制器节点提交到适当的客户端侧资源。从管理控制的角度看,在控制平面已经如上所述扩展后,已注册的客户端侧资源可能显得不可与常驻在提供商网络内的资源加以区分(或者至少非常类似)。
在至少一些实施方案中,在客户端注册它们的资源以便经由如上所述的提供商网络定义的接口进行控制,将应用从客户端驻地移动到提供商网络可变得更容易。例如,使用共同的控制接口,客户端可能能够静默或暂停客户端侧主机处的虚拟化资源(如运行客户端应用的一部分的计算服务器),并且重新实例化提供商网络内的不同主机处的虚拟化资源。
另外,在一些实施方案中,客户端可能能够使用由提供商网络实施的配置服务,从而使用客户端侧和提供商网络资源的组合来建立复杂的、多层应用。例如,客户端可能期望建立多层万维网应用,包括一组万维网服务器、一组应用服务器和一组数据库服务器。指定各种部件的脚本或模板可提交给提供商网络处的配置服务节点,并且配置服务可提交所需配置命令来撑起组成级次的各种服务器。使用如上所述的控制平面扩展方法,服务器中在脚本处指示的一些服务器(例如,数据库层服务器中的一个或多个)可在客户端侧资源处实例化,而其他服务器(例如,万维网服务器或应用服务器中的一个或多个)可使用提供商网络资源来实例化。
在不同的实施方案中,类似于上述情形的控制平面扩展可用于提供商网络中所实施的各种不同服务。例如,此类方式可用来允许客户端针对虚拟化计算服务(例如,发起、静默、重启或停止虚拟化计算服务器或“计算实例”)、支持虚拟化卷的块级虚拟化存储服务、经由万维网服务API而不是块级API来暴露非结构化存储对象的对象存储服务、数据库服务、包括批并行处理服务的各种并行处理服务等来提交控制命令。在一些实施方案中,安装在客户端侧资源处的给定控制模块可能能够响应于与若干不同的提供商网络服务相关联的管理命令,而在其他实施方案中,不同的客户端侧模块可以是不同的服务所需要的。类似地,在一些实施方案中,对于每个服务而言,相应的安全连接可能不得不建立在提供商网络末端上的服务管理资源与安装在客户端数据中心处的控制模块之间,而在其他实施方案中,单一安全连接可用于若干不同的服务。根据一个实施方案,实施控制平面扩展的服务中的至少一些可不涉及虚拟化的使用(并且因此注册用于此类服务的资源可不需要任何虚拟化软件)。在一些实施方案中,针对用于管理多池资源(例如,多池负载平衡器或多池高速缓存装置)的控制操作也可使用类似的方法来实施,正如下文进一步详细描述的。
在至少一些实施方案中,例如,为了使能够支持高可用性、数据持久性和故障弹性,提供商网络的资源可布置在多个提供商定义的可用性容器(PDAC)中。在此类实施方案中,PDAC可包括一个或多个数据中心中的一部分或全部,并且可按照防止给定可用性容器内的各种类型故障影响其他可用性容器处的操作的方式来设计。因此,(例如)特定的PDAC可包括具有故障配置文件(例如,在各种类型的故障或错误一段时间后的概率分布)的一组硬件、软件和基础设施部件(如电源、配电单元、冷却/加热设备、联网设备等),所述故障配置文件并不期望与不同PDAC的故障配置文件相关。每个PDAC本身可设计成具有非常低的故障率,连同防止遍及多个PDAC的级联故障的隔离特性。能够在它们的界限内包含故障的多个PDAC的实施因此可帮助支持高度可靠和持久的服务—例如,在一个实施方式中,相同数据库表分区的N个副本可存储在N个不同的PDAC中的每一个处,从而使得,即使N-1个PDAC碰巧立刻变得不可用,分区仍是可访问的,进而将完全断电的可能性降低至非常接近零。在至少一些实施方案中,地理分布的提供商网络的资源可组织成地理区域的层级,其中每个区域包括一定数量的PDAC,并且每个PDAC包括一个或多个数据中心中的部分或全部。
在支持用于上述种类的控制平面扩展的资源注册的一些实施方案中,客户端可能能够将多组已注册资源指派给客户端定义的可用性容器(CDAC)。因此,如果客户端具有两个数据中心(与一个或多个服务相关联的提供商网络控制平面已扩展到其中的每一个),那么一个数据中心内注册的资源集合可指定为第一CDAC的成员,而第二数据中心内注册的资源集合可指定为第二CDAC的成员。在至少一些实施方案中,客户端可能不需要像提供商网络针对PDAC的那样,针对CDAC遵照相同的可用性和故障遏制要求。相反,在此类实施方案中,客户端可使用它们已经在它们的数据中心处使用的预先存在的弹性和故障遏制政策,或者可针对它们的CDAC定义新的要求或政策。当指定服务的特定资源有待在何处激活或配置时,在一些实施方案中客户端可能能够指示目标PDAC、目标CDAC,或者允许服务来选择PDAC或CDAC。与其中至少一些可包括分配给多个不同的客户端实体或组织的资源的PDAC形成对比,在至少一些实施方案中,CDAC可专门由单个客户端实体或组织使用。在其他实施方案中,多个客户端实体可共享对同一CDAC的访问权限。
根据至少一个实施方案,在提供商网络内支持的一些网络可访问服务可用于管理多池资源而不仅仅是单独资源。例如,灵活的负载平衡服务可在一个实施方案中实现,这使得能够对与一个或多个应用相关联的一池负载平衡器中的成员进行基于工作负载的动态激活和去活。类似地,在另一个实施方案中,可实施分布式高速缓存服务,其中所实例化的高速缓冲存储器的数量可根据需要来调整。在一个实施方案中,除了或者代替上述用于单独的客户端侧资源的基于注册的控制平面扩展技术,可支持其他级别的控制平面扩展以便允许使用提供商网络的控制平面接口来管理指定池的客户端侧资源。如下文进一步详细描述的,客户端侧池的资源可能不需要任何修改,如至少一些实施方案中的、有待安装的另外控制模块。相反,在此类实施方案中,建立在客户端数据中心内的专用器件可以托管可安全连接至提供商网络内的池化资源服务的管理节点的控制平面模块,例如,使用VPN或类似于稍早描述的那些技术的其他技术。所述器件可充当一侧上的服务管理节点与另一侧上的客户端侧资源池成员之间的中介方。从此类实施方案中的客户端的角度看,多池未修改的客户端侧资源可以被配置成可使用提供商网络服务的控制命令来控制。在一些实施方案中,并且同样如下文所述,客户端侧池成员中的至少一些可包括已经可通过针对不同的提供商网络服务所实施的接口进行控制的已注册资源。因此,(例如)位于客户端数据中心处的一池N个负载平衡器可经过配置以便经由与负载平衡服务LBS相关联的程序化接口进行控制,而与此同时,N个负载平衡器中的至少某个子组本身可使用被配置以便使用虚拟化计算服务VCS的程序化接口进行控制的计算实例来实施。
实施来帮助客户端管理多池资源的网络可访问服务在本文中可统称为池化资源服务。各种实施方案中的池化资源服务的示例可包括负载平衡服务、分布式高速缓存服务、资源复原服务(例如,根据需要自动缩放针对客户端应用集旋转加速的计算实例的数量的服务)、安全制品生成服务(例如,按要求使用专业硬件或软件安全模块集合来产生加密密钥、证书等的服务)、网络地址发现服务(例如,使用名称服务器节点集合来响应于地址解析查询的服务)以及分布式数据库服务(其中有效数据库实例的数量可基于要求增加或降低)。
在各种实施方案中,(例如)基于各种判据(如已测量或预计的工作负载、客户端预算限制等)的池成员激活和去活可表示池化资源服务的核心功能之一。在一些实施方案中,此类服务的客户端可能能够经由一个或多个程序化接口提交各种类型的配置请求,包括引起提供商网络内的池成员的激活状态的改变的请求。特定类型的配置请求(其可称为池实例化请求或池扩展请求,或者更一般而言称为池管理请求)可允许客户端也指示指定池内的激活状态有待由池化资源服务加以管理的客户端侧资源(即,位于提供商网络外部的资源)。可建立从池化资源服务中位于提供商网络内的管理资源到代表客户端侧位置处(例如,客户端的数据中心中)的池化资源服务而实例化的控制模块的安全网络连接(例如,使用SSL、TLS或IPSec)。基于客户端所指示的资源激活判据,各种客户端侧资源可由池化资源服务激活和去活。在各种实施方案中,客户端还可使用程序化接口来指示资源池的各种参数,如池成员可被激活或者可以成为成员的最小和最大数量、识别信息(例如,网络地址),等等。
在一些实施方式中,正如上文所述,专用器件可在客户端侧位置处实例化来实施扩展的控制平面并且管理客户端侧资源池中的资源。安装在所述器件上的控制模块可视为提供商网络中的控制平面部件与客户端网络中的池化资源之间的软件中介。在各种实施方案中,任何适当的协议均可用来激活、静默、停止或执行客户端侧资源上的其他配置改变,包括(例如)简单网络管理协议(SNMP)或UDP(用户数据报协议)。在一些实施方案中,服务管理部件(例如,位于提供商网络内的服务控制器)与所述器件之间的通信可根据如JMX(JavaTM管理扩展体系结构)等产业标准来格式化。在其他实施方案中,可不使用此类专用器件;相反,与池化资源服务兼容的控制平面模块可安装在至少一些池成员本身上。在至少一些实施方案中,可支持混合方式,其中客户端侧池成员中的一些可具有与所安装的一个或多个提供商网络服务相关联的控制模块,而其他成员可能没有。在一些实施方式中,与一个以上服务(例如,负载平衡服务和虚拟化计算服务,或者数据库服务、高速缓存服务和存储服务)相关联的控制模块可安装在同一客户端侧资源上。在一些实施方案中,有待使用控制平面扩展技术来管理的一池资源可包括客户端侧资源和提供商网络资源两者,并且资源池因此可穿越数据中心界限或可用性容器界限。
示例性系统环境
图1示出根据至少一些实施方案的系统100的示例,其中一组共同的控制接口可用来管理提供商网络内外的数据中心处的资源。如图所示,系统100包括位于提供商网络101内以及外部网络151中的各种组资源(例如,客户端拥有的、客户端管理的或第三方网络)。提供商网络可包括多个提供商定义的可用性容器(PDAC)102,如PDAC102A和102B。每个PDAC可包括一个或多个数据中心的部分或全部,并且每个PDAC的基础设施部件(如电力、冷却、联网和安全有关部件)可按照使得一个PDAC内的故障影响其他PDAC中操作的可能性可非常低的方式加以设计和隔离。也就是说,每个PDAC可具有其自己的、独立于其他PDAC的可用性配置文件的可用性配置文件。
在所描绘的实施方案中,与提供商网络的一个或多个网络可访问服务相关联的一组共同的控制平面接口150可由客户端170使用来提交提供商网络的资源处所定向的控制操作请求190(例如,各个种类的配置/管理请求)。可授予各种客户端170对提供商网络的PDAC内的各自组逻辑和/或物理资源(例如,资源组110A、110B、110F或110G)的管理访问权限。取决于在代表客户端的资源处所实施的具体服务以及客户端的管理许可,每个此类客户端可经由共同的控制平面接口150发布定向到所述资源的某些类别的控制操作请求190。在提供商网络内,控制操作请求可转译成控制命令192,如命令192A和192B。在一些实施方案中,一个或多个网络端点(例如,万维网可访问控制台或者与端点装置相关联的一组网络地址)可被暴露来从客户端170接收控制操作请求190,并且提供对此类请求的响应。提供商网络的控制平面因此可包括此类端点、专用于提供商网络101内的管理操作或配置管理的其他装置(图1中未展示),以及用于控制相关网络传输的程序化接口和网络路径。
在所描绘的实施方案中,客户端可能能够请求提供商网络的控制平面的扩展,例如,通过注册位于外部网络151内的各种资源作为用于经由共同控制平面接口150所接收的至少一些类别的控制操作请求的候选目标。例如,客户端170可经由特定程序化接口向注册管理器180提交资源注册请求,从而指示客户端170希望资源组154A中的一个或多个资源被配置为用于与提供商网络的服务S1相关联的类别C1的控制操作的目标。另一个资源注册请求可指示资源组154B的资源作为服务S2的类别C2的控制操作的潜在目标。在一些实施方式中,多个资源组和多个所请求类别的控制操作(潜在地与若干服务相关联)可在单一资源注册请求中加以指示。在一些实施方案中,针对给定服务S1而在外部网络151处的资源处所支持的控制操作请求的类别可能并不与提供商网络101内的资源处支持的控制操作的类别完全重叠—例如,用于客户端侧资源的硬件和/或软件堆栈可能并不能够执行提供商网络资源处所支持的所有类型的配置操作。在其他实施方案中,针对用于给定服务的提供商网络资源而支持的所有类型的控制操作请求也可在提供商网络外部的已注册资源处加以支持。
在至少一些实施方案中,与提供商网络服务兼容的控制模块可能不得不加以安装(例如,安装在已注册资源自身上或外部网络151内的其他装置/器件上),以便正确实施控制命令。例如,就与虚拟化计算服务相关联的控制命令而言,可能不得不安装虚拟化管理软件堆栈的一个或多个此类控制模块(例如,管理程序或者指定用于管理任务的操作系统实例)。另外,在至少一些实施方式中,可能不得不在控制模块与位于提供商网络101内的管理资源(例如,服务控制器)之间建立安全网络连接。在至少一些实施方式中,可能不得不验证控制模块和安全网络连接的功能性,以便使注册被认为是完整的。在客户端侧资源已成功由注册管理器180注册后,客户端可经由接口150提交定向到已注册资源的控制操作请求,并且对应内部控制命令192C可定向到客户端侧已注册资源。应注意,尽管注册管理器180在图1中展示为单一实体,但在各种实施方案中,注册管理器的功能性可使用提供商网络的多个硬件和/或软件部件来实施,并且一些部件可与其他部件位于不同的数据中心或可用性容器中。
在所描绘的实施方案中,除了注册用于提供商网络的扩展控制平面的指定资源之外,客户端170还可请求将某个客户端侧资源集合指定为可用性容器的成员。因此,(例如)已注册资源组154A和154B被指定为客户端定义的可用性容器(CDAC)152的成员。在至少一些实施方案中,客户端170可针对CDAC实施与提供商网络针对PDAC所使用的相关政策不同的可用性遏制和故障弹性政策—例如,客户端可能没有责任像提供商网络所支持的那样来支持相同的数据持久性或故障容许级别。在至少一些实施方案中,对于一些类型的控制操作(如对发起与虚拟化计算服务相关联的计算实例的请求)而言,目标可用性容器可能不得不由控制操作的请求者来选择(例如,计算实例有待在其内发起的可用性容器)。在一些此类实施方案中,可针对此类控制操作同等处置PDAC和CDAC—例如,可允许客户端根据需要指定目标PDAC 102或目标CDAC 152。在一些实施方案中,可允许给定客户端170建立多个CDAC 152,每个都具有其自己的可用性配置文件和政策。
在所描绘的实施方案中,外部网络151可包括已注册资源组(如154A和154B)和未注册资源组,如158A和158B。即,对于一些客户端侧资源而言,可使用控制平面接口166,所述控制平面接口166不必由提供商网络支持,并且因此在本文中可称为“客户端专有的”或“非共享的”。为了管理外部网络151内的已注册资源,控制操作请求可使用公共的控制平面接口150来提交,并且为了管理未注册的资源,客户端专有控制操作请求195可经由不同的控制接口(如客户端专有或非共享接口166)来提交。客户端专有控制操作请求166可转译成定向到未注册资源的控制命令197。使用图1中所示出的混合方式,客户端170可能能够获取将一组共同的提供商定义控制接口用于其资源的某一子组的益处,同时维持使用客户端专有或非共享控制接口来管理其资源的另一子组的能力。一些客户端可能期望将未注册资源组154A和154B用于高度敏感的应用,例如,直到它们准备尝试逐渐转变到将提供商网络用于这些应用。所述转变可能涉及首先在一组已注册资源处实施应用,并且确保在使用这组共同的控制接口150时所遇到的任何问题都得以解决,接着在最后,将应用移动到提供商网络。
用于数据和控制的共享网络链路
在至少一些实施方案中,针对客户端数据中心与提供商网络之间的数据传输而建立的网络路径还可被配置用于控制平面网络传输,例如,使用针对控制流量而建立的虚拟专用网络(VPN)连接。也就是说,相同的一个或多个网络链路可由提供商网络与客户端侧数据中心之间的数据流量和控制流量共享。图2示出根据至少一些实施方案的、提供商网络数据中心与外部数据中心之间的数据流动路径和控制流动路径的示例。在所描绘的实施方案中,已使用代表客户端C1的一个子组的提供商网络101的资源建立了隔离的虚拟网络(IVN)221。提供商网络101还可包括其他客户端的资源225,其中一些可不包括在其他IVN内。如稍早所描述的,IVN可与提供商网络101的其他资源(包括其他IVN)逻辑隔离。客户端C1可在IVN 221内执行各种类型的联网相关配置操作,如选择IP地址范围、创建子网、配置路由表和网关、安全设置等,其中这些操作的执行与可能在客户端自己的设施(如数据中心240)内的网络上存在的灵活性具有类似级别的灵活性。IVN 221与客户端C1的数据中心240之间的数据流动路径266可能已经建立。数据流动路径266可包括针对C1的流量所建立的虚拟专用网关230,以及与客户端数据中心240相关联的路由器232。在所描绘的实施方案中,数据流动路径266可包括IVN 221与虚拟专用网关230之间的网络链路231A、虚拟专用网关230与路由器232之间的链路234,以及客户端数据中心240内的链路236A、236B和236C。
在所描绘的实施方案中,客户端C1使用提供商网络的控制接口所传送的控制操作请求可由各种服务控制平面节点205来处理。例如,与虚拟化计算服务有关的控制操作可由节点214处置,与存储服务有关的控制操作可由节点215处置,与池化资源服务有关的控制操作(如负载平衡服务或分布式高速缓存服务)可由节点213处置,并且与堆栈配置服务有关的控制节点可由节点212处置。与给定服务相关联的控制平面节点在本文中还可称为“服务控制器”或者简称为“控制器”。下文提供了有关堆栈配置服务和各种池化资源服务的另外细节。
在所描绘的实施方案中,使用稍早描述的客户端侧资源注册能力,客户端C1可能已经在数据中心240处注册若干资源作为用于经由提供商网络101的控制接口进行控制的候选项。如图所示,在所描绘的示例中,虚拟化计算主机252、存储器件256以及池化资源器件260各自可能已被注册以便经由用于实施在提供商网络内的对应服务的接口来控制。在所描绘的实施方案中,每个已注册资源可具有安装后的对应组控制平面模块(在本文中也可简称为控制模块)。例如,已注册虚拟化计算主机252可包括控制模块254(例如,并入在虚拟化管理软件堆栈内的模块,或者出于管理目的而建立在主机上的操作系统实例),已注册存储器件256可包括控制模块258,并且已注册池化资源器件260可包括控制模块262。在一些实施方案中,控制模块可由负责向客户端数据中心供应资源的供应商预先安装。在其他实施方案中,所述模块可从提供商网络进行安装—例如,安装包可从提供商网络传送至客户端网络。在所描绘的实施方案中,安全控制流动路径268可建立在位于提供商网络101内的控制平面节点205与安装在客户端数据中心240内的已注册资源处的控制平面模块之间。基于加密的协议(如TLS、SSL或IPSec)可用来保全客户端侧控制平面模块与提供商网络之间的连接。在一些实施方案中,控制流动路径可包括安全代理210,如IPSec代理。如图所示,用于数据流动路径266的网络链路中的至少一些(例如,链路234、236A、236B和236C)也可由控制流动路径268共享。至少在一些实施方案中,可使用各种网络隔离技术中的任何一种(如各种VPN协议)来将控制流量与数据流量保持隔离。
在图2所描绘的实施方案中,当客户端C1期望注册另一个资源(例如,当前未注册资源277中的一个)时,注册管理器180(未图示)可负责验证资源具有适当的控制平面模块,并且负责在客户端侧资源上的控制平面模块与提供商网络中的适当服务控制器之间建立安全连接。在所描绘的实施方案中,万一客户端C1期望取消注册资源,注册管理器180可终止安全连接(除非它被与其他服务相关联的控制流量共享),并且在一些情况下资源处的控制模块可被卸载。
将客户端侧和提供商网络资源组合的应用堆栈
一旦已经使用上述技术来扩展提供商网络的控制平面,新类型的应用配置就可成为可行的。例如,相对于应用托管而言,客户端数据中心处的已注册资源可按照非常类似于位于提供商网络内的资源的方式来处置。图3示出根据至少一些实施方案的、依赖提供商网络资源和外部资源的组合的多层应用的示例性配置。如图所示,客户端170可向提供商网络所实施的堆栈配置服务的控制节点212提交应用堆栈配置脚本366。堆栈配置服务控制节点212接着可通过向脚本中指示的资源传送所要求的配置命令388来执行所请求的配置。
在所描绘的示例中,客户端C1已决定将位于数据中心240内的数据库资源与位于提供商网络101内的应用服务器和万维网服务器资源组合成单一多层应用。因此,两个数据库服务器主机352A和352B(例如,数据库管理系统的实例可在此处实例化)已被注册用于提供商网络的扩展控制平面。数据库服务器主机352各自可具有各自虚拟化管理堆栈354,例如,数据库服务器主机352A上的虚拟化管理堆栈354A以及数据库服务器主机352B上的虚拟化管理堆栈354B。在所描绘的实施方案中,已注册数据库服务器主机上的虚拟化管理堆栈可称为“减小的”虚拟化管理堆栈,因为它们可不包括安装在提供商网络内的主机处的虚拟化管理堆栈的所有部件。例如,在提供商网络内的C1的IVN 221中,应用服务器主机322A可具有安装后的完整虚拟化管理堆栈314A,并且万维网服务器主机312A可具有安装后的完整虚拟化管理堆栈324A。例如,在一些实施方案中,完整的虚拟化管理堆栈可包括客户端数据中心内未必可用的各种模块—例如,用于确定提供商网络资源的基于用途的记账金额并且因此在客户端网络中可不需要的记账有关模块、可能需要与仅实施在提供商网络内的监控服务交互的监控模块,等等。在一个实施方式中,只有用来执行客户端侧资源被注册用于其的这些类别的资源控制操作所必要的最小组模块可在客户端侧资源处采用,从而减少客户端侧控制平面模块所需的安装空间和运行时间资源。如前文所指出的,在至少一些实施方案中,硬件和/或软件供应商可与提供商网络运营商合作,以便在位于客户端数据中心内的资源上预先安装所要求的控制平面模块。
在脚本366由堆栈配置服务节点处理并且对应的配置命令388成功完成之后,多层应用可以变成可通过来自用户的工作请求加以访问。从用户以及客户端C1的角度来看,用于应用的资源中的一些位于客户端数据中心处而其他位于提供商网络中的事实可能并不明显。在所描绘的配置中的应用运行一段时间之后,在一些实施方案中客户端C1同样可将数据库实例转变到提供商网络,例如,通过在它们的客户端侧位置处静默数据库实例并且在提供商网络资源处重新将其实例化。类似的方法同样可与其他客户端侧资源一起使用,例如,用于其他应用的虚拟化计算实例可移动到客户端数据中心处的已注册主机,并且随后最终移动到提供商网络处的主机。
注册交互
图4示出根据至少一些实施方案的、客户端与注册管理器180之间的交互的示例,所述注册管理器180被配置来注册客户端指定资源作为用于控制操作的候选目标。如图所示,客户端170可向注册管理器180提交注册请求411。注册请求可指示候选资源列表413以及可用来建立控制路径到候选资源的安全连接的连接性信息。连接性信息可包括(例如)客户端已经建立的隔离虚拟网络(其数据流动路径可由控制路径共享)的指示、可用于控制路径的各种网络装置(如网关、路由器等)的识别、有待用于连接的具体协议(例如,SSL与TLS与IPSec)、是否有待针对控制流量而建立VPN,等等。对于每个候选资源来说,在一些实施方式中注册请求还可指示有待在所述资源处支持的具体提供商网络服务—例如,一些资源可指定为用于计算实例的虚拟化主机,其他资源用于数据库管理服务器实例,其他资源用于块存储卷,等等。
在所描绘的实施方案中,响应于注册请求411,注册管理器180可负责验证注册候选项处的控制软件模块的一个或多个能力。例如,如果候选资源包括计算实例有待在此处建立的虚拟化主机,那么注册管理器可能需要确定安装在主机处的虚拟化管理软件堆栈是否能够将计算实例实例化成具有期望属性(例如,期望的操作系统版本、期望的执行能力,等等)。类似地,如果其中一个资源有待被注册来使用协议(如SNMP)执行客户端侧池化资源(如下文更详细讨论的)的激活/去活,那么注册管理器180可能需要确保此类资源处的控制模块能够响应于来自提供商网络池化资源服务控制器的命令而提交SNMP消息。在不同的实施方案中,注册候选项处的控制模块的各种其他能力(例如,执行能力、安全能力等)和功能可能需要验证,这取决于(例如)有待支持在已注册资源处而用于各种提供商网络服务的控制操作的类别。
在图4所示的实施方案中,注册管理器180可向中介方(如能力验证管理器420)提交验证请求415。能力验证管理器420反过来又可在候选资源455处运行一个或多个测试462,例如,以便检查候选资源是否能够响应于控制命令执行期望功能。此类测试462的结果可按照验证响应422的形式提供给注册管理器180。如果验证响应是肯定的,例如,如果候选资源455被发现能够执行期望功能,那么注册管理器180可向客户端发送注册确认470,从而指示候选资源已经成功注册。在一些实施方案中,可能不需要注册管理器180与候选资源455之间的中介方,并且任何验证相关的操作可由注册管理器180本身来执行。在一些实施方案中,可能不需要对资源能力进行验证,并且注册管理器180可在不进一步检查或分析的情况下注册在注册请求中所指示的候选项。
在资源已经注册之后,客户端可使用经由提供商网络的控制接口所发送的控制操作请求来管理已注册资源。例如,计算实例可建立在客户端侧已注册资源上,存储卷可建立在客户端侧存储装置上,多池的客户端侧负载平衡器可响应于变化的工作负载而指派给应用、激活或去活,等等。在一些实施方案中,客户端170可取消注册客户端侧资源(即,禁用经由提供商网络控制接口来控制预先注册资源的能力)。例如,在所描绘的实施方案中,识别一列有待取消注册的资源483的取消注册请求481可发送给注册管理器180。作为响应,注册管理器180可关闭针对已识别资源所建立的安全连接,并且向客户端发回取消注册确认485。在一些实施方式中,一个或多个控制模块可在取消注册的资源处卸载。如稍早提及的,在至少一些实施方案中,注册管理器180可包括多个硬件和/或软件部件。
用于扩展提供商网络服务控制平面的方法
图5是流程图,其示出根据至少一些实施方案的、可执行来经由提供商定义的控制接口而实施客户端数据中心处的资源控制的操作方面。如要素501中所示,提供商网络可实施一组程序化控制接口,如API、基于网络的控制台、命令行工具或者图形用户接口,它们使得客户端能够提交定向在提供商网络资源(各种网络可访问服务可在其处实施)处的控制操作请求(并且接收对控制操作请求的响应)。
还可实施一组注册接口,从而使得客户端能够指示有待使用提供商网络的控制接口来管理的候选资源(要素504),例如,通过将提供商网络的控制平面逻辑扩展到客户端数据中心中。客户端可经由注册接口(例如)向注册管理器180提交资源注册请求,从而指示与资源有待被注册用于其的一个或多个服务相关联的一组资源和这些类别的控制操作。此类注册请求可被接收,从而指示提供商网络外部的位置处的给定资源R有待被注册用于特定服务S(即,经由提供商网络的控制接口提交的、与服务S相关联的控制操作请求将要产生传送至R的命令)(要素507)。在不同的实施方案中,各种不同类型的资源可以是用于注册的候选项,如虚拟化计算服务的计算实例或分布式数据库服务的数据库实例可在其处发起的主机、块级卷或其他类型的存储对象可在其处创建的存储装置,等等。
在所描绘的实施方案中,响应于注册请求,注册管理器可验证资源R能够执行与服务S相关联的所需功能性(要素510)。在一些情况下,可在候选资源处运行测试来(例如)通过注册管理器或者通过代表注册管理器发挥作用的中介方验证功能性。如果候选资源被发现是可接受的,那么它们可根据要求进行注册。随后,当定向至R的控制操作请求经由提供商网络的控制接口(例如经由定向至提供商网络的控制端点的控制台或API调用程序)接收时,对应控制命令可提交给R(要素514)。在一些实施方式中,资源R的能力的验证可能不是必要的,例如,如果所有的候选资源具有完全相同的能力,并且因此不存在与任何给定资源所支持的功能性有关的模糊性。
如稍早在图2的情境中所描述的,在一些实施方案中,网络链路或路径可由数据和控制共享。图6是流程图,其示出根据至少一些实施方案的、可执行来针对控制操作使用客户端驻地资源与提供商网络资源之间的预先配置数据路由的操作方面。在所描绘的实施方案中,如要素601中所示,在所描绘的实施方案中,可首先在(a)代表客户端而使用提供商网络资源所建立的隔离虚拟网络(IVN)与(b)提供商网络外部的数据中心处的某一组客户端资源之间建立专用数据路由。数据路由可(例如)涉及使用处在被配置用于外部资源的路由器与被配置用于IVN的提供商网络网关(如代表客户端而建立的虚拟专用网关)之间的一个或多个网络链路来建立连接性。
在数据路由建立后的某一点上,客户端可能期望将提供商网络的控制平面功能性扩展到外部数据中心中。因此,客户端可提交注册请求,从而指示位于外部数据中心处的一个或多个资源有待被注册以便经由提供商网络的控制接口、端点或者与提供商网络控制平面相关联的其他资源进行控制(要素604)。在所描绘的实施方案中,安全控制平面虚拟连接(如VPN连接)可建立在提供商网络的管理或控制节点(与提供商网络的一个或多个网络可访问服务相关联,并且位于提供商网络内)与安装在外部数据中心内的一个或多个控制模块(例如,在已注册资源本身处,或者在经由网络连接而链接至已注册资源的装置上)之间。如要素607中所指示的,用于数据路由的至少一个网络链路可重新用于安全控制平面虚拟连接。任何适当的安全联网协议可用于保全连接,如TLS、SSL或IPSec。在一些实施方案中,如图2中所示出的,代理可用在提供商网络侧上,例如,在服务控制器与网关之间。
在资源已经注册并且安全连接已经建立后,通向已注册资源的控制命令可(例如)响应于客户端所发布的控制操作请求而使用安全连接从数据中心内的管理资源发布(要素610)。应注意,至少在一些实施方案中,网络链路、路由或其他联网资源出于数据和控制目的而进行的共享无需要求如图6中所示的那样首先建立数据路由。相反,在一些此类实施方案中,可能的情况是,首先建立安全控制平面连接,并且随后建立数据路由。在至少一个实施方案中,无需针对由数据和控制流量共享的网络链路或路径而建立IVN。在各种实施方案中,可使用任何期望机制将数据流量与控制流量隔离。
如稍早描述的,在至少一些实施方案中,提供商网络可实施应用堆栈配置服务,并且此类服务可用来配置利用提供商网络资源以及客户端侧资源的混合形式的应用。图7是流程图,其示出根据至少一些实施方案的、可执行来使用提供商网络资源与外部资源的组合而配置应用的操作方面。如要素701中所示,一组程序化接口(如API、命令行工具、基于网络的接口或者图形用户接口)可被实施来使得客户端能够向提供商网络的控制平面资源(如堆栈配置服务的控制节点)提交应用堆栈配置请求。堆栈配置请求可包括(例如)描述多层应用的各种部件的配置要求的脚本或模板,如所需计算资源的类型和数目、有待被配置用于部件的物理存储资源的数量和类型,等等。
特定应用堆栈配置请求可经由程序化接口中的一个来接收(要素704),从而指示给定应用有待利用提供商网络数据中心或可用性容器内的至少一个资源以及位于提供商网络外部(例如,在客户端数据中心或客户端定义的可用性容器处)并且被注册来经由提供商网络的控制平面而接收控制命令的至少一个资源。响应于此类请求,应用堆栈配置服务可将对应组的配置命令传送至提供商网络内外的适当资源(要素707)。在配置命令完成后,在至少一些实施方案中应用的部件之间的功能性和连接性可加以验证(要素710),并且如“应用配置完成”消息等指示可被提供来通知客户端应用已经成功配置。如果配置命令中的一个或多个失败,在一些实施方式中应用堆栈中成功配置的任何其余部分可被取消配置,并且可相应地通知客户端。
在客户端已使用本文所描述的控制平面扩展来注册运行给定应用的客户端侧资源并且已获得一些使用提供商网络的控制接口的经验后,在某一点上客户端可能期望转变到使用提供商网络资源。在一些情况下,提供商网络的各种网络可访问服务所支持的、无缝暂停和重启虚拟化资源的能力可用于此类转变。图8是流程图,其示出根据至少一些实施方案的、可执行来静默提供商网络外部的数据中心处的虚拟化资源并且重新实例化提供商网络内的资源的操作方面。如要素801中所示,可经由提供商网络控制平面端点(如与虚拟化计算服务相关联的管理控制台)接收请求以便静默(例如,保存状态并且停止运行)当前实例化在已注册客户端侧资源处的虚拟化资源实例RI1。接着可经由安全连接(例如)给在已注册资源处运行的虚拟化管理软件堆栈的模块发布一个或多个控制命令,以便保存RI1的状态信息并且静默RI1的当前运行(要素804)。
对在提供商网络内的主机处重新实例化已静默实例RI1的请求可在端点处接收(要素807)。位于提供商网络的数据中心处的虚拟化主机可被识别,并且已保存状态信息可传送至虚拟化主机(要素810)。使用状态信息,RI1可在提供商网络的虚拟化主机处发起(要素813)。从客户端的角度来看,现在正在提供商网络内使用RI1运行的应用看上去可能大部分或完全不可与稍早使用外部数据中心内实例化的RI1运行的应用加以区分。
使用提供商定义的控制接口来管理池化客户端侧资源
在一些实施方案中,提供商网络的控制接口可在若干逻辑或层次级别上扩展到外部数据中心处的基础设施中。例如,在一个级别上,外部数据中心的单个已注册资源(如虚拟化主机或存储装置)可从提供商定义的接口来控制,例如使用包括在单个资源处的虚拟化管理堆栈内的模块。在另一个级别上,外部数据中心处的多群或多池资源的层次可从与提供商网络接口兼容的控制模块安装在其处的单一器件或装置来控制,而不必要求成群资源本身具有安装后的任何额外模块。例如,在负载平衡服务由提供商网络支持的一个实施方案中,外部数据中心可包括一池虚拟或物理负载平衡器,所述虚拟或物理负载平衡器可使用位于外部数据中心内并且经由安全连接而连接至负载平衡服务的器件来管理。可响应于经由负载平衡服务的程序化接口所接收的客户端请求,而将命令从位于提供商网络内的服务控制器经由安全连接发送至所述器件。所述器件可(例如)随着应用的工作负载增加来激活指派到给定客户端侧应用的更多负载平衡器,如果工作负载减小便去活或重新指派一些负载平衡器,等等。在至少一些实施方案中,所述器件发布给池化资源的命令可使用产业标准协议(如SNMP),从而使得不需要在池化资源本身处做出修改来适应提供商网络的控制平面扩展。类似的器件或装置同样可建立用于其他类型的池化资源服务,如分布式高速缓存服务、分布式数据库服务、网络地址发现服务等。在一些实施方案中,位于提供商网络内的服务管理部件(例如,服务控制器)与器件之间的通信可根据如JMX(JavaTM管理扩展体系结构)等产业标准来格式化。
图9示出根据至少一些实施方案的系统的示例,其中提供商网络服务(在此情况下,负载平衡服务)被配置来管理包括外部数据中心处的资源的资源池。图中展示两个数据中心处的实体:提供商网络数据中心990和外部(例如,客户端拥有的)数据中心992。在所描绘的实施方案中,在提供商网络内,包括多个虚拟或物理负载平衡器905(例如,负载平衡器905A、905B和905G)的负载平衡器池922A借助于负载平衡服务的控制器902来管理。在任何给定时间点上,池922A的负载平衡器中的一些可处于激活状态下,例如被指派来根据某一组的负载平衡判据或政策而分配用于负载平衡实例池920的计算实例处所实施的特定应用的客户端工作负载。因此,负载平衡器905A和905B已被激活来在负载平衡实例池920的虚拟化主机930A和930B处实例化的计算实例910A、910B、910C和910D当中分配工作负载请求925A(对应于经由数据平面接口919A从客户端170所接收的请求983A)。池922A的其他负载平衡器(如负载平衡器905G)可处于休眠状态下(例如,未分配指派给应用)。控制命令984A可由控制器902发布来管理负载平衡器池922A的各个方面,如将单独负载平衡器905的激活状态从活动改变成休眠或者反之亦然、在不同应用当中重新指派负载平衡器或者改变池922A中负载平衡器的数量。
在图9所描绘的实施方案中,安全网络连接已建立在负载平衡服务控制器902与安装在位于外部数据中心992中的器件975处的控制模块977之间。在一些情况下,器件975可专用于单一提供商网络服务,例如,可能需要不同的器件用于不同的服务。在至少一个实施方案中,客户端可指示客户端网络中有待充当器件975而用于服务的主机,并且适当控制模块977可安装在其上,例如,使用从提供商网络获取的或者由提供商网络的服务控制器传送的包。客户端数据中心包括另一个负载平衡器池922B,所述负载平衡器池922B具有可配置来平衡定向至某一组客户端应用的工作负载的多个虚拟或物理客户端负载平衡器(CLB)906。例如,客户端170可提交工作请求983B,所述工作请求983B被定向至借助于在主机926A和926B处实例化的客户端定义资源(CDR)911A、911B、911R和911S而实施的一个或多个应用。客户端提交的工作请求可通过由于器件975在控制器902的方向上所发布的命令984B的结果激活的一个子组负载平衡器906(例如,906A和906B),而在CDR 911当中进行分配(如箭头925B所指示的)。负载平衡器池922B在给定时间点上还可包括一些休眠或未指派的客户端负载平衡器,如CLB 906Q。
在图9所描绘的实施方案中,客户端170可经由一组共同的控制平面接口150来提交定向至负载平衡服务的各种控制操作请求987(例如,指定有待管理的这组客户端侧负载平衡器的请求,或者指定有待管理的这组提供商网络负载平衡器的请求)。负载平衡服务控制器902可生成对应于客户端操作请求987的命令。取决于客户端请求987的本质和目标,控制器命令中的一些可在提供商网络内加以定向(例如,命令984A),而其他命令可定向至外部数据中心(例如,定向至器件975的命令981,这反过来又将命令984B传送至客户端侧负载平衡器池成员)。应注意,负载平衡器本身可能未必在外部网络内使用与用于提供商网络内的负载平衡器的技术相同的技术(或者相同类型的硬件或软件)。因此,(例如)给定客户端可能倾向于使用供应商V1所生产的硬件负载平衡器906,而提供商网络的负载平衡服务可利用供应商V2所生产的或者针对提供商网络定制实施的不同类型负载平衡器905。发布给提供商网络内部的负载平衡器905的命令的类型可与发布给提供商网络外部的负载平衡器906的那些命令不同,例如,可使用不同的协议,或者可使用不同组的政策。
在至少一些实施方案中,客户端可注册有待经由一组提供商网络控制接口控制的单独客户端侧资源以及有待经由另一组提供商网络控制接口控制的多池客户端侧资源。例如,在图9所示的实施方案中,CDR 911中的一些或全部本身可被注册以便经由与提供商网络的虚拟化计算服务相关联的接口进行控制,而器件975和/或客户端负载平衡器906可被注册以便经由与提供商网络的负载平衡服务相关联的接口进行控制。
在不同的实施方案中,各自组的程序化控制接口可被实施用于已建立在提供商网络中用来管理资源的激活状态(例如,给定负载平衡器、高速缓存实例或者数据库实例是否是激活或休眠的,并且如果其被激活,它指派给哪个特定的客户端或应用)的各种类型池化资源服务。客户端可经由此类接口向池化资源服务提交配置请求,并且客户端请求可被类似于控制器902的服务管理资源转译成适当命令。在至少一些实施方案中,客户端可使用程序化接口来提交池管理请求,从而指示特定池内的激活状态有待由对应服务进行管理的一个或多个资源(提供商网络内或者提供商网络外的位置处)。例如,一个实施方式中的池管理请求可指示池标识符(例如,“应用A负载平衡池”)、已经是成员或者有待成为池成员的一组客户端侧资源(例如,“:LB3405A.domainname.com(IP地址A.B.C.1)”、“:LB3405B.domainname.com(IP地址A.B.C.5)......”,并且任选地参数,如资源激活/去活标准、最大池大小、最小池大小或者关于在任何给定时间上激活的池的资源的数量的最小和最大约束。可从位于提供商网络内的控制器或服务的类似管理资源到代表服务而在提供商网络外部的数据中心处实例化的控制模块(如模块977)建立安全网络连接,从而有效地扩展用于服务的控制平面。
在至少一些实施方案中,根据池管理请求中所指示的至少一个资源激活判据,一定数量的资源(客户端侧资源或者提供商网络资源)可经由控制模块激活以便响应于一个或多个类型的工作请求,如客户端工作请求983。取决于具体服务,管控资源激活状态变化的不同类型判据可由客户端指定。例如,在负载平衡服务的情况下,当现有负载平衡器的CPU利用率级别在一定时间阶段T超过X%时,客户端可能期望使新的负载平衡器激活,并且如果平均CPU利用率级别在一定时间段仍然低于y%,客户端便可能期望去活负载平衡器。类似地,对于分布式高速缓存服务来说,如果应用的高速缓存缺失率超过阈值或者如果高速缓冲存储器的某一组备用存储装置处的I/O工作负载增加到高于阈值,那么便可激活另外的高速缓冲存储器,或者可增加现有高速缓存实例的大小。其他服务专有激活状态变化判据可用于各种池化资源服务,如网络地址发现服务(其资源可提供与DNS节点类似的功能性)、自动化资源复原服务(例如,取决于已测量或已预测的工作负载级别而根据需要自动将计算或存储实例添加到应用的服务)、分布式数据库服务(其中新的数据库实例可基于指定的激活判据来旋转加速)或者节点被设计来根据需要生成安全制品(如密码密钥或证书)的服务。在至少一个实施方案中,除了或者代替针对已经被配置为池成员的资源的激活状态变化,客户端可发布控制操作请求来扩大或缩小指定的池,例如,通过从客户端网络或者提供商网络的其他实体或服务请求额外的主机,或者通过给其他任务重新指派现有的池成员。在此类实施方案中,在对池大小做出调整中,客户端侧控制模块可能需要遵照预先指定的池大小约束(如果有的话),如最大或最小池大小限制。
图10a和图10b分别示出根据至少一些实施方案的、用于控制流的两个替代方案,所述控制流可用于控制平面从提供商网络扩展到外部数据中心中的池化资源服务。在一种方法中,如图10a(并且同样在图9中)所示,可在提供商网络数据中心990处的池化资源服务控制器1002与位于外部数据中心951中的专用器件975处的控制模块977之间做出安全连接(例如,使用SSL、TLS、IPSec或者任何其他适当的协议)。在图10a中所描绘的实施方案中,共同网络链路1056可由数据流量和控制流量共享。可在提供商网络资源池1018(例如,针对客户端建立的隔离虚拟网络内的资源池,类似于图2中所示出的IVN 221)与客户端侧资源池1028之间建立数据流动路径1051,其中数据流量的至少一部分在网络链路1056上流动(控制流量同样在其上流动)。可使用(例如)VPN将控制流量与数据流量隔离。在客户端数据中心992内,器件975可充当服务控制器1002与客户端侧资源池之间的中介方,例如,从控制器1002接收指令并且将它们转译成客户端侧池的成员所理解的命令1066。在图10a中所示出的方法中,不需要在客户端侧资源池1028内的资源处安装或包括另外的模块。
图10b中示出用来扩展提供商网络控制平面的不同方法。这里,各自控制模块977A和977B被安装或配置在池资源1011A和1011B处,并且其结果是池化资源服务控制器1002可能不需要中介方,如器件975。相反,控制器1002可直接与池资源处的模块977A和977B通信。再次地,在所描绘的实施方案中,如在图10a的情况下,共同网络链路1056可用于数据流量和控制流量两者。在一些实施方案中,给定客户端可能期望使用同一外部数据中心内的若干池化资源服务中的每一个的程序化控制接口,并且如果使用图10a中所示出的方法,那么每个此类服务可能需要位于客户端数据中心中的至少一个专用器件。为了避免器件的花费,在一些实施方案中,客户端可选取图10b中所示的替代方法,所述替代方法可具有其自己安装/配置控制模块977的开销但不需要专用器件。在一些实施方案中,单一器件可与一个以上池化资源服务共享。在至少一个实施方案中,可使用将图10a和图10b的方面组合的混合方法,其中一些池化资源具有控制模块977并且器件用于另一个子组的池化资源。
资源池示例
如稍早所指出的,在至少一些实施方案中,使用提供商网络控制接口来管理的客户端侧池内的资源中的一些资源本身可被注册以便经由另一组提供商网络控制接口控制。其结果是,在此类实施方案中,客户端侧资源池本身可包括已注册和未注册成员的某一组合。图11示出根据至少一些实施方案的、提供商网络外部的数据中心处的资源池1028的类型的示例。如图所示,客户端侧资源池1028A包括资源1152A和152B,资源1152A和152B各自被注册用于与服务S1相关联的控制接口,并且资源1152A和152B中的每一个包括与S1相关联的各自控制模块1177,并且因此能够实施根据S1的程序化控制接口所格式化的命令。例如,在一些实施方案中,资源1152A和1152B各自可包括虚拟化主机,S1可以是虚拟化计算服务,并且模块1177A和1177B可分别包括虚拟化管理软件堆栈的元件。与池化资源服务S2(如负载平衡服务)相关联的控制模块977可被配置成将控制/配置命令1156(如激活/钝化命令)传送至已注册资源1152A和1152B。
虽然客户端侧资源池(如池1028A)中的一些可完全由已注册资源组成,但是其他客户端侧资源池(如1028B)可包括未注册资源,如1162A和1162B,其可能不具有与服务S1(或提供商网络的任何其他服务)相关联的任何控制模块。此类未注册资源可能无法实施根据提供商网络服务的程序化控制接口所格式化的命令。第三类别的资源池可包括已注册资源(如具有S1控制模块1177K的资源1152K)和未注册资源(如资源1162M)。在一些情况下,给定的池化资源可包括若干服务的控制模块,并且因而被注册来接收与每个服务相关联的控制命令。在所描绘的实施方案中,与池化资源服务S2相关联的控制模块977可被配置成同样有效地与已注册和未注册池化资源通信。
图12示出根据至少一些实施方案的、可跨越多个可用性容器的池配置的示例。如图所示,在所描绘的实施方案中,提供商网络101包括提供商定义的可用性容器(PDAC)102A和102B,而客户端网络151包括客户端定义的可用性容器152A和152B。器件975可被配置成通过向池化资源提交对应控制命令(如资源激活和去活命令)来响应于客户端提交的控制操作请求。在所描绘的实施方案中,大量不同类型的资源池可借助于器件975来配置和管理。例如,一些池(如池1202A)可包括位于客户端网络151中的资源(如CDAC 152A中的资源组1220A)以及位于提供商网络101中的资源(如PDAC 102B中的资源组110F)。池(如1202B)可包括一个以上PDAC内的资源(例如,PDAC 102A中的资源组110B以及102B中的110G)。池1202C可包括局限于给定PDAC的资源组110C,并且池1202E和1202F可包括CDAC 152A内和152B内的各自资源组1220C和1220M。经由器件975所控制的器件资源池(如池1202D)可包括一个以上CDAC处的各自资源组(如分别处于CDAC 152A和152B处的资源组1220B和1220L)。在所描绘的实施方案中,借助于添加到器件的控制模块来管理的池化资源可存在于可用性容器或数据中心的任何组合中,这独立于器件本身的位置,只要上述用于控制流量的所述类型安全连接可以建立。
用于控制客户端侧池化资源的方法
图13是流程图,其示出根据至少一些实施方案的、可执行来使用提供商网络内实施的服务而支持提供商网络外部位置处的池化资源的管理的操作方面。如要素1301中所示,可实施一组程序化接口,其使得客户端能够向建立在提供商网络处的网络可访问服务提交配置请求来管理池化资源(例如,管理池内资源的激活/钝化,和/或添加资源/从池中移除资源)。此类服务的示例可包括(例如)负载平衡服务、分布式高速缓存服务、分布式数据库、网络地址发现服务等。
可接收指示指定池内的状态有待由服务来管理的一组资源的池管理请求(要素1304)。在所描绘的实施方案中,资源中的至少一个可位于提供商网络外部的数据中心处(例如,客户端拥有的数据中心处)。池管理请求还可包括用来改变资源的激活状态的各种判据或规则,例如,有待被追踪来确定另外的资源何时激活的性能度量的类型以及有待充当状态变化的触发因素的度量的比值。
安全网络连接可建立在服务的管理部件(如位于提供商网络内的服务控制器节点)与位于外部数据中心中(例如,专用于服务的器件处或者池化资源中的一个或多个上)的控制模块之间(要素1307)。任何适当的协议均可用来保全连接,如SSL、TLS或IPSec。在一些实施方案中,安全网络连接可使用网络资源,如也用于提供商网络与外部数据中心之间的数据流量的一个或多个链路。控制模块可能已经(例如)通过提供商网络运营商的合作伙伴供应商而预先安装在器件上或在其他装置上,或者可根据需要通过从提供商网络传输安装包来安装。基于池管理请求所指示的标准,适当的配置命令(例如,激活命令)可从管理部件经由控制模块传送至池中位于外部数据中心中的选定资源(要素1310)。在一些实施方案中,配置命令可根据各种基于标准的协议中的任何一种(如SNMP)来格式化。
图14是流程图,其示出了根据至少一些实施方案的、可执行来改变资源池内的资源的激活状态的操作方面。如要素1401中所示,可识别有待用来激活/去活包括一个或多个PDAC处的提供商网络资源和/或一个或多个CDAC处的客户端拥有资源的池内的资源的一组度量来源。此类来源可包括(例如)位于资源本身处的性能监控器或工具、远程监控应用行为和响应性的工具和/或各种类型的日志。所识别的度量可从来源中收集一段时间(要素1404)。
可使用所述度量做出是否对一些或所有资源池的激活状态进行改变的决定,例如,是否激活、去活或重新指派一个或多个资源。如果此类激活状态改变有待执行(如要素1407中所确定的),可识别目标针对状态改变的具体资源(要素1410)。适当的配置命令可(例如)从安装在提供商网络外部的装置处的控制模块传送至目标资源(要素1413)。另外,在一些实施方案中,可修改有待在下一个时间间隔上监控的这组资源。接着可开始下一个时间段的监控,并且可重复对应于前面要素1404的操作。如果认为没必要进行激活状态改变(同样如要素1407中所确定的),也可在下一个时间间隔上重复对应于前面要素1404的操作。
应注意,在各种实施方案中,除了图5、图6、图7、图8、图13和图14的流程图中所示出的那些操作之外的操作可被实施来支持从提供商网络到外部网络的控制平面扩展,并且所示操作中的一些可不实施,或者可按照不同顺序或并行地而不是循序地来实施。
使用案例
扩展提供商网络的程序化控制接口的范围以便覆盖位于提供商网络外部的客户端侧位置中的资源的上述技术可在大量情形中是有利的。例如,即使基于云的应用的普及性已增长,但是许多企业应用继续受限于客户端侧资源,至少部分地是由于企业IT员工有关云操作的经验缺乏。使IT员工能够继续在他们自己的数据中心内运行他们的应用,同时使用提供商网络所支持的控制接口,便可帮助克服员工尝试更多完整基于云的应用的不情愿性。响应于客户端需求而随着时间构建在提供商网络中的许多服务,如应用堆栈配置自动化服务,也可降低针对客户端侧应用的应用管理的复杂性。不管位置如何而透明管理池化资源的能力可允许应用随着工作负载级别增加而有效地缩放。用于将应用传输至提供商网络资源的简化技术(例如,通过静默客户端侧上运行的实例,并且在提供商网络内将它们重新实例化)也可在低风险下降低IT成本。
说明性计算机系统
在至少一些实施方案中,实施本文所描述的技术(包括用来实施注册管理器、已注册和未注册资源、如与各种提供商网络服务相关联的控制器和器件等管理节点以及控制路径和数据路径的其他元件的技术)中的一个或多个的一部分或全部的服务器,可包括通用计算机系统,所述通用计算机系统包括或者被配置来访问一个或多个计算机可访问介质。图15示出此类通用计算装置3000。在示出的实施方案中,计算装置3000包括经由输入/输出(I/O)接口3030耦接至系统存储器3020的一个或多个处理器3010。计算装置3000还包括耦接至I/O接口3030的网络接口3040。
在各种实施方案中,计算装置3000可为包括一个处理器3010的单处理器系统,或包括若干处理器3010(例如两个、四个、八个或另一合适数量)的多处理器系统。处理器3010可为能够执行指令的任何合适处理器。例如,在各种实施方案中,处理器3010可为实施各种指令集架构(ISA)中任何一种架构的通用或嵌入式处理器,所述架构如x86、PowerPC、SPARC或MIPS ISA或者任何其他合适的ISA。在多处理器系统中,每一个处理器3010可通常但并非必须实施同一ISA。在一些实施方式中,代替或者除了常规处理器之外,可使用图形处理单元(GPU)。
系统存储器3020可被配置来存储可由处理器3010访问的指令和数据。在各种实施方案中,系统存储器3020可使用任何合适的存储器技术来实施,所述存储器技术如静态随机存取存储器(SRAM)、同步动态RAM(SDRAM)、非易失性/快闪型存储器或任何其他类型的存储器。在示出的实施方案中,实施一个或多个期望功能的程序指令和数据(如上文所述的那些方法、技术以及数据)展示成作为代码3025和数据3026存储在系统存储器3020内。
在一个实施方案中,I/O接口3030可被配置成协调处理器3010、系统存储器3020和装置中的任何外围装置之间的I/O流量,所述外围装置包括网络接口3040或其他外围接口,如用来存储数据对象分区的物理副本的各种类型持久性和/或易失性存储装置。在一些实施方案中,I/O接口3030可执行任何必要协议、时序或其他数据转换,以便将来自一个部件(例如,系统存储器3020)的数据信号转换成适合于由另一个部件(例如,处理器3010)使用的格式。在一些实施方案中,I/O接口3030可包括对于通过各种类型外围总线附接的装置的支持,例如像外围部件互连(PCI)总线标准或通用串行总线(USB)标准的变型。在一些实施方案中,I/O接口3030的功能可划分到两个或更多个单独部件中,例如像北桥和南桥。另外,在一些实施方案中,I/O接口3030的功能性中的一些或全部,例如通向系统存储器3020的接口,可直接并入到处理器3010中。
网络接口3040可被配置成允许数据在计算装置3000与附接到一个或多个网络3050的其他装置3060(例如像如图1至图14中所示出的其他计算机系统或装置)之间进行交换。在各种实施方案中,网络接口3040可支持经由任何合适的有线或无线通用数据网络(例如像各类以太网网络)进行通信。另外,网络接口3040可支持经由电信/电话网络(如模拟语音网络或数字光纤通信网络)、经由存储区域网络(如光纤信道SAN)或者经由任何其他合适类型的网络和/或协议进行通信。
在一些实施方案中,系统存储器3020可以是计算机可访问介质的一个实施方案,所述计算机可访问介质被配置成存储如上文针对图1至图14所描述的程序指令和数据,以便实施对应方法和设备的实施方案。然而,在其他实施方案中,可在不同类型的计算机可访问介质上接收、发送或存储程序指令和/或数据。一般来说,计算机可访问介质可包括非暂时性储存介质或储存器介质,如磁性或光学介质,例如经由I/O接口3030耦接至计算装置3000的磁盘或DVD/CD。非暂时性计算机可访问存储介质也可包括可作为系统存储器3020或另一类型存储器而被包括在计算装置3000的一些实施方案中的任何易失性或非易失性介质,如RAM(例如,SDRAM、DDR SDRAM、RDRAM、SRAM等)、ROM等。此外,计算机可访问介质可包括传输介质或经由通信介质(如网络和/或无线链路)传递的信号,如电信号、电磁信号或数字信号,正如可经由网络接口3040来实施的。多个计算装置中的部分或全部(如图15中所示出的那些)可用来实施各种实施方案中的所描述功能;例如,在各种不同的装置和服务器上运行的软件部件可协作来提供功能性。在一些实施方案中,所描述功能性的部分可使用存储装置、网络装置或特殊用途计算机系统来实施,除了或者代替使用通用计算机系统来实施。如本文所使用的术语“计算装置”是指至少所有这些类型的装置,并且不限于这些类型的装置。
结论
各种实施方案还可包括在计算机可访问介质上接收、发送或存储根据前面的描述而实施的指令和/或数据。一般来说,计算机可访问介质可包括存储介质或存储器介质,如磁性或光学介质(例如磁盘或DVD/CD-ROM)、易失性或非易失性介质(如RAM(例如,SDRAM、DDR、RDRAM、SRAM等)、ROM等),以及传输介质或经由通信介质(如网络和/或无线链路)传递的信号,如电信号、电磁信号或数字信号。
如图中所示出并且在本文中描述的各种方法表示方法的示例性实施方案。所述方法可在软件、硬件或其组合中实施。方法的顺序可以改变,并且各种要素可以添加、重新排序、组合、省略、修改等。
受益于本公开的本领域技术人员将清楚地知晓可做出各种修改和变化。本文旨在包含所有此类修改和变化,因此,以上描述应视为具有说明性而非限制性意义。
本公开的实施方案可鉴于以下条款来描述:
1.一种系统,其包括:
一个或多个计算装置,其被配置来:
实施第一组程序化接口,从而使得客户端能够请求与提供商网络的一个或多个网络可访问服务的资源相关联的控制操作;
实施第二组程序化接口,从而使得客户端能够提交资源注册请求,其中所述资源注册请求指示位于所述提供商网络外部的数据中心处的一个或多个资源作为用于经由所述第一组程序化接口所接收的一类控制操作请求的候选目标,其中所述类控制操作请求与所述一个或多个网络可访问服务中的至少特定网络可访问服务相关联;
经由所述第二组程序化接口接收特定资源注册请求,从而指示位于所述提供商网络外部的所述数据中心处的特定资源;
验证所述特定资源处安装的管理软件堆栈的一个或多个模块的功能性;
在所述特定资源处的所述一个或多个模块的特定模块与位于所述提供商网络的数据中心内的管理资源之间建立安全网络连接;以及
响应于经由所述第一组程序化接口所接收的所述类控制操作请求的特定控制操作请求,将控制命令从所述管理资源经由所述安全网络连接传送至所述特定资源。
2.如条款1所述的系统,其中所述特定网络可访问服务包括以下各项中的一项:虚拟化计算服务、块级存储服务、针对客户端操作实施万维网服务接口的存储服务、数据库服务、批处理并行计算服务或负载平衡服务。
3.如条款1所述的系统,其中所述提供商网络包括多个可用性容器,所述可用性容器包括具有各自组基础设施部件和各自可用性配置文件的第一可用性容器和第二可用性容器,其中所述特定资源注册请求包括将所述提供商网络外部的所述数据中心处的资源集合指定为不同可用性容器的请求,所述资源集合包括所述特定资源。
4.如条款1所述的系统,其中所述一个或多个计算装置还被配置来:
将所述控制命令经由包括特定物理网络链路的网络路径传送至所述特定资源;以及
响应于所述特定资源处所定向的数据传输操作请求,使用包括所述特定物理网络链路的不同网络路径传输来自所述特定资源的数据。
5.如条款4所述的系统,其中所述一个或多个计算装置还被配置来:
在所述提供商网络与所述提供商网络外部的所述数据中心之间建立专用于与控制命令相关联的流量的虚拟专用网络(VPN)。
6.一种方法,其包括:
通过一个或多个计算装置执行以下各项:
实施第一组程序化接口,从而使得客户端能够请求与提供商网络的一个或多个网络可访问服务的资源相关联的控制操作;
实施第二组程序化接口,从而使得特定客户端能够提交注册请求,其中所述注册请求指示位于所述提供商网络外部的数据中心处的一个或多个资源作为用于经由所述第一组程序化接口所发布的一类控制操作请求的候选目标,其中所述类控制操作请求属于所述一个或多个网络可访问服务中的特定网络可访问服务;
经由所述第二组程序化接口中的程序化接口接收特定注册请求,从而指示位于所述提供商网络外部的所述数据中心处的所述一个或多个资源中的特定资源;
在所述特定资源与位于所述提供商网络的数据中心内的管理资源之间建立网络连接;以及
响应于经由所述第一组的程序化接口所接收的所述类控制操作请求的特定控制操作请求,将控制命令从所述管理资源经由所述网络连接传送至所述特定资源。
7.如条款6所述的方法,其中所述特定网络可访问服务包括以下各项中的一项:虚拟化计算服务、块级存储服务、针对客户端操作实施万维网服务接口的对象存储服务、数据库服务、批处理并行计算服务或负载平衡服务。
8.如条款6所述的方法,其中所述提供商网络包括多个可用性容器,所述可用性容器包括具有各自组基础设施部件和各自可用性配置文件的第一可用性容器和第二可用性容器,其中所述特定受控外部资源群组请求包括将所述提供商网络外部的所述数据中心处的资源集合指定为不同可用性容器的请求。
9.如条款6所述的方法,其还包括通过所述一个或多个计算装置执行以下各项:
将所述控制命令经由包括特定物理网络链路的网络路径传送至所述特定资源;以及
响应于接收所述特定资源处所定向的数据传输操作请求,使用包括所述特定物理网络链路的不同网络路径传输来自所述特定资源的数据。
10.如条款9所述的方法,其还包括通过所述一个或多个计算装置执行以下操作:
在所述提供商网络与所述提供商网络外部的所述数据中心之间建立专用于与控制命令相关联的流量的第一虚拟专用网络(VPN)。
11.如条款6所述的方法,其还包括通过所述一个或多个计算装置执行以下操作:
使用代表所述特定客户端而建立的虚拟专用网关来建立所述网络连接。
12.如条款6所述的方法,其还包括通过所述一个或多个计算装置执行以下操作:
使用以下各项中的一项来保证所述网络连接的安全:IPSec(互联网安全协议)、TLS(传送层安全)、或SSL(安全套接层)。
13.如条款6所述的方法,其还包括通过所述一个或多个计算装置执行以下各项:
将有待安装在所述特定资源处的软件堆栈的一个或多个模块的可安装版本传送至所述提供商网络外部的所述数据中心处的目标装置;以及
建立从所述管理资源到所述一个或多个模块的特定模块的所述网络连接。
14.如条款6所述的方法,其还包括通过所述一个或多个计算装置执行以下各项:
响应于从所述特定客户端接收的一个或多个控制操作请求来静默所述特定资源处的特定虚拟化计算实例的运行;以及
在所述提供商网络内的不同资源处重新实例化所述已静默虚拟化计算实例。
15.如条款6所述的方法,其还包括通过所述一个或多个计算装置执行以下各项:
在所述提供商网络内的配置服务节点处接收应用堆栈配置请求,所述应用堆栈配置请求包括有待代表所述特定客户端而配置的特定应用的第一部件和第二部件的指示,其中所述第一部件在于利用位于所述提供商网络内的第一资源,并且所述第二部件在于利用位于所述提供商网络外部的所述数据中心处的第二资源;
根据所述应用堆栈配置请求而将各自配置命令从所述配置服务节点发布给所述第一资源和所述第二资源。
16.一种存储程序指令的非暂时性计算机可访问存储介质,当在一个或多个处理器上运行时,所述程序指令执行以下各项:
实施第一组程序化接口,从而使得客户端能够提交注册请求,其中所述注册请求指示位于提供商网络外部的数据中心处的一个或多个资源作为用于经由与所述提供商网络的网络可访问服务相关联的不同组程序化接口所发布的一类控制操作请求的候选目标;
在特定注册请求中所指示的特定资源与位于所述提供商网络的数据中心内的管理资源之间建立网络连接;以及
响应于经由所述不同组的程序化接口所接收的所述类控制操作请求的特定控制操作请求,将控制命令从所述管理资源经由所述网络连接传送至所述特定资源。
17.如条款16所述的非暂时性计算机可访问存储介质,其中所述网络可访问服务包括以下各项中的一项:虚拟化计算服务、块级存储服务、针对客户端操作实施万维网服务接口的对象存储服务、数据库服务、批处理并行计算服务或负载平衡服务。
18.如条款16所述的非暂时性计算机可访问存储介质,其中所述提供商网络包括多个可用性容器,所述多个可用性容器包括具有各自组基础设施部件和各自可用性配置文件的第一可用性容器和第二可用性容器,其中所述特定注册请求包括将所述提供商网络外部的所述数据中心处的资源集合指定为不同可用性容器的请求。
19.如条款16中所述的非暂时性计算机可访问存储介质,其中,当在所述一个或多个处理器运行时,所述指令执行以下操作:
在所述提供商网络与所述提供商网络外部的所述数据中心之间建立专用于与控制命令相关联的流量的虚拟专用网络(VPN)。
20.如条款16所述的非暂时性计算机可访问存储介质,其中所述特定资源包括以下各项中的至少一个:虚拟化计算资源主机、存储器件或负载平衡器件。
Claims (15)
1.一种用于控制资源的系统,包括:
一个或多个计算装置,被配置来:
实施第一组程序化接口,从而使得客户端能够请求与提供商网络的一个或多个网络可访问服务的资源相关联的控制操作;
实施第二组程序化接口,从而使得客户端能够从该客户端向所述提供商网络发送资源注册请求,其中所述资源注册请求指示位于所述提供商网络外部的数据中心处的一个或多个资源作为用于经由所述第一组程序化接口而接收的一类控制操作请求的候选目标,其中所述类控制操作请求与所述一个或多个网络可访问服务中的至少特定网络可访问服务相关联;
经由所述第二组程序化接口接收特定资源注册请求,从而指示位于所述提供商网络外部的所述数据中心处的特定资源;
验证所述特定资源处安装的管理软件堆栈的一个或多个模块的功能性;
在所述特定资源处的所述一个或多个模块的特定模块与位于所述提供商网络的数据中心内的管理资源之间建立安全网络连接;以及
响应于经由所述第一组的程序化接口所接收的所述类控制操作请求的特定控制操作请求,将控制命令从位于所述提供商网络的所述数据中心内的所述管理资源经由所述安全网络连接传送至位于所述提供商网络外部的所述数据中心处的所述特定资源。
2.如权利要求1所述的系统,其中所述特定网络可访问服务包括以下各项中的一项:虚拟化计算服务、块级存储服务、针对客户端操作实施万维网服务接口的存储服务、数据库服务、批处理并行计算服务或负载平衡服务。
3.如权利要求1所述的系统,其中所述提供商网络包括多个可用性容器,所述可用性容器包括具有各自组基础设施部件和各自可用性配置文件的第一可用性容器和第二可用性容器,其中所述特定资源注册请求包括将所述提供商网络外部的所述数据中心处的资源集合指定为不同可用性容器的请求,所述资源集合包括所述特定资源。
4.如权利要求1所述的系统,其中所述一个或多个计算装置还被配置来:
将所述控制命令经由包括特定物理网络链路的网络路径而传送至所述特定资源;以及
响应于所述特定资源处所定向的数据传输操作请求,使用包括所述特定物理网络链路的不同网络路径传输来自所述特定资源的数据。
5.如权利要求4所述的系统,其中所述一个或多个计算装置还被配置来:
在所述提供商网络与所述提供商网络外部的所述数据中心之间建立专用于与控制命令相关联的流量的虚拟专用网络(VPN)。
6.一种用于控制资源的方法,包括:
通过一个或多个计算装置执行以下各项:
实施第一组程序化接口,从而使得客户端能够请求与提供商网络的一个或多个网络可访问服务的资源相关联的控制操作;
实施第二组程序化接口,从而使得特定客户端能够从该特定客户端向所述提供商网络发送注册请求,其中所述注册请求指示位于所述提供商网络外部的数据中心处的一个或多个资源作为用于经由所述第一组程序化接口所接收的一类控制操作请求的候选目标,其中所述类控制操作请求属于所述一个或多个网络可访问服务中的特定网络可访问服务;
经由所述第二组程序化接口中的程序化接口接收特定注册请求,从而指示位于所述提供商网络外部的所述数据中心处的所述一个或多个资源中的特定资源;
在所述特定资源与位于所述提供商网络的数据中心内的管理资源之间建立网络连接;以及
响应于经由所述第一组的程序化接口所接收的所述类控制操作请求的特定控制操作请求,将控制命令从位于所述提供商网络的所述数据中心内的所述管理资源经由所述网络连接传送至位于所述提供商网络外部的所述数据中心处的所述特定资源。
7.如权利要求6所述的方法,其中所述特定网络可访问服务包括以下各项中的一项:虚拟化计算服务、块级存储服务、针对客户端操作实施万维网服务接口的对象存储服务、数据库服务、批处理并行计算服务或负载平衡服务。
8.如权利要求6所述的方法,其中所述提供商网络包括多个可用性容器,所述可用性容器包括具有各自组基础设施部件和各自可用性配置文件的第一可用性容器和第二可用性容器,其中所述特定注册请求包括将所述提供商网络外部的所述数据中心处的资源集合指定为不同可用性容器的请求。
9.如权利要求6所述的方法,还包括通过所述一个或多个计算装置执行以下各项:
将所述控制命令经由包括特定物理网络链路的网络路径传送至所述特定资源;以及
响应于接收所述特定资源处所定向的数据传输操作请求,使用包括所述特定物理网络链路的不同网络路径传输来自所述特定资源的数据。
10.如权利要求9所述的方法,还包括通过所述一个或多个计算装置执行以下操作:
在所述提供商网络与所述提供商网络外部的所述数据中心之间建立专用于与控制命令相关联的流量的第一虚拟专用网络(VPN)。
11.如权利要求6所述的方法,还包括通过所述一个或多个计算装置执行以下操作:
使用代表所述特定客户端而建立的虚拟专用网关来建立所述网络连接。
12.如权利要求6所述的方法,还包括通过所述一个或多个计算装置执行以下操作:
使用以下各项中的一项来保证所述网络连接的安全:IPSec(互联网安全协议)、TLS(传送层安全)、或SSL(安全套接层)。
13.如权利要求6所述的方法,还包括通过所述一个或多个计算装置执行以下各项:
将有待安装在所述特定资源处的软件堆栈的一个或多个模块的可安装版本传送至所述提供商网络外部的所述数据中心处的目标装置;以及
建立从所述管理资源到所述一个或多个模块的特定模块的所述网络连接。
14.如权利要求6所述的方法,还包括通过所述一个或多个计算装置执行以下各项:
响应于从所述特定客户端所接收的一个或多个控制操作请求来静默所述特定资源处的特定虚拟化计算实例的运行;以及
在所述提供商网络内的不同资源处重新实例化所述已静默虚拟化计算实例。
15.如权利要求6所述的方法,还包括通过所述一个或多个计算装置执行以下各项:
在所述提供商网络内的配置服务节点处接收应用堆栈配置请求,所述应用堆栈配置请求包括有待代表所述特定客户端而配置的特定应用的第一部件和第二部件的指示,其中所述第一部件在于利用位于所述提供商网络内的第一资源,并且所述第二部件在于利用位于所述提供商网络外部的所述数据中心处的第二资源;
根据所述应用堆栈配置请求而将各自配置命令从所述配置服务节点发布给所述第一资源和所述第二资源。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/034,325 US9686121B2 (en) | 2013-09-23 | 2013-09-23 | Client-premise resource control via provider-defined interfaces |
US14/034,325 | 2013-09-23 | ||
PCT/US2014/056915 WO2015042559A1 (en) | 2013-09-23 | 2014-09-23 | Client-premise resource control via provider-defined interfaces |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105579965A CN105579965A (zh) | 2016-05-11 |
CN105579965B true CN105579965B (zh) | 2019-09-03 |
Family
ID=52689525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480052197.1A Active CN105579965B (zh) | 2013-09-23 | 2014-09-23 | 经由提供商定义接口的客户端驻地资源控制 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9686121B2 (zh) |
EP (1) | EP3049927B1 (zh) |
JP (1) | JP6224846B2 (zh) |
CN (1) | CN105579965B (zh) |
CA (1) | CA2924655C (zh) |
WO (1) | WO2015042559A1 (zh) |
Families Citing this family (83)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9219647B2 (en) * | 2013-03-15 | 2015-12-22 | Eyecam, LLC | Modular device and data management system and gateway for a communications network |
US10360071B1 (en) * | 2014-04-11 | 2019-07-23 | Amazon Technologies, Inc. | Computing resource market |
US9699251B2 (en) * | 2014-05-13 | 2017-07-04 | Nutanix, Inc. | Mechanism for providing load balancing to an external node utilizing a clustered environment for storage management |
US20170006082A1 (en) * | 2014-06-03 | 2017-01-05 | Nimit Shishodia | Software Defined Networking (SDN) Orchestration by Abstraction |
DE102014108483A1 (de) * | 2014-06-17 | 2015-12-17 | Datenlotsen Informationssysteme Gmbh | Client-Server-System und Endgerät |
US9122562B1 (en) * | 2014-06-19 | 2015-09-01 | Amazon Technologies, Inc. | Software container recommendation service |
US10581755B2 (en) * | 2015-04-03 | 2020-03-03 | Nicira, Inc. | Provisioning network services in a software defined data center |
WO2016167762A1 (en) * | 2015-04-15 | 2016-10-20 | Hitachi, Ltd. | Method and apparatus for volume type change |
US10038640B2 (en) | 2015-04-30 | 2018-07-31 | Amazon Technologies, Inc. | Managing state for updates to load balancers of an auto scaling group |
US10341426B2 (en) * | 2015-04-30 | 2019-07-02 | Amazon Technologies, Inc. | Managing load balancers associated with auto-scaling groups |
US10412020B2 (en) | 2015-04-30 | 2019-09-10 | Amazon Technologies, Inc. | Background processes in update load balancers of an auto scaling group |
US10243848B2 (en) | 2015-06-27 | 2019-03-26 | Nicira, Inc. | Provisioning logical entities in a multi-datacenter environment |
US10067802B2 (en) | 2015-07-02 | 2018-09-04 | Red Hat, Inc. | Hybrid security batch processing in a cloud environment |
CN106375102B (zh) * | 2015-07-22 | 2019-08-27 | 华为技术有限公司 | 一种服务注册方法、使用方法及相关装置 |
US9959146B2 (en) * | 2015-10-20 | 2018-05-01 | Intel Corporation | Computing resources workload scheduling |
TW201717011A (zh) * | 2015-11-05 | 2017-05-16 | 財團法人資訊工業策進會 | 實體機器管理裝置及實體機器管理方法 |
WO2017197572A1 (zh) * | 2016-05-17 | 2017-11-23 | 华为技术有限公司 | 应用管理方法及管理单元 |
CN107506314B (zh) * | 2016-06-14 | 2021-05-28 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法和装置 |
CN107517119B (zh) * | 2016-06-17 | 2021-02-26 | 阿里巴巴集团控股有限公司 | Vpc环境下的虚拟网络检测方法以及装置 |
US10742498B2 (en) | 2016-06-22 | 2020-08-11 | Amazon Technologies, Inc. | Application migration system |
US10212031B2 (en) * | 2016-06-22 | 2019-02-19 | Amazon Technologies, Inc. | Intelligent configuration discovery techniques |
US10423790B2 (en) | 2016-08-09 | 2019-09-24 | Nicira, Inc. | Intelligent identification of stressed machines for data security management |
US9756061B1 (en) | 2016-11-18 | 2017-09-05 | Extrahop Networks, Inc. | Detecting attacks using passive network monitoring |
US10592280B2 (en) * | 2016-11-23 | 2020-03-17 | Amazon Technologies, Inc. | Resource allocation and scheduling for batch jobs |
US20180150234A1 (en) * | 2016-11-28 | 2018-05-31 | Hewlett Packard Enterprise Development Lp | Cloud volume storage |
US10560431B1 (en) | 2016-12-05 | 2020-02-11 | Amazon Technologies, Inc. | Virtual private gateway for encrypted communication over dedicated physical link |
US10798179B2 (en) * | 2017-02-01 | 2020-10-06 | Amazon Technologies, Inc. | Service endpoint interconnect in a virtual private gateway |
US10476673B2 (en) | 2017-03-22 | 2019-11-12 | Extrahop Networks, Inc. | Managing session secrets for continuous packet capture systems |
WO2019001729A1 (de) * | 2017-06-30 | 2019-01-03 | Siemens Aktiengesellschaft | Verfahren zum betrieb eines mehrere kommunikationsgeräte umfassenden kommunikationsnetzes eines industriellen automatisierungssystems und steuerungseinheit |
US11249808B2 (en) * | 2017-08-22 | 2022-02-15 | Intel Corporation | Connecting accelerator resources using a switch |
EP3677015B1 (en) * | 2017-08-31 | 2021-12-08 | Genesys Telecommunications Laboratories, Inc. | Systems and methods for load balancing across media server instances |
US9967292B1 (en) | 2017-10-25 | 2018-05-08 | Extrahop Networks, Inc. | Inline secret sharing |
US11231958B2 (en) | 2018-01-22 | 2022-01-25 | Siemens Aktiengesellschaft | Method and control system for controlling and/or monitoring devices |
US10389574B1 (en) | 2018-02-07 | 2019-08-20 | Extrahop Networks, Inc. | Ranking alerts based on network monitoring |
US10038611B1 (en) | 2018-02-08 | 2018-07-31 | Extrahop Networks, Inc. | Personalization of alerts based on network monitoring |
US10270794B1 (en) | 2018-02-09 | 2019-04-23 | Extrahop Networks, Inc. | Detection of denial of service attacks |
US10411978B1 (en) | 2018-08-09 | 2019-09-10 | Extrahop Networks, Inc. | Correlating causes and effects associated with network activity |
US10594718B1 (en) | 2018-08-21 | 2020-03-17 | Extrahop Networks, Inc. | Managing incident response operations based on monitored network activity |
US11075999B2 (en) * | 2018-08-28 | 2021-07-27 | Citrix Systems, Inc. | Accessing resources in a remote access or cloud-based network environment |
EP3884628A1 (en) * | 2018-11-20 | 2021-09-29 | Amazon Technologies Inc. | Provider network service extensions |
US10833949B2 (en) | 2018-11-20 | 2020-11-10 | Amazon Technologies, Inc | Extension resource groups of provider network services |
US11126457B2 (en) * | 2019-03-08 | 2021-09-21 | Xiamen Wangsu Co., Ltd. | Method for batch processing nginx network isolation spaces and nginx server |
US11385920B2 (en) | 2019-03-28 | 2022-07-12 | Amazon Technologies, Inc. | Compute platform optimization over the life of a workload in a distributed computing environment |
US11128696B2 (en) | 2019-03-28 | 2021-09-21 | Amazon Technologies, Inc. | Compute platform optimization across heterogeneous hardware in a distributed computing environment |
US11372663B2 (en) | 2019-03-28 | 2022-06-28 | Amazon Technologies, Inc. | Compute platform recommendations for new workloads in a distributed computing environment |
US11360795B2 (en) * | 2019-03-28 | 2022-06-14 | Amazon Technologies, Inc. | Determining configuration parameters to provide recommendations for optimizing workloads |
US11068312B2 (en) | 2019-03-28 | 2021-07-20 | Amazon Technologies, Inc. | Optimizing hardware platform utilization for heterogeneous workloads in a distributed computing environment |
US10965702B2 (en) | 2019-05-28 | 2021-03-30 | Extrahop Networks, Inc. | Detecting injection attacks using passive network monitoring |
US11659058B2 (en) * | 2019-06-28 | 2023-05-23 | Amazon Technologies, Inc. | Provider network connectivity management for provider network substrate extensions |
US11374789B2 (en) | 2019-06-28 | 2022-06-28 | Amazon Technologies, Inc. | Provider network connectivity to provider network substrate extensions |
US11431497B1 (en) | 2019-06-28 | 2022-08-30 | Amazon Technologies, Inc. | Storage expansion devices for provider network substrate extensions |
US11044118B1 (en) * | 2019-06-28 | 2021-06-22 | Amazon Technologies, Inc. | Data caching in provider network substrate extensions |
CN114026826B (zh) * | 2019-06-28 | 2023-07-14 | 亚马逊技术股份有限公司 | 提供商网络底层扩展的提供商网络连接管理 |
US11411771B1 (en) | 2019-06-28 | 2022-08-09 | Amazon Technologies, Inc. | Networking in provider network substrate extensions |
US11165814B2 (en) | 2019-07-29 | 2021-11-02 | Extrahop Networks, Inc. | Modifying triage information based on network monitoring |
US10742530B1 (en) | 2019-08-05 | 2020-08-11 | Extrahop Networks, Inc. | Correlating network traffic that crosses opaque endpoints |
US11388072B2 (en) | 2019-08-05 | 2022-07-12 | Extrahop Networks, Inc. | Correlating network traffic that crosses opaque endpoints |
US10742677B1 (en) | 2019-09-04 | 2020-08-11 | Extrahop Networks, Inc. | Automatic determination of user roles and asset types based on network monitoring |
US11064017B2 (en) | 2019-09-24 | 2021-07-13 | Amazon Technologies, Inc. | Peripheral device enabling virtualized computing service extensions |
US11188546B2 (en) * | 2019-09-24 | 2021-11-30 | International Business Machines Corporation | Pseudo real time communication system |
US11620165B2 (en) | 2019-10-09 | 2023-04-04 | Bank Of America Corporation | System for automated resource transfer processing using a distributed server network |
US11709698B2 (en) | 2019-11-04 | 2023-07-25 | Vmware, Inc. | Multi-site virtual infrastructure orchestration of network service in hybrid cloud environments |
US11640315B2 (en) * | 2019-11-04 | 2023-05-02 | Vmware, Inc. | Multi-site virtual infrastructure orchestration of network service in hybrid cloud environments |
US11743325B1 (en) * | 2019-11-29 | 2023-08-29 | Amazon Technologies, Inc. | Centralized load balancing of resources in cloud edge locations embedded in telecommunications networks |
US11159344B1 (en) * | 2019-11-29 | 2021-10-26 | Amazon Technologies, Inc. | Connectivity of cloud edge locations to communications service provider networks |
US11625327B2 (en) * | 2019-12-10 | 2023-04-11 | EMC IP Holding Company LLC | Cache memory management |
US11165823B2 (en) | 2019-12-17 | 2021-11-02 | Extrahop Networks, Inc. | Automated preemptive polymorphic deception |
CN111190734B (zh) * | 2019-12-30 | 2023-08-18 | 杭州涂鸦信息技术有限公司 | 一种微服务路由方法和系统及可读存储介质 |
US11569997B1 (en) | 2020-03-09 | 2023-01-31 | Amazon Technologies, Inc. | Security mechanisms for data plane extensions of provider network services |
US11374817B2 (en) | 2020-04-06 | 2022-06-28 | Vmware, Inc. | Determining span of logical network element |
US11777793B2 (en) | 2020-04-06 | 2023-10-03 | Vmware, Inc. | Location criteria for security groups |
US11375033B1 (en) * | 2020-05-06 | 2022-06-28 | Amazon Technologies, Inc. | Automated tuning of network intermediary devices |
US11561832B2 (en) * | 2020-05-18 | 2023-01-24 | Bank Of America Corporation | Systems and methods for maintaining pooled time-dependent resources in a multilateral distributed register |
CN111831450B (zh) * | 2020-07-20 | 2023-07-28 | 北京百度网讯科技有限公司 | 用于分配服务器资源的方法、装置、电子设备及存储介质 |
US11337227B2 (en) | 2020-08-24 | 2022-05-17 | Amazon Technologies, Inc. | Distributed network connectivity monitoring of provider network edge location resources from cellular networks |
US11219034B1 (en) * | 2020-08-24 | 2022-01-04 | Amazon Technologies, Inc. | Distributed network connectivity monitoring of provider network edge location resources from cellular networks |
WO2022066910A1 (en) | 2020-09-23 | 2022-03-31 | Extrahop Networks, Inc. | Monitoring encrypted network traffic |
US11463466B2 (en) | 2020-09-23 | 2022-10-04 | Extrahop Networks, Inc. | Monitoring encrypted network traffic |
US11349861B1 (en) | 2021-06-18 | 2022-05-31 | Extrahop Networks, Inc. | Identifying network entities based on beaconing activity |
CN115529268B (zh) * | 2021-06-24 | 2024-01-19 | 瞻博网络公司 | 处理配置网络设备的指令 |
US11296967B1 (en) | 2021-09-23 | 2022-04-05 | Extrahop Networks, Inc. | Combining passive network analysis and active probing |
CN114237704B (zh) * | 2021-11-15 | 2023-06-09 | 贵州大学 | 一种spring-cloud-alibaba nacos框架集成istio的方法 |
US11843606B2 (en) | 2022-03-30 | 2023-12-12 | Extrahop Networks, Inc. | Detecting abnormal data access based on data similarity |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1713595A (zh) * | 2004-06-15 | 2005-12-28 | 国际商业机器公司 | 协调独立外部资源在请求网格环境中的使用的方法和系统 |
CN101099132A (zh) * | 2005-01-06 | 2008-01-02 | 国际商业机器公司 | 提交给网格环境的网格作业使用前的资源功能性验证 |
Family Cites Families (57)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL117133A (en) * | 1996-02-14 | 1999-07-14 | Olivr Corp Ltd | Method and system for providing on-line virtual reality movies |
US5995947A (en) * | 1997-09-12 | 1999-11-30 | Imx Mortgage Exchange | Interactive mortgage and loan information and real-time trading system |
WO2000030346A1 (en) | 1998-11-12 | 2000-05-25 | General Instrument Corporation | Application programming interface (api) for accessing and managing resources in a digital television receiver |
JP2001160828A (ja) * | 1999-12-03 | 2001-06-12 | Matsushita Electric Ind Co Ltd | セキュリティ・ゲートウェイ装置におけるvpn通信方法 |
WO2001040903A2 (en) * | 1999-12-06 | 2001-06-07 | Warp Solutions, Inc. | System and method for enhancing operation of a web server cluster |
US7318107B1 (en) * | 2000-06-30 | 2008-01-08 | Intel Corporation | System and method for automatic stream fail-over |
US7272653B2 (en) * | 2000-09-28 | 2007-09-18 | International Business Machines Corporation | System and method for implementing a clustered load balancer |
US7039916B2 (en) * | 2001-09-24 | 2006-05-02 | Intel Corporation | Data delivery system for adjusting assignment of connection requests to nodes based upon the tracked duration |
US7986625B2 (en) * | 2002-12-10 | 2011-07-26 | International Business Machines Corporation | Resource-aware system, method and program product for managing request traffic based on a management policy |
US7373363B2 (en) * | 2003-07-03 | 2008-05-13 | Hewlett-Packard Development Company, L.P. | Method of managing modification of configuration states of resources in a dynamic data center |
US7532642B1 (en) * | 2004-03-11 | 2009-05-12 | Sun Microsystems, Inc. | Methods and apparatus supporting adaptive bandwidth management |
US20060095398A1 (en) * | 2004-11-04 | 2006-05-04 | Vasudev Bhaskaran | Automatic defocussing of displayed multimedia information on client by monitoring static and dynamic properties of the client |
US7702947B2 (en) * | 2005-11-29 | 2010-04-20 | Bea Systems, Inc. | System and method for enabling site failover in an application server environment |
US7873074B1 (en) * | 2006-06-01 | 2011-01-18 | Avaya Inc. | Adaptive selection of bandwidth parameters to meet a service provider pricing model |
US8064391B2 (en) * | 2006-08-22 | 2011-11-22 | Embarq Holdings Company, Llc | System and method for monitoring and optimizing network performance to a wireless device |
US8223655B2 (en) * | 2006-08-22 | 2012-07-17 | Embarq Holdings Company, Llc | System and method for provisioning resources of a packet network based on collected network performance information |
GB2443229B (en) * | 2006-08-23 | 2009-10-14 | Cramer Systems Ltd | Capacity management for data networks |
US10845399B2 (en) * | 2007-04-03 | 2020-11-24 | Electro Industries/Gaugetech | System and method for performing data transfers in an intelligent electronic device |
US7886021B2 (en) * | 2008-04-28 | 2011-02-08 | Oracle America, Inc. | System and method for programmatic management of distributed computing resources |
US8250215B2 (en) | 2008-08-12 | 2012-08-21 | Sap Ag | Method and system for intelligently leveraging cloud computing resources |
US20100064033A1 (en) | 2008-09-08 | 2010-03-11 | Franco Travostino | Integration of an internal cloud infrastructure with existing enterprise services and systems |
US8271536B2 (en) | 2008-11-14 | 2012-09-18 | Microsoft Corporation | Multi-tenancy using suite of authorization manager components |
US8060616B1 (en) | 2008-11-17 | 2011-11-15 | Amazon Technologies, Inc. | Managing CDN registration by a storage provider |
US8234377B2 (en) * | 2009-07-22 | 2012-07-31 | Amazon Technologies, Inc. | Dynamically migrating computer networks |
US8306862B2 (en) * | 2009-07-31 | 2012-11-06 | Sap Ag | Creating purchase orders with mobile devices |
US8886788B2 (en) | 2009-08-31 | 2014-11-11 | Accenture Global Services Limited | Enterprise-level management, control and information aspects of cloud console |
US8271653B2 (en) | 2009-08-31 | 2012-09-18 | Red Hat, Inc. | Methods and systems for cloud management using multiple cloud management schemes to allow communication between independently controlled clouds |
JP5530759B2 (ja) * | 2010-03-05 | 2014-06-25 | 株式会社エヌ・ティ・ティ・データ | リソース連携システム及びリソース連携方法 |
US8122282B2 (en) | 2010-03-12 | 2012-02-21 | International Business Machines Corporation | Starting virtual instances within a cloud computing environment |
US8341269B2 (en) | 2010-03-19 | 2012-12-25 | International Business Machines Corporation | Configuring cloud resources |
US8584187B2 (en) * | 2010-03-26 | 2013-11-12 | Verizon Patent And Licensing Inc. | Bandwidth management |
US8972551B1 (en) * | 2010-04-27 | 2015-03-03 | Amazon Technologies, Inc. | Prioritizing service requests |
US8260840B1 (en) * | 2010-06-28 | 2012-09-04 | Amazon Technologies, Inc. | Dynamic scaling of a cluster of computing nodes used for distributed execution of a program |
WO2012011070A1 (en) * | 2010-07-21 | 2012-01-26 | Seculert Ltd. | Network protection system and method |
US8775626B2 (en) | 2010-09-17 | 2014-07-08 | Microsoft Corporation | Using templates to configure cloud resources |
US9235442B2 (en) | 2010-10-05 | 2016-01-12 | Accenture Global Services Limited | System and method for cloud enterprise services |
US8516284B2 (en) * | 2010-11-04 | 2013-08-20 | International Business Machines Corporation | Saving power by placing inactive computing devices in optimized configuration corresponding to a specific constraint |
US10678602B2 (en) | 2011-02-09 | 2020-06-09 | Cisco Technology, Inc. | Apparatus, systems and methods for dynamic adaptive metrics based application deployment on distributed infrastructures |
US20120226789A1 (en) | 2011-03-03 | 2012-09-06 | Cisco Technology, Inc. | Hiearchical Advertisement of Data Center Capabilities and Resources |
US8261295B1 (en) | 2011-03-16 | 2012-09-04 | Google Inc. | High-level language for specifying configurations of cloud-based deployments |
US8843633B2 (en) * | 2011-03-23 | 2014-09-23 | Bmc Software, Inc. | Cloud-based resource identification and allocation |
US8583799B2 (en) * | 2011-05-09 | 2013-11-12 | Oracle International Corporation | Dynamic cost model based resource scheduling in distributed compute farms |
US20140006482A1 (en) * | 2012-07-02 | 2014-01-02 | Vmware, Inc. | Method and system for providing inter-cloud services |
US20130074091A1 (en) * | 2011-09-20 | 2013-03-21 | Cloudbyte, Inc. | Techniques for ensuring resources achieve performance metrics in a multi-tenant storage controller |
US8918793B2 (en) * | 2011-12-07 | 2014-12-23 | Sap Se | Resolving resource contentions |
US20130159497A1 (en) * | 2011-12-16 | 2013-06-20 | Microsoft Corporation | Heuristic-Based Rejection of Computing Resource Requests |
US9154589B1 (en) * | 2012-06-28 | 2015-10-06 | Amazon Technologies, Inc. | Bandwidth-optimized cloud resource placement service |
US9032077B1 (en) * | 2012-06-28 | 2015-05-12 | Amazon Technologies, Inc. | Client-allocatable bandwidth pools |
US10057377B2 (en) * | 2012-06-29 | 2018-08-21 | Vmware, Inc. | Dynamic resolution of servers in a distributed environment |
US10025638B2 (en) * | 2012-07-02 | 2018-07-17 | Vmware, Inc. | Multiple-cloud-computing-facility aggregation |
US9397884B2 (en) * | 2012-09-07 | 2016-07-19 | Oracle International Corporation | Workflows for processing cloud services |
US10250655B2 (en) * | 2012-12-31 | 2019-04-02 | DISH Technologies L.L.C. | Scheduling segment data delivery in an adaptive media stream to avoid stalling |
US10104141B2 (en) * | 2012-12-31 | 2018-10-16 | DISH Technologies L.L.C. | Methods and apparatus for proactive multi-path routing |
US9794107B2 (en) * | 2013-02-06 | 2017-10-17 | Alcatel Lucent | Method and apparatus for providing migration of cloud components across address domains |
US9215226B2 (en) * | 2013-07-24 | 2015-12-15 | Adobe Systems Incorporated | Dynamically mapping users to groups |
US9537787B2 (en) * | 2013-08-05 | 2017-01-03 | International Business Machines Corporation | Dynamically balancing resource requirements for clients with unpredictable loads |
US9444714B2 (en) * | 2014-08-07 | 2016-09-13 | Microsoft Technology Licensing, Llc | Estimating bandwidth in a network |
-
2013
- 2013-09-23 US US14/034,325 patent/US9686121B2/en active Active
-
2014
- 2014-09-23 WO PCT/US2014/056915 patent/WO2015042559A1/en active Application Filing
- 2014-09-23 JP JP2016544056A patent/JP6224846B2/ja active Active
- 2014-09-23 CA CA2924655A patent/CA2924655C/en active Active
- 2014-09-23 CN CN201480052197.1A patent/CN105579965B/zh active Active
- 2014-09-23 EP EP14845852.4A patent/EP3049927B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1713595A (zh) * | 2004-06-15 | 2005-12-28 | 国际商业机器公司 | 协调独立外部资源在请求网格环境中的使用的方法和系统 |
CN101099132A (zh) * | 2005-01-06 | 2008-01-02 | 国际商业机器公司 | 提交给网格环境的网格作业使用前的资源功能性验证 |
Also Published As
Publication number | Publication date |
---|---|
US9686121B2 (en) | 2017-06-20 |
CA2924655C (en) | 2019-03-12 |
JP6224846B2 (ja) | 2017-11-01 |
EP3049927A4 (en) | 2017-03-22 |
CA2924655A1 (en) | 2015-03-26 |
US20150089034A1 (en) | 2015-03-26 |
EP3049927B1 (en) | 2019-02-27 |
CN105579965A (zh) | 2016-05-11 |
EP3049927A1 (en) | 2016-08-03 |
WO2015042559A1 (en) | 2015-03-26 |
JP2016536721A (ja) | 2016-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105579965B (zh) | 经由提供商定义接口的客户端驻地资源控制 | |
US11409556B2 (en) | Custom placement policies for virtual machines | |
US11500670B2 (en) | Computing service with configurable virtualization control levels and accelerated launches | |
US11855904B2 (en) | Automated migration of compute instances to isolated virtual networks | |
US11218364B2 (en) | Network-accessible computing service for micro virtual machines | |
JP6411698B2 (ja) | アプリケーションの展開のためのカスタム通信チャネル | |
CA2978183C (en) | Executing commands within virtual machine instances | |
US9485323B1 (en) | Managing pooled client-premise resources via provider-defined interfaces | |
CN110063051A (zh) | 可重新配置的服务器 | |
JP6518346B2 (ja) | 分散型コンピューティング環境における仮想マシンインスタンス上のコマンドの実行 | |
EP3618352B1 (en) | Virtual machine management | |
TW201232416A (en) | Unified resource manager providing a single point of control | |
TW201232410A (en) | Managing a workload of a plurality of virtual servers of a computing environment | |
US8588225B1 (en) | Physical resource to virtual service network mapping in a template based end-to-end service provisioning | |
US11605033B2 (en) | Quantum computing task translation supporting multiple quantum computing technologies | |
US9825824B2 (en) | Physical resource life-cycle in a template based orchestration of end-to-end service provisioning | |
EP3970008A1 (en) | Managed computing resource placement as a service for dedicated hosts | |
US20230138867A1 (en) | Methods for application deployment across multiple computing domains and devices thereof | |
US20200403912A1 (en) | Serverless packet processing service with configurable exception paths | |
Maenhaut et al. | Efficient resource management in the cloud: From simulation to experimental validation using a low‐cost Raspberry Pi testbed | |
US9690614B1 (en) | Methods, systems, and computer readable mediums for orchestrating the automated installation of an application in a virtual environment | |
JP7212158B2 (ja) | プロバイダネットワークサービス拡張 | |
US20230315534A1 (en) | Cloud-based orchestration of network functions | |
US20240040002A1 (en) | Managed connectivity between cloud service edge locations used for latency-sensitive distributed applications | |
Comas Gómez | Despliegue de un gestor de infraestructura virtual basado en Openstack para NFV |
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 |