集群计算服务确保装置和方法与流程

文档序号:11333768阅读:186来源:国知局
集群计算服务确保装置和方法与流程

本公开涉及计算领域。更具体地,本公开涉及集群计算服务确保。



背景技术:

本文提供的背景描述是出于总体呈现本公开的上下文的目的。除非在本文中另有说明,否则本章节中描述的材料不是本申请中权利要求的现有技术,并且不因包括在本章节中而被认为是现有技术。

在许多现实生活计算机集群部署(例如,大数据集群)中,由于总体硬件资源短缺/稀缺或集群共享使用,在没有任何物理或逻辑隔离的情况下可能存在多个应用任务并行运行。应用任务消耗并且甚至竞争相同的底层硬件资源的集合,例如,在计算机节点中的每个计算机节点中所采用的中央处理单元(cpu)、存储器、以及输入/输出(i/o)资源。由于应用在其生命周期期间的动态需求,对应用的各种实例的资源分配可能导致资源不平衡和不令人满意的服务级别协议,并且因此导致差的用户体验。

例如,用于大数据集群部署的现有资源调度解决方案(如hadoopyarn)根据请求应用的静态资源分配配置来分配用于请求应用的资源,而不是根据请求资源的实时资源需求和使用(其在应用生命周期的各种阶段期间可能是非常动态的)。静态资源分配远不令人满意。一些其它解决方案提供操作系统(包括虚拟机)或计算机节点级别资源隔离,以确保感兴趣的系统或应用的服务级别协议(sla)。然而,这种级别的服务确保粒度太粗糙,并且没有解决在相同集群或者甚至相同节点内的应用之间共享资源的场景问题。

附图说明

通过以下具体实施方式,结合附图,实施例将容易理解。为了帮助理解本说明书,同样的附图标记指定同样的结构元素。实施例在附图的图中通过示例的方式而非通过限制的方式示出。

图1示出了根据各种实施例的并入有本公开的节点级服务确保技术的集群计算环境的框图。

图2示出了根据各种实施例的服务确保管理器主端、服务确保管理器代理、以及各种应用主端和从端之间的通信。

图3示出了根据各种实施例的服务确保管理器代理与各种计算资源之间的通信。

图4-5示出了根据各种实施例的用于经由节点级服务确保来确保服务级别的示例过程。

图6示出了根据各种实施例的适于用来实践本公开的各种方面的示例计算机系统。

图7示出了根据各种实施例的具有用于实践参考图1-5描述的方法的指令的存储介质。

具体实施方式

本文公开了与集群计算相关联的装置、方法、以及存储介质。在实施例中,计算集群的服务器可以包括存储器和输入/输出资源;以及一个或多个处理器,其与存储器和输入/输出资源耦合,以对应用主端(master)的多个应用从端(slave)中的一个应用从端进行操作;其中,其它应用从端在其它服务器上被操作,这些其它服务器与该服务器一起作为计算集群的成员。服务器还可以包括服务确保管理器代理,其用于管理将一个或多个处理器、存储器、以及输入/输出资源分配给应用从端,以确保符合从应用级服务级别协议导出的节点级服务级别协议,以便有助于近似确保符合应用级服务协议;其中,应用级服务协议指定聚合服务级别由应用主端和从端共同提供。

在以下具体实施方式中,对形成其一部分的附图进行参考,在附图中同样的附图标记始终指定同样的部分,并且其中通过示例说明的方式示出了可以实践的实施例。可以理解,在不脱离本公开的范围的情况下,可以使用其它实施例,并且可以做出结构改变或逻辑改变。因此,以下具体实施方式不应被认为是限制意义的,并且实施例的范围由所附权利要求及其等同内容限定。

在所附的说明书中公开了本公开的方面。可以在不脱离本公开的精神或范围的情况下设计本公开的替代实施例及其等同物。应当注意,下面公开的同样的元素在附图中由同样的附图标记指示。

可以依次将各种操作描述为多个离散动作或操作,以对于理解所要求保护的主题最有帮助的方式。然而,描述的次序不应当被解释为意味着这些操作必然是次序相关的。特别地,这些操作可以不按照呈现的次序执行。所描述的操作可以以与所描述的实施例不同的次序来执行。在附加的实施例中,可以执行各种附加的操作和/或可以省略所描述的操作。

出于本公开的目的,短语“a和/或b”表示(a)、(b)、或(a和b)。出于本公开的目的,短语“a、b、和/或c”表示(a)、(b)、(c)、(a和b)、(a和c)、(b和c)、或(a、b、和c)。

本书明书可以使用短语“在实施例中”或“在多个实施例中”,其每个均可以指代相同或不同的实施例中的一个或多个。此外,如关于本公开的实施例所使用的术语“包含”、“包括”、“具有”等是同义的。

