CN115268785A - 一种应用于分布式存储***的管理方法、装置及存储介质 - Google Patents

一种应用于分布式存储***的管理方法、装置及存储介质 Download PDF

Info

Publication number
CN115268785A
CN115268785A CN202210891870.7A CN202210891870A CN115268785A CN 115268785 A CN115268785 A CN 115268785A CN 202210891870 A CN202210891870 A CN 202210891870A CN 115268785 A CN115268785 A CN 115268785A
Authority
CN
China
Prior art keywords
node
list
time
metadata
data
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
CN202210891870.7A
Other languages
English (en)
Inventor
许克尧
罗心
江文龙
周明伟
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.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua Technology Co Ltd
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 Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN202210891870.7A priority Critical patent/CN115268785A/zh
Publication of CN115268785A publication Critical patent/CN115268785A/zh
Priority to PCT/CN2023/109498 priority patent/WO2024022424A1/en
Pending legal-status Critical Current

Links

Images

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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • G06F11/2092Techniques of failing over between control units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2082Data synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)

Abstract

本申请公开了一种应用于分布式存储***的管理方法、装置及存储介质,涉及分布式数据存储技术领域。该方法包括:主节点根据从节点按照设定时间上报的信息更新第一节点列表,所述第一节点列表中包括至少一个元数据节点的地址、上报时间以及元数据服务状态;所述主节点根据所述数据节点按照设定时间上报的信息更新第二节点列表,所述第二节点列表中包括至少一个数据节点的地址以及上报时间;若所述主节点确定所述第一节点列表中的第一节点失效,则选取所述第二节点列表中的第二节点,将所述第二节点设置为元数据节点,并更新所述第一节点列表和所述第二节点列表。

Description

