CN103973470A - 用于无共享集群的集群管理方法和设备 - Google Patents

用于无共享集群的集群管理方法和设备 Download PDF

Info

Publication number
CN103973470A
CN103973470A CN201310036718.1A CN201310036718A CN103973470A CN 103973470 A CN103973470 A CN 103973470A CN 201310036718 A CN201310036718 A CN 201310036718A CN 103973470 A CN103973470 A CN 103973470A
Authority
CN
China
Prior art keywords
cluster
back end
configuration information
tabulation
tabulation image
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
Application number
CN201310036718.1A
Other languages
English (en)
Inventor
张莉苹
陈奇
D·S·梅里克塞蒂安
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN201310036718.1A priority Critical patent/CN103973470A/zh
Priority to US14/161,883 priority patent/US9342390B2/en
Publication of CN103973470A publication Critical patent/CN103973470A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Abstract

本发明提供了一种用于无共享集群的集群管理方法和设备。无共享集群包括一个或多个运行有操作系统和应用的数据节点。所述集群管理方法包括:收集与所述数据节点相关联的集群配置信息;基于所收集的集群配置信息,获得制表图像;以及响应于确定一个或多个所述数据节点上的操作系统发生故障,将所获得的制表图像发送到发生故障的数据节点,以恢复其操作系统。利用本发明的方法和设备,能够快速、有效地恢复无共享集群中的故障数据节点,而无需中断集群应用或再平衡集群数据。

Description

