用于动态管理计算容量请求的方法和系统技术方案

技术编号:13911085 阅读:97 留言:0更新日期:2016-10-27 03:10
描述了用于动态管理对来自计算资源提供者的计算容量的请求的系统和方法的实施方案。举例来说,所述计算资源可以包括程序执行能力、数据存储或管理能力、网络带宽等。所述系统或方法自动分配用于执行与用户相关的一个或多个程序的计算资源。所述系统和方法可以使所述用户能够在所述一个或多个程序的执行已开始之后改变所分配的资源。

【技术实现步骤摘要】
分案说明本申请是申请日为2011年7月25日,申请号为201180043637.3,题为“用于动态管理计算容量请求的方法和系统”的中国专利申请的分案申请。相关申请案本申请要求2010年9月21日提交的美国非临时申请第12/887,241号的权益,该申请的公开内容的全文据此以引用的方式并入本文。
技术介绍
公司和机构运行使众多计算系统互连以支持其运营的计算机网络。计算系统可位于单个地理位置中(例如,作为局域网的一部分)或位于多个不同地理位置中(例如,经由一个或多个专用或公用的中间网络)。数据中心可以置放大量互连的计算系统,例如专用数据中心是由单个机构进行操作并且公用数据中心是由第三方进行操作以把计算资源提供给客户。专用和公用数据中心可以对数据中心、机构或其它客户拥有的硬件提供网络访问、电力、硬件资源(例如,计算和存储)和安全安装设施。为了帮助提高数据中心资源的利用率,虚拟化技术可以允许单个物理计算机主控作为到连接的计算机用户的独立计算机出现而操作作的虚拟机的一个或多个实例。运用虚拟化,单个物理计算装置可以动态方式创建、维持或删除虚拟机。用户又可基于“按照需要”或至少基于“按照请求”请求来自数据中心的计算机资源并且具备不同量的虚拟机资源。随着数据中心的规模和范围增大,提供、支配和管理数据中心的物理和虚拟计算资源已变得越来越复杂。附图说明在附图各处,参考数字可以重用于指示参考元件之间的对应性。提供附图以示出本文描述的示例性实施方案且并非旨在限制本公开内容的范畴。图1是示意地示出了可经由通信网络把计算资源提供给多个用户计算系统的程序执行服务的示例的网络图;图2A是被配置来管理程序执行服务的用户要用的计算资源的请求的交互请求管理器的阐释性组件的方框图;图2B示意地示出了程序执行服务的用户计算系统与交互请求管理器之间的示例性交互的网络图;和图3A和图3B是示出了由交互请求管理器组件实施的交互请求管理器例程的流程图。图3C是示意地示出了交互请求管理器的实施方案可通过其与用户计算系统进行通信以用于修改分配的计算资源的设置的例程的示例的流程图。图4是示意地示出了交互请求管理器的实施方案可通过其与用户计算系统进行通信以提供供用户选择的多个虚拟化环境的例程的示例的流程图。具体实施方式描述用于动态管理对来自计算资源提供者(程序执行服务)的计算容量的请求的系统和方法的实施方案。举例来说,计算资源可以包括程序执行能力、数据存储或管理能力、数据库管理能力、网络带宽、应用监控或日志记录、用于采取纠正措施以解决问题的能力等。在某些实施方式中,用户可请求生成可在当前或未来使用时段期间管理用户的计算机资源的虚拟化环境。例如,用户可请求生成可在使用时段期间运行用户的自定义软件应用和为用户管理或预约合适的程序执行容量、数据存储容量、数据库管理选项和/或网络带宽的虚拟化环境。计算资源提供者可确定提供者的计算机资源中的哪些可用于满足用户的请求并且可在请求的使用时段期间把这些计算机资源分配给同户。可以高度灵活地选择用户请求的使用时段和/或其它参数以满足用户的计算机资源需要。用户请求可以包括用于指定用户的偏好、限制和/或需求的一个或多个用户可选择参数。例如,用户请求可指定在使用时段期间执行某个特定程序(或多个特定程序)、在使用时段期间使用特定类型或地理分布的计算机资源、使用时段具有希望的开始日期、结束日期和/或持续时间等等。在某些实施方式中,计算资源提供者对可由用户提交的请求参数的范围施加很少的限制或没有限制。作为一个可能的示例,用户可能够请求在可以包括在一个或多个地理位置的计算机资源的一组计算机资源上执行特定程序。用户可能够使用应用编程接口(API)或其它类型的计算接口把程序和程序执行参数传达到程序执行服务,用于生成虚拟化环境。例如,用户可以使用Web应用档案文件(如Java WAR文件)上传软件应用。接着,程序执行服务可以自动配置虚拟化环境(例如,“应用容器”),其可是包括用于用户程序的应用软件堆栈以及用于在程序执行服务上执行用户程序的一个或多个基础结构服务的运行时环境。应用容器可包括用户可选择的操作系统(例如,Linux、WindOWS等)、应用服务器(例如,Apache Tomcat)、系统或应用配置等。虚拟化环境可被配置来寄宿在特定URL处。基础结构服务可包括但不限于:负载平衡器,其用于跨请求的计算资源分布工作量;负载调节器,其响应于负载或需求变化而调节计算资源;监控接口,其允许用户监控程序、数据存储资源(例如,可伸缩容量块存储装置)等的执行。在某些实施方案中,用户可能够选择可包括在容器中的一个或多个程序或服务。例如,用户可能够从多个数据库模型(例如,关系数据库、SQL数据库、Oracle数据库等)中进行选择。在某些实施方案中,基础结构服务可被自定义用于用户而非作为多个用户之间共享的资源。例如,在某些这类实施方案中,负载平衡器可被单独自定义用于用户应用而非在程序执行服务的多个用户之间进行共享或分布。虚拟化环境的特定实施方案的可能优点是计算系统允许用户在希望的情况下具有灵活度和对应用容器的内容的控制。例如,在某些情况下,用户可以仅提供用户程序,并且计算系统可以自动管理由虚拟化环境使用的所有剩余基础结构的部署。在其它情况下,用户可以选择和/或配置包括在虚拟化环境中的一个或多个基础结构服务。在某些情况下,用户可以选择在不同地理区域中的计算资源,以便实现用于用户应用的希望的部署拓扑。可以以任何希望的方式配置或选择部署拓扑。例如,部署拓扑可以基于用户的客户的位置或区域,以便改善应用的性能(例如,减小网络延时)。作为另一示例,部署拓扑可以被配置来使用一个或多个区域或地带中的计算资源以例如通过改善应用对特定区域或地带中的计算资源的故障(例如,由于一个区域或地带中的不利天气状况)的复原能力来改善用户应用的稳健性。此外,在特定实施方案中,用户在执行程序期间保持对计算资源的访问,并且用户可以在执行期间控制某些或所有计算资源。例如,在某些这类实施方案中,用户在希望的情况下可以选择使用户应用脱离虚拟化环境。在特定收费实施方式中,计算机资源提供者可以向用户收取针对请求的预约费(例如,当准许该请求时)和/或对于在使用时段期间提供可用计算机资源的使用的使用费。各种类型或级别的费用安排是有可能的。例如,可以由用户请求用于直接用户的计算机资源(“按需资源”)。在某些此类情况下,用户可能不会支付预约费但可能支付更高使用费。作为另一示例,用户可能会预约计算机资源以便在未来使用时段期间获得保证的可用性(“预约的资源”)。可以向用户收取进行预约的预约费并且还可基于在使用时段期间实际使用的计算机资源量向用户收取使用费。在某些这类情况下,预约资源的使用费可以从按需资源的使用费打折扣并且/或者可以在更接近使用时段之时而非更接近进行请求之时收取预约费。在另一示例中,计算机资源提供者可以允许用户对未使用的计算机资源(“现货资源”)进行竞价。在某些这类情况下,计算机资源提供者可以设置基于资源供应和需求而变化的现货价格,并且可使资源可用于其竞价达到或超过现货价格的那些用户。现将参考旨在阐释而非限制本公开内容的特定实施例和实施方案描述本公开内容的各个方面。图1是示意地示本文档来自技高网...