一种应用于分布式存储***的管理方法、装置及存储介质
技术领域
本申请涉及分布式存储技术领域,尤其涉及一种应用于分布式存储***的管理方法、装置及存储介质。
背景技术
随着大数据时代的发展,对数据的安全性、可靠性、数据服务的可用性要求越来越高,在分布式存储的场景下,元数据服务的可用性是指当多个元数据节点中的有部分元数据节点出现故障时,依旧可以提供元数据服务的能力。
目前,为了避免一个或多个元数据节点出现故障影响整个业务的正常运作,一般会在元数据集群内指定一定数量的节点,各节点的元数据服务以主备的形式工作;当元数据的主节点出现故障时,便进行主备切换,便可继续提供元数据服务。但是随着出现故障节点的数量增多,其最大容忍的故障节点数量会降低,可用性也随之降低。例如,如果有n个元数据节点,最多允许n-1次元数据节点故障,当元数据节点故障有m个(m<n-1)后,最大可容忍故障次数会下降为n-1-m,从而降低元数据集群的可用性。
因此,如何提高元数据集群的可用性,是目前亟需解决的问题。
发明内容
本申请提供一种应用于分布式存储***的管理方法,用以提高元数据集群的可用性。
第一方面,提供一种应用于分布式存储***的管理方法,所述分布式存储***包括元数据节点和数据节点,所述元数据节点包括主节点和从节点,所述方法包括:
所述主节点根据所述从节点按照设定时间上报的信息更新第一节点列表,所述第一节点列表中包括至少一个元数据节点的地址、上报时间以及元数据服务状态;所述主节点根据所述数据节点按照设定时间上报的信息更新第二节点列表,所述第二节点列表中包括至少一个数据节点的地址以及上报时间;若所述主节点确定所述第一节点列表中的第一节点失效,则选取所述第二节点列表中的第二节点,将所述第二节点设置为元数据节点,并更新所述第一节点列表和所述第二节点列表。
在一种可能实现的方式中,所述主节点确定所述第一节点列表中的第一节点失效,包括:
若所述第一节点满足以下条件中的至少一项,则确定所述第一节点失效:所述第一节点的上报时间距当前时间的时间间隔大于第一时长阈值;所述第一节点的元数据服务状态为异常。
在一种可能实现的方式中,所述选取所述第二节点列表中的第二节点,包括:
若所述第二节点的上报时间距当前时间的时间间隔小于或等于第二时长阈值,则确定所述第二节点有效,并选取所述第二节点。
在一种可能实现的方式中,所述更新所述第一节点列表和所述第二节点列表,包括:
所述主节点将所述第一节点标记为失效,或者将所述第一节点的地址、上报时间以及元数据服务状态从所述第一节点列表中删除,并将所述第二节点的地址以及当前时间添加到所述第一节点列表中;所述主节点将所述第二节点列表中的所述第二节点的地址以及上报时间删除。
在一种可能实现的方式中,所述方法还包括:
若所述主节点确定所述第二节点列表中存在上报时间距当前时间的时间间隔大于所述第二时长阈值的数据节点,则确定所述数据节点失效,并将所述数据节点的地址以及上报时间从所述第二节点列表中删除,或者将所述数据节点标记为失效。
在一种可能实现的方式中,所述选取所述第二节点列表中的第二节点,包括:
若所述主节点确定所述元数据分布式***中的元数据节点的数量不满足可用性要求,则选取所述第二节点列表中的第二节点。
第二方面,提供一种应用于分布式存储***的管理装置,包括:
第一节点列表更新模块,用于根据从节点上报的信息更新第一节点列表,所述第一节点列表中包括至少一个元数据节点的地址、上报时间以及元数据服务状态;第二节点列表更新模块,用于根据数据节点上报的信息更新第二节点列表,所述第二节点列表中包括至少一个数据节点的地址以及上报时间;节点管理模块,用于若确定所述第一节点列表中的第一节点失效,则选取所述第二节点列表中的第二节点,将所述第二节点设置为元数据节点,并指示所述第一节点列表更新模块更新所述第一节点列表,指示所述第二节点列表更新模块更新所述第二节点列表。
在一种可能实现的方式中,所述节点管理模块,具体用于:
若所述第一节点满足以下条件中的至少一项,则确定所述第一节点失效:所述第一节点的上报时间距当前时间的时间间隔大于第一时长阈值;所述第一节点的元数据服务状态为异常。
在一种可能实现的方式中,所述节点管理模块,具体用于:
若所述第二节点的上报时间距当前时间的时间间隔小于或等于第二时长阈值,则确定所述第二节点有效,并选取所述第二节点。
在一种可能实现的方式中,所述节点管理模块,具体用于:
指示所述第一节点列表更新模块将所述第一节点标记为失效,或者将所述第一节点的地址、上报时间以及元数据服务状态从所述第一节点列表中删除,并指示所述第二节点列表更新模块将所述第二节点的地址以及当前时间添加到所述第一节点列表中;以及指示所述第二节点列表更新模块将所述第二节点列表中的所述第二节点的地址以及上报时间删除。
在一种可能实现的方式中,所述装置还包括数据节点有效检测块,用于:
若确定所述第二节点列表中存在上报时间距当前时间的时间间隔大于所述第二时长阈值的数据节点,则确定所述数据节点失效,并指示所述第二节点列表更新模块将所述数据节点的地址以及上报时间从所述第二节点列表中删除,或者将所述数据节点标记为失效。
在一种可能实现的方式中,所述节点管理模块,具体用于:
若确定所述元数据分布式***中的元数据节点的数量不满足可用性要求,则选取所述第二节点列表中的第二节点。
第三方面,提供一种通信装置,包括:
处理器、存储器;所述存储器,存储计算机指令;所述处理器,用于读取所述计算机指令,执行如第一方面任一项所述的方法。
第四方面,提供一种可读计算机存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面任一项所述的方法。
第五方面,提供一种计算机程序产品,所述计算机程序产品在被计算机调用时,使得所述计算机执行如第一方面任一项所述的方法。
本申请实施例中,由于主节点可根据从节点按照设定时间上报的信息更新第一节点列表,主节点还可根据数据节点按照设定时间上报的信息更新第二节点列表;当主节点确定出第一节点列表中的第一节点失效时,可选取第二节点列表中的第二节点,并将第二节点设置为元数据节点,便可提供元数据服务,因此可以保证提供元数据服务的元数据节点的数量保持不变,从而提高了元数据集群的可用性。
附图说明
图1为本申请实施例提供的一种分布式存储***架构图;
图2为本申请实施例提供的一种基于分布式存储***的第一节点列表更新方法的流程图;
图3为本申请实施例提供的一种基于分布式存储***的第二节点列表更新方法的流程图;
图4为本申请实施例提供的一种应用于分布式存储***的管理方法的流程图;
图5为本申请实施例提供的一种应用于分布式存储***的管理装置的结构示意图;
图6为本申请实施例提供的一种通信装置的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
以下对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)本申请实施例中,名词“网络”和“***”经常交替使用,但本领域的技术人员可以理解其含义。
(2)本申请实施例中术语“多个”是指两个或两个以上,其它量词与之类似。
(3)“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
(4)元数据集群是指存在元数据服务的节点所成的集群。
本申请实施例中,分布式存储***包括元数据节点和数据节点,元数据节点是指存在元数据服务、可存储元数据的节点,数据节点是指未启动或未设置有元数据服务、可存储业务数据的节点,该元数据节点包括主节点和从节点。为了区分元数据节点和数据节点,可预先设置一个IP地址列表,该IP地址列表用于存储各元数据节点的地址。
图1为本申请实施例提供的一种分布式存储***架构图。如图所示,该分布式存储***100主要由主节点10、从节点(1,2,……,N)、数据节点(1,2,……,M)组成。其中,主节点10与从节点(1,2,……,N)为元数据节点,组成元数据集群,主节点10可以分别与从节点(1,2,……,N)进行有线通信,主节点10可以与数据节点(1,2,……,M)进行有线通信,从节点(1,2,……,N)可与数据节点(1,2,……,M)进行有线通信。
从节点(1,2,……,N)可将各自的信息实时上报给主节点10。
数据节点(1,2,……,M)可将各自己的信息实时上报给主节点10。
主节点10可将从节点(1,2,……,N)上报的信息进行实时记录、更新、检测等,还可将数据节点(1,2,……,M)上报的信息进行实时记录、更新、检测等。
图2为本申请实施例提供的一种基于分布式存储***的第一节点列表更新方法的流程图。该流程具体可由主节点(如图1中的主节点10)所执行。如图所示,该流程包括如下步骤:
201:主节点接收从节点按照设定时间上报的信息。
该设定时间可以是周期性的,也可以是非周期性的,本申请实施例在此不做限制。可选的,从节点上报的信息可包括元数据节点的地址、上报时间、元数据服务状态,还可包括元数据节点标志、版本号、型号等。该地址可以是业务地址、
202:主节点根据从节点按照设定时间上报的信息更新第一节点列表。
该第一节点列表可存储为文件,例如存储为元数据节点信息配置文件。
可选的,该第一节点列表中包括元数据节点的地址、上报时间以及元数据服务状态,还可包括元数据节点的标志、版本号、型号等,可用于主节点实时记录、更新元数据节点上报的信息。表1示例性示出了第一节点列表的示例表如表1所示:
表1:第一节点列表
Figure BDA0003767897560000071
举例来说,该更新过程可通过以下方式:从节点(例如,图1中的从节点1)按照设定时间(例如,每隔一小时)将本节点的信息上报给主节点,主节点接收到该从节点发送的信息后,根据该从节点的地址,确定该第一节点列表中是否已经记录过该从节点的信息,若是,则对该从节点的上报时间以及服务状态进行一次更新,若否,则将该从节点的地址、上报时间以及服务状态记录在第一节点列表中。
图3为本申请实施例提供的一种基于分布式存储***的第二节点列表更新方法的流程图。该流程可由主节点(如图1中的主节点10)所执行。如图所示,该流程包括如下步骤:
301:主节点接收数据节点按照设定时间上报的信息。
该设定时间可以是周期性的,也可以是非周期性的,本申请实施例在此不做限制。可选的,数据节点上报的信息可包括数据节点的地址、上报时间,还可包括元数据节点标志、版本号、型号等,该地址可以是业务地址。
302:主节点根据数据节点按照设定时间上报的信息更新第二节点列表。
该第二节点列表可存储为文件,例如存储为数据节点信息配置文件。
可选的,该第二节点列表中可包括数据节点的地址以及上报时间,还可包括数据节点的标志、版本号、型号等,可用于主节点实时记录、更新数据节点上报的信息。表2示例性示出了第二节点列表的示例表,如表2所示:
表2:第二节点列表
Figure BDA0003767897560000081
举例来说,该更新过程可通过以下方式:数据节点(如图1种的数据节点1)按照设定时间将信息上报给主节点,主节点接收到该数据节点的信息后,确定第二节点列表中是否已经记录过该数据节点的信息,若是,则对该数据节点的上报时间以及进行一次更新,若否,则将该数据节点的地址、上报时间记录在第二节点列表中。
本申请实施中,通过上述方式将元数据节点和数据节点的信息进行分别记录,也便于后续用户对信息的查询和管理。
在分布式存储的场景中,基于图2对第一节点列表的实时更新,以及图3对第二节点列表的实时更新,还需对各列表中的节点进行故障排查,以及解决故障问题,从而维持分布式存储***提供元数据服务的能力。
鉴于此,图4为本申请实施例提供的一种应用于分布式存储***的管理方法的流程图。该流程可由主节点(如图1中的主节点10)所执行。如图所示,该流程包括如下步骤:
由于第一节点列表中的从节点数量较多,为了方便下文描述,以一个第一节点进行步骤的阐述。
401:主节点判断该第一节点列表中的第一节点是否有效,若否,则转入402,否则,等待下一次循环检测,或者对第二节点列表中的数据节点进行有效检测。
该第一节点列表是主节点根据从节点上报的信息进行实时更新的,该第一节点列表的更新过程可参照图2的相关描述,在此不再重复。
可选的,主节点确定第一节点是否有效,可通过以下方式:
方式1:若主节点确定出第一节点列表中记录的第一节点的上报时间距当前时间的时间间隔大于第一时长阈值,则确定该第一节点失效。例如,若第一节点(如表1中的从节点1)的前一次上报时间为8:00,当前时间为9:30,设定的第一时长阈值为一个小时,则确定该第一节点失效(出现故障)。
方式2:若主节点确定出第一节点列表中记录的第一节点的服务状态为异常,则确定该第一节点失效。
方式3:若主节点确定出第一节点列表中记录的第一节点的服务状态为异常,且该第一节点的上报时间距当前时间的时间间隔大于第一时长阈值,则确定该第一节点失效。
在一些实施例中,主节点还可对该第二节点列表中的所有数据节点实时进行有效性检测,可包括如下情况:
情况1:若主节点确定第二节点列表中存在上报时间距当前时间的时间间隔大于第二时长阈值的数据节点,则确定该数据节点失效,并将该数据节点的地址以及上报时间从第二节点列表中删除,进一步的,还可将该数据节点的配置信息进行清理,从而可以实时保证第二节点列表中的数据节点是可用的数据节点。
情况2:若主节点确定第二节点列表中存在上报时间距当前时间的时间间隔大于第二时长阈值的数据节点,则确定该数据节点失效,并将该数据节点标记为不可用,便于在第二节点列表中区分可用的数据节点和不可用的数据节点。
通过上述方式,主节点可以实时监测第一节点列表,以及第二节点列表中是否有出现故障节点,便于后续用户及时采取相应的补救措施。
402:当判断出该第一节点失效后,主节点选取第二节点列表中的第二节点,将第二节点设置为元数据节点。
该第二节点列表是主节点根据数据节点上报的信息进行实时更新的,该第二节点列表的更新过程可参照图3的相关描述,在此不再重复。
可选的,在选取该第二节点设置为元数节点时,主节点可对该第二节点进行有效性判断,避免选取的第二节点无法提供元数据服务,从而无法替代上述第一节点。若主节点确定该第二节点的前一次上报时间距当前时间的时间间隔小于或等于第二时长阈值,则确定该第二节点有效,并选取该第二节点,将第二节点设置为元数据节点。举例来说,若第二节点(如表2中的数据节点2)的前一次上报时间为8:30,当前时间为9:30,设定的第二时长阈值为一个半小时,则确定该第二节点有效,然后将第二节点设置为元数据节点。
可选的,当主节点对该第二节点列表中的所有数据节点实时进行有效性检测时,其选取的过程可包括:
针对主节点采用上述情况1的方式对所有数据节点实时进行有效性检测,在选取过程中,主节点可直接从第二列表中任意选择一个第二节点。
针对主节点采用上述情况2的方式对所有数据节点实时进行有效性检测,在选取的过程中,主节点可根据标记,从第二节点列表中选取可用的第二节点。
通过上述方式,在选取过程中可以快速感知哪些数据节点不可用,从而防止主节点将其故障的数据节点作为元数据节点添加到第一节点列表中。
元数据集群中元数据节点的数量决定了元数据集群的可用性,在进行元数集群部署时,会设定最多允许m(m<n)个元数据节点发生故障,还会在上述IP地址列表中实时记录元数据节点的地址。在该场景中,元数集群中元数据节点的总数量可能会发生变化,例如,之前出现故障的元数据节点被修复、元数据集群中又新添了元数据节点,这时元数据集群中元数据节点的总数量大于n个,IP地址列表中记录的元数据节点地址也会大于n个,这样会造成资源浪费。
鉴于此,可选的,在选取该第二节点时,还可对元数集群的可用性进行判断,若确定出元数据节点的数量不满足可用性要求,则选取第二节点列表中的第二节点,否则,就不从第二节点列表中选取第二节点。举例来说,假设在元数据集群部署时,设定有元数据节点为5个,允许故障点有2个,当第一节点列表中的第一节点失效时,主节点查询上述IP地址列表,确定出元数据节点的数量是否大于或等于3,若否,则表明元数据节点的数量不满足可用性要求,并选取第二节点列表中的第二节点,若是,则表明元数据节点的数量满足可用性要求,就不从第二节点列表中选取第二节点。
上述步骤,将第二节点设置为元数据节点后,同步元数据,启动元数据服务,可以在短时间内替代出现故障的第一节点,无需要重新组建新的元数据集群,数据可以及时同步,降低了整个元数据集群内元数据服务不可用的风险,也保证元数据集群内提供元数据服务的元数据节点的数量不变,提高了元数据集群的可用性。
403:当完成第二节点的选取时,主节点更新上述第一节点列表和第二节点列表。
可选的,主节点更新该第一节点列表主要可包括以下内容:
在一些实施例中主节点将第一节点列表中的该第一节点标记为失效,并将该第二节点的地址以及当前时间添加到该第一节点列表中。在另一些实施例中,主节点将第一节点的地址、上报时间以及元数据服务状态从第一节点列表中删除,进一步的,还可将该第一节点的配置信息从元数据集群中删除,并将该第二节点的地址以及当前时间添加到该第一节点列表中。
可选的,主节点更新第二节点列表主要可包括:在一些实施例中,主节点将第二节点列表中的第二节点的地址以及上报时间删除,进一步的,对该第二节点的配置信息进行清理。
在一些实施例中,上述删除操作,可将第一节点列表中第一节点需要删除的内容(第一节点的地址、上报时间以及元数据服务状态、第一节点的配置、驱动程序文件等),以及第二节点列表中第二节点需要删除的内容,统一移出到删除列表中进行删除,可以对其进行监测,各内容是否清理完成。
在一些实施例中,当主节点更新完上述第一节点列表和第二节点列表后,可进入休眠期,等待下一次循环检测,从而实时监控各元数据节点以及数据节点,保证整个元数据集群的可用性。
本申请实施例中,由于主节点可根据从节点按照设定时间上报的信息更新第一节点列表,主节点还可根据数据节点按照设定时间上报的信息更新第二节点列表;当主节点确定出第一节点列表中的第一节点失效时,可选取第二节点列表中的第二节点,并将第二节点设置为元数据节点,便可提供元数据服务,因此可以保证提供元数据服务的元数据节点的数量保持不变,从而提高了元数据集群的可用性。
基于相同的技术构思,本申请实施例还提供了一种应用于分布式存储***的管理装置,该装置可实现本申请实施例中上述应用于分布式存储***的管理方法的流程。
图5为本申请实施例提供的一种应用于分布式存储***的管理装置的结构示意图。如图所示,该装置包括:第一节点列表更新模块501、第二节点列表更新模块502、节点管理模块503。
第一节点列表更新模块501,用于根据从节点上报的信息更新第一节点列表,所述第一节点列表中包括至少一个元数据节点的地址、上报时间以及元数据服务状态。
第二节点列表更新模块502,用于根据数据节点上报的信息更新第二节点列表,所述第二节点列表中包括至少一个数据节点的地址以及上报时间。
节点管理模块503,用于若所述第一节点列表中的第一节点失效,则选取所述第二节点列表中的第二节点,将所述第二节点设置为元数据节点,并指示所述第一节点列表更新模块更新所述第一节点列表,指示所述第二节点列表更新模块更新所述第二节点列表。
可选的,节点管理模块503,具体用于:若所述第一节点满足以下条件中的至少一项,则确定所述第一节点失效:所述第一节点的上报时间距当前时间的时间间隔大于第一时长阈值;所述第一节点的元数据服务状态为异常。
可选的,节点管理模块503,具体用于若所述第二节点的上报时间距当前时间的时间间隔小于或等于第二时长阈值,则确定所述第二节点有效,并选取所述第二节点。
可选的,节点管理模块503,具体用于:指示所述第一节点列表更新模块501将所述第一节点标记为失效,或者将所述第一节点的地址、上报时间以及元数据服务状态从所述第一节点列表中删除,并指示所述第二节点列表更新模块502将所述第二节点的地址以及当前时间添加到所述第一节点列表中;以及指示所述第二节点列表更新模块502将所述第二节点列表中的所述第二节点的地址以及上报时间删除。
可选的,节点管理模块503,具体用于:若确定所述元数据分布式***中的元数据节点的数量不满足可用性要求,则选取所述第二节点列表中的第二节点。
在此需要说明的是,本申请实施例提供的上述装置,能够实现上述分布式存储***管理方法实施例中的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。
基于相同的技术构思,本申请实施例还提供了一种通信装置,该装置可实现本申请实施例中上述应用于分布式存储***的管理方法的流程。
图6为本申请实施例提供的通信装置的结构示意图。
如图所示,该装置可包括:处理器601、存储器602以及总线接口603。
处理器601负责管理总线架构和通常的处理,存储器602可以存储处理器601在执行操作时所使用的数据。
总线架构可以包括任意数量的互联的总线和桥,具体由处理器601代表的一个或多个处理器和存储器602代表的存储器的各种电路链接在一起。总线架构还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。处理器601负责管理总线架构和通常的处理,存储器602可以存储处理器601在执行操作时所使用的数据。
本申请实施例揭示的流程,可以应用于处理器601中,或者由处理器601实现。在实现过程中,信号处理流程的各步骤可以通过处理器601中的硬件的集成逻辑电路或者软件形式的指令完成。处理器601可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所申请的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器602,处理器601读取存储器602中的信息,结合其硬件完成信息处理流程的步骤。
具体地,处理器601,用于读取存储器602中的计算机指令并执行本申请实施例中的一种应用于分布式存储***的管理方法。
在此需要说明的是,申请本申请实施例提供的上述通信装置,能够实现上述方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于使计算机执行上述实施例中的一种应用于分布式存储***的管理方法。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在被计算机调用时,使得所述计算机执行上述实施例中的一种应用于分布式存储***的管理方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (15)

