CN113796048A - 采用数据中心网络管理器的分布式负载均衡器健康状况管理 - Google Patents
采用数据中心网络管理器的分布式负载均衡器健康状况管理 Download PDFInfo
- Publication number
- CN113796048A CN113796048A CN202080034013.4A CN202080034013A CN113796048A CN 113796048 A CN113796048 A CN 113796048A CN 202080034013 A CN202080034013 A CN 202080034013A CN 113796048 A CN113796048 A CN 113796048A
- Authority
- CN
- China
- Prior art keywords
- load balancer
- leaf
- health monitoring
- network
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/354—Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
Abstract
本公开的技术涉及一种负载均衡系统。该负载均衡系统被配置为在控制器处从多个叶交换机接收健康状况监视度量值。该负载均衡系统还被配置为基于健康状况监视度量值来确定服务器已经发生了故障,并修改网络架构的负载均衡配置。负载均衡系统还被配置为将负载均衡配置传输给网络架构中的每个叶交换机,并更新每个叶交换机中的表以反映可用的服务器。
Description
相关申请的交叉引用
本申请要求2019年5月7日提交的标题为“DISTRIBUTED LOAD BALANCER HEALTHMANAGEMENT USING DATA CENTER NETWORK MANAGER(采用数据中心网络管理器的分布式负载均衡器健康状况管理)”的美国非临时专利申请No.16/405,561的权益和优先权,其全部内容通过引用明确地并入本文。
技术领域
本公开的主题总体上涉及数据中心网络领域,更具体地涉及分布式数据中心网络内的负载均衡。
背景技术
典型的数据中心网络包含无数的网元,包括服务器、负载均衡器、路由器、交换机等。负载均衡设备可以用于在多个节点之间分配工作负载。负载均衡设备可以包括健康状况监视应用程序,以确定与节点相关联的状态,诸如该节点用于接收工作负载时的可用性。负载均衡设备可以通过定期探测节点来确定状态。
在分布式数据中心中,服务器和虚拟机(VM)可以分布在整个架构中,并附接至不同的叶交换机。分布式负载均衡实现了跨架构分布的服务器的负载均衡。每个叶交换机都必须探测服务器,以了解连接到其他所有叶交换机的每个服务器的状态,这导致大量的控制流量注入到架构中。
附图说明
为了描述可以获得本公开的上述及其他优点和特征的方式,将参考附图中示出的特定实施例来呈现以上简述的原理更详细的描述。应当理解的是,这些附图仅描绘了本公开的实施例,因此不应被认为是对其范围的限制。通过利用这些附图,对本文中的原理进行了更具体详细的描述和说明,在附图中:
图1是示出了一种示例性数据中心网络的简化示意图,在该示例性数据中心网络中可以实现本文所述的系统和/或方法;
图2是根据本主题技术的各个方面示出了数据中心网络中的控制器的简化示意图;
图3是根据本主题技术的各个方面示出了配置有备用节点的数据中心网络中的控制器的简化示意图;
图4是根据本主题技术的各个方面示出了没有配置备用节点的数据中心网络中的控制器的简化示意图;
图5根据本主题技术的各个方面示出了每个叶交换机中的TCAM(三态内容可寻址存储器)表及其SRAM(静态随机存取存储器)表;
图6是根据本主题技术的各个方面的由控制器执行的方法的流程图;以及
图7A和图7B根据本主题技术的各个方面示出了系统的示例。
具体实施方式
下面提出的详细描述旨在作为对实施例的各种配置的描述,而并非为了代表可以在其中实施本公开的主题的唯一配置。附图并入本文,并构成详细描述的一部分。为了更彻底地理解本公开的主题,详细描述包括了具体细节。然而,显而易见的是,本公开的主题不限于本文阐述的具体细节,并且可以在没有这些细节的情况下实施。在一些情况下,结构和组件以框图的形式示出,以避免使本公开的主题的概念变得晦涩难懂。
概述
在已知计算系统的示例中,工作负载服务器集群可以作为物理服务器或虚拟机来提供,以向终端用户或客户端提供所需的特性。需要负载均衡来实现独立的交换架构中的上述功能。本公开的技术解决了本领域对更高效的分布式负载均衡器管理方式的需求,其中客户端请求分布在多个应用服务器上。本公开的技术允许控制器探测每个叶交换机,而每个叶交换机只探测它的一个或多个本地服务器。控制器监视、跟踪和报告服务器的健康状况。
本主题技术的各种实施例通过提供一种控制器来解决这些及其他技术问题,该控制器通过订阅由叶交换机提供的健康状况监视度量值来进行负载均衡。控制器通过运行在服务器上的应用程序来工作。控制器可以通过更大的网络框架内的管理网络与交换架构进行通信。
详细描述
下面详细讨论了本公开的各种实施例。尽管讨论了具体实现方式,但是应当理解的是,这仅仅是为了说明的目的。相关领域的技术人员将认识到,在不脱离本公开的精神和范围的情况下,可以采用其他组件和配置。
要求能够监视连接至架构中另一个叶交换机的服务器或应用程序的健康状况,而无需探测每个服务器。当架构中的每个叶交换机探测架构中的所有服务器时,无论它们是否连接到该架构,都会将大量的控制流量注入到该架构,从而导致大量带宽被占用。
各种实施例涉及一种负载均衡设备,该负载均衡设备被配置为探测、监视、跟踪和报告服务器或运行在该服务器上的应用程序的健康状况。负载均衡设备接收健康状况监视度量值,确定服务器出现故障,并修改网络架构上的负载均衡配置。健康状况监视度量值是通过控制器探测架构中的每个叶交换机来获取的。架构中的每个叶交换机只探测与其连接的服务器。
通过在控制器中包含负载均衡功能,这减少了架构的接入层中的流量,从而可以提高可用容量并降低数据中心内的丢包率。
图1是示出了示例性数据中心网络100的简化示意图,在该示例性数据中心网络中可以实现本文所述的系统和/或方法。如图1所示,示例性数据中心网络100可以包括叶交换机110,这些叶交换机连接至一个或多个主机服务器120,每个主机服务器可以运行虚拟机130的集合。主机服务器120通过特定的子网通信,这导致了该子网安装在所附接的叶交换机110中。
虚拟可扩展局域网(VXLAN)或其他封装可以用于实现叠加网络140。在一些实施例中,在数据中心网络100上将数据包从一个终端设备传递给另一个终端设备。图1中的网络具有叶交换机110和脊交换机140以及服务节点(例如,主机服务器120、VM、容器、微服务、应用程序单元等)。每个脊交换机160连接至所有叶交换机110。主机服务器120连接至叶交换机110。
图1所示的数据中心网络100可以包含映射,使得脊交换机160知道主机服务器120附接至哪个叶交换机110。应当理解的是,叶交换机110和脊交换机160可以具有交换或路由能力。在一个示例中,脊交换机160被当成数据中心网络100的网络架构中的路由反射器。
分布式互联网协议(IP)选播网关可以在叶层或接入层。架构架构基于叶-脊拓扑。存在将架构连接至外部网络的边界叶交换机150。也可以使用具有边界功能的脊交换机160。
表在转发逻辑中的叶交换机110中维护。在一些实施例中,这些类似于在传统网络中维护的转发表。封装允许网络管理员将主机服务器120从一个叶交换机110移动到另一个叶交换机110。在各种实施例中,只有叶交换机110的表了解主机服务器120的身份细节。
边界叶交换机150可以将不同的数据中心连接至IP骨干网,从而允许在一个数据中心和另一个数据中心之间发送和接收第2层流量。为此,在数据中心内,叶路由器各自充当VxLAN隧道端点(VTEP)。VTEP创建并终止VXLAN段,其中每个VTEP将主机服务器120映射到VXLAN段,并执行VXLAN封装和解封装。
在图1中,为了支持叠加网络140,叶交换机110被配置为VTEP,该VTEP创建并终止定义叠加网络140的VXLAN段。例如,叶交换机110执行VXLAN封装和解封装,并将主机服务器120映射到VXLAN段。通常,子网是第3层结构,而VXLAN段是第2层结构。
主机服务器120可以在不同的子网上通信,并且可以在该不同的子网上分配网络地址。较大的网络可以是采用边界网关协议(BGP)作为控制平面来通告较大网络内的IP可达性的任何类型的架构(诸如交换架构)。该架构可以通过在控制平面上分发IP可达性信息来实现最佳的第2层和第3层转发,这在叶层或接入层实现了分布式IP选播网关。
如本文所使用的,术语“子网”是共享一系列连续的IP地址的连接网元的逻辑分组。“主机服务器”120是数据中心网络中的任何终端设备。在该数据中心网络中,主机可以是服务器、客户端或两者兼而有之。另一方面,客户端是具有软件的计算机,该软件使其能够向服务器120发送对特定服务的请求。
图2是根据本主题技术的各个方面示出了数据中心网络中的控制器200的简化示意图。控制器200可以具有服务器上的应用程序210、单独的机器、数据中心网络外部托管的服务或者使用其他一些配置来实现。应用程序210在较大的网络管理框架内管理网络的独立组件,并执行几个关键功能。控制器200上的应用程序210通过收集健康状况度量值来识别、配置、监视、更新和检修路由器、交换机和其他网络组件。健康状况度量值可以包括服务连接的数量、发送给服务或由服务发送的数据包数量、服务响应请求的响应时间以及服务对网络带宽的使用。
在一些实施例中,健康状况度量值可以是服务节点是否出现故障的指示。控制器200可以通过利用服务探测数据中心中的每个叶交换机来获得架构中服务节点的健康状况度量值。在服务中,发布者应用程序创建消息并将其发送给主题。发布者应用程序是多个叶交换机中的每个叶交换机110,而订阅者是其上运行有应用程序210的控制器200。订阅者应用程序创建对主题的订阅,以从该主题接收消息。通信可以是从一个控制器到多个叶交换机。发布者应用程序在服务中创建一个主题,并向该主题发送消息。消息包含有效负载和描述有效负载内容的可选属性。服务转发来自控制器向其订阅消息的主题的消息。服务接收到消息,要么将它们推送给订阅者选择的端点,要么由订阅者从该服务中提取它们。在一些实施例中,控制器200可以向叶交换机110发送请求并接收所请求的数据,而无需订阅由叶交换机110发布的度量值。
可以由架构中的一个或多个交换机来维护存储桶到服务节点的映射。例如,架构中的脊交换机160和叶交换机110可以包括定义服务或散列存储桶到服务节点的映射的软件。当用于数据流的服务节点出现故障时,交换机上的软件可以将该数据流引导至可用的活动节点。存储桶到服务节点的映射还可以在服务节点和架构之间协调,包括该架构中的一个或多个交换机。在一些实施例中,叶交换机110可以被配置为基于存储桶到服务节点的映射来定向或重定向流量,这为每个存储桶的流量转发创建了数据包路径。这可以包括流量存储桶到服务节点的一对一映射,或者流量存储桶到服务节点的多对一映射。映射可以包含在与静态随机存取存储器(SRAM)表510相关联的三态内容可寻址存储器(TCAM)表500中,这将在图5中进一步讨论。
当叶交换机110接收到输入的请求时,控制器200运行以执行适当的算法(例如,轮询调度算法、最少连接算法、最少流量算法、源IP算法等)来将该输入的请求分配给服务器120。控制器200通过向多个叶交换机110传播信息来传递分配。在分配服务器120之后,控制器200通过修改所有叶交换机110上的硬件编程来修改负载均衡配置,以反映替换故障服务器的可用的活动服务器。
当用户还没有配置服务器120时,控制器200可以采用不同的负载均衡算法来修改网络架构中的负载均衡配置。一种算法会将服务请求分配给序列中的下一个服务器。备选地,一种算法会测量每个服务器上的负载来确定哪个服务器拥有最多的可用资源来为请求提供服务,并会向当前客户端连接最少的服务器发送新请求。在另一种算法中,客户端的IP地址用于确定哪个服务器接收请求。
图3是根据本主题技术的各个方面示出了配置有备用节点的数据中心网络100中的控制器200的简化示意图。在本示例中,将边界叶交换机150L4配置给主机服务器120S5。当连接至其他任何叶交换机110的其他任何主机服务器120出现故障时,控制器200会配置主机服务器120S5以接收输入的流量。控制器200会向架构中的所有叶交换机110发送带有故障服务器地址的消息,并指示先前配置的可用活动服务器。
图4是根据本主题技术的各个方面示出了没有配置备用节点的数据中心网络100中的控制器200的简化示意图。在本示例中,没有将边界叶交换机150L4配置给任何主机服务器120。当连接至其他任何叶交换机110的其他任何主机服务器120出现故障时,控制器2000会配置主机服务器120SO以接收输入的流量。可以通过上述各种负载均衡算法来选择主机服务器。
图5根据本主题技术的各个方面示出了每个叶交换机110中的三态内容可寻址存储器(TCAM)表500及其静态随机存取存储器(SRAM)表510。控制器200可以以通信方式耦接至多个叶交换机110,该叶交换机以通信方式耦至TCAM 500和SRAM 510。TCAM 500和SRAM510可以被配置为提供本文所公开的高速搜索。TCAM 500和SRAM 510被配置为在控制器200的指示下执行负载均衡技术。
在数据中心网络中执行转发和监管功能的大多数架顶式(ToR)交换机都利用专门的内容可寻址存储器来存储规则。该存储器容纳在交换机ASIC(专用集成电路)内,这实现了基于硬件的数据包转发。
CPU或处理器从控制器200接收配置请求,以对TCAM 500和SRAM510进行编程。基于TCAM 500和SRAM 510的内容,ASIC将一个接口处输入的数据包定向到另一个接口。
TCAM 500由许多条目组成,并且当给它一个输入字符串时,它会将该字符串与所有条目进行比较,并报告与该输入匹配的第一个条目。TCAM是一种全关联存储器,在该全关联存储器中,不仅可以搜索输入的二进制的“1”或“0”,还可以搜索三进制的“X”(不用在乎)。例如,搜索标签“110X”匹配“1101”和“1100”。如果给定一个请求,执行TCAM 500查找,然后利用二级SRAM 510查找检索所有匹配结果。
通过以前缀长度递减的顺序将转发表前缀加载到TCAM 500中,可以在一个TCAM500周期中确定任何目的地址的最长匹配前缀的TCAM 500索引。利用该索引,可以访问SRAM510的字,其中与匹配前缀相关联的下一跳被存储并完成转发任务。数据包转发的TCAM 500解决方案需要一次TCAM 500搜索和一次SRAM 510访问来转发数据包。
所提供的TCAM 500能够以接近可编程硬件本身的速度运行。TCAM500将搜索输入与存储数据表进行比较。TCAM 500查找出现在数据流中的IP地址。控制器200将每个数据流分配给服务节点,诸如主机服务器。TCAM 500可以包括将流量存储桶映射到服务器的表。控制器200为输入的数据包重写L2包头,以将它们定向到叶交换机110。控制器200通过将数据包交换或路由到由其新的L2包头提供的叶交换机来充当交换机。
在本示例中,TCAM 500存储描述要进行匹配的数据包的属性的数据,而SRAM 510存储描述当SRAM 510中发生相应的匹配时要采取的动作的数据。如果数据包的IP地址在由TCAM 500条目指示的范围内,那么要采取的动作是将该数据包定向到在对应于该TCAM 500条目的SRAM 510条目中列出的服务器。例如,如果数据包的IP地址在XX00X指示的范围内,那么流量被定向到S0。负载均衡功能是通过配置存储在TCAM 500和SRAM 510中的条目来实现的,以实现根据需要将数据包定向到特定的可用活动服务器。
图6是根据本主题技术的各个方面的由控制器200执行的方法600的流程图。应当理解的是,对于本文讨论的任何方法,除非另有说明,否则在各种实施例的范围内,可以以相似或可选的顺序或并行执行额外的、较少的或可选的步骤。方法600可以由控制器200(诸如数据中心网络管理器(DCNM)或类似的系统)执行。
在步骤602,控制器200可以从网络架构中的多个叶交换机110接收健康状况度量值。从每个叶交换机110接收的健康状况监视度量值与由特定叶交换机110管理的本地服务器120相关联。网络架构中任何特定的叶交换机110可以探测特定叶交换机110连接到的服务节点(服务器120、VM、容器、应用程序、服务、进程或其他任何处理/计算单元)。在一些实施例中,叶交换机110可以不需要证明没有安装到该叶交换机的服务器120。探测机制可以是互联网控制消息协议(ICMP)请求(例如,ping和traceroute)和ICMP响应的形式。
在步骤604,控制器200将确定网络架构中的一个或多个服务器120已经发生故障。这可以由正在管理故障服务器的特定叶交换机110传递给控制器200。控制器200订阅由网络架构中的多个叶交换机110发布的消息。每个叶交换机110不断地或连续地发布它们正在管理的一个或多个服务器120的健康状况监视度量值。
在步骤606,控制器200可以在确定服务器已经发生故障之后修改网络架构的负载均衡配置。例如,控制器200可以将由特定叶交换机110接收的关于故障服务器120的信息传播给网络架构中的其他所有叶交换机110。当服务器120发生故障时,所有叶交换机110上的硬件编程被修改,以反映替换该故障服务器的可用活动服务器。
在操作608,控制器200向网络架构中的多个叶交换机110中的每一个发送修改后的负载均衡配置。叶交换机110然后更新对应于故障服务器的TCAM 500条目的SRAM 510条目。TCAM 500和SRAM 510表位于网络架构中的每个叶交换机110中。属于网络架构中的叶交换机110的所有表都将被修改。TCAM 500表将确定地址中是否有匹配,并将通过修改对应于该地址的SRAM 510条目来将数据包发送给特定的可用活动服务器,而不是故障服务器。
图7A和图7B示出了根据各种实施例的系统。当实施各种实施例时,更合适的系统对于本领域普通技术人员来说将是显而易见的。本领域普通技术人员也会容易认识到的是,其他系统也是可以的。
图7A示出了传统总线计算系统700的示例性架构,其中该系统的组件利用总线705彼此电性通信。计算系统700可以包括处理单元(CPU或处理器)710和系统总线705,该系统总线可以将包括系统存储器715(诸如存储设备720中的只读存储器(ROM)和随机存取存储器(RAM)725)在内的各种系统组件耦接至处理器710。计算系统700可以包括高速存储器的缓存712,该缓存712与处理器710直接连接、紧邻该处理器或集成为该处理器的一部分。计算系统700可以将数据从存储器715和/或存储设备730复制到缓存712,以供处理器710快速访问。这样,缓存712可以实现性能提升,这避免了等待数据时的处理器延迟。这些及其他模块可以控制或被配置为控制处理器710执行各种动作。其他系统存储器715也可供使用。存储器715可以包括具有不同性能特性的多种不同类型的存储器。处理器710可以包括任何通用处理器和被配置为控制处理器710的硬件模块或软件模块(诸如存储在存储设备730中的模块1 732、模块2 734和模块3 736)以及专用处理器,其中软件指令结合到实际的处理器设计中。处理器710本质上可以是完全独立的计算系统,包含多个核心或处理器、总线、存储器控制器、缓存等。多核处理器可以是对称的或非对称的。
为了实现用户与计算系统700的交互,输入设备745可以代表任何数量的输入机构,诸如用于语音的麦克风、用于手势或图形输入的触摸保护屏幕、键盘、鼠标、运动输入、语音等。输出设备735还可以是本领域技术人员已知的多个输出机构中的一个或多个。在一些情况下,多模式系统可以使用户能够提供多种类型的输入来与计算系统700通信。通信接口740可以控制和管理用户输入和系统输出。在任何特定的硬件配置上操作可能没有限制,因此这里的基本特性可以很容易地被开发的改进硬件或固件配置所替代。
存储设备730可以是非易失性存储器,并且可以是硬盘或能够存储计算机可访问的数据的其他类型的计算机可读介质,诸如磁带盒、闪存卡、固态存储设备、数字通用光盘、盒式磁带、RAM 725、只读存储器(ROM)720及其组合。
存储设备730可以包括用于控制处理器710的软件模块732、734、736。可以考虑其他硬件或软件模块。存储设备730可以连接至系统总线705。在一个方面,执行特定功能的硬件模块可以包括存储在与必要的硬件组件(诸如处理器710、总线705、输出设备735等)连接的计算机可读介质中的软件组件,以执行该功能。
图7B示出了可以根据一个实施例使用的传统芯片组计算系统750的示例性架构。计算系统750可以包括处理器755,代表了能够执行被配置为执行所识别的计算的软件、固件和硬件的任意数量的物理和/或逻辑上不同的资源。处理器755可以与芯片组760通信,该芯片组可以控制处理器755的输入和输出。在该示例中,芯片组760可以向输出设备765(诸如显示器)输出信息,并且可以向存储设备770读取和写入信息,该存储设备可以包括例如磁性介质和固态介质。芯片组760还可以从RAM 775读取数据并向该RAM写入数据。可以提供用于与各种用户接口组件785接合的桥780,用于与芯片组760接合。用户接口组件785可以包括键盘、麦克风、触摸检测和处理电路、指示设备(诸如鼠标)等。计算系统750的输入可以来自多种来源(机器生成的来源和/或人类生成的来源)中的任何一种。
芯片组760还可以与可以具有不同物理接口的一个或多个通信接口790接合。通信接口790可以包括有线和无线局域网(LAN)、宽带无线网络以及个人局域网的接口。本文公开的用于生成、显示和使用图形用户界面(GUI)的方法的一些应用程序可以包括通过物理接口接收有序数据集,或者可以由机器本身通过处理器755分析存储在存储设备770或RAM775中的数据来生成。此外,计算系统700可以经由用户接口组件785从用户接收输入,并且通过使用处理器755解读这些输入来执行适当的功能(诸如浏览功能)。
应当认识到的是,计算系统700和750可以分别具有一个以上的处理器710和755,或者可以是联网在一起以提供更大处理能力的计算设备组或集群的一部分。
根据上述示例的方法可以利用存储在计算机可读介质中或以其他方式可从计算机可读介质获得的计算机可执行指令来实现。这些指令可以包括例如指令和数据,其促使或以其他方式配置通用计算机、专用计算机或专用处理设备来执行特定功能或一组功能。所使用的计算机资源的各部分可以通过网络访问。计算机可执行指令可以是例如二进制指令、中间格式指令(诸如汇编语言)、固件或源代码。可用于存储指令、所用信息和/或在根据所述示例的方法过程中创建的信息的计算机可读介质的示例包括磁盘或光盘、闪存、配备有非易失性存储器的USB设备、联网存储设备等。实现根据这些公开的方法的设备可以包括硬件、固件和/或软件,并且可以采用多种外形因素中的任何一种。此类外形因素的典型示例包括笔记本电脑、智能手机、小型个人电脑、个人数字助理、机架式设备、独立设备等。本文所述的功能还可以体现在外围设备或扩展卡中。再举个例子,这种功能还可以在电路板上的不同芯片或在单个设备中执行的不同进程中实现。
指令、用于传送这些指令的介质、用于执行这些指令的计算资源以及用于支持这些计算资源的其他结构是用于提供这些公开中描述的功能的手段。
尽管采用了各种示例和其他信息来说明所附权利要求书范围内的各个方面,但是不应基于这些示例中的特定特征或配置来暗示对权利要求书的限制,因为普通技术人员将能够利用这些示例来衍生出各种各样的实现方式。此外,尽管一些主题可能已经用针对结构特征和/或方法步骤的示例的语言进行了描述,但是应当理解的是,所附权利要求书中定义的主题未必限于这些描述的特征或动作。例如,这种功能可以以不同的方式分布或者在除了本文所标识的组件之外的组件中执行。相反,所描述的特征和步骤被公开为所附权利要求书范围内的系统和方法的组件的示例。
Claims (20)
1.一种方法,包括:
在控制器处接收来自网络架构中的多个负载均衡器叶交换机的健康状况监视度量值,其中,来自所述多个负载均衡器叶交换机中的每个叶交换机的健康状况监视度量值与由所述叶交换机管理的本地服务器相关联;
基于所述健康状况监视度量值,确定所述网络架构中的服务器已经发生了故障;以及
修改所述网络架构的负载均衡配置。
2.根据权利要求1所述的方法,其中,特定的负载均衡器叶交换机仅探测所述特定的负载均衡器叶交换机所连接的一个或多个本地服务器。
3.根据权利要求1或2所述的方法,还包括订阅与所述一个或多个服务器的健康状况监视度量值相关联的消息服务。
4.根据前述权利要求中任一项所述的方法,其中,所述多个负载均衡器叶交换机连续发布所述本地服务器的健康状况监视度量值。
5.根据前述权利要求中任一项所述的方法,还包括向所述网络架构中的所述多个负载均衡器叶交换机中的每个负载均衡器叶交换机发送所述负载均衡配置。
6.根据前述权利要求中任一项所述的方法,其中,向所述网络架构中的所述多个负载均衡器叶交换机中的每个负载均衡器叶交换机发送所述负载均衡配置包括:
在每个负载均衡器叶交换机中,更新静态随机存取存储器(SRAM)表中的条目,所述SRAM表对应于所述网络架构中已经发生故障的服务器的三态内容可寻址存储器(TCAM)表。
7.根据权利要求6所述的方法,其中,更新每个负载均衡器叶交换机中的静态随机存取存储器(SRAM)表导致了可用活动服务器的客户端流量的负载均衡。
8.根据权利要求7所述的方法,其中,能够通过用户配置使所述可用活动服务器处于待机状态。
9.根据前述权利要求中任一项所述的方法,其中,与由所述负载均衡器叶交换机管理的本地服务器相关联的健康状况监视度量值包括所述本地服务器上托管的服务的健康状况监视度量值。
10.一种系统,包括:
一个或多个处理器;以及
计算机可读存储介质,其中存储有指令,当所述指令由所述一个或多个处理器执行时,使所述一个或多个处理器执行操作,所述操作包括:
在控制器处接收来自网络架构中的多个负载均衡器叶交换机的健康状况监视度量值,其中,来自所述多个负载均衡器叶交换机中的每个叶交换机的健康状况监视度量值与由所述叶交换机管理的本地服务相关联;
基于所述健康状况监视度量值,确定架构中的一个或多个服务器已经发生了故障;
修改所述网络架构的负载均衡配置;以及
向所述网络架构中的所述多个负载均衡器叶交换机中的每个负载均衡器叶交换机发送所述负载均衡配置。
11.根据权利要求10所述的系统,其中,所述控制器是安装在服务器上的应用程序,所述服务器通过管理网络与所述叶交换机通信。
12.根据权利要求11所述的系统,其中,所述管理网络跟踪整个外部网络的性能。
13.根据权利要求10至12中任一项所述的系统,其中,所述多个负载均衡器叶交换机中的每一个都具有三态内容可寻址存储器(TCAM)表和静态随机存取存储器(SRAM)表。
14.根据权利要求10至13中任一项所述的系统,其中,连接至所述网络架构中已经发生故障的服务器的负载均衡器叶交换机向所述控制器发出通知。
15.根据权利要求14所述的系统,其中,所述控制器向所述多个负载均衡器叶交换机中的每个负载均衡器叶交换机发送消息,以修改在对应于三态内容可寻址存储器(TCAM)表的静态随机存取存储器(SRAM)表中所述网络架构中已经发生故障的服务器的SRAM条目。
16.一种计算机可读介质,承载有一个或多个指令序列,当所述指令序列有一个或多个处理器执行时,使所述一个或多个处理器执行以下步骤:
在控制器处接收来自网络架构中的一个或多个负载均衡器叶交换机的健康状况监视度量值;
确定架构中的一个或多个服务节点已经发生了故障;
基于所述健康状况监视度量值来修改架构中的所述一个或多个服务节点的负载均衡配置;
向所述网络架构中的所述一个或多个负载均衡器叶交换机中的每个负载均衡器叶交换机发送所述负载均衡配置;以及
更新每个叶交换机的静态随机存取存储器(SRAM)表,所述SRAM表对应于所述网络架构中已经发生故障的服务器的三态内容可寻址存储器(TCAM)表。
17.根据权利要求16所述的计算机可读介质,其中,特定的负载均衡器叶交换机仅探测所述特定的负载均衡器叶交换机所连接的一个或多个本地服务节点。
18.根据权利要求16或权利要求17所述的计算机可读介质,其中,所述控制器订阅所述一个或多个服务节点的健康状况监视度量值。
19.根据权利要求16至18中任一项所述的计算机可读介质,其中,所述一个或多个负载均衡器叶交换机连续发布所述一个或多个服务节点的健康状况监视度量值。
20.根据权利要求16至20中任一项所述的计算机可读介质,其中,更新每个负载均衡器叶交换机中的三态内容可寻址存储器(TCAM)表和静态随机存取存储器(SRAM)表导致了可用活动服务节点的客户端流量的负载均衡。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/405,561 US11146490B2 (en) | 2019-05-07 | 2019-05-07 | Distributed load balancer health management using data center network manager |
US16/405,561 | 2019-05-07 | ||
PCT/US2020/029943 WO2020226917A1 (en) | 2019-05-07 | 2020-04-24 | Distributed load balancer health management using data center network manager |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113796048A true CN113796048A (zh) | 2021-12-14 |
Family
ID=70922121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080034013.4A Pending CN113796048A (zh) | 2019-05-07 | 2020-04-24 | 采用数据中心网络管理器的分布式负载均衡器健康状况管理 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11146490B2 (zh) |
EP (1) | EP3967001B1 (zh) |
CN (1) | CN113796048A (zh) |
WO (1) | WO2020226917A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11316713B2 (en) * | 2019-11-25 | 2022-04-26 | International Business Machines Corporation | Virtual drawers in a server |
US11563623B2 (en) * | 2020-10-13 | 2023-01-24 | Arris Enterprises Llc | Home network health metrics reporting |
US20220385570A1 (en) * | 2021-05-28 | 2022-12-01 | Juniper Networks, Inc. | Policy enforcement for bare metal servers by top of rack switches |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8738752B2 (en) * | 2008-01-30 | 2014-05-27 | Cisco Technology, Inc. | Local placement of large flows to assist load-balancing |
US9503366B2 (en) * | 2011-11-16 | 2016-11-22 | Cisco Technology, Inc. | Method and apparatus for SVE redundancy |
US9137141B2 (en) | 2012-06-12 | 2015-09-15 | International Business Machines Corporation | Synchronization of load-balancing switches |
US9137119B2 (en) * | 2013-03-07 | 2015-09-15 | Cisco Technology, Inc. | Efficient handling of multi-destination traffic in an internet protocol fabric data center |
US9559961B1 (en) | 2013-04-16 | 2017-01-31 | Amazon Technologies, Inc. | Message bus for testing distributed load balancers |
US9871712B1 (en) | 2013-04-16 | 2018-01-16 | Amazon Technologies, Inc. | Health checking in a distributed load balancer |
US9137156B2 (en) * | 2013-04-24 | 2015-09-15 | Brocade Communications Systems, Inc. | Scalable and efficient flow-aware packet distribution |
US9325636B2 (en) * | 2013-06-14 | 2016-04-26 | Cisco Technology, Inc. | Scaling interconnected IP fabric data centers |
US9270709B2 (en) * | 2013-07-05 | 2016-02-23 | Cisco Technology, Inc. | Integrated signaling between mobile data networks and enterprise networks |
US9344493B1 (en) * | 2013-07-11 | 2016-05-17 | Juniper Networks, Inc. | Server health monitoring for traffic load balancer |
US9485115B2 (en) * | 2014-04-23 | 2016-11-01 | Cisco Technology, Inc. | System and method for enabling conversational learning in a network environment |
US10050862B2 (en) * | 2015-02-09 | 2018-08-14 | Cisco Technology, Inc. | Distributed application framework that uses network and application awareness for placing data |
US9432294B1 (en) * | 2015-03-21 | 2016-08-30 | Cisco Technology, Inc. | Utilizing user-specified access control lists in conjunction with redirection and load-balancing on a port |
US10171321B2 (en) * | 2015-03-24 | 2019-01-01 | Cisco Technology, Inc. | Adaptive push-based monitoring of networked entities |
US9954783B1 (en) | 2015-03-31 | 2018-04-24 | Cisco Technology, Inc. | System and method for minimizing disruption from failed service nodes |
US10412157B2 (en) | 2015-04-23 | 2019-09-10 | Cisco Technology, Inc. | Adaptive load balancing |
US10523745B2 (en) * | 2015-04-23 | 2019-12-31 | Cisco Technology, Inc. | Load balancing mobility with automated fabric architecture |
US9853903B1 (en) * | 2015-04-23 | 2017-12-26 | Cisco Technology, Inc. | Simultaneous redirecting and load balancing |
US10454830B2 (en) * | 2016-05-05 | 2019-10-22 | City University Of Hong Kong | System and method for load balancing in a data network |
US20180109454A1 (en) * | 2016-10-18 | 2018-04-19 | Cisco Technology, Inc. | Forwarding information base architecture for a hybrid ip and content centric network router |
US10581954B2 (en) * | 2017-03-29 | 2020-03-03 | Palantir Technologies Inc. | Metric collection and aggregation for distributed software services |
US10673761B2 (en) * | 2017-09-29 | 2020-06-02 | Vmware, Inc. | Methods and apparatus to improve packet flow among virtualized servers |
US11394649B2 (en) * | 2018-06-29 | 2022-07-19 | Intel Corporation | Non-random flowlet-based routing |
-
2019
- 2019-05-07 US US16/405,561 patent/US11146490B2/en active Active
-
2020
- 2020-04-24 WO PCT/US2020/029943 patent/WO2020226917A1/en unknown
- 2020-04-24 EP EP20729873.8A patent/EP3967001B1/en active Active
- 2020-04-24 CN CN202080034013.4A patent/CN113796048A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3967001A1 (en) | 2022-03-16 |
WO2020226917A1 (en) | 2020-11-12 |
US11146490B2 (en) | 2021-10-12 |
EP3967001B1 (en) | 2023-12-20 |
US20200358702A1 (en) | 2020-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11283707B2 (en) | Segment routing with fast reroute for container networking | |
EP3355553B1 (en) | Reliable load-balancer using segment routing and real-time application monitoring | |
CN109791482B (zh) | 用于在微服务环境中缩放服务发现的方法和装置 | |
CN112640371B (zh) | 在分布式存储环境上执行数据操作的方法和系统 | |
CN108462594B (zh) | 虚拟专有网络及规则表生成方法、装置及路由方法 | |
US9497112B2 (en) | Virtual data center allocation with bandwidth guarantees | |
US20200213224A1 (en) | Multi-tenant isolation using programmable switch | |
JP2022517199A (ja) | シームレスなマルチクラウドルーティングおよびポリシーの相互接続 | |
CN113273142B (zh) | 通信系统和通信方法 | |
EP3057270A1 (en) | Technologies for modular forwarding table scalability | |
EP3967001B1 (en) | Distributed load balancer health management using data center network manager | |
WO2020135568A1 (en) | Client-equipment-peering virtual route controller | |
CN113261242A (zh) | 使用可编程交换机进行覆盖网络路由 | |
US11824765B2 (en) | Fast redirect of traffic when pods fail | |
WO2018198114A1 (en) | A virtual provider edge cluster for use in an sdn architecture | |
WO2016210207A1 (en) | Source imposition of network routes in computing networks | |
CN112655185B (zh) | 软件定义网络中的服务分配的设备、方法和存储介质 | |
EP3343879B1 (en) | A system and method of managing flow state in stateful applications | |
US11245660B1 (en) | Communication of endpoint information among virtual switches | |
US11336695B2 (en) | Conversation-based policy distribution | |
US20230030452A1 (en) | Adaptive control plane policing | |
US20240048485A1 (en) | Specifying routes to enable layer-2 mobility in hybrid-cloud environments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |