优化集群基础设施中的集群应用制造技术

技术编号:32615579 阅读:53 留言:0更新日期:2022-03-12 17:44
本公开描述了用于向集群应用的虚拟资源(例如,容器、虚拟机等)提供关于正在运行该分布式集群应用的物理服务器集群的信息的技术。支持集群应用的虚拟资源在物理服务器集群中的物理服务器上执行。虚拟资源可以接收对在物理服务器集群中离物理服务器最近的特定物理服务器上运行的数据库实例(或其他应用)的指示。该数据库实例可以包括在一组数据库实例中,该组数据库实例在物理服务器组中的各个物理服务器上维护公共数据集。虚拟资源然后可以至少部分地基于在离物理服务器最近的特定服务器上运行的数据库实例,来访问特定物理服务器上的数据库实例。器上的数据库实例。器上的数据库实例。

【技术实现步骤摘要】
【国外来华专利技术】优化集群基础设施中的集群应用
[0001]相关申请
[0002]本申请要求于2019年8月16日提交的美国专利申请No.16/543,250的优先权,其全部内容通过引用并入本文。


[0003]本公开总体上涉及向分布式集群应用提供关于正在运行该分布式集群应用的物理服务器集群的信息。

技术介绍

[0004]云计算为用户提供对计算资源的访问,以满足用户的计算资源需求。在一些示例中,服务供应商可以管理并向用户提供云计算资源以满足他们的需求,而无需用户投资和维护他们自己的计算基础设施。云计算常常涉及对数据中心网络的使用,该网络中包含服务器、路由器和为用户提供计算资源的其他设备,例如计算资源、网络资源、存储资源、数据库资源、应用资源等。可以使用虚拟化技术来为用户分配计算资源中对于用户的需求高峰保持可用的部分。计算资源的该虚拟化部分或虚拟化网络可以根据给定用户的计算需求按比例放大(或缩小),而无需维护过多的计算容量。例如,在线零售商可以缩放计算资源的虚拟化网络以满足假日购物季节期间不断增长的需求,而无需维护用于提供零售商在线状态的底层物理计算基础设施。
[0005]为了支持使用云计算的应用,可以利用集群技术将多个物理服务器组织成集群(或表现得像单个系统的一组服务器)。集群服务器可以提高集群应用或服务的可用性和可缩放性。例如,如果物理底层集群中的一个或多个节点(或服务器)发生故障,则其他节点开始提供应用或服务,以使得该故障不会终止用户的集群应用的功能。
[0006]通常,单个物理服务器可以使用虚拟化技术运行集群应用中的多个应用实例,例如多个虚拟机和/或运行该应用的多个应用容器。集群应用的应用容器每个都可以访问(例如,读取、写入等)跨多个物理服务器(例如在数据库实例中)维护的一组稳定的复制数据。通过运行在物理底层集群中的不同物理服务器上维护同一数据集的数据库实例,为应用容器在访问该数据集时提供了冗余和高可用性。因此,为以更高的冗余和可用性维护同一数据集,可能是有利的是,在物理底层集群中的不同物理服务器上实例化数据库实例(或其他存储实例)。
附图说明
[0007]下面参考附图进行详细描述。在各图中,参考编号最左边的(一个或多个)数字标识该参考编号第一次出现的图。在不同的图中使用相同的附图标记表示相似或相同的项。附图中描绘的系统未按比例绘制,并且各图中的组件可能未按比例绘制。
[0008]图1图示了示例环境的系统架构示图,在该示例环境中,服务器标识组件向分布式集群应用提供关于正在运行该分布式集群应用的物理服务器集群的信息。
[0009]图2图示了集群节点上的应用容器执行DNS查找以标识正在运行最近的数据库实例的物理服务器的示例流程的组件示图。
[0010]图3图示了图示出云计算网络的示例组件的组件示图。
[0011]图4图示了针对虚拟资源的示例方法的流程图,该虚拟资源支持集群应用接收关于在物理服务器集群中最近的物理服务器上运行的数据库实例的信息并且访问该数据库实例。
[0012]图5图示了针对应用容器的示例方法的流程图,该应用容器支持集群应用接收关于在物理服务器集群中最近的物理服务器上运行的数据库实例的信息并且访问该数据库实例。
[0013]图6图示了用于向支持集群应用的应用容器提供关于正在运行该集群应用的物理服务器集群的信息的示例方法的流程图。
[0014]图7图示了计算系统示图,该计算系统示图图示出可用于实现本文公开的技术的各方面的数据中心的配置。
[0015]图8是示出用于实现服务器设备的说明性计算机硬件架构的计算机架构示图,该服务器设备可以用于实现这里呈现的各种技术的各方面。
具体实施方式
[0016]概述
[0017]本专利技术的各方面在独立权利要求中陈述并且优选特征在从属权利要求中陈述。一个方面的特征可以单独应用于每个方面或与其他方面组合。
[0018]本公开描述了用于向集群应用的虚拟资源(例如,容器、虚拟机等)提供关于正在运行该分布式集群应用的物理服务器集群的信息的技术。该方法包括在物理服务器集群中的物理服务器上执行支持集群应用的虚拟资源。该方法还包括接收对在物理服务器集群中离该物理服务器最近的特定物理服务器上运行的数据库实例的指示。数据库实例可以包括在一组数据库实例中,该组数据库实例在物理服务器组中的各个物理服务器上维护公共数据集。此外,该方法包括至少部分地基于在离物理服务器最近的特定服务器上运行的数据库实例,使虚拟资源访问该特定物理服务器上的数据库实例。
[0019]此外,本文描述的技术可由具有存储有计算机可执行指令的非暂态计算机可读介质的系统和/或设备执行,这些计算机可执行指令在由一个或多个处理器执行时执行上述方法。
[0020]示例实施例
[0021]服务器虚拟化的有用性(从虚拟机到容器再到存储装置)已经导致云计算和数据中心的快速增长。利用虚拟化技术,单个物理服务器可以使用服务器虚拟化(例如,称为管理程序的软件层)托管多个应用、操作系统和/或数据存储实例。以此方式,多个应用或进程可以在单个物理服务器上执行以提高该物理服务器的整体硬件利用率。一些云计算系统可以利用应用集群(或软件集群),其中多个物理服务器变成物理服务器集群或服务器组,就像单个系统一样。物理集群中的每个服务器均维护同一数据集并共同运行或支持同一应用(本文称为集群应用)。例如,虚拟机(VM)和/或应用容器可以运行应用的进程以提供分布式集群应用。在物理服务器集群上运行的分布式集群应用具有多种优势,例如提高的可用性、
提高的可伸缩放性和故障转移保护。
[0022]在集群应用中,多个应用容器(或其他虚拟资源)可以在单个服务器上运行,其中每个应用容器运行应用或服务的单独实例。由于这些应用容器正在运行同一应用的实例,因此这些容器通常需要访问支持该应用或由该应用使用的同一数据集。例如,在线零售商可以利用云计算来支持包括有多个应用容器的集群应用,将这些应用容器进行缩放以处理使用这些零售商的在线站点或应用所做出的订单。这些应用容器可能需要访问公共数据集,例如零售商提供的商品的商品目录、用于执行交易的数据等。因此,物理服务器集群可以进一步支持在这些物理服务器上运行的一组数据库实例以维护这些物理服务器上的可由应用容器访问的同一数据集。这些数据库实例可以在多个物理服务器上的容器本身内运行,使得这些容器形成了集群本身,或者形成了数据库实例组。
[0023]通常,每个数据库实例可能具有与存储有实际持久数据集或卷的物理服务器绑定的亲缘关系(affinity)。可以向运行集群应用的实例的应用容器提供数据库实例组中的成员列表,因为这些应用容器可以利用底层集群中任意物理服务器(或节点)上的任意数据库实例(由于组中的每个数据库实例都维护同一数据集)。然而,因为这些容器可以利用任意数据库实例,所以当应用容器访问(例如,读取或写入)特定数据库实例时,效率可能低下。例如,应用容器可以在集群物理服务器中的第一物理服务器上运行,并确定访问由在集本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种物理服务器,布置在执行集群应用的物理服务器集群中,所述物理服务器包括:一个或多个处理器;以及存储有计算机可执行指令的一个或多个非暂态计算机可读介质,这些算机可执行指令在由所述一个或多个处理器执行时,使所述一个或多个处理器:执行支持所述集群应用的虚拟资源,所述虚拟资源被包括在运行在所述物理服务器集群中的各个物理服务器上的一组虚拟资源中;接收对在所述物理服务器集群中离所述物理服务器最近的特定物理服务器上运行的数据库实例的指示,所述数据库实例被包括在一组数据库实例中,该组数据库实例在所述物理服务器集群中的各个物理服务器上维护公共数据集;至少部分地基于作为离所述物理服务器最近的所述特定物理服务器,从该组数据库实例中选择所述数据库实例;并且使所述虚拟资源访问所述数据库实例。2.如权利要求1所述的物理服务器,其中,所述虚拟资源包括虚拟机。3.如权利要求1或2所述的物理服务器,其中,所述虚拟资源包括应用容器。4.如权利要求1至3中任一项所述的物理服务器,其中,正在运行所述数据库实例的所述特定物理服务器与正在运行所述虚拟资源的所述物理服务器相同。5.如权利要求1至4中任一项所述的物理服务器,其中:所述特定物理服务器与所述物理服务器不同;并且正在运行所述数据库实例的特定物理服务器离所述虚拟资源的所述物理服务器最近,使得至少出现以下两项之一:所述虚拟资源以最少的网络延迟访问该组数据库实例中的所述数据库实例;或者所述物理服务器位于所述物理服务器集群中离所述特定物理服务器最近的位置。6.如权利要求1至5中任一项所述的物理服务器,包括另外的计算机可执行指令,这些指令在由所述一个或多个处理器执行时,使所述一个或多个处理器接收所述数据库实例的排名列表,其中,至少部分地基于所述物理服务器离实例化所述数据库实例的各个物理服务器有多近来对所述排名列表中的所述数据库实例进行排名。7.如权利要求6所述的物理服务器,包括另外的计算机可执行指令,这些指令在由所述一个或多个处理器执行时,使所述一个或多个处理器:确定在所述特定物理服务器上运行的数据库实例不可用于由所述虚拟资源访问;从所述数据库实例的排名列表中标识可由所述虚拟资源访问的次级数据库实例;并且使所述虚拟资源访问所述次级数据库实例。8.如权利要求1至7中任一项所述的物理服务器,其中,对所述数据库实例的指示包括与所述数据库实例相关联的域名,所述物理服务器包括另外的计算机可执行指令,这些指令在由所述一个或多个处理器执行时,使所述一个或多个处理器:执行域名系统(DNS)查找以标识与所述特定物理服务器相关联的互联网协议(IP)地址,其中,接收对所述数据库实例的指示包括至少部分地基于所述DNS查找来标识关于所述特定物理服务器离所述物理服务器最近的指示。9.一种方法,包括:
在物理服务器集群中的物理服务器上执行应用容器,所述应用容器被包括在执行在所述物理服务器集群上的集群应用的一组应用容器中;在所述应用容器处,接收对在所述物理服务器集群中离所述物理服务器最近的特定物理服务器上运行的数据库实例的指示,所述数据库实例被包括在一组数据库实例中,该组数据库实例在所述物理服务器集群中的各个物理服务器上维护公共数据集;至少部分地基于作为离所述物理服务器最近的所述特定物理服务器,从该组数据库实例中选择所述数据库实例;并且至少部分地基于所述数据库实例在离所述物理服务器最近的所述特定服务器上,由所述应用容器访问所述数据库实例。10.如权利要求9所述的方法,其中,正在运行所述数据库实例的所述特定物理服务器与正在运行所述应用容器的所述物理服务器相同。11.如权利要求9或10所述的方法,其中:所述特定物理服务器与所述物理服务器不同;并且正在运行所述数据库实例的所述特定物理服务器离所述应用容器的所述物理服务器最近,使得至少出现以下两项之一:所述应用容器以最少的网络延迟访问该组数据库实例中的所述数据库实例;或者所述物理服务器位于所述物理服务器集群中离所述特定物理服务器最近的位置。12.如权利要求9至11中任一项所述的方法,还包括在所述应用容器处接收所述数据库实例的排名列表,至少部分地基于所述应用容器的所述物理服务器离实例化所述数据库实例的各个物理服务器有多近来对所述数据库实例进行排名。13.如权利要求12所述的方法,还包括:确定在所述特定物理服务器上运行的数据库实例不可用于由所述应用容器访问;从所述数据库实例的排名列表中标识可由所述应用容器访问的次级...

【专利技术属性】
技术研发人员:蒂莫西
申请(专利权)人:思科技术公司
类型:发明
国别省市:

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

1