1.一种应用于分布式存储***的管理方法,所述分布式存储***包括元数据节点和数据节点,所述元数据节点包括主节点和从节点,其特征在于,所述方法包括:
所述主节点根据所述从节点按照设定时间上报的信息更新第一节点列表,所述第一节点列表中包括至少一个元数据节点的地址、上报时间以及元数据服务状态;
所述主节点根据所述数据节点按照设定时间上报的信息更新第二节点列表,所述第二节点列表中包括至少一个数据节点的地址以及上报时间;
若所述主节点确定所述第一节点列表中的第一节点失效,则选取所述第二节点列表中的第二节点,将所述第二节点设置为元数据节点,并更新所述第一节点列表和所述第二节点列表。
2.如权利要求1所述的方法,其特征在于,所述主节点确定所述第一节点列表中的第一节点失效,包括:
若所述第一节点满足以下条件中的至少一项,则确定所述第一节点失效:
所述第一节点的上报时间距当前时间的时间间隔大于第一时长阈值;
所述第一节点的元数据服务状态为异常。
3.如权利要求1所述的方法,其特征在于,所述选取所述第二节点列表中的第二节点,包括:
若所述第二节点的上报时间距当前时间的时间间隔小于或等于第二时长阈值,则确定所述第二节点有效,并选取所述第二节点。
4.如权利要求1所述的方法,其特征在于,所述更新所述第一节点列表和所述第二节点列表,包括:
所述主节点将所述第一节点标记为失效,或者将所述第一节点的地址、上报时间以及元数据服务状态从所述第一节点列表中删除,并将所述第二节点的地址以及当前时间添加到所述第一节点列表中;
所述主节点将所述第二节点列表中的所述第二节点的地址以及上报时间删除。
5.如权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
若所述主节点确定所述第二节点列表中存在上报时间距当前时间的时间间隔大于所述第二时长阈值的数据节点,则确定所述数据节点失效,并将所述数据节点的地址以及上报时间从所述第二节点列表中删除,或者将所述数据节点标记为失效。
6.如权利要求1-4任一项所述的方法,其特征在于,所述选取所述第二节点列表中的第二节点,包括:
若所述主节点确定所述分布式存储***中的元数据节点的数量不满足可用性要求,则选取所述第二节点列表中的第二节点。
7.一种应用于分布式存储***的管理装置,其特征在于,包括:
第一节点列表更新模块,用于根据从节点上报的信息更新第一节点列表,所述第一节点列表中包括至少一个元数据节点的地址、上报时间以及元数据服务状态;
第二节点列表更新模块,用于根据数据节点上报的信息更新第二节点列表,所述第二节点列表中包括至少一个数据节点的地址以及上报时间;
节点管理模块,用于若确定所述第一节点列表中的第一节点失效,则选取所述第二节点列表中的第二节点,将所述第二节点设置为元数据节点,并指示所述第一节点列表更新模块更新所述第一节点列表,指示所述第二节点列表更新模块更新所述第二节点列表。
8.如权利要求7所述的装置,其特征在于,所述节点管理模块,具体用于:
若所述第一节点满足以下条件中的至少一项,则确定所述第一节点失效:
所述第一节点的上报时间距当前时间的时间间隔大于第一时长阈值;
所述第一节点的元数据服务状态为异常。
9.如权利要求7所述的装置,其特征在于,所述节点管理模块,具体用于:
若所述第二节点的上报时间距当前时间的时间间隔小于或等于第二时长阈值,则确定所述第二节点有效,并选取所述第二节点。
10.如权利要求7所述的装置,其特征在于,所述节点管理模块,具体用于:
指示所述第一节点列表更新模块将所述第一节点标记为失效,或者将所述第一节点的地址、上报时间以及元数据服务状态从所述第一节点列表中删除,并指示所述第二节点列表更新模块将所述第二节点的地址以及当前时间添加到所述第一节点列表中;以及指示所述第二节点列表更新模块将所述第二节点列表中的所述第二节点的地址以及上报时间删除。
11.如权利要求7-10任一项所述的装置,其特征在于,所述装置还包括数据节点有效检测块,用于:
若确定所述第二节点列表中存在上报时间距当前时间的时间间隔大于所述第二时长阈值的数据节点,则确定所述数据节点失效,并指示所述第二节点列表更新模块将所述数据节点的地址以及上报时间从所述第二节点列表中删除,或者将所述数据节点标记为失效。
12.如权利要求7-10任一项所述的装置,其特征在于,所述节点管理模块,具体用于:
若确定所述分布式存储***中的元数据节点的数量不满足可用性要求,则选取所述第二节点列表中的第二节点。
13.一种通信装置,其特征在于,包括:处理器、存储器;
所述存储器,存储计算机指令;
所述处理器,用于读取所述计算机指令,执行如权利要求1-6任一项所述的方法。
14.一种可读计算机存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1-6任一项所述的方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品在被计算机调用时,使得所述计算机执行如权利要求1-6任一项所述的方法。
CN202210891870.7A 2022-07-27 2022-07-27 一种应用于分布式存储***的管理方法、装置及存储介质 Pending CN115268785A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210891870.7A CN115268785A (zh) 2022-07-27 2022-07-27 一种应用于分布式存储***的管理方法、装置及存储介质
PCT/CN2023/109498 WO2024022424A1 (en) 2022-07-27 2023-07-27 System and methods for metadata services

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210891870.7A CN115268785A (zh) 2022-07-27 2022-07-27 一种应用于分布式存储***的管理方法、装置及存储介质

