用户定义的池的制作方法_2

文档序号:9438895阅读:来源:国知局
r>[0043]应理解,在图2中所述的数据中心210仅是说明性的,并且也可使用其他实现方式。另外,应理解,本文所公开的功能可以软件、硬件或软件与硬件的组合来实现。其他实现方式对本领域技术人员来说应是明显的。应理解,服务器、网关或其他计算装置可包括可交互并且执行所述类型的功能的硬件或软件的任何组合,其包括但不限于台式计算机或其他计算机、数据库服务器、网络存储装置和其他网络装置、PDA、平板计算机、移动电话、无线电话、寻呼机、电子管理器、互联网电器、(例如,使用机顶盒和/或个人/数字视频记录器的)基于电视的系统和包括适当通信能力的各种其他消费品。另外,由所示出模块提供的功能可在一些实施方案中以较少的模块来组合或分布于额外的模块中。类似地,在一些实施方案中,可以不提供所示出模块中的一些的功能和/或可使用其他额外的功能。
[0044]由数据中心210提供的所购买计算资源的容量可响应于需求而进行扩展。就这一点而言,扩展是指响应于需求而使计算资源的实例例示(其在本文中也可称为“启动”或“创建”)或终止(其在本文中也可称为“停止扩展”)的过程。以这种方式,数据中心210的客户所购买的资源的容量可按需进行扩展。
[0045]自动扩展是一种用于响应于对这些资源的需求的增加或减弱来对计算资源进行扩展的机制。自动扩展允许数据中心210的客户配置数据中心210来根据客户所定义的条件对客户所购买的计算资源进行扩展。例如,可定义规则以用于响应于指定的条件(如需求高峰)的发生而以特定方式放大容量。类似地,也可定义规则来响应于其他条件(如需求减弱)的发生而以特定方式缩小容量。当实例由客户手动地启动或当实例由在数据中心210中的自动扩展组件启动时,可使用本文所公开的用于启动虚拟机实例的机制。
[0046]数据中心210还可被配置有部署组件来辅助客户部署计算资源的新实例。部署组件可从客户接收配置,所述配置包括描述新实例应如何被配置的数据。例如,所述配置可以:指定应在新实例中安装的一个或多个应用或软件组件,提供将要在新实例中执行的脚本和/或其他类型的代码,提供指定应如何准备应用高速缓存的准备高速缓存的逻辑以及其他类型的信息。部署组件使用客户提供的配置和准备高速缓存的逻辑来启动、配置并预先准备计算资源的新实例。
[0047]在至少一些实施方案中,实现本文所述技术(包括用于实现池生成服务180的功能的技术)中的一种或多种的一部分或全部的服务器可包括通用计算机系统,所述通用计算机系统包括一个或多个计算机可访问介质或被配置来访问一个或多个计算机可访问介质。图3示出了这种通用计算装置300 ο在示出的实施方案中,计算装置300包括经由输入/输出(I/O)接口 330耦接至系统存储器320的一个或多个处理器310a、310b和/或310η (其在本文中以单数形式可被称为“处理器310”或以复数形式可被称为“处理器310”)。计算装置300还包括耦接至I/O接口 330的网络接口 340。
[0048]在各种实施方案中,计算装置300可为包括一个处理器310的单一处理器系统,或包括若干处理器310 (例如两个、四个、八个或另一合适数量)的多处理器系统。处理器310可为能够执行指令的任何合适处理器。例如,在各种实施方案中,处理器310可为实现各种指令集架构(ISA)中任何一种架构的通用或嵌入式处理器,所述架构如x86、PowerPC、SPARC、或MIPS ISA或任何其他合适的ISA。在多处理器系统中,处理器310中的每个可通常但不一定实现相同的ISA。
[0049]系统存储器320可以被配置来存储可由处理器310访问的指令和数据。在各种实施方案中,系统存储器320可使用任何合适存储器技术来实现,所述存储器技术如静态随机存取存储器(SRAM)、同步动态RAM(SDRAM)、非易失性/Flash?型存储器或任何其它类型的存储器。在示出的实施方案中,实现一个或多个所需功能的程序指令和数据(如上述那些方法、技术以及数据)被示出作为代码325和数据326存储在系统存储器320内。
[0050]在一个实施方案中,I/O接口 330可被配置来协调处理器310、系统储存器320和装置中的任何外围装置之间的I/o流量,所述外围装置包括网络接口 340或其它外围接口。在一些实施方案中,I/O接口 330可执行任何必需协议、时序或其他数据转换以将来自一个组件(例如,系统存储器320)的数据信号转换成适合于由另一组件(例如,处理器310)使用的格式。在一些实施方案中,I/O接口 330可包括对于通过各种类型的外围总线附接的装置的支持,所述外围总线例如像外围组件互连(PCI)总线标准或通用串行总线(USB)标准的变体。在一些实施方案中,I/O接口 330的功能可分成两个或更多个单独的组件,例如像北桥和南桥。另外,在一些实施方案中,I/O接口 330 (例如至系统储存器320的接口 )的功能中的一些或所有,可直接并入处理器310中。
[0051]网络接口 340可被配置来允许数据在计算装置300与附接至一个或多个网络350的其他一个或多个装置360 (例如像图1至图3中示出的其他计算机系统或装置)之间进行交换。在各种实施方案中,网络接口 340可以支持经由任何合适的有线或无线通用数据网络(例如像以太网网络类型)进行通信。另外,网络接口 340可以支持经由电信/电话网络(如模拟语音网络或数字光纤通信网络)、经由存储区域网络(如光纤信道SAN)或经由任何其他合适类型的网络和/或协议进行通信。
[0052]在一些实施方案中,系统存储器320可以是计算机可访问介质的一个实施方案,所述计算机可访问介质被配置来存储如上文针对图1和图2所述的用于实现对应方法和设备的实施方案的程序指令和数据。然而,在其它实施方案中,可以在不同类型的计算机可访问介质上接收、发送或存储程序指令和/或数据。一般来说,计算机可访问介质可包括非暂时性存储介质或存储器介质,如磁性介质或光学介质,例如经由I/o接口 330親接至计算装置300的磁盘或DVD/CD。非暂时性计算机可访问存储介质还可以包括可作为系统存储器320或另一类型的存储器被包括在计算装置300的一些实施方案中的任何易失性或非易失性介质,如RAM (例如,SDRAM、DDR SDRAM、RDRAM、SRAM等)、ROM等。此外,计算机可访问介质可以包括传输介质或信号,如经由通信介质(如网络和/或无线链路)传送的电信号、电磁信号或数字信号,如可以经由网络接口 340来实现。多个计算装置(如图3中示出的那些装置)中的部分或全部可用来实现各种实施方案中的所描述功能;例如在各种不同的装置和服务器上运行的软件组件可协作来提供所述功能。在一些实施方案中,除了或代替使用通用计算机系统来实现,所描述功能的部分可使用存储装置、网络装置或专用计算机系统来实现。如本文所使用,术语“计算装置”至少是指所有这些类型的装置并且不限于这些类型的装置。
[0053]由如公司或公共部门组织机构的实体建立用于将可经由互联网和/或其他网络访问的一种或多种服务(如各种类型的基于云的计算或存储)提供至一组分布式客户端的网络可称为提供者网络。这种提供者网络可包括托管实现和分布由提供者网络提供的基础设施和服务所需的各种资源池的许多数据中心,如物理和/或虚拟化计算机服务器、存储装置、联网设备等的集合。在一些实施方案中,可将资源以所谓“实例”(如虚拟的或物理的计算实例或存储实例)为单元提供给客户端。虚拟计算实例例如可包括具有指定的计算容量(所述计算容量可通过指示CPU的类型和数量、主存储器大小等进行指定)和指定的软件栈(例如,特定版本的操作系统,其进而可在管理程序顶上运行)的一个或多个服务器。
[0054]在不同的实施方案中,许多不同类型的计算装置可单独或组合使用以实现提供者网络的资源,所述不同类型的计算装置包括通用的或专用的计算机服务器、存储装置、网络装置等。在一些实施方案中,例如可通过给予用户管理员登录名和密码来为客户端或用户提供对资源实例的直接访问。在其他实施方案中,提供者网络操作员可允许客户端指定针对指定的客户端应用的执行要求并且代表客户端安排在适合于应用的执行平台(如应用服务器实例、Java?虚拟机(JVM)、通用或专用操作系统、支持各种解释的或编译的编程语言(如Ruby、Perl、Python、C、C++等)的平台或高性能计算平台)上执行应用,而例如不需要客户端直接访问实例或执行平台。给定的执行平台在一些实现方式中可利用一个或多个资源实例;在其他实现方式中,多个执行平台可被映射到单个资源实例。
[0055]在许多环境中,实现不同类型的虚拟化计算、存储和/或其他网络可访问功能的提供者网络的操作员可允许客户在各种资源获取模式下预留或购买对资源的访问。计算资源提供者可为客户提供设施来选择和启动所需的计算资源,将应用组件部署到计算资源并且维持在环境中执行应用。另外,由于对应用的需求或应用的容量要求改变,计算资源提供者还可为客户提供设施来手动地或通过自动扩展快速且容易地放大或缩小分配到应用的资源的数量和类型。可以离散的单元形式来利用由计算资源提供者提供的计算资源,所述单元可称为实例。实例可表示物理服务器硬件平台、在服务器上执行的虚拟机实例或这两者的某种组合。可以利用各种类型和配置的实例,包括执行不同操作系统(OS)和/或管理程序且具有各种安装的软件应用、运行时间等的不同大小的资源。例如,实例还可用于特定的可用性区中,所述可用性区表示例如数据中心或基础计算硬件的其他地理位置。
[0056]在一些实施方案中,提供者网络可被组织成多个地理区域,并且每个区域可包括一个或多个可用性区。可用性区(其也可称为可用性容器)进而可包括一个或多个不同的位置或数据中心,以这样的方式进行配置使得:给定的可用性区中的资源可与其他可用性区中的故障隔离或绝缘。也就是说,预期一个可用性区中的故障可能不会引起其他可用性区中的故障。因此,所意图的是,一个资源实例的可用性配置文件独立于不同可用性区中的资源实例的可用性配置文件。客户端可能够通过在相应的可用性区中启动多个应用实例来保护其应用以免在单个位置处出现故障。同时,在一些实现方式中,可以提供驻留在同一地理区域内的资源实例之间的廉价且低延时的网络连通性(并且同一可用性区的资源之间的网络传输可以更快)。
[0057]提供者网络可使实例“按需”可用,从而允许客户选择特定类型和配置(例如,大小、平台、租期、可用性区等)的许多实例,并且快速启动所述实例以用于部署。由于需求或容量要求随时间推移而改变,还可根据需要手动地或通过自动扩展自动地添加或移除按需实例。例如,基于操作的小时数和/或所使用的实际资源,客户可承担与其按需实例相关的不断增加的使用成本。
[0058]计算资源提供者还可使预留实例对客户可用。预留实例可为客户提供将许多特定类型和配置的实例预留达固定期限(如一年或三年)的能力,以用于以低的提前支付成本来交换减少的每小时成本或其他使用成本(例如,如果启动实例并且当启动实例时)。这可允许客户在确保当需要时正确的资源将是可用的同时,延迟与响应于需求增加而放大所部署的应用相关的成本。虽然预留实例为客户提供了用于扩展其应用的可靠的备用容量,但购买预留的实例也可在特定的可用性区中将客户锁定在特定的数目、类型和/或配置的计算资源中比所需时期更长的时期。如果技术体系结构或应用的需要发生变化,那么客户可能在预留实例中不能实现其投资的回报。
[0059]在一些实情况下,这类提供者网络的操作员可实现用于其客户端的一组灵活的资源预留、控制和访问接口。例如,提供者网络的资源管理器可实现允许客户端学习资源实例、选择资源实例、购买对资源实例的访问和/或预留资源实例的编程资源预留接口(例如,经由网站或一组网页)。在下文讨论的将实体(如资源管理器或定价优化器)描述为实现一个或多个程序接口(如网页或API)的一些实施方案中,那个实体的接口管理器子组件可负责接口相关的功能。在许多实施方案中,等效的接口相关的功能可由在资源管理器和定价优化器外部的单独的或独立的接口管理器实现。这种接口可包括允许浏览资源目录的能力,提供所支持的不同类型或大小的资源的细节和规格、所支持的不同的预留类型或模式、定价模型等的能力。
[0060]提供者网络可支持对应于上文所述实例类型中的一些的若干不同的购买模式(其在本文中也可被称为预留模式)。例如,提供者网络可支持长期预留、按需资源分配或基于现货价格的资源分配。使用长期预留模式,客户端可对资源实例进行低的一次性提前支付,将资源实例预留达指定的持续时间(如一年或三年期限),并且对所述实例支付较低的每小时费率;客户端将确信具有对所述预留的期限可用的预留实例。使用按需模式,在没有任何长期约定或提前支付的情况下,客户端可按小时(或某个适当的时间单位)来支付容量。在现货价格模式中,客户端可指定愿意为特定类型的资源支付的最高价格/单位时间,并且如果客户端的最高价格超过至少部分由供给和需求确定的动态现货价格,那么那种类型的资源将被提供给客户端。在一些实施方案中,可动态地调整大小的资源实例池可放置用于不同的预留类型或模式,例如,可从一个池、来自另一池的按需实例等来分配长期预留实例。在所请求的资源类型的供给超过需求的时间期间,现货价格可变得显著低于按需模式的价格。在一些实现方式中,如果现货价格增加超过由客户端指定的最高竞价,那么可中断资源分配,即,先前分配给客户端的资源实例可被资源管理器回收,并且可分配给愿意支付更高价格的某个其他客户端。在一些实施方案中,其他购买模式或模式的组合可由资源管理器实现。
[0061]使用本文所述的技术,提供者网络还可实现允许创建私有交易市场的服务。所述服务可为想要将其预留实例和其他类型的实例提供给与客户相关联或由客户以其他方式指定的用户的客户提供机制。例如,客户的在其组织机构内的内部用户可能想要获得比通常由计算资源提供者提供的那些预留实例更短期限的预留实例,或仅需要访问实例达有限的持续时间。客户可选择其预留实例的期限的剩余部分、许多未使用的预留实例和分配的现货实例或其一部分,并且在私有交易市场中将所选择的实例提供给客户的内部用户,从而允许内部用户经由私有交易市场“购买”实例、对实例进行“竞价”或以其他方式请求对实例的访问。因此,可向客户提供一种通过实现这种有限的私有交易市场而更加有效地使用其获取实例的方法,用于向最需要实例或愿意为所述实例支付最多的“货币”的那些内部用户提供所述实例,从而更加有效地分布客户的分配容量。
[0062]图4示出了根据至少一些实施方案的用于提供实例的示例系统环境。系统400可包括提供者网络410,所述提供者网络410包括多个资源实例430 (其在本文中以单数形式可被称为“资源实例430”或以复数形式可被称为“资源实例430”),如在一个可用性区420A中的实例430A、430B、430D、430E、430G和430H以及在不同的可用性区420B中的实例430J、430K、430M、430N、430P、430Q。在可用性区420A和420B (其在本文中以单数形式可被称为“可用性区420”或以复数形式可被称为“可用性区420”)中的各种资源实例430可被预留和/或分配以供客户端(或潜在的客户端)如客户端448A和448B(其在本文中以单数形式可被称为“客户端448”或以复数形式可被称为“客户端448”)使用。在示出的实施方案中,系统400包括资源管理器480和接口管理器482。如先前所述,在一些实施方案中,接口管理器482的功能可由资源管理器480的子组件实现。
[0063]在一些实施方案中,接口管理器482可实现一个或多个程序接口,从而允许客户端448搜索、浏览、预留和获取实例430以获得各种类型的服务,例如运行和/或访问各种应用。在示出的实施方案中,在给定的时间点处,实例430中的一些或全部可被指派给实例池,如预留实例池42IA或42IB、按需实例池423A或423B、可用实例池425或其他池如其他池 427。
[0064]在一些实施方案中,例如基于所支持的实例预留和分配的模式,给定的池(如可用实例池425)自身可包含其自己的子池。每个池(或子池)可具有针对其
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1