CN106575247A - 计算集群的容错联盟 - Google Patents

计算集群的容错联盟 Download PDF

Info

Publication number
CN106575247A
CN106575247A CN201580043509.7A CN201580043509A CN106575247A CN 106575247 A CN106575247 A CN 106575247A CN 201580043509 A CN201580043509 A CN 201580043509A CN 106575247 A CN106575247 A CN 106575247A
Authority
CN
China
Prior art keywords
node
cluster
working
role
host node
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.)
Granted
Application number
CN201580043509.7A
Other languages
English (en)
Other versions
CN106575247B (zh
Inventor
G·尼沙诺维
A·德阿马托
D·A·迪昂
A·P·塔姆哈内
L·S·科波鲁
N·马利瓦基
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106575247A publication Critical patent/CN106575247A/zh
Application granted granted Critical
Publication of CN106575247B publication Critical patent/CN106575247B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)

Abstract

实施例涉及在集群联盟中组织计算节点以及在集群联盟中重新指派角色。在一种场景中,计算机系统标识将是包括主集群和工作集群的集群联盟的一部分的计算节点。计算机系统向管控影响联盟内的一致性的决定的主集群中的主节点指派指挥者角色,并且还向监测和控制主集群中的其他主节点的至少一个主节点指派领导者角色。计算机系统向从主集群接收工作负荷指派的工作节点指派工作者代理角色,并且还向处理指派的工作负荷的工作节点指派工作者角色。经组织的集群联盟通过允许角色被动态地重新指派给不同的主集群和工作集群中的计算节点来提供容错。

Description