Publications (1)

Publication Number Publication Date
CN115268785A true CN115268785A (zh) 2022-11-01

Family

ID=83770624

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210891870.7A Pending CN115268785A (zh) 2022-07-27 2022-07-27 一种应用于分布式存储***的管理方法、装置及存储介质

Country Status (2)

Country Link
CN (1) CN115268785A (zh)
WO (1) WO2024022424A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024022424A1 (en) * 2022-07-27 2024-02-01 Zhejiang Dahua Technology Co., Ltd. System and methods for metadata services

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10845991B2 (en) * 2018-12-03 2020-11-24 EMC IP Holding Company LLC Shallow memory table for data storage service
CN112463448B (zh) * 2020-11-27 2022-06-07 苏州浪潮智能科技有限公司 分布式集群数据库同步方法、装置、设备及存储介质
CN112190924A (zh) * 2020-12-04 2021-01-08 腾讯科技(深圳)有限公司 一种数据容灾方法、装置及计算机可读介质
CN114070739B (zh) * 2021-11-11 2024-01-26 杭州和利时自动化有限公司 一种集群部署方法、装置、设备和计算机可读存储介质
CN115268785A (zh) * 2022-07-27 2022-11-01 浙江大华技术股份有限公司 一种应用于分布式存储***的管理方法、装置及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024022424A1 (en) * 2022-07-27 2024-02-01 Zhejiang Dahua Technology Co., Ltd. System and methods for metadata services