如本文所使用的,术语“模块”可以指代是以下的一部分,或者包括:专用集成电路(asic)、电子电路、执行一个或多个软件程序或固件程序的处理器(共享的、专用的、或组)和/或存储器(共享的、专用的、或组)、组合逻辑电路、和/或提供所描述的功能的其它合适的组件。

现在参考图1,其中示出根据各种实施例的并入有本公开的节点级服务确保技术的集群计算环境的框图被示出。如所示出的,计算群集100可以包括多个计算节点102。每个计算节点102可以包括各种硬件资源105(例如,cpu112、存储器114、以及输入/输出资源115),以及在其上操作的多个应用中的每个应用的至少一个从端(例如,104a和104b)。每个应用可以包括在多个计算节点102中衍生应用从端104a/104b的应用主端103a/103b。每个应用从端104a/104b可以具有多个进程/任务110a/110b。此外,每个计算节点102可以包括服务确保管理器(sam)代理108,其用于动态地管理将cpu112、存储器114、以及i/o115资源分配给应用从端104a/104b,以确保符合相应的节点级服务级别协议(sla)118。每个sla118可以从对应的应用级服务级别协议117导出,该应用级服务级别协议117指定聚合服务级别由各种计算节点102上的应用主端和从端103a和104a或者103b和104b共同提供。因此,在每个计算节点102处相应地符合应用从端的所导出的sla118可以有助于近似确保符合总体应用级服务协议117。

例如,托管用于处理事务的应用的计算集群可以具有每秒100000个事务的sla。在实施例中,在能力和容量方面,可以采用四(4)个基本上类似的计算节点来托管由应用主端衍生的四(4)个应用从端。可以通过确保每个计算节点符合每秒25000个事务的所导出的sla来近似地确保应用级sla。在另一示例中,在能力和容量方面,可以采用三(3)个不相似的计算节点来托管应用的三(3)个实例。可以通过确保符合每秒50000个事务、每秒35000个事务、以及每秒25000个事务(总共超过每秒100000个事务)的相应的所导出的sla来近似地确保应用级sla。每秒50000个事务、每秒35000个事务、以及每秒25000个事务的相应的所导出的sla可以大致对应于三(3)个不相似的计算节点的相对处理能力。

在实施例中,对应地位于各种计算节点102中的各种sam代理108可以由sam主端107协调。在实施例中,sam主端107可以布置在其自己的计算节点102上,或者与sam代理108共享计算节点102,如所示出的。在实施例中,sam主端107可以包括配置接口(未示出),以有助于利用应用的应用级sla117对sam主端107进行配置。在实施例中,sam主端107可以导出节点级sla118,并且将节点级sla118分别提供给布置在计算节点102上的各种sam代理108。在实施例中,sam主端107可以经由通信119将节点级sla118提供给各种sam代理108。在实施例中,sam主端107可以至少部分地基于从应用主端103a/103b获得的计算节点使用信息来导出节点级sla118。在实施例中,sam主端107可以通过交互121获得来自应用主端103a/103b的计算节点使用信息。

在实施例中,sam代理108可以这样来确保符合节点级服务级别协议(sla)118:经由交互120来理解应用实例104a/104b的需求;以及经由通信122来动态地调节将cpu112、存储器114、以及i/o115资源分配给应用从端104a/104b。在实施例中,sam108还可以这样来确保符合节点级sla118:经由交互120来缩减一些应用从端104a/104b的资源需求,以有利于其它应用从端。在实施例中,缩减资源需求可以包括抢占一些应用从端,缩减或停止其进程/任务110a/110b。在实施例中,可以利用停止由应用主端103/103b衍生应用从端104a/104b来对停止应用从端104a/104b的进程/任务110a/110b进行协调。在实施例中,sam主端107和sam代理可以经由交互119对停止应用主端103a/103b以及停止应用从端进程/任务110a/110b进行协调。并且sam主端107可以经由交互121来停止由应用主端103a/103b衍生应用从端104a/104b。

在实施例中,sam主端和/或代理107和/或108可以以硬件实现。例如,sam主端和/或代理107和/或108可以经由专用集成电路(asic)或现场可编程电路(例如,编程有本文描述的操作逻辑的现场可编程门阵列(fpga))来实现。在替代实施例中,sam主端和/或代理107和/或108可以以硬件实现。例如,sam主端和/或代理107和/或108可以以底层处理器的汇编器指令来实现,或者以能够被编译到底层处理器的指令集架构中的c语言或更高级语言来实现。在其它实施例中,sam主端和代理107和/或108可以以硬件/软件组合来实现。

cpu112可以是本领域已知的多个单核或多核处理器中的任何一个。存储器114可以是本领域已知的多个易失性或非易失性、电、磁性、和/或光学存储器中的任何一个。i/o资源115可以包括多个i/o设备/接口中的任何一个,例如但不限于有线或无线联网接口、串行和/或并行i/o接口等。虽然为了易于理解仅示出了cpu112、存储器114、以及i/o115,但是硬件资源105可以包括其它硬件资源,例如但不限于多个协处理器、图形处理单元(gpu)、数学协处理器、数字信号处理器(dsp)等中的任何一个。