【技术保护点】
一种用于动态管理对由程序执行服务PES提供的计算容量的请求的计算机实施方法,所述方法包括:在提供多个计算节点的PES的控制下,其中每个所述计算节点可被配置来执行所述PES的多个用户的一个或多个程序,所述PES还提供多个可用户自定义的程序服务,所述程序服务包括:(1)负载平衡器,其被配置来允许用户自定义跨所述多个计算节点中的多个计算节点的工作量分布,以及(2)负载调节器,其被配置来响应于工作量的变化而调节计算资源:从第一用户接收与PES的用户共享针对第一用户生成的第一虚拟化环境的请求,所述第一虚拟化环境包括操作系统、用于在所述多个计算节点的子集上执行的至少一个用户程序、负载平衡器和负载调节器;更新可用于由PES的用户选择的虚拟环境的列表,以提供包括与第一虚拟化环境相关的信息在内的虚拟化环境的更新列表;向PES的用户提供虚拟化环境的更新列表;从PES的第二用户接收对包括在更新列表中的第一虚拟化环境的选择;以及针对第二用户生成第二虚拟化环境,所述第二虚拟化环境至少部分基于第一虚拟化环境。

【技术特征摘要】
2010.09.21 US 12/887,2411.一种用于动态管理对由程序执行服务PES提供的计算容量的请求的计算机实施方法,所述方法包括:在提供多个计算节点的PES的控制下,其中每个所述计算节点可被配置来执行所述PES的多个用户的一个或多个程序,所述PES还提供多个可用户自定义的程序服务,所述程序服务包括:(1)负载平衡器,其被配置来允许用户自定义跨所述多个计算节点中的多个计算节点的工作量分布,以及(2)负载调节器,其被配置来响应于工作量的变化而调节计算资源:从第一用户接收与PES的用户共享针对第一用户生成的第一虚拟化环境的请求,所述第一虚拟化环境包括操作系统、用于在所述多个计算节点的子集上执行的至少一个用户程序、负载平衡器和负载调节器;更新可用于由PES的用户选择的虚拟环境的列表,以提供包括与第一虚拟化环境相关的信息在内的虚拟化环境的更新列表;向PES的用户提供虚拟化环境的更新列表;从PES的第二用户接收对包括在更新列表中的第一虚拟化环境的选择;以及针对第二用户生成第二虚拟化环境,所述第二虚拟化环境至少部分基于第一虚拟化环境。2.根据权利要求1所述的方法,还包括:从第二用户接收要对第一虚拟化环境所做的至少一个更改,并至少部分基于所述至少一个更改来生成第二虚拟化环境。3.根据权利要求2所述的方法,还包括:从第二用户接收与PES的用户共享针对第二用户生成的第二虚拟化环境的请求,并且进一步更新所述更新列表以包括与第二虚拟化环境相关的信息。4.根据权利要求3所述的方法,还包括:从第三用户接收对第一虚拟化环境或第二虚拟化环境的选择。5.根据权利要求1所述的方法,还包括:使用第二虚拟化环境来执行由第二用户提供的应用。6.根据权利要求1所述的方法,还包括:向第二用户推荐包括在虚拟化环境的更新列表中的至少一个虚拟化环境。7.根据权利要求6所述的方法,其中,所推荐的至少一个虚拟化环境至少部分基于第二用户提供的偏好。8.根据权利要求1所述的方法,还包括:向第一用户提供费用,所述费用至少部分基于第二用户对第一虚拟化环境的选择。9.根据权利要求1所述的方法,其中,所述PES还包括以下一个或多个:(1)监控接口,其被配置来允许用户监控所述至少一个用户程序的执行,或(2)多个数据库管理服务。10.一种用于动态管理对由程序...

【专利技术属性】
技术研发人员:李·A·阿奇森布莱恩·A·怀特皮特·D·科恩皮特·N·德桑蒂斯麦克海尔·盖博
申请(专利权)人:亚马逊技术有限公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1