计算集群的容错联盟
背景技术
计算系统已经变得普遍存在,从小型嵌入式设备到手机和平板计算机到PC和后端服务器。这些计算系统中的每个计算系统被设计为处理软件代码。软件使得用户能够执行功能,与由计算系统提供的硬件进行交互。在一些情况下,这些计算系统可以链接在一起以形成计算资源的云。这些云资源可以包括托管、处理、数据存储或其他服务。这些云资源被设计为容错的,使得一个计算系统可以在需要时立即替换另一个计算系统。然而,这样的容错系统可以生成大量的云内网络流量,从而确保系统正常工作。
发明内容
本文中描述的实施例涉及在集群联盟(federation)中组织计算节点以及在集群联盟中重新指派角色。在一个实施例中,一种计算机系统标识将是集群联盟的一部分的计算节点。集群联盟包括主集群和工作集群。主集群包括主节点,主节点是被指派为主角色的计算节点,并且工作集群包括工作节点,工作节点是被指派为工作者角色的计算节点。计算机系统向主集群中的主节点指派指挥者角色。指挥者角色管控影响联盟内的一致性的决定,决定包括控制主集群中的主节点,并且指挥者角色还向监测和控制工作集群中的工作节点的至少一个主节点指派领导者角色。计算机系统还向工作集群中的至少一个工作节点指派工作者代理角色。工作者代理角色从主集群接收工作负荷指派,并且还向处理被指派的工作负荷的至少一个工作节点指派工作者角色。因此,经组织的集群联盟通过允许角色被动态地重新指派给不同的主集群和工作集群中的计算节点来向主集群和工作集群提供容错。
在另一实施例中,一种计算机系统在集群联盟中重新指派角色。计算机系统确定集群联盟中的主集群要跨越故障域来维持规定数目的主节点或主节点的规定分布。主节点是被指派成主角色的计算节点,并且集群联盟包括主集群和工作集群。计算机系统确定主集群低于规定数目的主节点,并且还确定工作集群中的至少一个工作节点可用于重新指派成主节点,其中工作节点是被指派成工作者角色的计算节点。计算机系统然后将所确定的工作节点重新指派成主节点,使得以前的工作节点现在充当主节点。
在又一实施例中,一种计算机系统以不同的方式在集群联盟中重新指派角色。计算机系统确定集群联盟中的工作集群要维持规定数目的工作节点,其中工作节点是被指派成工作者角色的计算节点,并且其中集群联盟包括主集群和工作集群。计算机系统确定工作集群低于规定数目的工作节点,并且还确定主集群中的至少一个主节点可用于重新指派成工作节点,其中主节点是被指派成主角色的计算节点。然后,计算机系统将所确定的主节点重新指派成工作节点,使得以前的主节点现在充当工作节点。
提供本发明内容以便以简化形式介绍将在下文中详细描述中进一步描述的一些概念。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
附加的特征和优点将在下面的描述中阐述,并且从描述中将部分地对于本领域的普通技术人员是明显的,或者可以通过实践本文中的教导而习得。本文中描述的实施例的特征和优点可以通过在所附权利要求中特别指出的工具手段和组合来实现和获得。通过以下描述和所附权利要求,本文中描述的实施例的特征将变得更加明显。
附图说明
为了进一步阐明本文中描述的实施例的上文所述的和其它的特征,将通过参考附图给出更具体的描述。应当理解,这些附图仅仅描绘了本文中描述的实施例的示例,因此不应当被认为是对其范围的限制。将通过使用附图以额外的特性和细节来描述和解释实施例,在附图中:
图1图示了本文中描述的实施例可以在其中进行操作的计算机架构,包括在集群联盟中组织计算节点。
图2图示了用于在群联盟中组织计算节点的示例方法的流程图。
图3图示了用于在群联盟中重新指派角色的示例方法的流程图。
图4图示了用于在群联盟中重新指派角色的替代示例方法的流程图。
图5A图示了将工作节点提升到主节点的实施例。
图5B图示了将主节点降级成工作节点的实施例。
图6A图示了在主节点上实例化(instantiated)工作者角色的实施例。
图6B图示了在工作节点上实例化主角色的实施例。
图7图示了主集群跨越多个集群的实施例。
图8图示了主集群的领导者角色与工作集群的工作者代理角色进行通信的实施例。
具体实施方式
本文中描述的实施例涉及在集群联盟中组织计算节点以及在集群联盟中重新指派角色。在一个实施例中,一种计算机系统标识要成为集群联盟的部分的计算节点。集群联盟包括主集群和工作集群。主集群包括主节点,主节点是被指派成主角色的计算节点,并且工作集群包括工作节点,工作节点是被指派成工作者角色的计算节点。计算机系统向主集群中的主节点指派指挥者角色。至少在一些实施例中,每个主集群上只有一个指挥者。当托管指挥者的节点发生故障并且主集群正在将指挥者角色重新指派给不同的主节点的过程中时,指挥者可能在短暂的时间段内不在。指挥者角色管控影响联盟内的一致性的决定,决定包括控制主集群中的主节点,并且指挥者角色还向监测和控制工作集群中的工作节点的至少一个主节点指派领导者角色。计算机系统还向工作集群中的至少一个工作节点指派工作者代理角色。工作者代理角色从主集群接收工作负荷指派,并且还向处理被指派的工作负荷的至少一个工作节点指派工作者角色。这样,组织的集群联盟通过允许角色被动态地重新指派给不同的主集群和工作集群中的计算节点来向主集群和工作集群提供容错。
在另一实施例中,一种计算机系统在集群联盟中重新指派角色。计算机系统确定集群联盟中的主集群要跨越故障域来维持规定数目的主节点或主节点的规定分布。主节点是被指派成主角色的计算节点,并且集群联盟包括主集群和工作集群。计算机系统确定主集群低于规定数目的主节点,并且还确定工作集群中的至少一个工作节点可用于重新指派成主节点,其中工作节点是被指派成工作者角色的计算节点。计算机系统然后将所确定的工作节点重新指派给主节点,使得以前的工作节点现在充当主节点。
在又一实施例中,一种计算机系统以不同的方式在集群联盟中重新指派角色。计算机系统确定集群联盟中的工作集群要维持规定数目的工作节点,其中工作节点是被指派成工作者角色的计算节点,并且其中集群联盟包括主集群和工作集群。计算机系统确定工作集群低于规定数目的工作节点,并且还确定主集群中的至少一个主节点可用于重新指派成工作节点,其中主节点是被指派成主角色的计算节点。然后,计算机系统将所确定的主节点重新指派给工作节点,使得以前的主节点现在充当工作节点。
以下讨论现在涉及可以执行的多种方法和方法动作。应当注意,尽管方法动作可以以特定顺序讨论或者在流程图中示出为以特定顺序发生,但是不是必需地要求特定顺序,除非特别说明或者由于某个动作依赖于在执行该动作之前被完成的另一动作。
本文中描述的实施例可以实现各种类型的计算系统。这些计算系统现在越来越多地采取各种各样的形式。计算系统可以例如是手持式设备、家用电器、膝上型计算机、台式计算机、大型机、分布式计算系统、或甚至通常不被认为是计算系统的设备。在本说明书和权利要求书中,术语“计算系统”被广义地定义为包括具有至少一个物理和有形处理器以及其上能够具有可以由处理器执行的计算机可执行指令的物理和有形存储器的任何设备或系统(或其组合)。计算系统可以分布在网络环境上并且可以包括多个组成计算系统。
如图1所示,计算系统101通常包括至少一个处理单元102和存储器103。存储器103可以是物理系统存储器,其可以是易失性、非易失性或两者的某种组合。术语“存储器”在本文中也可以用于指代非易失性大容量存储器,诸如物理存储介质。如果计算系统是分布式的,则处理、存储器和/或存储能力也可以是分布式的。
如本文中所使用的,术语“可执行模块”或“可执行部件”可以指代可以在计算系统上执行的软件对象、例行程序或方法。本文中描述的不同的部件、模块、引擎和服务可以被实现为在计算系统上执行的对象或进程(例如,作为单独的线程)。
在下面的描述中,参考由一个或多个计算系统执行的动作来描述实施例。如果这样的动作以软件实现,则执行动作的相关联的计算系统的一个或多个处理器响应于已经执行计算机可执行指令来指导计算系统的操作。例如,这样的计算机可执行指令可以在形成计算机程序产品的一个或多个计算机可读介质上实施。这样的操作的示例涉及数据的操纵。计算机可执行指令(和被操纵的数据)可以存储在计算系统101的存储器103中。计算系统101还可以包含使得计算系统101能够通过有线或无线网络与其他消息处理器进行通信的通信信道。
本文中描述的实施例可以包括或利用包括计算机硬件的专用或通用计算机系统,计算机硬件例如一个或多个处理器和系统存储器,如下文更详细讨论的。系统存储器可以被包括在总存储器103内。系统存储器还可以被称为“主存储器”,并且包括由至少一个处理单元102通过存储器总线可寻址的存储器位置,在这种情况下,地址位置在存储器总线本身上被断言(asserted)。系统存储器在传统上是易失性的,但是本文中描述的原理也适用于其中系统存储器部分地或甚至完全地是非易失性存储器的情况。
在本发明的范围内的实施例还包括用于携带或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可以由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令和/或数据结构的计算机可读介质是计算机存储介质。携带计算机可执行指令和/或数据结构的计算机可读介质是传输介质。因此,通过示例而非限制的方式,本发明的实施例可以包括至少两种截然不同种类的计算机可读介质:计算机存储介质和传输介质。
计算机存储介质是存储计算机可执行指令和/或数据结构的物理硬件存储介质。物理硬件存储介质包括计算机硬件,诸如RAM、ROM、EEPROM、固态驱动器(“SSD”)、闪存、相变存储器(“PCM”)、光盘存储器、磁盘存储器或其他磁存储设备、或者可以用于以计算机可执行指令或数据结构的形式存储程序代码的任何其他硬件存储设备,这些计算机可执行指令或数据结构可以由通用或专用计算机系统访问和执行以实现本发明的所公开的功能。
传输介质可以包括网络和/或数据链路,网络和/或数据链路可以用于携带以计算机可执行指令或数据结构形式的程序代码,并且网络和/或数据链路可以由通用或专用计算机系统访问。“网络”被定义为使得能够在计算机系统和/或模块和/或其他电子设备之间传送电子数据的一个或多个数据链路。当通过网络或另一通信连接(硬连线、无线、或硬连线或无线的组合)向计算机系统传递或提供信息时,计算机系统可以将连接视为传输介质。上文的组合也应当被包括在计算机可读介质的范围内。
此外,在到达各种计算机系统部件时,计算机可执行指令或数据结构形式的程序代码可以从传输介质被自动传递到计算机存储介质(反之亦然)。例如,通过网络或数据链路被接收的计算机可执行指令或数据结构可以被缓存在网络接口模块(例如,“NIC”)内的RAM中,然后最终被传递给计算机系统RAM和/或较少易失性计算机存储介质。因此,应当理解,计算机存储介质可以被包括在也(或甚至主要地)利用传输介质的计算机系统部件中。
计算机可执行指令包括例如当在一个或多个处理器处执行时使得通用计算机系统、专用计算机系统或专用处理设备执行特定功能或功能组的指令和数据。计算机可执行指令可以是例如二进制、诸如汇编语言的中间格式指令、或甚至源代码。
本领域技术人员将理解,本文中描述的原理可以在具有很多类型的计算机系统配置的网络计算环境中实践,包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持设备、多处理器系统、基于微处理器或可编程消费电子产品、网络PC、小型计算机、大型计算机、移动电话、PDA、平板、寻呼机、路由器、交换机等。本发明还可以在分布式系统环境中实现,在分布式系统环境中,通过网络而被链接(通过硬连线数据链路、无线数据链路、或通过硬连线和无线数据链路的组合)的本地和远程计算机系统都执行任务。因此,在分布式系统环境中,计算机系统可以包括多个组成计算机系统。在分布式系统环境中,程序模块可以位于本地和远程存储器存储设备中。
本领域技术人员还将理解,本发明可以在云计算环境中实现。云计算环境可以是分布式的,尽管这不是必需的。如果是分布式的,则云计算环境可以在组织内在国际间分布和/或具有跨越多个组织而被拥有的部件。在本说明书和所附权利要求中,“云计算”被定义为用于实现对可配置计算资源(例如,网络、服务器、存储装置、应用和服务)的共享池的按需网络访问的模型。“云计算”的定义不限于在被恰当地部署时可以从这样的模型获得的任何其他众多优点。
此外,本文中描述的系统架构可以包括多个独立的部件,每个部件贡献于作为整体的系统的功能。这种模块化使得在解决平台可伸缩性的问题时能够具有增加的灵活性,并且为此目的提供了各种优点。通过使用具有有限的功能范围的较小规模的部件,可以更容易地管理系统复杂性和增长。通过使用这些松散耦合的模块来增强平台容错。单独的部件可以根据业务需要的指示而逐渐增长。模块化开发还意味着减少新功能的上市时间。可以添加或减少新功能而不会影响核心系统。
图1图示了了至少一个实施例可以在其中被采用的计算机架构100。计算机架构100包括计算机系统101。计算机系统101可以是任何类型的本地或分布式计算机系统,包括云计算系统。计算机系统101包括用于执行各种不同功能的模块。例如,通信模块104可以被配置成与其他计算系统进行通信。通信模块104可以包括可以从其他计算系统接收数据和/或向其他计算系统传输数据的任何有线或无线通信装置。通信模块104可以被配置成与数据库、移动计算设备(诸如移动电话或平板计算机)、嵌入式或其他类型的计算系统交互。
计算机系统101可以包括其它模块,包括节点标识模块107、角色指派模块108和确定模块109。在一些实施例中,管理的或其他的用户105可能希望将一组计算节点组织成联合的(federated)集群(例如110)。用户105可以提供指示每种类型有多少节点要在集群联盟110中的输入106。当术语在本文中使用时,“集群联盟”或“联合的集群”是多个独立集群的聚合,这些集群一起协作以提供联盟范围的服务,并且还保持单个集群甚至在与其他集群的连接丢失和/或其他集群的故障期间继续操作的能力。每个集群由一个或多个物理计算节点组成,其可以包括计算系统,诸如服务器刀片、硬件处理器或处理核心、大型机、嵌入式或其他类型的计算系统。因此,集群是一起工作以运行工作负荷并且根据需要进行故障转移以提供容错的计算系统的集合。集群联盟可以包括各种类型的集群,包括主集群和工作集群。
本文中所提及的“主集群”是运行负责监测工作集群并且做出故障转移决定的软件部件的集群。本文中所提及的“工作集群”是运行指派的工作负荷的集群。工作集群将尝试在工作集群的节点内进行本地故障转移。如果工作集群无法转移工作负荷,则可以使用主集群来托管工作负荷。“领导者角色”是被托管在主集群上的软件部件,其实现联盟的控制和监测逻辑。“工作者代理”是被托管在工作集群上的软件部件,其接受来自主集群的指派并且向主集群提供状态更新。“工作负荷”是在集群节点上运行的软件应用或服务或其他代码部分,其可以根据需要故障转移到其他集群节点。“故障转移”包括在故障情况下将工作负荷从一个集群节点快速转移到另一集群节点的能力,或者出于性能、负载平衡或其他原因将工作负荷快速转移到更理想的集群节点的能力。
本文中的实施例联合(federate)任何类型的集群并且可以与基本上任何集群解决方案一起使用,这些集群解决方案使得工作负荷能够被托管在计算节点上并且在硬件或软件故障的情况下提供工作负荷的故障转移。实施例提供容错储存库(例如,集群数据库),其使得在主集群上运行的代理能够存留用于运行集群联盟110的信息。在主集群上被托管的主代理软件可以被分割成一次仅在一个主集群节点处活动的指挥部件、以及监测和控制其他节点并且在其他集群节点上活动的领导部件。因此,如图1所示,主集群111可以具有多个不同的主节点(包括112A、112B、112C和其他(未示出)),其中一个主节点具有指挥者角色114(主节点112B),而主节点112A具有领导者角色113,并且主节点112C具有领导者角色113。如下文将进一步描述的,工作节点和主节点可以具有在不同时间被指派给它们的不同的角色,并且计算节点本身可以被重新指派成工作节点或主节点。
指挥者角色114(或者在本文中简称为“指挥者”)被配置成做出决定,包括但不限于以下:1)哪些领导负责哪些工作集群,2)哪些工作节点负责托管哪些工作负荷,3)决定提升来自工作集群的节点以退出其当前工作集群并且加入主集群,或者降级主节点以使其变为工作节点并且加入工作集群。这使得能够在主机或工作集群上的故障计算节点从它们各自的集群中的计算节点池几乎立即被替换。指挥者角色在集群数据库(其可以是主集群的本地或远程数据库)中记录其决定。领导者角色(或本文中的“领导者”)监测对集群数据库的改变,并且了解它们是否需要将指挥者决定传达给他们负责的工作集群。领导者向工作集群发送指派并且从工作节点接收状态更新。如果领导者在预定的超时间隔(无论是以秒、分钟、小时等为单位)内没有接收到状态更新,则领导者将缺少响应解释为故障,并且将在集群数据库中记录故障。
在一些实施例中,指挥者114可以了解工作者的失败并且决定如何重新分配由工作者托管的工作负荷。一旦做出关于工作负荷的重新分配的决定,指挥者将在集群数据库中记录该决定。然后,领导者可以了解新的工作负荷,并且将其传达给他们负责的工作集群。在领导者故障的情况下,指挥者可以通过由主集群111传送的通知来获知该情况,其报告主节点向下或向上事件。当指挥者了解主节点故障时,指挥者在剩余的主集群节点之间重新指派由该特定主集群节点所监测的工作集群节点。然后,指挥者将此决定写入主数据库中。领导者将经由数据库通知更改来了解此决定,并且开始监控和控制新获取的工作集群。
当故障主集群节点回到线上时,其通过将它的状态在集群数据库中记录成在线来通知指挥者114它可用于监测。主机(master)了解此情况,并且将一些工作集群重新指派给新的主集群节点,以在主集群节点上更好地分布监测和控制负载。如果故障主集群节点在预定时间段内没有来到线上,并且活动主集群节点的数目低于活动主集群节点数目的期望阈值,则指挥者可以选择从工作集群中移除节点并且将其加入到主集群中以在主集群111中保留期望的冗余度。相反的操作也是可能的,如果被监测的工作集群的数目较小,则指挥者可以选择从主集群中移除节点,并且重新加入工作集群117(或形成新的工作集群)。工作集群可以是单节点集群或多节点集群。在多节点工作集群中,将尝试在工作集群的其他节点上重新启动失败的工作负荷。一旦工作集群的恢复尝试耗尽,在工作集群上运行的工作者代理可以请求主集群帮助将失败的工作负荷转移到在其他位置。
在一些实施例中,数据库可以被分割以使得指挥者和领导者能够通过改变数据库中的条目来通信。可以对数据库的列进行分割以防止冲突,从而使得任何特定值能够只被存在于集群上的一个实体改变。例如,对于给定的工作负荷,可以存在“预期状态”字段和“当前状态”字段。预期状态仅可以由仅在主集群中的一个集群节点上活动的指挥者来改变。当前状态可以由托管该工作负荷的工作者的领导者来改变(该比率在主集群中是一比一)。因此,通过以这种方式分割数据,领导者和指挥者部件可以彼此交互,而不必获取数据库锁或任何其他同步机制。将在下文分别关于图2、图3和图4的方法200、300和400进一步描述指挥者与领导者之间的通信、集群内的节点的提升和降级以及将节点组织成容错集群。
考虑到上文所述系统和架构,参考图2、图3和图4的流程图将更好地理解可以根据所公开的主题而被实现的方法。为了简化说明,方法被示出和描述为一系列框。然而,应当理解和明白的是,所要求保护的主题不受框的顺序的限制,因为一些框可以以与本文中所描绘和描述的顺序不同的顺序发生和/或与其他框同时发生。此外,可能不需要所有所图示的框来实现下文中所描述的方法。
图2图示了用于在集群联盟中组织计算节点的方法200的流程图。现在将频繁参考环境100的部件和数据来描述方法200。
方法200包括标识要成为集群联盟的部分的一个或多个计算节点的动作,集群联盟包括至少一个主集群和至少一个工作集群,主集群包括至少一个主节点,至少一个主节点包括被指派成主角色的计算节点,工作集群包括至少一个工作节点,至少一个工作节点包括被指派成工作者角色的计算节点(动作210)。例如,计算系统101的节点标识模块可以标识节点,节点包括要作为集群联盟110的部分的主节点112A-C和工作节点118A-C。集群联盟包括主集群111和一个或多个工作集群117。主节点中的一个主节点被指派成指挥者114(图1中的主节点112B),而其它主节点具有领导者角色113。集群联盟110的节点可以经由通信链路116与计算机系统101通信。尽管被示出为与集群联盟110分离,但是将理解,计算机系统101可以是集群联盟的部分,并且本身可以是主节点或工作节点。
如上文所述,工作节点(118A-C)被配置成处理所指派的工作负荷。这些工作负荷指派可以存储在工作节点上,使得如果所有工作节点都要停止运转并重新启动,则工作节点可以查看它们的存储的指派并且继续处理,而无需咨询主集群。因此,无论由于通信故障、由于主节点的完全故障、由于软件故障或者任何其他原因,工作节点可以在主集群111不在的情况下继续操作。允许工作节点能够存储其指派的工作负荷使得集群联盟在面对故障时能够更加鲁棒,并且即使当与主集群的通信丢失时也使得能够取得进展。
方法200还包括将指挥者角色指派给主集群中的主节点的动作,指挥者角色管控影响联盟内的一致性的决定,并且还向至少一个主节点指派领导者角色,该主节点监测和控制主集群中的其他主节点(动作220)。计算机系统101的角色指派模块108可以向例如主集群111中的主节点112B指派指挥者角色114。指挥者作出影响一致性的决定,这意味着它控制可能出现冲突的情况,诸如哪些工作负荷已经被指派给哪些工作集群,或哪些工作集群已经被指派给哪些主节点。因此,如果决定由不同当事方以两种不同的方式做出决定,则指挥者将承担该决定的责任,并且将作为该决定的唯一仲裁者,从而避免冲突。以这种方式,指挥者角色可以确保每次只由一个节点来处理每个工作负荷,从而避免在两个节点(同时或随后)要处理工作负荷的情况下发生的冲突结果。
指挥者角色114可以被指派给集群联盟110中的任何主节点。如果该主节点失败,则指挥者角色可以被转移到主集群111中的另一主节点(例如,节点112C)。管理员105或其他用户可以针对指挥者建立策略,以指示哪些主节点要在最初或者另一主节点发生故障时承担指挥者角色。管理员还可以通过向规定节点手动指派指挥者角色来覆盖任何现有策略。管理员还可以建立要被维护以用于容错的规定数目的主节点或工作节点。如果任何集群的数目变得太低,则可以提升或降级主节点或工作节点,以确保能够维持管理员为容错而建立的节点数。
方法200还包括向工作集群中的至少一个工作节点指派工作者代理角色的动作,工作者代理角色从主集群接收工作负荷指派,并且还向处理指派的工作负荷的至少一个工作节点指派工作者角色,其中通过允许角色被动态地重新指派给不同的主集群和工作集群中的计算节点,组织集群联盟为主集群和工作集群提供容错(步骤230)。计算机系统101的角色指派模块108可以例如将工作者代理角色119指派给工作节点118A,将工作者角色120指派给工作节点118B和118C。这些工作节点可以处理指派给它们的工作负荷。工作者代理可以被配置成向领导者报告回并且为由该工作集群117正在处理的各种工作负荷提供状态更新。
在一些实施例中,集群联盟110可以执行某些步骤以平衡跨联盟的各个集群上的处理负载。例如,如图6A所示,工作者角色602可以被指派给主节点601。因此,作为工作者角色的部分,可以在主集群中的主节点上托管各种工作负荷指派。这可以有利地在主节点工作繁忙并且具有可用的处理资源的情况下执行。这些资源可以被用于处理与工作者角色相关联的工作负荷。类似地,在图6B中,主角色604可以被指派给工作节点603。在被指派主角色604的同时,工作节点603可以执行通常与主节点相关联的功能,诸如监测和控制工作集群中的工作节点。因此,以这种方式,图1的角色指派模块108可以在集群联盟110内根据需要指派和重新指派角色。可以根据策略或者在管理员或其他用户的指导下重新指派这些角色。
在一些情况下,指派给主节点的角色或功能可以分布在主集群111中的多个主节点当中。例如,诸如监测工作节点或发送更新的工作负荷的指示等功能可以分布在主集群111中的主节点112A和112C当中或者在其他主节点(未示出)当中。以这种方式,领导者角色113功能可以分布在多个主节点上以平衡负载。在一些情况下,主节点功能可以沿着物理硬件边界分布,以减少计算系统之间的网络流量。例如,一个主节点可以被指派给每个硬件机架以监测相同硬件机架内的工作集群。这可以减少或消除交叉机架网络流量。
工作者代理可以被配置成与主节点上的主代理进行通信。工作者代理可以代表其相应的工作集群与主代理进行通信。因此,如图8所示,领导者角色803A可以被指派给主节点805B,而另一个领导者角色803B可以被指派给主节点805C,而指挥者角色802被指派给主节点805A。领导者角色可以分别与工作节点808A1和808A2上的它们各自的工作者代理角色(807A和807B)进行通信。工作者代理角色可以接收针对它们各自的工作节点的工作负荷更新。例如,工作者代理角色807A可以代表工作集群806A的工作节点(例如,808B1、808C1、808D1等)从主节点805B接收通信,而工作者代理角色807B可以代表工作集群806B的工作节点(例如,808B2、808C2、808D2等)从主节点805C接收通信。通信可以包括工作负荷指派状态更新以及接收附加工作负荷指派或移除工作负荷指派。领导者可以在指挥者802的指导下发出通信。指挥者可以通过改变主集群801的集群804内的数据值来与领导者进行通信。
在一些情况下,领导者803A可以指示工作者代理角色807A将给定工作负荷从一个工作节点转移给另一工作节点。当领导者根据健康更新数据确定工作节点已经变得不健康时,这样的转移可能发生。在其它情况下,工作集群806A中的工作节点可以在工作集群中的其它工作节点之间转移所指派的工作负荷,而无需主节点的知识。这在工作节点的集群在相同的服务器机架上的实施例中可能是有利的。在这种情况下,可以在该机架上的工作节点之间转移工作负荷,而不必创建网络流量来将工作负荷转移到另一机架。
如前所述,可以在联盟集群内重新指派角色。例如,在联盟集群110内,指挥者和领导者角色可以被重新指派给主集群111内的不同主节点。这些主节点可以在同一服务器机架上,或者可以在不同集群中的不同机架上。在一些情况下,指挥者可以监测主节点并且可以确定被指派领导者角色的主节点已经变得不可用。在这种情况下,该领导者角色将故障转移到另一主节点。类似地,其他主节点可以监测指挥者,并且在确定指挥者角色已经变得不可用时,指挥者角色可以故障转移到主集群中的另一主节点。以这种方式,即使运行指挥者的主节点发生故障,指挥者角色也被转移到另一主节点并在其上运行,集群联盟向前发展。这样的角色的动态重新指派作为集群托管服务、应用程序和其他工作负荷提供了高水平的容错和可靠性。
在一些实施例中,容错水平可以由管理员105或其他用户规定。在一些情况下,容错水平可以由服务等级协议(SLA)定义。SLA可以例如规定在任何给定时间运行一定数目的主节点或工作节点。如果集群联盟下降到低于主节点、工作节点、工作集群等的那个数目,则指挥者将确定需要添加多少节点或集群以维持SLA。因此,指挥者角色可以连续监测在集群联盟110中是否有足够的主节点或工作节点可用以维持容错SLA。指挥者角色还可以被配置成监测在集群联盟110中是否有足够的主节点或工作节点可用以跨一个或多个故障域而维持适当的分布。如果SLA定义的数目的节点未运行,则指挥者可以指示要实例化更多的主节点或工作节点。在一些情况下,这可以包括将过剩的主节点移动到工作集群或将过剩的工作节点移动到主集群,如下文关于图3和图4的方法300和400所解释的。
图3图示了用于在群联盟中重新指派角色的方法300的流程图。现在将频繁参考环境100的部件和数据来描述方法300。
方法300包括确定集群联盟中的主集群要维持规定数目的主节点的动作,主节点包括被指派领导者角色的计算节点,集群联盟包括主集群以及一个或多个工作集群(动作310)。例如,计算机系统101的确定模块109可以确定主集群111要维持一定数目的主节点,并且主节点的数目低于主节点的规定数目(动作320)。确定模块109还可以确定工作集群中的至少一个工作节点可用于重新指派作为主节点(动作330)。角色指派模块108然后可以将所确定的工作节点重新指派给主节点,使得以前的工作节点现在充当主节点(动作340)。
例如,如图5A所示,工作节点可以被提升为主集群内的主节点。工作集群504包括两个工作节点(505和506),但是将理解,工作集群可以包括基本上任何数目或工作节点。如上文所述,确定模块109可以确定主集群501具有太少的运行节点,并且可以确定工作集群504可以分出工作节点。因此,工作节点506可以被重新指派作为主集群501的部分。以这种方式,主集群除了主节点502之外还增加了主节点503。新的主节点可以承担任何主角色(包括领导者角色或指挥者角色),或者如图6A所示,可以根据需要承担工作者角色。
在一个实施例中,确定模块109可以确定被重新指派作为主节点的工作节点出于各种不同原因中的任何原因已经变得不健康,但仍然能够处理工作负荷。例如,节点的网卡可能间歇地工作,或者它的某些随机存取存储器可能被损坏或处于坏的状态等。在这种情况下,节点可能被降级回工作节点。
在一些实施例中,除了至少一个主集群节点(例如502)之外,工作集群节点505和506可以是相同的服务器机架的部分。在这种情况下,重新指派的工作节点506可以从与主节点在相同的硬件机架上的工作节点中选择。主集群的主节点可以位于相同的物理硬件机架上,或者位于不同的机架上,并且可以位于集群联盟中的不同的主集群中(其可以在不同的地理位置)。如在图7中所示的,由虚线包围的主集群可以包括来自三个(或更多个)不同集群的节点。因此,主集群包括来自集群701、702和703的节点。每个主节点可以包括控制本地节点的主代理,如在集群702中所示出的。实际上,在一些实施例中,图7中所示的每个集群在其自己的服务器机架上。因此,主集群可以包括来自可以被托管在不同硬件机架上的不同集群的主节点。在SLA在适当位置并且主集群具有不足的运行节点的情况下,来自其他集群的计算节点可以被重新指派给主集群以遵循SLA。
图4图示了用于在群联盟中重新指派角色的方法400的流程图。现在将频繁参考环境100的部件和数据来描述方法400。
方法400包括确定集群联盟中的工作集群要维持规定数目的工作节点的动作,工作节点包括被指派工作者角色的计算节点,集群联盟包括主集群以及一个或更多工作集群(动作410)。计算机系统101的确定模块109可以确定工作集群117要维持一定数目的工作节点,并且还可以确定工作集群低于该数目的工作节点(动作420)。确定模块109还可以确定主集群111中的至少一个主节点可用于重新指派作为工作节点(动作430)。然后,角色指派模块108可以将可用主节点重新指派成工作节点,使得以前的主节点现在充当工作节点(动作440)。
在图5B所示的实施例中,主集群501具有主节点502和503。工作集群504需要另一工作节点,并且因此,主节点507被重新指派成工作节点。因此,最终,工作集群504具有工作节点505和新的工作节点508。如图6B中所示的,新的工作节点可以根据需要承担主角色,或者可以执行工作者角色的任务。在一些情况下,主代理可以实现成在主集群数据库中记录提升和降级决定。然后可以由指挥者来访问这些,以确保在任何给定时间有适当数目的工作节点和主节点在运行。此外,可以实现容错领导者代理,其在特定领导者代理负责的决定的范围内做出关于节点提升和降级的独立决定。因此,领导者代理可以确定其管理的工作集群内的节点要被提升为主节点,或者可以确定其主集群内的主节点要被降级为工作节点。以这种方式,可以实现领导者以在每个主集群和/或工作集群中保持适当数目的节点。
因此,提供了在集群联盟中组织计算节点的方法、系统和计算机程序产品。此外,提供了在群联盟中重新指派角色的方法、系统和计算机程序产品。
本文中描述的概念和特征可以在不脱离其精神或描述性特征的情况下以其它具体形式实施。所描述的实施例在所有方面都被认为仅是说明性的而不是限制性的。因此,本公开的范围由所附权利要求而不是前述描述来指示。在权利要求的等同物的含义和范围内的所有改变将被包括在其范围内。

Claims (10)

1.一种用于在集群联盟中组织计算节点的计算机实现的方法,所述计算机实现的方法由一个或多个处理器执行,所述一个或多个处理器执行用于所述计算机实现的方法的计算机可执行指令,并且所述计算机实现的方法包括:
标识将是所述集群联盟的一部分的一个或多个计算节点,所述集群联盟包括至少一个主集群和至少一个工作集群,所述主集群包括至少一个主节点,所述至少一个主节点包括被指派为领导者角色的计算节点,所述工作集群包括至少一个工作节点,所述至少一个工作节点包括被指派为工作者角色的计算节点;
向所述主集群中的主节点指派指挥者角色,所述指挥者角色管控影响所述联盟内的一致性的决定,并且还向监测并且控制所述工作集群中的工作节点的至少一个主节点指派领导者角色;
向所述工作集群中的至少一个工作节点指派工作者代理角色,所述工作者代理角色从所述主集群接收工作负荷指派,并且还向处理经指派的所述工作负荷的至少一个工作节点指派工作者角色,以及
其中经组织的所述集群联盟通过允许角色被动态地重新指派给不同的主集群和工作集群中的计算节点来提供用于所述主集群和所述工作集群的容错。
2.根据权利要求1所述的计算机实现的方法,其中主节点功能分布在所述主集群中的多个主节点当中,所述主节点功能包括监测工作节点。
3.根据权利要求2所述的计算机实现的方法,其中主节点功能沿着物理硬件边界分布以减小计算系统之间的网络流量。
4.根据权利要求1所述的计算机实现的方法,还包括:
确定被指派为所述指挥者角色的所述主节点已经变得不可用;以及
故障转移到所述主集群中的不同的第二主节点,使得所述指挥者角色被转移给所述不同的第二主节点并且在所述不同的第二主节点上运行。
5.一种用于在集群联盟中重新指派角色的计算机实现的方法,所述计算机实现的方法由一个或多个处理器执行,所述一个或多个处理器执行用于所述计算机实现的方法的计算机可执行指令,并且所述计算机实现的方法包括:
确定所述集群联盟中的主集群要维持规定数目的主节点,所述主节点包括被指派为主角色的计算节点,所述集群联盟包括主集群以及一个或多个工作集群;
确定所述主集群低于所述规定数目的主节点;
确定工作集群中的至少一个工作节点可用于重新指派作为主节点,所述工作节点包括被指派为工作者角色的计算节点;以及
将所确定的所述工作节点重新指派为主节点,使得以前的工作节点现在充当主节点。
6.根据权利要求5所述的计算机实现的方法,还包括:
确定被重新指派为主节点的所述工作节点已经变得不健康;以及
将重新指派的所述工作节点再次降级为工作节点。
7.根据权利要求5所述的计算机实现的方法,其中重新指派的所述工作节点是从与所述主节点在相同的硬件机架内的工作节点被选择的。
8.根据权利要求5所述的计算机实现的方法,其中确定所述主集群低于所规定的数目的主节点包括确定主节点的数目低于由服务等级协议(SLA)规定的数目,并且其中所确定的所述工作节点被重新指派给主节点以遵循所述SLA。
9.一种计算机系统,包括:
一个或多个处理器;
一个或多个计算机可读介质,所述一个或多个计算机可读介质上存储有计算机可执行指令,所述计算机可执行指令在由所述一个或多个处理器执行时使得所述计算系统执行用于在集群联盟中重新指派角色的计算机实现的方法,所述计算机实现的方法包括:
确定所述集群联盟中的主集群要维持规定数目的主节点,所述主节点包括被指派主角色的计算节点,所述集群联盟包括主集群以及一个或多个工作集群;
确定所述主集群低于所述规定数目的主节点;
确定工作集群中的至少一个工作节点可用于重新指派作为主节点,所述工作节点包括被指派为工作者角色的计算节点;以及
将所确定的所述工作节点重新指派为主节点,使得以前的工作节点现在充当主节点。
10.根据权利要求9所述的计算机系统,还包括实现多个容错领导者代理,所述多个容错领导者代理被配置成在特定领导者代理负责的决定的范围内做出关于节点提升和降级的独立决定。
CN201580043509.7A 2014-08-13 2015-08-07 计算集群的容错联盟 Active CN106575247B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/459,066 2014-08-13
US14/459,066 US10177994B2 (en) 2014-08-13 2014-08-13 Fault tolerant federation of computing clusters
PCT/US2015/044313 WO2016025333A1 (en) 2014-08-13 2015-08-07 Fault tolerant federation of computing clusters