此外,除了硬件资源105之外,每个计算节点102可以包括各种固件/软件资源,例如,各种操作系统/管理程序服务,例如但不限于调度器、存储器管理器、进程/任务管理器等。

类似地,应用主端和从端103a/103b和104a/104b的每个集合可以是本领域已知的多个应用中的任何一个,特别地是典型地涉及简单或复杂计算的大数据应用,其涉及其中多个应用从端在计算集群的多个服务器上被实例化和操作的大量数据。大数据应用的示例可以包括但不限于,

-消费者产品公司和零售组织的应用,其监测社交媒体(如facebook和twitter)以了解客户行为、偏好、以及产品感知。

-制造商的应用,其监测社交网络以在保修期失效变得公开不利之前检测售后市场支持问题。

-金融服务公司的应用,其使用从客户交互中挖掘的数据将其用户划分成经过精确调整的部分,以创建更相关且精细的报价。

-广告和营销机构的应用,其跟踪社交媒体以理解对活动、促销、以及其它广告媒体的响应。

-保险公司的应用,其使用大数据分析来查看可以立即处理哪些家庭保险申请,以及哪些家庭保险申请需要代理人进行当面访问验证。

-基于网络的企业的应用,其开发结合从客户收集的数据的信息产品,以提供更有吸引力的建议和更成功的优惠券项目。

-体育团队的应用,其使用数据来跟踪门票销售,并且甚至跟踪团队策略。

因此,除了sam主端和代理107和108之外,每个计算节点102可以是本领域已知的多个集群计算节点中的任何一个。将参考图2-5进一步描述sam主端和代理107和108的构成和操作。在进一步描述sam主端和代理107和108以及本公开的其它方面之前,应当注意为了易于示例说明,图1描绘了一个从端各自用于两个应用(应用从端104a和应用从端104b),而本公开并不限于此。从下面的描述中可以容易地理解,经由确保在任何数量的计算节点102上操作的任何数量的应用从端104a/104b的sla118,本公开可以实践为sam主端和代理107和108针对一个或多个应用近似地确保符合sla117。另外,在实施例中,sam主端107的功能和操作可由一个sam代理108承担,或者在多个sam代理108或sam代理108中的全部之间共享。

现在参考图2,其中示出根据所公开的实施例的sam主端107、sam代理108、应用主端103a/b、以及应用实例104a/104b之间的通信/交互的框图被示出。如所示出的,应用主端和从端103a/103b和104a/104b(更具体地,一般而言应用)可以配置有这样的接口(未示出):该接口使得sam主端107和sam代理108能够针对各种信息对应用主端103a/103b和应用从端104a/104b进行查询。特别地,接口可以被配置为使得sam主端107能够针对计算机节点使用对应用主端103a/103b进行查询,并且使得sam代理108能够关于应用从端104a/104b的cpu、存储器、i/o等资源需求202周期性地对应用从端104a/104b进行查询。例如,应用从端104a/104b期望的cpu周期时间的量、存储器空间的量、和/或i/o带宽的量(其在操作期间可以随时间变化,取决于各种时间点或应用的各种阶段的工作负载)。

在实施例中,应用从端104a/104b(更具体地,一般而言应用)可以配置有这样的接口(未示出):该接口使得sam代理108能够关于各种性能度量204周期性地对应用从端104a/104b进行查询,以独立地确定应用从端104a/104b的资源需求。性能度量204的示例可以包括但不限于cpu周期的等待时间、高速缓存未命中的数量、引发用于存储器交换(swap)的频率和/或时间、i/o通道的等待时间和/或传输比特率等。

在实施例中,应用从端104a/104b(更具体地,一般而言应用)可以配置有这样的接口(未示出):该接口使得sam代理108能够动态地节制应用从端104a/104b中的一些应用从端104a/104b的资源需求(为了计算节点102上的其它应用从端的利益)。节制命令206b可以包括但不限于用于以下操作的命令:指导应用实例104a/104b抢占其子进程/任务110a/110b中的一个或多个,减少或增加子进程/任务110a/110b的数量,和/或暂停或恢复子进程/任务110a/110b中的一个或多个。

类似地,在实施例中,应用主端103a/103b(更具体地,一般而言应用)可以被配置有这样的接口(未示出):该接口使得sam主端107能够动态地节制206a由应用主端104a/104b中的一些应用主端衍生应用从端104a/104b(为了计算节点102上的其它应用主端和从端的利益)。

在实施例中,如较早描述的,sam主端107与代理108之间的交互119可以包括由sam主端107将节点级sla118提供给sam代理108。附加地,交互119还可以包括从sam代理108将符合性报告208给sam主端107,包括较早描述的停止进程/任务110a/110b,以使得sam主端107能够类似地停止由受影响的应用主端103a/103b衍生应用从端104a/104b。

图3示出了根据所公开的实施例的服务确保管理器代理与各种计算资源之间的通信。如所示出的,在实施例中,各种硬件资源105(例如,cpu112、存储器112、以及i/o资源115)可以配置有使得sam代理108能够针对状态信息对各种硬件资源进行查询302的接口(未示出)。例如,可以针对cpu112的闲置和/或忙碌时间对cpu112进行查询,可以针对存储器114的已分配和/或未分配的空间、时延对存储器114进行查询,以及可以针对i/o资源的可用性或不可用性状态对i/o资源进行查询。在替代实施例中,计算节点102可以包括硬件监测器314,并且sam代理108可以针对各种硬件资源状态信息对硬件监测器314进行查询。

在实施例中,计算节点102可以包括调度器312,并且sam代理108可以向调度器312发布分配/解除分配命令304以将各种硬件资源108(例如,cpu112、存储器114、以及i/o资源115)分配给应用从端104a/104b或将其从应用从端104a/104b解除分配。

图4-5示出了根据所公开的实施例的用于经由节点级服务确保来确保应用的服务级别协议的示例过程。如所示出的,该过程可以包括用于配置sam代理并与应用主端进行交互的过程400(如图4描述的),以及用于经由节点级服务确保来确保分布在计算集群的多个计算节点上的应用从端的服务级别的过程500。

如图4所示,过程400可以包括框402-408处的操作。这些操作可以由例如图1-2中的较早描述的sam主端107来执行。在替代实施例中,过程400可以在具有附加操作的情况下实践,或者在省略、组合、和/或重新排序操作中的一些操作的情况下实践。

过程400可以在框402处开始。在框402处,可以获得/提供应用级sla。接下来,在框404处,可以例如从应用主端获得计算节点使用。然后在框406处,可以导出节点级sla。如较早描述的,鉴于所使用的计算节点的容量/能力,可以通过对应用级sla进行分解来导出节点级sla。

接下来,过程400可以在框406处等待来自sam代理的报告。在接收到报告后,可以做出关于应用主端的应用从端的进程/任务是否被停止的确定。如果应用主端的应用从端的进程/任务未被停止,则过程400可以返回到框406,并且如较早描述的从框406继续进行。另一方面,应用主端的应用从端的进程/任务被停止,过程400可以进行到框408。在框408处,可以将节制命令发送到应用主端以停止由应用主端进一步衍生应用从端。因此,过程400可以进行回到框406,并从框406继续进行。

如图5所示,过程500可以包括框502-508处的操作。操作可以由例如图1-3中的较早描述的sam代理108来执行。在替代实施例中,过程500可以在具有附加操作的情况下实践,或者在省略、组合、和/或重新排序操作中的一些操作的情况下实践。

如所示出的,过程500可以在框502处开始。在框502处,可以针对资源需求对计算机节点上的应用实例进行检查。如较早描述的,检查可以通过关于应用实例的需求对应用实例进行查询来直接执行,或者通过关于各种性能度量对应用实例进行查询并从性能度量推断需求来间接执行。如果没有识别出新的需求,则过程500可以停留在框502处,直到识别出新的需求为止。

在识别出需求后,过程500可以进行到框504。在框504处,可以选择要调整的资源分配和/或要缩减的资源需求。例如,鉴于在框502中识别的需求,可以考虑对cpu资源、存储器资源、和/或i/o资源进行分配或重新分配。在一些情况下,cpu、存储器、以及i/o资源的分配可以从空闲的未分配资源中选择。在其它情况下,对cpu、存储器、以及i/o资源进行分配可能需要从其它应用实例中对这些资源中的一些资源解除分配,以释放这些资源,并使这些资源被选择以供分配。然而,在未选择对硬件资源进行分配和/或解除分配(不可行)的情况下,可以选择缩减应用实例中的一些应用实例的资源需求。

在确定重新调整资源分配后,过程500可以进行到框506。在框506处,可以对分配硬件资源给计算机节点上的应用实例进行调整。另一方面,在确定缩减应用实例中的一些应用实例的资源需求后,过程500可以进行到框508。在框508处,可以要求应用实例削减其资源需求,例如,通过缩减和/或暂时停止其一个或多个进程/任务。在稍后的时间点,可以通知应用实例可以衍生和/或重新启动附加的进程/任务。

过程500可以从框506或508返回到框502,并且如较早描述的从框502继续进行。

