计算集群内的资源实例群组的自动扩展制造技术

技术编号:17012953 阅读:32 留言:0更新日期:2018-01-11 10:07
服务提供商可以将客户选择或客户定义的自动扩展策略应用于资源集群(例如,MapReduce集群中的虚拟计算资源实例或存储资源实例)。可以将不同策略应用于不同集群资源子集(例如,含有具有不同类型或具有不同作用的节点的不同实例群组)。每个策略可以定义在分布式应用的执行期间要估计的表达式、在所述表达式估计为真的情况下要采取的扩展动作、以及容量应当被增加或减少的量。所述表达式可取决于由所述应用、集群或资源实例默认发出的度量、由客户端定义并且由所述应用发出的度量、或者通过聚合而形成的度量。度量集合、聚合和规则估计可由单独服务或由集群部件执行。API可以支持自动扩展策略定义。

【技术实现步骤摘要】
【国外来华专利技术】计算集群内的资源实例群组的自动扩展
技术介绍
许多公司和其它组织运营将许多计算系统互连以支持计算机网络的操作的计算机网络,诸如在计算系统共同定位(例如,作为本地网络的一部分)或替代地位于多个不同地理位置(例如,经由一个或多个专用或公共中间网络而连接的)的情况下。例如,安置有大量互连计算系统的数据中心已经是常见的,所述数据中心诸如由单个组织且代表单个组织来运营的专用数据中心、以及由实体作为业务运营以向客户或客户端提供计算资源的公共数据中心。一些公共数据中心运营商为各种客户端所拥有的硬件提供网络访问、电源和安全安装设施,而其它公共数据中心运营商则提供“全面服务”设施,所述“全面服务”设施还包括可供它们的客户端使用的硬件资源。这种大规模系统的示例包括在线商家、互联网服务提供商、在线业务(诸如照片处理服务)、公司网络、云计算服务(包括用于执行大型和/或复杂计算的高性能计算服务)、基于网络的托管服务等等。这些实体可以大量计算装置(例如,数千台主机)形式维持计算资源,这些计算装置安置在地理上分开的位置上,并且被配置为每天甚至每小时处理大量(例如,数百万个)事务。用于商用硬件的虚拟化技术的出现为管理具有各种服务需求的许多客户的大规模计算资源提供了益处,从而允许各种计算资源和服务被多个客户有效且安全地共享。例如,虚拟化技术可以允许通过为每个用户提供由单个物理计算机器托管的一个或多个虚拟机来在多个用户间共享单个物理计算机器,其中每个这种虚拟机是充当不同逻辑计算系统的软件模拟,这为用户带来了它们是给定硬件计算资源的唯一运营商和管理员、同时还在各种虚拟机间提供应用隔离和安全的错觉。此外,一些虚拟化技术能够提供跨两个或更多个物理资源的虚拟资源,诸如具有跨多个不同物理计算系统的多个虚拟处理器的单个虚拟机。作为另一示例,虚拟化技术可以允许通过向每个用户提供可分布在多个数据存储装置间的虚拟数据存储来在多个用户间共享数据存储硬件,其中每个这种虚拟数据存储充当不同逻辑数据存储,这为用户带来了他们是数据存储资源的唯一运营商和管理员的错觉。一种用于利用这些资源来处理数据的常规方法是用于分布式并行计算的MapReduce模型。在MapReduce系统中,大数据集可以被分割成更小块组,并且较小块组可以被分布到集群中的多个计算节点用于初始“映射”处理阶段。多个节点还可基于映射阶段结果执行第二“化简”处理阶段。在各种基于集群的分布式计算系统(包括实现MapReduce集群的一些基于集群的分布式计算系统)中,要由集群中的计算节点访问的数据可以存储在集群的虚拟资源实例内和/或存储在与集群的虚拟资源实例分开的数据存储系统中。在实现MapReduce集群的现有系统中,容量通常仅可通过调用系统的API(通常通过命令行接口)来手动添加或移除(例如,作为单独独立操作)。因此,MapReduce集群通常是供应不足或供应过度的,从而导致延迟(归因于供应不足)或浪费(归因于供应过度)。附图说明图1是示出实现MapReduce集群的自动扩展的服务提供商系统的一个实施方案的方框图。图2是示出用于执行节点集群的自动扩展的方法的一个实施方案的流程图。图3示出了根据一个实施方案的用于执行MapReduce作业的示例系统环境。图4示出用于在分布式计算系统中执行MapReduce类型数据处理应用的方法的一个实施方案的流程图。图5示出了根据一个实施方案的被配置为用于执行MapReduce作业的工作节点。图6是示出用于定义虚拟计算资源实例集群的自动扩展策略的方法的一个实施方案的流程图。图7是示出用于在MapReduce集群中执行自动扩展的方法的一个实施方案的流程图。图8是示出用于在MapReduce集群中执行智能缩小操作的方法的一个实施方案的流程图。图9是示出用于在实现计算资源实例集群自动扩展中采用监视服务的方法的一个实施方案的流程图。图10示出了用于向客户端提供虚拟存储资源作为服务的对象存储模型的示例实施方案。图11示出了示例服务提供商网络环境,其中可以实现用于在分布式计算系统中提供数据存储的方法和设备的实施方案。图12是根据一些实施方案的示出实现包括基于块的存储服务的多个基于网络的服务的提供商网络的方框图。图13示出了根据至少一些实施方案的示例提供商网络环境。图14示出了根据一些实施方案的使用IP隧穿技术在网络底层上实现覆盖网络的示例数据中心。图15是根据至少一个实施方案的向客户端提供存储虚拟化服务和硬件虚拟化服务的示例提供商网络的方框图。图16是根据至少一个实施方案的示出向至少一些客户端提供虚拟专用网络的示例提供商网络的方框图。图17是根据至少一些实施方案的示出被配置为实现本文所述技术的示例计算机系统的方框图。虽然在本文中以若干实施方案和说明性附图为例来描述实施方案,但是本领域的技术人员将认识到,实施方案不限制于所述的实施方案和附图。应当理解,附图和其详细描述并不意图将实施方案限制于所公开的特定形式,相反,意图是,涵盖落在如随附权利要求限定的本公开的精神和范围内的所有修改、等效内容和替代型式。本文中使用的标题仅是出于组织目的,而不意在用于限制本说明书或权利要求的范围。如本申请的全文使用的,词语“可以”用于许可意义(即,表示具有可能),而非强制意义(即,表示必须)。类似地,词语“包括”表示“包括但不限于”。具体实施方式在本文描述了用于在基于集群的分布式计算系统(例如,ApacheTM框架)中实现计算资源实例自动扩展的方法和设备的各种实施方案。在一些实施方案中,这些技术可响应于来自客户端的请求(例如,客户端应用,作为服务的客户的最终用户、服务订户或第三方服务可通过客户端应用与服务交互)而由分布式计算服务自动应用(例如,以编程的方式),以便使得集群能够自动扩展。如本文更详细地描述的,客户端可以定义在应用在集群上执行期间要监视的度量,并且可定义或选择自动扩展策略,所述自动扩展策略包括自动扩展触发条件(例如,取决于所监视的度量的条件)。在一些实施方案中,策略可以定义当条件满足时要采取的扩展动作,可以指定集群(或其子集)中的容量应当被增加或减少的量,并且可以识别策略所适用的集群的部分。Hadoop框架中的工作负载在本质上非常棘手,通常是批量定向的,并且可能在某时间段内消耗大量资源,然后缩小它们资源需要。另外,分布式计算系统(例如,基于云的系统)中的资源在某种程度上是可替的,因为进程可以在需要资源时得到资源并且然后将它们丢弃掉。本文所述的系统和方法可以用于管理采用这两个模型的系统中的计算资源实例。例如,它们可以用于基于工作负载以编程的方式来向上或向下扩展集群。在一些实施方案中,不知道他们将需要多少容量的服务提供商客户可以创建小的集群(例如,一个仅有一个节点或两个节点),并且通过实现如本文描述的自动扩展,就可允许系统确定何时以及是否基于实际需求放大(而非基于盲目估计在创建时尝试对其大小进行正确调整)。现有自动扩展解决方案通常设计用于具有均一节点(例如,节点全部运行相同软件)的系统中的无状态的工作负载。例如,它们可以用于扩展web前端,在web前端中,数据丢失不会造成问题。然而,MapReduce集群可能是部分无状态和部分有状态的,其中一些节点群组包含数据而其它节点群组不包含数据。因本文档来自技高网...
计算集群内的资源实例群组的自动扩展