Publications (2)

Publication Number Publication Date
CN106575247A true CN106575247A (zh) 2017-04-19
CN106575247B CN106575247B (zh) 2020-05-15

Family

ID=53836907

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580043509.7A Active CN106575247B (zh) 2014-08-13 2015-08-07 计算集群的容错联盟

Country Status (4)

Country Link
US (1) US10177994B2 (zh)
EP (1) EP3180692A1 (zh)
CN (1) CN106575247B (zh)
WO (1) WO2016025333A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107783731A (zh) * 2017-08-07 2018-03-09 荣科科技股份有限公司 一种大数据实时处理方法及处理系统
CN109462493A (zh) * 2018-09-13 2019-03-12 国网浙江省电力有限公司丽水供电公司 一种基于ping的局域网络监测方法
CN109714198A (zh) * 2018-12-14 2019-05-03 中国航空工业集团公司西安航空计算技术研究所 一种混合结构网络分布式容错计算机系统容错管理方法
CN112860427A (zh) * 2019-11-27 2021-05-28 北京金山云网络技术有限公司 容器集群的负载均衡方法、装置与容器集群

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11290524B2 (en) 2014-08-13 2022-03-29 Microsoft Technology Licensing, Llc Scalable fault resilient communications within distributed clusters
US10177994B2 (en) 2014-08-13 2019-01-08 Microsoft Technology Licensing, Llc Fault tolerant federation of computing clusters
US9459933B1 (en) * 2015-01-30 2016-10-04 Amazon Technologies, Inc. Contention and selection of controlling work coordinator in a distributed computing environment
CN107153595B (zh) * 2016-03-04 2020-03-17 福建天晴数码有限公司 分布式数据库系统的故障检测方法及其系统
JP2018025985A (ja) * 2016-08-10 2018-02-15 富士通株式会社 情報処理装置、制御装置及びプログラム
US10356203B2 (en) 2016-12-15 2019-07-16 The Charles Stark Draper Laboratory, Inc. Fault-tolerant operational group on a distributed network
US10326643B2 (en) * 2016-12-27 2019-06-18 The Charles Stark Draper Laboratory, Inc. Self-configuring fault-tolerant operational group
US10983880B2 (en) * 2018-07-31 2021-04-20 Hewlett Packard Enterprise Development Lp Role designation in a high availability node
CN111338647B (zh) * 2018-12-18 2023-09-12 杭州海康威视数字技术股份有限公司 一种大数据集群管理方法和装置
US11847012B2 (en) * 2019-06-28 2023-12-19 Intel Corporation Method and apparatus to provide an improved fail-safe system for critical and non-critical workloads of a computer-assisted or autonomous driving vehicle
US11119872B1 (en) * 2020-06-02 2021-09-14 Hewlett Packard Enterprise Development Lp Log management for a multi-node data processing system
US20220237090A1 (en) * 2021-01-25 2022-07-28 Core Scientific, Inc. Autonomous organization and role selection of homogenous workers
JP7240439B2 (ja) * 2021-04-30 2023-03-15 株式会社日立製作所 アップデート装置、アップデート方法、およびプログラム
CN113342520B (zh) * 2021-05-31 2024-03-08 中国工商银行股份有限公司 一种基于联邦实现的跨集群远程持续发布方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050188075A1 (en) * 2004-01-22 2005-08-25 International Business Machines Corporation System and method for supporting transaction and parallel services in a clustered system based on a service level agreement
US20060053216A1 (en) * 2004-09-07 2006-03-09 Metamachinix, Inc. Clustered computer system with centralized administration
US7987152B1 (en) * 2008-10-03 2011-07-26 Gadir Omar M A Federation of clusters for enterprise data management
US20110228668A1 (en) * 2010-03-22 2011-09-22 Infosys Technologies Limited Method and system for automatic failover of distributed query processing using distributed shared memory
CN103064765A (zh) * 2012-12-28 2013-04-24 华为技术有限公司 数据恢复方法、装置及集群存储系统
CN103810136A (zh) * 2012-11-13 2014-05-21 王明仁 计算机集群、用于计算机集群的管理方法及系统

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163055A (en) 1990-06-27 1992-11-10 Telefonaktiebolaget Lm Ericsson Communications system using a fault tolerant protocol
US5321813A (en) 1991-05-01 1994-06-14 Teradata Corporation Reconfigurable, fault tolerant, multistage interconnect network and protocol
US5533039A (en) 1993-09-22 1996-07-02 Storage Technology Corporation Fault tolerant fiber optic protocol for determining beginning of data
US7480653B2 (en) 1996-10-22 2009-01-20 International Business Machines Corporation System and method for selective partition locking
US7590739B2 (en) 1999-11-22 2009-09-15 Akamai Technologies, Inc. Distributed on-demand computing system
US7480256B2 (en) 2002-08-14 2009-01-20 Pluris, Inc. Scalable and fault-tolerant link state routing protocol for packet-switched networks
TWI235299B (en) 2004-04-22 2005-07-01 Univ Nat Cheng Kung Method for providing application cluster service with fault-detection and failure-recovery capabilities
US7979862B2 (en) 2004-12-21 2011-07-12 Hewlett-Packard Development Company, L.P. System and method for replacing an inoperable master workload management process
US9652346B2 (en) * 2008-01-24 2017-05-16 Symcor Inc. Data consistency control method and software for a distributed replicated database system
US8243742B2 (en) * 2008-03-05 2012-08-14 Oracle International Corporation System and method for enforcement of service level agreements and policies across geographical domains
US20100162036A1 (en) 2008-12-19 2010-06-24 Watchguard Technologies, Inc. Self-Monitoring Cluster of Network Security Devices
JP5223707B2 (ja) 2009-02-05 2013-06-26 富士通株式会社 ソフトウェア更新指示プログラム、ソフトウェア更新指示方法、および情報処理装置
CA2753747C (en) * 2010-12-14 2019-08-13 International Business Machines Corporation Method for operating a node cluster system in a network and node cluster system
US8874747B2 (en) 2010-12-27 2014-10-28 Nokia Corporation Method and apparatus for load balancing in multi-level distributed computations
US8745434B2 (en) 2011-05-16 2014-06-03 Microsoft Corporation Platform for continuous mobile-cloud services
US20140007092A1 (en) 2012-06-30 2014-01-02 Microsoft Corporation Automatic transfer of workload configuration
US20140047342A1 (en) 2012-08-07 2014-02-13 Advanced Micro Devices, Inc. System and method for allocating a cluster of nodes for a cloud computing system based on hardware characteristics
TWI592808B (zh) 2012-08-17 2017-07-21 High-speed automated cluster system deployment using virtual disks
US9635088B2 (en) 2012-11-26 2017-04-25 Accenture Global Services Limited Method and system for managing user state for applications deployed on platform as a service (PaaS) clouds
US11290524B2 (en) 2014-08-13 2022-03-29 Microsoft Technology Licensing, Llc Scalable fault resilient communications within distributed clusters
US10177994B2 (en) 2014-08-13 2019-01-08 Microsoft Technology Licensing, Llc Fault tolerant federation of computing clusters

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050188075A1 (en) * 2004-01-22 2005-08-25 International Business Machines Corporation System and method for supporting transaction and parallel services in a clustered system based on a service level agreement
US20060053216A1 (en) * 2004-09-07 2006-03-09 Metamachinix, Inc. Clustered computer system with centralized administration
US7987152B1 (en) * 2008-10-03 2011-07-26 Gadir Omar M A Federation of clusters for enterprise data management
US20110228668A1 (en) * 2010-03-22 2011-09-22 Infosys Technologies Limited Method and system for automatic failover of distributed query processing using distributed shared memory
CN103810136A (zh) * 2012-11-13 2014-05-21 王明仁 计算机集群、用于计算机集群的管理方法及系统
CN103064765A (zh) * 2012-12-28 2013-04-24 华为技术有限公司 数据恢复方法、装置及集群存储系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107783731A (zh) * 2017-08-07 2018-03-09 荣科科技股份有限公司 一种大数据实时处理方法及处理系统
CN109462493A (zh) * 2018-09-13 2019-03-12 国网浙江省电力有限公司丽水供电公司 一种基于ping的局域网络监测方法
CN109462493B (zh) * 2018-09-13 2021-12-28 国网浙江省电力有限公司丽水供电公司 一种基于ping的局域网络监测方法
CN109714198A (zh) * 2018-12-14 2019-05-03 中国航空工业集团公司西安航空计算技术研究所 一种混合结构网络分布式容错计算机系统容错管理方法
CN109714198B (zh) * 2018-12-14 2022-03-15 中国航空工业集团公司西安航空计算技术研究所 一种混合结构网络分布式容错计算机系统容错管理方法
CN112860427A (zh) * 2019-11-27 2021-05-28 北京金山云网络技术有限公司 容器集群的负载均衡方法、装置与容器集群