图6示出了可以适于用来实践本公开的所选择的方面的示例计算机系统。如所示出的,计算机600可以包括一个或多个处理器或处理器核心602、以及系统存储器604。出于本申请(包括权利要求)的目的,可以认为术语“处理器”和“处理器核心”是同义的,除非上下文另有明确要求。附加地,计算机600可以包括大容量存储设备606(例如,软盘、硬盘驱动器、光盘只读存储器(cd-rom)等)、输入/输出设备608(例如,显示器、键盘、光标控件等)、以及通信接口610(例如,网络接口卡、调制解调器等)。元件可以经由系统总线612彼此耦合,系统总线612可以表示一条或多条总线。在多条总线的情况下,多条总线可以由一个或多个总线桥(未示出)桥接。

这些元件中的每一个元件可以执行其本领域已知的常规功能。特别地,系统存储器604和大容量存储设备606可以用于存储实现与较早描述的图1的sam108和/或图2、图3、和/或图4的过程200、300、和/或400相关联的操作(统称为计算逻辑622)的编程指令的工作副本和永久副本。各种元件可以通过(多个)处理器602所支持的汇编指令或能够被编译到这样的指令中的高级语言(举例来说,例如,c)来实现。

这些元件610-612的数量、能力、和/或容量可以取决于计算机600是用作移动设备、固定设备、还是服务器而变化。当用作移动设备时,这些元件610-612的能力和/或容量可以取决于移动设备是智能电话、计算平板、超级本、还是笔记本电脑而变化。否则,元件610-612的构造是已知的,并且因此将不再进一步描述。

如本领域技术人员将认识到的,本公开可以体现为方法或计算机程序产品。因此,除了如较早描述的以硬件来体现之外,本公开可以采取完全软件实施例(包括固件、驻留软件、微代码等)的形式,或者采取组合软件方面和硬件方面(其一般可以全部被称为“电路”、“模块”、或“系统”)的实施例的形式。此外,本公开可以采取体现在任何有形的或非暂时性的表达介质中的计算机程序产品的形式,其具有体现在介质中的计算机可用的程序代码。图7示出了可以适于用来存储指令的示例计算机可读非暂时性存储介质,该指令响应于由装置执行指令而使得该装置实践本公开的所选择的方面。如所示出的,非暂时性计算机可读存储介质702可以包括多个编程指令704。编程指令704可以被配置为使得诸如计算机600的设备能够响应于编程指令的执行而执行与图1的sam主端和代理107和108和/或图2、图3、图4、和/或图5的过程200、300、400、和/或500相关联的操作。相反,在替代实施例中,可以将编程指令704布置在多个计算机可读非暂时性存储介质702上。在替代实施例中,可以将编程指令704布置在计算机可读暂时性存储介质702上,例如,信号。

可以使用一种或多种计算机可用或计算机可读的介质的任何组合。计算机可用或计算机可读介质可以是:例如但不限于电子、磁、光学、电磁、红外、或半导体系统、装置、设备、或传播介质。计算机可读介质的更具体的示例(非穷尽性列表)将包括以下:具有一条或多条连线的电连接、便携式计算机软盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪速存储器)、光纤、便携式光盘只读存储器(cd-rom)、光存储设备、传输介质(例如,支持互联网或内联网的传输介质)、或磁存储设备。注意,计算机可用或计算机可读介质甚至可以是在其上打印程序的纸张或另一合适的介质,这是因为可以经由例如对纸张或其它介质进行光学扫描而电子地捕获程序,然后如果有必要则以合适的方式进行编译、解释、或以其它方式处理,并且然后存储在计算机存储器中。在本文档的上下文中,计算机可用或计算机可读介质可以是能够包含、存储、传达、传播、或传送程序以供指令执行系统、装置、或设备使用或与指令执行系统、装置、或设备结合地使用的任何介质。计算机可用介质可以包括具有体现在其中的计算机可用程序代码的传播数据信号,或者以基带的形式,或者作为载波的一部分。计算机可用程序代码可以使用任何适当的介质来传输,包括但不限于无线、有线、光纤电缆、rf等。

用于执行本公开的操作的计算机程序代码可以以一种或多种编程语言的任何组合来编写,一种或多种编程语言包括面向对象的编程语言(例如,java、smalltalk、c++等)和常规过程编程语言(例如,“c”编程语言或类似的编程语言)。程序代码可以完全在用户的计算机上执行、部分地在用户的计算机上执行、作为独立的软件包、部分地在用户的计算机上且部分地在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种场景下,远程计算机可以通过包括局域网(lan)或广域网(wan)的任何类型的网络连接到用户的计算机,或者可以进行到外部计算机的连接(例如,通过使用互联网服务提供商的互联网)。

参考根据本公开的实施例的方法、装置(系统)、以及计算机程序产品的流程图图示和/或框图来描述本公开。可以理解,流程图图示和/或框图的每个框以及流程图图示和/或框图中的框的组合能够由计算机程序指令实现。可以将这些计算机程序指令提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器以产生机器,使得经由计算机或其它可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的框或多个框中指定的功能/动作的模块。