【技术保护点】
一种方法,所述方法包括:通过一个或多个计算机,执行:创建计算资源实例集群,其中所述集群包括两个或更多个实例群组,每一者包括一个或多个计算资源实例;接收将自动扩展策略与所述两个或更多个实例群组中的一者相关联的输入,其中所述自动扩展策略定义某个条件,当满足时,所述条件触发自动扩展操作在所述两个或更多个实例群组中的所述一者上执行,这改变了所述两个或更多个实例群组中的所述一者中的计算资源实例数量;在所述集群上分布式应用的执行期间,检测所述触发条件已被满足;以及响应于所述检测而发起所述自动扩展操作在所述两个或更多个实例群组中的所述一者上执行。

【技术特征摘要】
【国外来华专利技术】2015.05.01 US 14/702,0801.一种方法,所述方法包括:通过一个或多个计算机,执行:创建计算资源实例集群,其中所述集群包括两个或更多个实例群组,每一者包括一个或多个计算资源实例;接收将自动扩展策略与所述两个或更多个实例群组中的一者相关联的输入,其中所述自动扩展策略定义某个条件,当满足时,所述条件触发自动扩展操作在所述两个或更多个实例群组中的所述一者上执行,这改变了所述两个或更多个实例群组中的所述一者中的计算资源实例数量;在所述集群上分布式应用的执行期间,检测所述触发条件已被满足;以及响应于所述检测而发起所述自动扩展操作在所述两个或更多个实例群组中的所述一者上执行。2.如权利要求1所述的方法,其中所述触发条件包括某个表达式,当估计为真时,所述表达式触发所述自动扩展操作在所述两个或更多个实例群组中的所述一者上执行,并且其中所述表达式是取决于在所述集群上所述分布式应用的执行期间生成的一个或多个度量。3.如任一前述权利要求所述的方法,其中所述触发条件包括某个表达式,当估计为真时,所述表达式触发所述自动扩展操作在所述两个或更多个实例群组中的所述一者上执行,并且其中所述表达式是取决于一周中的某天、日期、一天中的某时、经过的时间段、或者估计的时间段。4.如任一前述权利要求所述的方法,其进一步包括:接收将另一自动扩展策略与所述两个或更多个实例群组中的另外一者相关联的输入,其中所述另一自动扩展策略定义第二条件,当满足时,所述第二条件触发第二自动扩展操作在所述两个或更多个实例群组中的所述另外一者上执行,这改变了所述两个或更多个实例群组中的所述另外一者中的计算资源实例数量;在所述集群上所述分布式应用的执行期间,检测所述第二触发条件已被满足;以及响应于检测到所述第二触发条件已被满足,发起所述第二自动扩展操作在所述两个或更多个实例群组中的所述另外一者上执行。5.如任一前述权利要求所述的方法,其中所述自动扩展操作包括用于向所述两个或更多个实例群组中的所述一者添加容量的操作。6.如任一前述权利要求所述的方法,其中所述自动扩展操作包括用于从所述两个或更多个实例群组中的所述一者移除容量的操作。7.如权利要求6所述的方法,其中所述方法进一步包括:确定将所述计算资源实例中的一个或多个中的哪个从所述两个或更多个实例群组中的所述一者移除;以及将所述计算资源实例中的所述确定的一个或多个从所述两个或更多个实例群组中的所述一者移除;并且其中所述确定是取决于以下各项中的一个或多个:确定所述两个或更多个实例群组中的所述一者中的所述计算资源实例中的一者存储将会在所述计算资源被移除的情况下丢失的数据、确定移除所述两个或更多个实例群组中的所述一者中的所述计算资源实例中的一者将会造成无法使复制要求或法定要求得到满足、确定所述两个或更多个实例群组中的所述一者中的所述计算资源节点中的一者已被停用、确定所述两个或更多个实例群组中的所述一者中的所述计算资源节点中的一者当前正在代表所述分布式应用执行任务、或者确定当前正在所述两个或更多个实例群组中的所述一者中的所述计算资源实例中的一者上执行的任务的进度。8.如任一前述权利要求所述的方法,其中所述自动扩展策略进一步定义所述自动扩展操作使所述两个或更多个实例群组中的所述一者的所述容量改变的量或所述自动扩展操作使所述两个或更多个实例群组中的所述一者的所述容量改变的百分比。9.如任一前述权利要求所述的方法,其中所述两个或更多个实例群组中的每一实例群组包括具有相应不同类型的计算资源实例或在所述集群上所述分布式应用的所述...

【专利技术属性】
技术研发人员:J·D·埃卡奥夫L·纳塔丽B·R·卡拉图鲁S·D·巴吉A·R·辛哈
申请(专利权)人:亚马逊科技公司
类型:发明
国别省市:美国,US

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

1