Also Published As

Publication number Publication date
EP3180692A1 (en) 2017-06-21
US10177994B2 (en) 2019-01-08
CN106575247B (zh) 2020-05-15
WO2016025333A1 (en) 2016-02-18
US20160050123A1 (en) 2016-02-18

Similar Documents

Publication Publication Date Title
CN106575247A (zh) 计算集群的容错联盟
US11805073B2 (en) Controlling placement of workloads of an application within an application environment
Toffetti et al. Self-managing cloud-native applications: Design, implementation, and experience
EP3455728B1 (en) Orchestrator for a virtual network platform as a service (vnpaas)
CN105830394B (zh) 虚拟网络策略的配置方法、系统及其虚拟网元和网管系统
EP2810164B1 (en) Managing partitions in a scalable environment
CN105376083B (zh) 节能控制方法、管理服务器和网络设备
CN107113192A (zh) 云系统中的资源管理
CN106663030A (zh) 在分布式集群中的可扩展故障恢复通信
CN108268321A (zh) 用于迁移工作负载的方法和机架系统
CN107003983A (zh) 配置网络
US10439957B1 (en) Tenant-based management system and method for distributed computing environments
CN107534570A (zh) 虚拟化网络功能监控
Boudi et al. AI-based resource management in beyond 5G cloud native environment
CN103034536A (zh) 提高有状态应用的可用性
CN112532669B (zh) 一种网络边缘计算方法、装置及介质
CN105531688A (zh) 提供作为其它服务的资源的服务
US20200213196A1 (en) Methods, systems, and computer readable mediums for selecting and configuring a computing system to support a replicated application
EP3731093B1 (en) Service location management in computing systems
CN109792393A (zh) 虚拟化离线计费系统中的软件升级
WO2023093354A1 (en) Avoidance of workload duplication among split-clusters
Aleyadeh et al. Optimal container migration/re-instantiation in hybrid computing environments
US9535758B2 (en) Managing data distribution to networked client computing devices
US10761520B1 (en) Cluster-based work cell orchestrator
CN108780408A (zh) 基于全局实现号识别逻辑实体的实现状况

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
GR01 Patent grant
GR01 Patent grant