这些计算机程序指令还可以存储在计算机可读介质中,其能够指导计算机或其它可编程数据处理装置以特定的方式运转,以使得存储在计算机可读介质中的指令产生包括实现在流程图和/或框图的框或多个框中指定的功能/动作的指令模块的制品。

还可以将计算机程序指令加载到计算机或其它可编程数据处理装置上,以使得在计算机或其它可编程装置上执行一系列操作步骤以产生计算机实现的过程,使得在计算机或其它可编程装置上执行的指令提供用于实现在流程图和/或框图的框或多个框中指定的功能/动作的过程。

附图中的流程图和框图示出了根据本公开的各种实施例的系统、方法、以及计算机程序产品的可能实现方式的架构、功能、以及操作。在这方面,流程图或框图中的每个框可以表示模块、段、或代码的部分,其包括用于实现指定的(多个)逻辑功能的一个或多个可执行指令。还应当注意,在一些替代实现方式中,框中指出的功能可以不按照附图中所指出的次序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者框有时可以以相反的次序执行,这取决于所涉及的功能。还将注意到,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合能够由执行指定功能或动作的基于专用硬件的系统、或专用硬件和计算机指令的组合来实现。

本文使用的术语仅出于描述特定实施例的目的,而并非旨在限制本公开。如本文所使用的,单数形式“一(a)”、“一个(an)”、以及“该(the)”旨在也包括复数形式,除非上下文另有明确指示。将进一步理解,当在本说明书中使用时,术语“包括”和/或“包括有”指定所陈述的特征、整体、步骤、操作、元件、和/或组件的存在,但不排除一个或多个其它特征、整体、步骤、操作、元件、组件、和/或其组的存在或添加。

可以将实施例实现为计算机进程、计算系统、或者诸如计算机可读介质的计算机程序产品的制品。计算机程序产品可以是计算机系统可读并对计算机程序指令进行编码以用于执行计算机进程的计算机存储介质。

所附权利要求书中的所有模块或步骤加功能元素的对应结构、材料、动作、以及等同物旨在包括用于结合特别要求保护的其它要求保护的元素执行功能的任何结构、材料、或动作。本公开的说明书是出于示例说明和描述的目的而呈现的,而并非旨在是穷尽性的或限于以所公开的形式的公开内容。在不脱离本公开的范围和精神的情况下,许多修改和变化对于普通技术人员将是显而易见的。选择并描述实施例以便于最好地解释本公开的原理和实际应用,并且使得本领域其他普通技术人员能够理解具有适合于所设想的特定用途的各种修改的实施例的公开内容。

返回参考图6,对于一个实施例,处理器602中的至少一个可以与具有计算逻辑622的存储器封装在一起(代替存储在存储器604和存储设备606上)。对于一个实施例,处理器602中的至少一个可以与具有计算逻辑622的存储器封装在一起以形成系统级封装(sip)。对于一个实施例,处理器602中的至少一个可以与具有计算逻辑622的存储器集成在相同的管芯上。对于一个实施例,处理器602中的至少一个可以与具有计算逻辑622的存储器封装在一起以形成片上系统(soc)。对于至少一个实施例,soc可以在例如但不限于智能电话或计算平板中使用。

因此,已经描述了本公开的各种示例实施例,包括但不限于:

示例1可以是用于集群计算的服务器,包括:存储器和输入/输出资源;一个或多个处理器,其与存储器和输入/输出资源耦合,以操作应用主端的多个应用从端中的一个应用从端;其中,其它应用从端在其它服务器上被操作,其它服务器与该服务器一起作为计算集群的成员。服务器还可以包括服务确保管理器代理,其用于管理将一个或多个处理器、存储器、以及输入/输出资源分配给应用从端,以确保符合从应用级服务级协议导出的节点级服务级别协议,以便有助于近似确保符合应用级服务协议;其中,应用级服务协议指定聚合服务级别由应用主端和从端提供。

示例2可以是示例1,其中,服务确保管理器代理可以接收来自服务确保管理器主端的节点级服务级别协议。

示例3可以是示例1,其中,服务确保管理器代理可以针对处理器、存储器、或输入/输出资源需求对应用从端进行查询。

示例4可以是示例1,其中,服务确保管理器代理可以关于一个或多个性能度量对应用从端进行查询。

示例5可以是示例1-4中的任何一个,其中,服务确保管理器代理可以选择一个或多个处理器、存储器、或输入/输出资源中的一个或多个用于资源分配或解除分配调整,或者缩减服务器上的其它应用从端的资源需求,其中,其它应用从端与其它应用主端相关联。

示例6可以是示例5,其中,服务确保管理器代理可以将一个或多个节制命令提供给应用从端或服务器上的另一应用从端,其中,另一应用从端与另一应用主端相关联。

示例7可以是示例6,其中,节制命令可以包括用于抢占另一应用从端的进程的命令、用于减少另一应用从端的进程的数量的命令、或者用于暂停另一应用从端的命令。

示例8可以是示例7,其中,节制命令还可以包括用于增加另一应用从端的进程的数量的命令、或者用于恢复另一应用从端的命令。

示例9可以是示例6,其中,服务确保管理器代理可以通过服务确保管理器代理的服务确保管理器主端将一个或多个节制命令提供给另一应用主端。

示例10可以是示例5,其中,服务确保管理器代理可以针对状态或资源可用性对一个或多个处理器、存储器、或i/o资源进行查询。

示例11可以是示例5,其中,服务确保管理器代理可以将一个或多个分配命令提供给一个或多个处理器、存储器、或i/o资源,以将一个或多个处理器、存储器、或i/o资源中的附加资源分配给应用从端。

示例12可以是示例5,其中,服务确保管理器代理可以将一个或多个解除分配命令提供给一个或多个处理器、存储器、或i/o资源,以对一个或多个处理器、存储器、或i/o资源中的先前被分配给服务器上的另一应用从端的资源解除分配,其中,该另一应用从端与另一应用主端相关联。

实施例13可以是一种用于管理集群计算的方法,包括:由计算集群的计算节点与操作其它应用从端的计算集群的其它计算节点相结合地对应用主端的多个应用从端中的至少一个应用从端进行操作;以及由计算节点利用服务确保管理器代理来管理将计算节点的一个或多个处理器、存储器、以及输入/输出资源分配给应用从端,以确保符合从应用级服务级别协议导出的节点级服务级别协议,以便有助于近似确保符合应用级服务协议;其中,应用级服务协议指定聚合服务级别由应用主端和从端共同提供。

示例14可以是示例13,其中,管理可以包括利用服务确保管理器代理来接收来自服务确保管理器主端的节点级服务级别协议。

示例15可以是示例13,其中,管理还可以包括服务确保管理器代理针对处理器、存储器、或输入/输出资源需求对应用从端进行查询。

示例16可以是示例13,其中管理还可以包括服务确保管理器代理关于一个或多个性能度量对应用从端进行查询。

示例17可以是示例13-16中的任何一个,其中,管理还可以包括服务确保管理器代理选择一个或多个处理器、存储器、或输入/输出资源中的一个或多个用于资源分配或解除分配调整,或者缩减服务器上的其它应用从端的资源需求,其中,其它应用从端与其它应用主端相关联。

示例18可以是示例17,其中,管理还可以包括服务确保管理器代理将一个或多个节制命令提供给应用从端或服务器上的另一应用从端,其中,另一应用从端与另一应用主端相关联。

示例19可以是示例18,其中,节制命令可以包括用于抢占另一应用从端的进程的命令、用于减少另一应用从端的进程的数量的命令、或者用于暂停另一应用从端的命令。

示例20可以是示例19,其中,节制命令还可以包括用于增加另一应用从端的进程的数量的命令、或者用于恢复另一应用从端的命令。

示例21可以是示例18,其中,管理还可以包括服务确保管理器代理通过服务确保管理器代理的服务确保管理器主端将一个或多个节制命令提供给另一应用主端。

示例22可以是示例18,其中,管理还可以包括服务确保管理器代理针对状态或资源可用性对一个或多个处理器、存储器、或i/o资源进行查询。

示例23可以是示例17,其中,管理还可以包括服务确保管理器代理将一个或多个分配命令提供给一个或多个处理器、存储器、或i/o资源,以将一个或多个处理器、存储器、或i/o资源中的附加资源分配给应用从端。

示例24可以是示例17,其中,管理还可以包括服务确保管理器代理将一个或多个解除分配命令提供给一个或多个处理器、存储器、或i/o资源,以对一个或多个处理器、存储器、或i/o资源中的先前被分配给服务器上的另一应用从端的资源解除分配,其中,另一应用从端与另一应用主端相关联。

示例25可以是一种或多种计算机可读介质,包括指令,响应于指令由计算节点执行,该指令使得计算集群的计算节点对服务确保管理器代理进行操作以用于:管理将计算节点的一个或多个处理器、存储器、以及输入/输出资源分配给应用主端的多个应用从端中的一个应用从端,其在计算节点上被操作,以确保符合从应用主端的应用级服务级别协议导出的节点级服务级别协议,以便有助于近似确保符合应用级服务协议;其中,应用级服务协议指定聚合服务级别由应用主端和从端共同提供,其中,其它应用从端在计算集群的其它计算节点上被操作。

示例26可以是示例25,其中,服务确保管理器代理可以接收来自服务确保管理器主端的节点级服务级别协议。

示例27可以是示例25,其中,服务确保管理器代理可以针对处理器、存储器、或输入/输出资源需求对应用从端进行查询。