Also Published As

Publication number Publication date
WO2024022424A1 (en) 2024-02-01

Similar Documents

Publication Publication Date Title
US11907561B2 (en) Data backup method and apparatus
US10817386B2 (en) Virtual machine recovery method and virtual machine management device
CN109656742B (zh) 一种节点异常处理方法、装置及存储介质
CN112506710B (zh) 分布式文件***数据修复方法、装置、设备及存储介质
CN115562911B (zh) 虚拟机数据备份方法及装置、***、电子设备、存储介质
CN112199240A (zh) 一种节点故障时进行节点切换的方法及相关设备
CN115268785A (zh) 一种应用于分布式存储***的管理方法、装置及存储介质
CN112579356A (zh) 一种故障处理方法及服务器
CN111309515B (zh) 一种容灾控制方法、装置及***
CN111342986B (zh) 分布式节点管理方法及装置、分布式***、存储介质
CN112600690B (zh) 一种配置数据同步方法、装置、设备及存储介质
CN113986450A (zh) 一种虚拟机备份方法及装置
CN113419901A (zh) 数据灾备方法、装置及服务器
CN111200833B (zh) 一种网元状态的确定方法及装置
CN110968456B (zh) 分布式存储***中故障磁盘的处理方法及装置
CN109634930B (zh) 清理日志的方法及装置、存储介质、电子装置
CN113778763B (zh) 一种三方接口服务故障智能切换方法及***
CN113656215B (zh) 一种基于集中配置的自动化容灾方法、***、介质和设备
CN112711376B (zh) 对象存储***中对象主副本文件的确定方法及装置
CN111090491B (zh) 虚拟机任务状态的恢复方法、装置及电子设备
CN114691771A (zh) 数据库主从复制方法、装置、计算机设备和存储介质
CN107707402B (zh) 一种分布式***中服务仲裁的管理***及其管理方法
CN110231961B (zh) 一种主控板重启的控制方法及***
CN115269556A (zh) 一种数据库故障处理方法、装置、设备及存储介质
CN117234797A (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