用于无共享集群的集群管理方法和设备
技术领域
本发明总体上涉及无共享集群领域,特别地,涉及恢复无共享集群中的故障数据节点的集群管理方法和设备。
背景技术
近年来,诸如Hadoop的无共享集群因其能够可靠、高效地对大量数据进行分布式处理而受到广泛关注并实现了飞速发展。无共享集群通常包含相当大量的机器和盘来存储大量数据。为了实现最大的商业价值,大数据管理需要优先确保集群数据可靠性、集群可伸缩性以及集群管理效率。
图7A中示出了一种典型的现有无共享集群的架构。通常,无共享集群中的一台或多台机器被指定为主节点,例如图7A中的主节点710;集群中的其余机器可以被指定为从节点或称数据节点,例如图7A中的数据节点720。通常,每个主节点用于监管一个或多个数据节点;至少部分数据节点上运行有操作系统(OS)和应用,其中应用一般包括集群应用和/或本地应用。如图7B所示,数据节点上通常还包括本地数据文件、集群数据副本以及应用文件。
然而,现有的无共享集群架构存在危害集群可靠性的隐患。例如,当集群中的某数据节点上的操作系统故障时,该数据节点上的应用以及本地和集群数据都不能再直接使用。
尽管某些无共享文件系统(例如,Hadoop分布式文件系统(HDFS))能够通过使用存储在其他数据节点上的集群数据副本来保证集群数据的可靠性,但是恢复故障数据节点上的操作系统和应用是无法通过集群性能来实现的。即,目前还不支持对集群中某一数据节点上的操作系统、本地数据文件和本地及集群应用的自动重启和失效备援(failover)。
更严重的,若存储某一集群数据的所有数据节点碰巧都出现故障,那么不仅这些数据节点上的操作系统、本地数据文件和本地及集群应用不能再直接使用,而且其共同存储的集群数据也不能立即被集群的用户直接使用。
为了恢复操作系统出现故障的数据节点,现在用户不得不:
(i)在集群中的其他数据节点上备份故障数据节点上存储的集群数据;
(ii)逐一(若有多个数据节点故障的话)从集群中手动移除故障的数据节点;
(iii)在故障的数据节点上格式化先前的部分数据并重新安装操作系统;
(iv)在故障的数据节点上重新配置多种应用;
(v)使得故障的数据节点成为一个新数据节点,并手动将该新节点添加到当前运行的无共享集群中;并且
(vi)根据需要,在添加了新数据节点的集群中出现不平衡时进行数据再平衡。
在上述(i)至(vi)操作中,数据节点中的数据都不能再被直接利用,并且运行中的应用会丢失。操作(i)中备份先前的大量数据以及操作(iii)中数据格式化和安装操作系统将花费相当长的时间。对集群移除/添加节点需要停止运行的集群应用。
而且,将新数据节点添加到集群中通常会使得集群不平衡,还需要在新集群中进行数据再平衡,这会影响集群性能。如果集群中数据节点数量较大,例如有100个节点,那么即使仅一个节点的操作系统故障,也将需要花费大约10天时间来使得整个集群再平衡并恢复原集群中的所有节点。随着集群规模越来越大,上述故障恢复处理将花费越来越长的时间,成本极为昂贵。
因此,需要一种能够快速、便捷地恢复无共享集群中的故障数据节点的集群管理方法和设备。
进一步,需要一种能够有效地同时恢复无共享集群中的多个故障数据节点的集群管理方法和设备。
发明内容
本发明的一个目的在于,快速、有效地恢复无共享集群中的故障数据节点,而无需中断集群应用或再平衡集群数据。
为此,本发明的集群管理方法和设备动态地收集集群配置信息,并根据收集的集群配置信息获得包括最小运行操作系统和最小运行应用的制表图像(tabulation image),然后响应于确定集群中的一个或多个数据节点上的操作系统发生故障,将所获得的制表图像发送到故障数据节点,从而快速地恢复其操作系统和应用。
根据本发明的第一方面,提供了一种用于无共享集群的集群管理方法,其中,所述无共享集群包括一个或多个运行有操作系统和应用的数据节点,所述集群管理方法包括:收集与所述数据节点相关联的集群配置信息;基于所收集的集群配置信息,获得制表图像;以及响应于确定一个或多个所述数据节点上的操作系统发生故障,将所获得的制表图像发送到发生故障的数据节点,以恢复其操作系统。
在一个实施例中,获得制表图像包括:获取无共享集群的集群运行状态信息;利用所获取的集群运行状态信息和所收集的集群配置信息,生成包括最小运行操作系统的制表图像;以及存储所生成的制表图像。在一个实施例中,所生成的制表图像还可以包括最小运行应用。
在一个实施例中,响应于确定多个数据节点的操作系统发生故障,在这多个数据节点上并行安装所述最小运行操作系统。在一个实施例中,响应于在所述多个数据节点上安装了最小运行操作系统,在所述多个数据节点上并行安装最小运行应用。在一个实施例中,对所述最小运行操作系统和最小运行应用中至少一个的安装是在所述多个数据节点的内存中进行的。
根据本发明的第二方面,提供了一种用于无共享集群的集群管理器,其中所述无共享集群包括一个或多个运行有操作系统和应用的数据节点,所述集群管理器包括:集群配置信息收集装置,配置为收集与所述数据节点相关联的集群配置信息;制表图像获得装置,配置为基于由所述集群配置信息收集装置收集的集群配置信息,获得制表图像;和故障恢复装置,配置为响应于确定一个或多个所述数据节点上的操作系统发生故障,将由所述制表图像获得装置获得的制表图像发送到发生故障的数据节点,以恢复其操作系统。
根据本发明的第三方面,提供了一种无共享集群,包括:一个或多个运行有操作系统和应用的数据节点;一个或多个主节点,每个主节点用于监管一个或多个所述数据节点;以及如本发明第二方面所述的集群管理器,配置为处理所述数据节点上运行的操作系统或应用的故障。
利用本发明的方法和设备,提供了透明的操作系统/应用的失效备援,能够无需中断集群应用或再平衡集群数据地恢复无共享集群中的故障数据节点,从而提高了集群性能。
利用本发明的方法和设备,节省了安装操作系统/应用的时间、人力和成本,从而在数据节点发生故障时能够快速恢复,例如几秒内。进一步,利用包括最小运行操作系统的制表图像来实现恢复,从而降低操作系统部件复杂性,加速恢复处理。更进一步,对操作系统的安装可以在数据节点机器的内存中而非在直接连接盘中进行,使得恢复处理更加快捷。
利用本发明的方法和设备,消除了在多个故障数据节点上的重复安装操作,从而节省了时间和成本。
利用本发明的方法和设备,在数据节点上的操作系统崩溃时能够几乎直接再利用节点上存储的数据,不会丢失应用,从而提高了数据节点的安全性。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器的框图。
图2例示了根据本发明实施例的无共享集群的架构,包括集群管理器。
图3是例示了根据本发明实施例的由图2中的集群管理器执行的集群管理方法的总流程图。
图4例示了获得制表图像的一种具体实现处理。
图5示意性地示出了根据本发明实施例的集群管理器的一个运行实例。
图6示意性地示出了根据本发明实施例的集群管理器的功能框图。
图7A和7B示出了一种典型的现有无共享集群的架构。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
所属技术领域的技术人员知道,本发明可以实现为系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。
也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instruction means)的制造品(manufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图1显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图1所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
如前所述,本发明的集群管理方法和设备动态地收集集群配置信息,并根据收集的集群配置信息获得包括最小运行操作系统和最小运行应用的制表图像,然后响应于确定集群中的一个或多个数据节点上的操作系统发生故障,将所获得的制表图像发送到故障数据节点,从而快速地恢复其操作系统和应用。
下面将参照图2至图6来具体地描述本发明的实施例。图2例示了根据本发明实施例的无共享集群的架构。与图7A中示出的现有技术的无共享集群的架构相比,本发明实施例的集群架构除了主节点210和数据节点220之外,还包括集群管理器230。主节点210可以监管一个或多个运行有操作系统和应用的数据节点220。集群管理器230配置为根据从集群中的主节点210收集关于数据节点220的配置信息,处理数据节点220上操作系统或应用的故障。
图3是例示了根据本发明实施例的由图2中的集群管理器230执行的集群管理方法300的总流程图。首先,在步骤302中,收集与数据节点220相关联的集群配置信息。
在一个实施例中,集群配置信息可以包括与在数据节点220上运行的操作系统相关的信息。在另一实施例中,集群配置信息还可以包括与在数据节点220上运行的应用相关的信息,包括集群应用和/或本地应用。
在一个实施例中,集群管理器230可以从主节点210获取该主节点210所监管的数据节点220的集群配置信息,例如交互变化的集群矩阵配置和动作。
接着,在步骤304中,基于所收集的数据节点的集群配置信息,获得制表图像。在一个实施例中,制表图像可以包括数据节点上的最小运行操作系统,例如操作系统内核。在另一实施例中,制表图像还可以包括数据节点上的最小运行应用,包括最小运行集群和/或本地应用。
在一个实例中,集群管理器230可以动态地收集数据节点的集群矩阵配置信息,优化并精炼出最小运行操作系统和应用,由此生成用于数据节点的制表图像。利用包括最小运行操作系统的制表图像来实现恢复,从而降低操作系统部件复杂性,加速恢复处理。
需要说明的是,集群管理器230对集群配置信息的收集可以定时或实时进行。由此,集群管理器始终保持最新的制表图像。例如,当有集群矩阵配置更新时,生成最新制表图像。
图4详细地例示了步骤304的一种具体实现处理400。处理400可以在步骤402开始。在步骤402中,获取无共享集群的集群运行状态信息。集群运行状态信息例如可以包括集群文件系统配置属性和数据存储状态信息、集群分布式计算作业进度配置属性和运行作业应用状态信息,等等。在一个实施例中,集群运行状态信息还可以包括集群节点信息,例如指示主节点和数据节点的信息。在这种情况下,获取集群运行状态信息的步骤可以在方法300中的收集与数据节点相关联的集群配置信息的步骤302之前执行。
接下来,利用所获取的集群运行状态信息和在步骤302中所收集的集群配置信息,进行制表图像的生成。在步骤404中,可以获取先前存储的制表图像。然后,将所获取的集群运行状态信息和所收集的集群配置信息与先前存储的制表图像进行比较(步骤406),例如比较两者的外观和行为以找到不一致之处。若发现两者不一致,接着,基于不一致之处的比较结果,生成最新的包括最小运行操作系统和/或最小运行应用的制表图像(步骤408)。例如,通过整合集群运行状态信息和集群配置信息来生成最新的制表图像。最后,在步骤410中,存储所生成的制表图像。
下面返回到图3的集群管理方法300。在获得了制表图像之后,接下来,在步骤306中,先确定是否有数据节点上的操作系统发生故障。若有,将在步骤304中获得的制表图像发送到发生故障的数据节点,以恢复其操作系统,并可选地恢复其上运行的应用。
在一个实施例中,响应于在步骤306中确定多个数据节点的操作系统发生故障,可以在这多个数据节点上并行安装制表图像中的最小运行操作系统,进而可选地并行安装制表图像中的最小运行应用。在一个实施例中,对操作系统和/或应用的安装可以在数据节点机器的内存中而非在直接连接盘中进行,这可以使得恢复处理更加快捷。
需要说明的是,集群管理器230中保存的制表图像可以不止一个。例如,无共享集群中包含的数据节点可以根据功能分为一个或多个数据节点组,假设每个数据节点组中的所有数据节点上运行的操作系统和应用相同,而不同数据节点组中的数据节点上的操作系统或应用不同。可以针对每个数据节点组来分别执行图3中的步骤302和304。即,针对每个数据节点组,基于从该组所包括的数据节点收集的集群配置信息,获得该组的制表图像。在执行步骤306之前,先确定操作系统发生故障的数据节点所属的数据节点组,然后将集群管理器230中保存的与该数据节点组对应的制表图像发送到发生故障的数据节点。
图5示意性地示出了图2中的集群管理器的一个运行实例。首先,将无共享集群的固件/网络配置信息输入到集群管理器中,因而集群管理器具有所有集群节点的信息。接着,在集群管理器上从当前制表图像获得集群数据节点列表。集群管理器定期向数据节点列表中的数据节点发送并行网络访问命令,以查看数据节点的运行是否正常,以及其上的操作系统是否故障。响应于访问命令,数据节点将检查结果返回到集群管理器,集群管理器由此确定并记录故障数据节点列表。
然后,集群管理器触发集群制表图像更新请求,以捕捉最新运行的集群制表图像。集群管理器向数据节点和集群作业运行实例请求OS及作业应用信息和状态,数据节点和集群作业运行实例响应于集群管理器的请求而将OS及作业应用变换制表返回到集群管理器。接着,集群管理器向无共享文件系统(FS)实例收集文件系统制表,文件系统实例响应于集群管理器的请求而将文件系统变换制表返回到集群管理器。
集群管理器整合所收集到的变换制表,由此生成最新的集群制表图像,该制表图像包括数据节点的最小运行操作系统和最小运行应用。通过将最新的集群制表图像与集群管理器中存储的当前集群制表图像在外观和行为方面进行比较,以查找两者的不一致处。若两者相同,则保持集群管理器中当前存储的集群制表图像不变;若两者不同,则更新当前存储的制表图像使其与最新的制表图像一致,此外可以将更新事件记录到集群管理器的日志中。
然后,集群管理器将最新的集群制表图像分发到先前获得的故障数据节点列表中的数据节点,使得在数据节点的内存中并行安装最小运行操作系统,并在安装完成之后将操作系统安装状态返回到集群管理器。集群管理器在接收到表示操作系统安装完成的信息之后,指示数据节点在其内存中并行启动集群应用和/或本地应用,之后数据节点将节点应用启动状态返回到集群管理器。
至此,集群管理器完成了对集群中故障数据节点的恢复处理。如前所述,图5中例示的上述全部操作可以在秒级时间内完成。数据节点上存储的各种数据可以直接再被使用,而且所恢复的数据节点仍可被运行的集群识别。
图6示出了根据本发明实施例的用于无共享集群的集群管理器600的功能框图。集群管理器600的功能模块可以由实现本发明原理的硬件、软件或硬件和软件的结合来实现。本领域技术人员可以理解的是图6中所描述的功能模块可以组合起来或者划分成子模块,从而实现上述发明的原理。因此,本文的描述可以支持对本文描述的功能模块的任何可能的组合、或者划分、或者更进一步的限定。
集群管理器600能够快速、有效地恢复无共享集群中的故障数据节点,而无需中断集群应用或再平衡集群数据。无共享集群可以包括一个或多个运行有操作系统和应用的数据节点。无共享集群还可以包括一个或多个主节点,每个主节点用于监管一个或多个数据节点。集群管理器600可以包括集群配置信息收集装置620、制表图像获得装置640和故障恢复装置660。
集群配置信息收集装置620可以配置为收集与数据节点相关联的集群配置信息。在一个示例中,集群配置信息可以包括与在数据节点上运行的操作系统相关的信息。在另一示例中,集群配置信息还可以包括与在数据节点上运行的应用相关的信息。进一步,在数据节点上运行的应用可以包括集群应用和/或本地应用。在一个实施例中,集群配置信息收集装置620可以包括配置为从主节点收集该主节点监管的数据节点的集群配置信息的装置。
制表图像获得装置640可以配置为基于由集群配置信息收集装置620收集的集群配置信息,获得制表图像。在一个实施例中,制表图像获得装置640可以包括运行状态获取装置642、制表图像生成装置644和制表图像存储装置646。
运行状态获取装置642可以配置为获取无共享集群的集群运行状态信息。制表图像生成装置644可以配置为利用由运行状态获取装置642获取的集群运行状态信息和由集群配置信息收集装置620收集的集群配置信息,生成包括最小运行操作系统的制表图像。在一个实施例中,制表图像生成装置644生成的制表图像还可以包括最小运行应用。制表图像存储装置646可以配置为存储所生成的制表图像。
在一个示例中,制表图像生成装置644可以包括先前制表图像获取装置652、制表图像比较装置654和制表图像生成执行装置656。先前制表图像获取装置652可以配置为获取先前存储的制表图像。制表图像比较装置654可以配置为将由运行状态获取装置642获取的集群运行状态信息和由集群配置信息收集装置620收集的集群配置信息与由先前制表图像获取装置652获取的先前存储的制表图像进行比较。制表图像生成执行装置656可以配置为基于制表图像比较装置654的比较结果,生成最新的包括最小运行操作系统的制表图像。
故障恢复装置660可以配置为响应于确定一个或多个数据节点上的操作系统发生故障,将由制表图像获得装置640获得的制表图像发送到发生故障的数据节点,以恢复其操作系统。在一个实施例中,故障恢复装置660还配置为响应于确定多个数据节点的操作系统发生故障,在这多个数据节点上并行安装最小运行操作系统。在一个实施例中,故障恢复装置660还配置为响应于在多个数据节点上安装了最小运行操作系统,在这多个数据节点上并行安装最小运行应用。在一个实施例中,所述对最小运行操作系统和最小运行应用中至少一个的安装是在数据节点的内存中进行的。
在一个实施例中,无共享集群中包含的数据节点可以分为一个或多个数据节点组,假设每个数据节点组中的所有数据节点上运行的操作系统和应用相同。制表图像获得装置640可以包括:配置为针对每个数据节点组,基于从该组所包括的数据节点收集的集群配置信息,获得该组的制表图像的装置。故障恢复装置660可以包括:配置为确定操作系统发生故障的数据节点所属的数据节点组的装置;和配置为将与该数据节点组对应的制表图像发送到发生故障的数据节点的装置。
本发明的集群管理方法和设备可以与多种现有的无共享集群相结合,例如直接安装在集群管理层中。作为一个示例,本发明的集群管理方法和设备可以结合到IBM公司的Big Data平台的集群管理层中。
利用本发明的方法和设备,提供了透明的操作系统/应用的失效备援,能够无需中断集群应用或再平衡集群数据地恢复无共享集群中的故障数据节点,从而提高了集群性能。
利用本发明的方法和设备,节省了安装操作系统/应用的时间、人力和成本,从而在数据节点发生故障时能够快速恢复,例如几秒内。进一步,利用包括最小运行操作系统的制表图像来实现恢复,从而降低操作系统部件复杂性,加速恢复处理。更进一步,对操作系统的安装可以在数据节点机器的内存中而非在直接连接盘中进行,使得恢复处理更加快捷。
利用本发明的方法和设备,消除了在多个故障数据节点上的重复安装操作,从而节省了时间和成本。
利用本发明的方法和设备,在数据节点上的操作系统崩溃时能够几乎直接再利用节点上存储的数据,不会丢失应用,从而提高了数据节点的安全性。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (21)

1.一种用于无共享集群的集群管理方法,其中所述无共享集群包括一个或多个运行有操作系统和应用的数据节点,所述集群管理方法包括:
收集与所述数据节点相关联的集群配置信息;
基于所收集的集群配置信息,获得制表图像;以及
响应于确定一个或多个所述数据节点上的操作系统发生故障,将所获得的制表图像发送到发生故障的数据节点,以恢复其操作系统。
2.根据权利要求1所述的集群管理方法,其中,所述集群配置信息包括与在数据节点上运行的操作系统相关的信息。
3.根据权利要求2所述的集群管理方法,其中,所述集群配置信息还包括与在数据节点上运行的应用相关的信息,其中应用包括集群应用和本地应用中的至少一个。
4.根据权利要求1至3中任一项所述的集群管理方法,其中,获得制表图像包括:
获取无共享集群的集群运行状态信息;
利用所获取的集群运行状态信息和所收集的集群配置信息,生成包括最小运行操作系统的制表图像;以及
存储所生成的制表图像。
5.根据权利要求4所述的集群管理方法,其中响应于确定一个或多个所述数据节点上的操作系统发生故障,将所获得的制表图像发送到发生故障的数据节点以恢复其操作系统包括:
响应于确定多个数据节点的操作系统发生故障,在这多个数据节点上并行安装所述最小运行操作系统。
6.根据权利要求5所述的集群管理方法,其中所述制表图像还包括最小运行应用,并且
其中响应于确定一个或多个所述数据节点上的操作系统发生故障,将所获得的制表图像发送到发生故障的数据节点以恢复其操作系统还包括:
响应于在所述多个数据节点上安装了最小运行操作系统,在所述多个数据节点上并行安装最小运行应用。
7.根据权利要求6所述的集群管理方法,其中,对所述最小运行操作系统和最小运行应用中至少一个的安装是在所述多个数据节点的内存中进行的。
8.根据权利要求4所述的集群管理方法,其中,生成包括最小运行操作系统的制表图像包括:
获取先前存储的制表图像;
将所获取的集群运行状态信息和所收集的集群配置信息与先前存储的制表图像进行比较;以及
基于比较结果,生成最新的包括最小运行操作系统的制表图像。
9.根据权利要求1至3中任一项所述的集群管理方法,其中,所述无共享集群还包括一个或多个主节点,每个主节点用于监管一个或多个所述数据节点,
其中收集与所述数据节点相关联的集群配置信息包括:从所述主节点收集该主节点监管的数据节点的集群配置信息。
10.根据权利要求1至3中任一项所述的集群管理方法,其中,所述无共享集群中包含的数据节点分为一个或多个数据节点组,每个数据节点组中的所有数据节点上运行的操作系统和应用相同,
其中获得制表图像包括:针对每个数据节点组,基于从该组所包括的数据节点收集的集群配置信息,获得该组的制表图像;并且
其中将所获得的制表图像发送到发生故障的数据节点包括:
确定操作系统发生故障的数据节点所属的数据节点组;和
将与该数据节点组对应的制表图像发送到发生故障的数据节点。
11.一种用于无共享集群的集群管理器,其中所述无共享集群包括一个或多个运行有操作系统和应用的数据节点,所述集群管理器包括:
集群配置信息收集装置,配置为收集与所述数据节点相关联的集群配置信息;
制表图像获得装置,配置为基于由所述集群配置信息收集装置收集的集群配置信息,获得制表图像;和
故障恢复装置,配置为响应于确定一个或多个所述数据节点上的操作系统发生故障,将由所述制表图像获得装置获得的制表图像发送到发生故障的数据节点,以恢复其操作系统。
12.根据权利要求11所述的集群管理器,其中,所述集群配置信息包括与在数据节点上运行的操作系统相关的信息。
13.根据权利要求12所述的集群管理器,其中,所述集群配置信息还包括与在数据节点上运行的应用相关的信息,其中应用包括集群应用和本地应用中的至少一个。
14.根据权利要求11至13中任一项所述的集群管理器,其中,所述制表图像获得装置包括:
运行状态获取装置,配置为获取无共享集群的集群运行状态信息;
制表图像生成装置,配置为利用由所述运行状态获取装置获取的集群运行状态信息和由所述集群配置信息收集装置收集的集群配置信息,生成包括最小运行操作系统的制表图像;以及
制表图像存储装置,配置为存储所生成的制表图像。
15.根据权利要求14所述的集群管理器,所述故障恢复装置还配置为:响应于确定多个数据节点的操作系统发生故障,在这多个数据节点上并行安装所述最小运行操作系统。
16.根据权利要求15所述的集群管理器,其中所述制表图像还包括最小运行应用,并且
其中所述故障恢复装置还配置为:响应于在所述多个数据节点上安装了最小运行操作系统,在所述多个数据节点上并行安装最小运行应用。
17.根据权利要求16所述的集群管理器,其中,对所述最小运行操作系统和最小运行应用中至少一个的安装是在所述多个数据节点的内存中进行的。
18.根据权利要求14所述的集群管理器,其中,所述制表图像生成装置包括:
先前制表图像获取装置,配置为获取先前存储的制表图像;
制表图像比较装置,配置为将由所述运行状态获取装置获取的集群运行状态信息和由所述集群配置信息收集装置收集的集群配置信息与由所述先前制表图像获取装置获取的先前存储的制表图像进行比较;以及
制表图像生成执行装置,配置为基于所述制表图像比较装置的比较结果,生成最新的包括最小运行操作系统的制表图像。
19.根据权利要求11至13中任一项所述的集群管理器,其中,所述无共享集群还包括一个或多个主节点,每个主节点用于监管一个或多个所述数据节点,
其中所述集群配置信息收集装置包括:配置为从所述主节点收集该主节点监管的数据节点的集群配置信息的装置。
20.根据权利要求11至13中任一项所述的集群管理器,其中,所述无共享集群中包含的数据节点分为一个或多个数据节点组,每个数据节点组中的所有数据节点上运行的操作系统和应用相同,
其中所述制表图像获得装置包括:配置为针对每个数据节点组,基于从该组所包括的数据节点收集的集群配置信息,获得该组的制表图像的装置;并且
其中所述故障恢复装置包括:
配置为确定操作系统发生故障的数据节点所属的数据节点组的装置;和
配置为将与该数据节点组对应的制表图像发送到发生故障的数据节点的装置。
21.一种无共享集群,包括:
一个或多个运行有操作系统和应用的数据节点;
一个或多个主节点,每个主节点用于监管一个或多个所述数据节点;以及
如权利要求11至20中任一项所述的集群管理器,配置为处理所述数据节点上运行的操作系统或应用的故障。
CN201310036718.1A 2013-01-31 2013-01-31 用于无共享集群的集群管理方法和设备 Pending CN103973470A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310036718.1A CN103973470A (zh) 2013-01-31 2013-01-31 用于无共享集群的集群管理方法和设备
US14/161,883 US9342390B2 (en) 2013-01-31 2014-01-23 Cluster management in a shared nothing cluster

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310036718.1A CN103973470A (zh) 2013-01-31 2013-01-31 用于无共享集群的集群管理方法和设备

Publications (1)

Publication Number Publication Date
CN103973470A true CN103973470A (zh) 2014-08-06

Family

ID=51224387

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310036718.1A Pending CN103973470A (zh) 2013-01-31 2013-01-31 用于无共享集群的集群管理方法和设备

Country Status (2)

Country Link
US (1) US9342390B2 (zh)
CN (1) CN103973470A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109976941A (zh) * 2017-12-28 2019-07-05 华为软件技术有限公司 一种数据恢复方法和装置
CN112214466A (zh) * 2019-07-12 2021-01-12 海能达通信股份有限公司 分布式集群系统及数据写入方法、电子设备、存储装置

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9672122B1 (en) 2014-09-29 2017-06-06 Amazon Technologies, Inc. Fault tolerant distributed tasks using distributed file systems
CN106855872A (zh) * 2015-12-08 2017-06-16 山东商务职业学院 基于Hadoop平台的海量图片的快速检索方法
US10187255B2 (en) * 2016-02-29 2019-01-22 Red Hat, Inc. Centralized configuration data in a distributed file system
US10455045B2 (en) 2016-09-06 2019-10-22 Samsung Electronics Co., Ltd. Automatic data replica manager in distributed caching and data processing systems
US10467195B2 (en) 2016-09-06 2019-11-05 Samsung Electronics Co., Ltd. Adaptive caching replacement manager with dynamic updating granulates and partitions for shared flash-based storage system
CN109032830A (zh) * 2018-07-25 2018-12-18 广东浪潮大数据研究有限公司 一种分布式存储系统的故障恢复方法、系统及相关组件
CN111147496B (zh) * 2019-12-27 2022-04-08 北京奇艺世纪科技有限公司 数据处理方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1802636A (zh) * 2003-05-09 2006-07-12 株式会社东芝 计算机系统与应用于该系统的故障计算机替换方法
US20060259525A1 (en) * 2005-05-11 2006-11-16 Inha-Industry Partnership Institute Recovery method using extendible hashing-based cluster logs in shared-nothing spatial database cluster
CN101042662A (zh) * 2006-03-08 2007-09-26 国际商业机器公司 用于管理分布式应用环境中的数据备份的系统和方法
US7287186B2 (en) * 2003-06-02 2007-10-23 Surgient Inc. Shared nothing virtual cluster
CN102782656A (zh) * 2010-02-26 2012-11-14 赛门铁克公司 管理应用程序可用性的系统和方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050283658A1 (en) 2004-05-21 2005-12-22 Clark Thomas K Method, apparatus and program storage device for providing failover for high availability in an N-way shared-nothing cluster system
US7457796B2 (en) 2004-07-08 2008-11-25 International Business Machines Corporation Method using virtual replicated tables in a cluster database management system
US8112593B2 (en) 2007-03-29 2012-02-07 Netapp, Inc. System and method for improving cluster performance

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1802636A (zh) * 2003-05-09 2006-07-12 株式会社东芝 计算机系统与应用于该系统的故障计算机替换方法
US7287186B2 (en) * 2003-06-02 2007-10-23 Surgient Inc. Shared nothing virtual cluster
US20060259525A1 (en) * 2005-05-11 2006-11-16 Inha-Industry Partnership Institute Recovery method using extendible hashing-based cluster logs in shared-nothing spatial database cluster
CN101042662A (zh) * 2006-03-08 2007-09-26 国际商业机器公司 用于管理分布式应用环境中的数据备份的系统和方法
CN102782656A (zh) * 2010-02-26 2012-11-14 赛门铁克公司 管理应用程序可用性的系统和方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109976941A (zh) * 2017-12-28 2019-07-05 华为软件技术有限公司 一种数据恢复方法和装置
CN109976941B (zh) * 2017-12-28 2022-12-13 华为技术有限公司 一种数据恢复方法和装置
CN112214466A (zh) * 2019-07-12 2021-01-12 海能达通信股份有限公司 分布式集群系统及数据写入方法、电子设备、存储装置

Also Published As

Publication number Publication date
US9342390B2 (en) 2016-05-17
US20140215258A1 (en) 2014-07-31

Similar Documents

Publication Publication Date Title
CN103973470A (zh) 用于无共享集群的集群管理方法和设备
CN102782656B (zh) 管理应用程序可用性的系统和方法
US9619311B2 (en) Error identification and handling in storage area networks
CN108616382B (zh) 升级网卡固件的方法、装置、网卡和设备
US10585691B2 (en) Distribution system, computer, and arrangement method for virtual machine
CN104216793B (zh) 应用程序备份、恢复的方法及设备
US9170888B2 (en) Methods and apparatus for virtual machine recovery
CN105786405B (zh) 一种在线升级方法、装置及系统
US7966470B2 (en) Apparatus and method for managing logical volume in distributed storage systems
CN103164254A (zh) 用于维持镜像虚拟环境中存储装置的一致性的方法和系统
CN103329106A (zh) Alua首选项和状态转换的主机发现和处理
US8984108B2 (en) Dynamic CLI mapping for clustered software entities
CN104823162A (zh) 对于云服务器的高可用性
CN107666493B (zh) 一种数据库配置方法及其设备
JP6288275B2 (ja) 仮想化基盤管理装置、仮想化基盤管理システム、仮想化基盤管理方法、及び、仮想化基盤管理プログラム
CN105095103A (zh) 用于云环境下的存储设备管理方法和装置
US10019182B2 (en) Management system and management method of computer system
CN104517067A (zh) 访问数据的方法、装置及系统
US8583789B2 (en) Computer system management method and management apparatus
US11372702B2 (en) Optimized high availability management using cluster-wide view
CN111355605A (zh) 一种云平台的虚拟机故障恢复方法及服务器
CN110058963B (zh) 用于管理存储系统的方法、设备和计算机程序产品
CN110647289A (zh) 卫星遥感云计算平台及系统
JP6394212B2 (ja) 情報処理システム、ストレージ装置及びプログラム
CN109218129A (zh) 一种基于日志的升级检测方法、装置、存储器及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140806