示例28可以是示例25,其中,服务确保管理器代理可以关于一个或多个性能度量对应用从端进行查询。

示例29可以是示例25-28中的任何一个,其中,服务确保管理器代理可以选择一个或多个处理器、存储器、或输入/输出资源中的一个或多个用于资源分配或解除分配调整,或者缩减服务器上的其它应用从端的资源需求,其中,其它应用从端与其它应用主端相关联。

示例30可以是示例29,其中,服务确保管理器代理可以将一个或多个节制命令提供给应用从端或服务器上的另一应用从端,其中,另一应用从端与另一应用主端相关联。

示例31可以是示例30,其中,节制命令包括用于抢占另一应用从端的进程的命令、用于减少另一应用从端的进程的数量的命令、或者用于暂停另一应用从端的命令。

示例32可以是示例31,其中,节制命令还包括用于增加另一应用从端的进程的数量的命令、或者用于恢复另一应用从端的命令。

示例33可以是示例30,其中,服务确保管理器代理可以通过服务确保管理器代理的服务确保管理器主端将一个或多个节制命令提供给另一应用主端。

示例34可以是示例29,其中,服务确保管理器代理可以针对状态或资源可用性对一个或多个处理器、存储器、或i/o资源进行查询。

示例35可以是示例29,其中,服务确保管理器代理可以将一个或多个分配命令提供给一个或多个处理器、存储器、或i/o资源,以将一个或多个处理器、存储器、或i/o资源中的附加资源分配给应用从端。

示例36可以是示例29,其中,服务确保管理器代理可以将一个或多个解除分配命令提供给一个或多个处理器、存储器、或i/o资源,以对一个或多个处理器、存储器、或i/o资源中的先前被分配给服务器上的另一应用从端的资源解除分配,其中,另一应用从端与另一应用主端相关联。

实施例37可以是一种用于集群计算的服务器,包括:用于由计算集群的计算节点与操作其它应用从端的计算集群的其它计算节点相结合地对应用主端的多个应用从端中的至少一个应用从端进行操作的模块;以及用于由计算节点管理将计算节点的一个或多个处理器、存储器、以及输入/输出资源分配给应用从端,以确保符合从应用级服务级别协议导出的节点级服务级别协议,以便有助于近似确保符合应用级服务协议的模块;其中,应用级服务协议指定聚合服务级别由应用主端和从端共同提供。

示例38可以是示例37,其中,用于管理的模块可以包括用于接收来自服务确保管理器主端的节点级服务级别协议的模块。

示例39可以是示例37,其中,用于管理的模块还可以包括用于针对处理器、存储器、或输入/输出资源需求对应用从端进行查询的模块。

示例40可以是示例37,其中,用于管理的模块还可以包括用于关于一个或多个性能度量对应用从端进行查询的模块。

示例41可以是示例37-40,其中,用于管理的模块还可以包括用于选择一个或多个处理器、存储器、或输入/输出资源中的一个或多个用于资源分配或解除分配调整,或者缩减服务器上的其它应用从端的资源需求的模块,其中,其它应用从端与其它应用主端相关联。

示例42可以是示例41,其中,用于管理的模块还可以包括用于将一个或多个节制命令提供给应用从端或服务器上的另一应用从端的模块,其中,另一应用从端与另一应用主端相关联。

示例43可以是示例42,其中,节制命令包括用于抢占另一应用从端的进程的命令、用于减少另一应用从端的进程的数量的命令、或者用于暂停另一应用从端的命令。

示例44可以是示例43,其中,节制命令还包括用于增加另一应用从端的进程的数量的命令、或者用于恢复另一应用从端的命令。

示例45可以是示例42,其中,用于管理的模块还可以包括用于通过服务确保管理器代理的服务确保管理器主端将一个或多个节制命令提供给另一应用主端的模块。

示例46可以是示例42,其中,用于管理的模块还可以包括用于针对状态或资源可用性对一个或多个处理器、存储器、或i/o资源进行查询的模块。

示例47可以是示例41,其中,用于管理的模块还可以包括用于将一个或多个分配命令提供给一个或多个处理器、存储器、或i/o资源以将一个或多个处理器、存储器、或i/o资源中的附加资源分配给应用从端的模块。

示例48可以是示例41,其中,用于管理的模块还可以包括用于将一个或多个解除分配命令提供给一个或多个处理器、存储器、或i/o资源以对一个或多个处理器、存储器、或i/o资源中的先前被分配给服务器上的另一应用从端的资源解除分配的模块,其中,另一应用从端与另一应用主端相关联。

对于本领域技术人员显而易见的是,能够在不脱离本公开的精神或范围的情况下在所公开的设备和相关联的方法的所公开的实施例中进行各种修改和变化。因此,本公开旨在覆盖上面公开的实施例的修改和变化,只要这些修改和变化在任何权利要求及其等同内容的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1