CN111901415A - 数据处理方法和系统、计算机可读存储介质及处理器 - Google Patents

数据处理方法和系统、计算机可读存储介质及处理器 Download PDF

Info

Publication number
CN111901415A
CN111901415A CN202010733167.4A CN202010733167A CN111901415A CN 111901415 A CN111901415 A CN 111901415A CN 202010733167 A CN202010733167 A CN 202010733167A CN 111901415 A CN111901415 A CN 111901415A
Authority
CN
China
Prior art keywords
node
storage node
storage
state
address
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
CN202010733167.4A
Other languages
English (en)
Other versions
CN111901415B (zh
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.)
Xsky Beijing Data Technology Corp ltd
Original Assignee
Xsky Beijing Data Technology Corp 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 Xsky Beijing Data Technology Corp ltd filed Critical Xsky Beijing Data Technology Corp ltd
Priority to CN202010733167.4A priority Critical patent/CN111901415B/zh
Publication of CN111901415A publication Critical patent/CN111901415A/zh
Application granted granted Critical
Publication of CN111901415B publication Critical patent/CN111901415B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据处理方法和系统、计算机可读存储介质及处理器。其中,该方法包括:在检测到第一存储节点发生故障的情况下,判断第一存储节点是否发生磁盘故障;如果第一存储节点未发生磁盘故障,则确定第一存储节点对应的第二存储节点,其中,第一存储节点和第二存储节点与同一个对象存储设备连接;通过第二存储节点对该对象存储设备中存储的数据进行操作。本发明解决了相关技术中分布式存储系统出现故障后需要进行数据重建,导致分布式存储系统的安全性、可靠性和稳定性降低的技术问题。

Description

数据处理方法和系统、计算机可读存储介质及处理器
技术领域
本发明涉及分布式存储系统领域,具体而言,涉及一种数据处理方法和系统、计算机可读存储介质及处理器。
背景技术
在分布式存储系统中,对象存储设备OSD(Object Storage Device)是基础的一类组件,其主要职责是持久化存储用户数据。为了发挥多个存储设备的高聚合性能,通常可以将用户数据分片打散后存储到位于不同存储节点上的OSD中,数据均匀分布。为了保证数据存储的安全性和高可用性,可以采用副本或纠删码这类冗余存储技术,将同一个数据分片的多份副本存储到不同OSD上。当一个OSD故障的时候,例如,分布式存储系统产生软件缺陷、网络故障、服务器硬件故障等,位于该OSD上的数据分片因为副本数减少而处于降级状态,但由于在其它OSD上存储有数据的副本,所以数据依然可以访问,并且可以通过数据副本在其它OSD重建的数据重平衡机制保证数据安全度不降级系统。
但是,在数据重建的过程中,会抢占系统资源,对用户业务会造成冲击和影响。在重建时间窗口内,系统运行在业务流、数据重构流等众多业务逻辑交叉的复杂环境下,存在再次发生其它软件或硬件故障而导致数据多个副本同时失效的风险。因此,数据重建或数据重平衡在很大程度上会降低系统的安全性、可靠性、稳定性。由于故障原因导致磁盘数据重建,还会加速磁盘老化,特别是对SSD固态盘,反复的擦写会直接降低其使用寿命。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据处理方法和系统、计算机可读存储介质及处理器,以至少解决相关技术中分布式存储系统出现故障后需要进行数据重建,导致分布式存储系统的安全性、可靠性和稳定性降低的技术问题。
根据本发明实施例的一个方面,提供了一种数据处理方法,包括:在检测到第一存储节点发生故障的情况下,判断第一存储节点是否发生磁盘故障;如果第一存储节点未发生磁盘故障,则确定第一存储节点对应的第二存储节点,其中,第一存储节点和第二存储节点与同一个对象存储设备连接;通过第二存储节点对该对象存储设备中存储的数据进行操作。
可选地,通过第二存储节点对该对象存储设备中存储的数据进行操作包括:控制对象存储设备对应的虚拟地址从第一存储节点迁移到第二存储节点;控制第二存储节点上启动对象存储设备对应的存储实例进程。
可选地,在检测到第一存储节点恢复运行的情况下,通过第一存储节点对该对象存储设备中存储的数据进行操作。
可选地,通过第一存储节点对该对象存储设备中存储的数据进行操作包括:控制对象存储设备对应的虚拟地址从第二存储节点迁移到第一存储节点;控制第一存储节点上启动对象存储设备对应的存储实例进程。
可选地,在第一存储节点通过多条通路与对象存储设备连接的情况下,该方法还包括:如果检测到多条通路中的至少一条通路出现故障,则将第一存储节点通过多条通路中的其他通路对该对象存储设备中存储的数据进行操作。
可选地,在检测到第一存储节点发生故障的情况下,该方法还包括:获取对象存储设备的状态信息,其中,发送状态信息至其他对象存储设备或客户端;将状态信息中的主节点状态更新为关闭状态;控制第二存储节点重启,并接收第二存储节点发送的注册信息,其中,第二存储节点发送的注册信息至少包括:第二存储节点的网络地址;将状态信息中的从节点状态更新为活跃状态,并将状态信息中的地址信息更新为第二存储节点的网络地址。
可选地,在控制第二存储节点重启之前,该方法还包括:判断状态信息中的从节点状态是否为非活跃状态;如果从节点状态是非活跃状态,则控制第二存储节点重启。
可选地,在检测到第一存储节点恢复运行的情况下,该方法还包括:接收第一存储节点发送的注册信息,其中,第一存储节点发送的注册信息至少包括:第一存储节点的网络地址;判断第一存储节点的网络地址与对象存储设备的配置文件中的预设主节点地址是否匹配;如果第一存储节点的网络地址与预设主节点地址匹配成功,则将对象存储设备的状态信息中的主节点状态更新为非活跃状态,并控制第二存储节点重启;在接收到第二存储节点发送的重启确认信息之后,将状态信息中的主节点状态更新为活跃状态,将状态信息中的从节点状态更新为关闭状态,并将状态信息中的地址信息更新为第一存储节点的网络地址。
可选地,在第一存储节点启动之后,该方法还包括:接收第一存储节点发送的注册信息,其中,第一存储节点发送的注册信息至少包括:第一存储节点的网络地址;判断对象存储设备是否启动;如果对象存储设备未启动,则判断第一存储节点的网络地址与对象存储设备的配置文件中的预设主节点地址是否匹配;如果第一存储节点的网络地址与预设主节点地址匹配成功,则确定对象存储设备对应的状态信息中的主节点地址为第一存储节点的网络地址,状态信息中的主节点状态为活跃状态,以及状态信息中的地址信息为第一存储节点的网络地址。
可选地,在第二存储节点启动之后,该方法还包括:接收第二存储节点发送的注册信息,其中,第二存储节点发送的注册信息至少包括:第二存储节点的网络地址;判断第二存储节点的网络地址与配置文件中的预设备节点地址是否匹配;如果第二存储节点的网络地址与预设备节点地址匹配成功,则确定状态信息中的从节点地址为第二存储节点的网络地址,以及状态信息中的从节点状态为非活跃状态。
可选地,在确定状态信息中的从节点地址为第二存储节点的网络地址,以及状态信息中的从节点状态为非活跃状态之后,该方法还包括:检测预设时间段内是否接收到第二存储节点发送的心跳数据;如果预设时间段内未接收到心跳数据,则更新从节点状态为关闭状态。
可选地,在第二存储节点启动之后,该方法还包括:接收第二存储节点发送的注册信息,其中,第二存储节点发送的注册信息至少包括:第二存储节点的网络地址;判断对象存储设备是否启动;如果对象存储设备未启动,则判断第二存储节点的网络地址与对象存储设备的配置文件中的预设备节点地址是否匹配;如果第二存储节点的网络地址与预设备节点地址匹配成功,则确定对象存储设备对应的状态信息中的从节点地址为第二存储节点的网络地址,状态信息中的从节点状态为活跃状态,以及状态信息中的地址信息为第一存储节点的网络地址。
可选地,在第一存储节点启动之后,该方法还包括:接收第一存储节点发送的注册信息,其中,第一存储节点发送的注册信息至少包括:第一存储节点的网络地址;判断第一存储节点的网络地址与对象存储设备的配置文件中的预设主节点地址是否匹配;如果第一存储节点的网络地址与预设主节点地址匹配成功,则将对象存储设备的状态信息中的主节点状态更新为非活跃状态,并控制第二存储节点重启;在接收到第二存储节点发送的重启确认信息之后,将状态信息中的主节点状态更新为活跃状态,将状态信息中的从节点状态更新为关闭状态,并将状态信息中的地址信息更新为第一存储节点的网络地址。
可选地,对象存储设备为双端口固态硬盘。
根据本发明实施例的另一方面,还提供了一种数据处理系统,包括:第一存储节点;第二存储节点,第一存储节点和第二存储节点与同一个对象存储设备连接;控制节点,与第一存储节点和第二存储节点通信,用于在检测到第一存储节点发生故障,且第一存储节点未发生磁盘故障的情况下,通过第二存储节点对该对象存储设备中存储的数据进行操作。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,在程序运行时控制计算机可读存储介质所在设备执行上述的数据处理方法。
根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述的数据处理方法。
在本发明实施例中,在检测到第一存储节点发生故障的情况下,在判断出第一存储节点未发生磁盘故障的情况下,可以通过与第一存储节点连接同一个对象存储设备的第二存储节点该对象存储设备中存储的数据进行操作,从而实现了在硬盘硬件正常且数据完好的情况下,通过切换存储节点的方式实现对外提供服务,避免和减少不必要的数据重建的目的,达到了提升分布式存储系统可用性,增强分布式存储系统的可靠性和稳定性,延长磁盘的使用寿命,有效降低用户运维和使用成本的技术效果,进而解决了相关技术中分布式存储系统出现故障后需要进行数据重建,导致分布式存储系统的安全性、可靠性和稳定性降低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种数据处理方法的流程图;
图2a是根据本发明实施例的一种可选的采用双端口SSD盘的分布式存储系统的示意图;
图2b是根据本发明实施例的一种可选的正常情况下的分布式存储系统的示意图;
图2c是根据本发明实施例的一种可选的主节点出现故障情况下的分布式存储系统的示意图;
图3是根据本发明实施例的一种可选的主节点和从节点之间的状态转换流程的示意图;以及
图4是根据本发明实施例的一种数据处理系统的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面对本发明实施例中出现的技术名称或技术术语进行如下解释说明:
OSD:是存储硬件及控制该硬件上存储空间分配和使用的软件装置总称。
固态硬盘:Solid State Drives,SSD,用固态电子存储芯片阵列而制成的硬盘。
实施例1
根据本发明实施例,提供了一种数据处理方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种数据处理方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,在检测到第一存储节点发生故障的情况下,判断第一存储节点是否发生磁盘故障。
上述步骤中的第一存储节点可以是分布式存储系统中的任意一个节点,每个节点可以由一个服务器和一个对象存储设备组成。
需要说明的是,分布式存储系统中,产生故障的原因较多,可以包括软件缺陷、网络故障、服务器硬件故障、磁盘故障等,对于磁盘硬件故障,为了保证数据存储的安全性和高可用性,需要进行数据重建或重平衡,而对于其他故障,需要避免数据重建或重平衡。
在一种可选的实施例中,当检测到第一存储节点发生故障,也即,发生OSD故障时,为了避免和减少不必要的数据重建,首先可以判断硬盘硬件本身是否正常,也即判断第一存储节点是否发生磁盘故障。
步骤S104,如果第一存储节点未发生磁盘故障,则确定第一存储节点对应的第二存储节点,其中,第一存储节点和第二存储节点与同一个对象存储设备连接。
可选地,对象存储设备为双端口固态硬盘。
上述步骤中的第二存储节点可以是分布式存储系统中的另一个节点。对于第一存储节点和第二存储节点,两个存储节点可以分别部署两个不同的服务器,并且共享对象存储设备,该对象存储设备可以是双端口SSD、JBOD(Just a Bunch Of Disks,磁盘簇)、SAN(Storage Area Network,存储区域网络)、NAS(Network Attached Storage,网络连接存储)等各类共享存储的设备,但不仅限于此,也可以是其他能够实现上述功能的设备。
在本发明实施例中,可以采用双端口SSD,两个服务器分别通过一个端口拦截到SSD,使得两个服务器都可以访问该SSD,因此,在其中一个服务器出现非磁盘硬件类故障的情况下,由于磁盘是正常工作的,可以由另一个服务器代理出现故障的服务器,通过访问该SSD对外提供服务。
步骤S106,通过第二存储节点对该对象存储设备中存储的数据进行操作。
在一种可选的实施例中,在检测到第一存储节点出现故障之后,如果确定该节点未发生硬件故障,则可以确定与该节点共享对象存储设备的另一个节点,也即第二存储节点,并通过第二存储节点访问共享的对象存储设备,实现对外提供服务的目的。
需要说明的是,由于第一存储节点和第二存储节点与同一个对象存储设备进行连接,在两个存储节点均正常的情况下,为了能够对外提供正常的服务,两个存储节点可以分为主节点和从节点,例如,在本发明实施例中,以第一存储节点为主节点,第二存储节点为从节点。在两个存储节点均正常的情况下,由主节点对外提供服务;在主节点出现非硬件故障的情况下,由从节点对外提供服务,无需触发数据重建或数据重平衡,可以快速继续对外提供服务。
通过本发明上述实施例提供的方案,在检测到第一存储节点发生故障的情况下,在判断出第一存储节点未发生磁盘故障的情况下,可以通过与第一存储节点连接同一个对象存储设备的第二存储节点该对象存储设备中存储的数据进行操作,从而实现了在硬盘硬件正常且数据完好的情况下,通过切换存储节点的方式实现对外提供服务,避免和减少不必要的数据重建的目的,达到了提升分布式存储系统可用性,增强分布式存储系统的可靠性和稳定性,延长磁盘的使用寿命,有效降低用户运维和使用成本的技术效果,进而解决了相关技术中分布式存储系统出现故障后需要进行数据重建,导致分布式存储系统的安全性、可靠性和稳定性降低的技术问题。
可选地,通过第二存储节点对该对象存储设备中存储的数据进行操作包括:控制对象存储设备对应的虚拟地址从第一存储节点迁移到第二存储节点;控制第二存储节点上启动对象存储设备对应的存储实例进程。
上述步骤中的虚拟地址可以是虚拟IP地址,对于存储节点,可以创建一个OSD实例OSD.1,在集群管理中心Monitor注册OSD实例信息{osd.1,vip-1},其中,vip-1是上述的虚拟地址。
在一种可选的实施例中,在第一存储节点和第二存储节点均正常的情况下,虚拟地址可以附着在主节点所在的服务器上,也即,附着在第一存储节点上,并且存储实例进程在第一存储节点上启动并提供服务。在第一存储节点出现非硬盘故障之后,可以将虚拟地址从第一存储节点迁移到第二存储节点,存储实例进程在第二存储节点上启动并提供服务,无需触发数据重建或数据重平衡,可以快速继续对外提供服务。
可选地,在检测到第一存储节点恢复运行的情况下,通过第一存储节点对该对象存储设备中存储的数据进行操作。
在一种可选的实施例中,在第二存储节点对外提供服务之后,如果第一存储节点恢复运行,则可以重新通过第一存储节点访问共享的对象存储设备,实现对外提供服务的目的。
可选地,通过第一存储节点对该对象存储设备中存储的数据进行操作包括:控制对象存储设备对应的虚拟地址从第二存储节点迁移到第一存储节点;控制第一存储节点上启动对象存储设备对应的存储实例进程。
在一种可选的实施例中,每个存储节点实现对外提供服务的实现方式相同,对于第一存储节点,在第一存储节点恢复运行之后,可以重新将虚拟地址从第二存储节点迁移回第一存储节点,存储实例进程在第一存储节点上启动并提供服务。
可选地,在第一存储节点通过多条通路与对象存储设备连接的情况下,该方法还包括:如果检测到多条通路中的至少一条通路出现故障,则将第一存储节点通过多条通路中的其他通路对该对象存储设备中存储的数据进行操作。
在一种可选的实施例中,对于每个存储节点,在可以通过多条通路访问共享的对象存储设备的情况下,如果检测到部分通路无法访问对象存储设备,此时可以确定部分通路出现路障,因此可以采取访问通路切换方式继续提供服务,避免数据重建和数据重平衡。
需要说明的是,上述的第一存储节点也可以替换为第二存储节点,甚至可以替换为其他任意一个存储节点,本发明对此不作具体限定。
可选地,在检测到第一存储节点发生故障的情况下,该方法还包括:获取对象存储设备的状态信息,其中,发送状态信息至其他对象存储设备或客户端;将状态信息中的主节点状态更新为关闭状态;控制第二存储节点重启,并接收第二存储节点发送的注册信息,其中,第二存储节点发送的注册信息至少包括:第二存储节点的网络地址;将状态信息中的从节点状态更新为活跃状态,并将状态信息中的地址信息更新为第二存储节点的网络地址。
上述步骤中的状态信息可以是Monitor中的全局的OSDMap信息表,可以记录进群内每个OSD的相关信息,具体可以包括:主节点地址master-addr、主节点状态master-status、从节点地址slave-addr、从节点状态slave-status、以及地址信息addr。在每次对OSDMap信息表进行更新之后,Monitor可以将更新后的OSDMap信息表下发到OSD及客户端。
每个存储节点发送的注册信息中不仅仅携带有该存储节点的网络地址,也即,IP地址,还可以携带该存储节点对应的OSD的信息,例如,whoami参数。
在一种可选的实施例中,在Monitor接收到其他存储节点报告第一存储节点故障,且判定该存储节点确定故障的情况下,可以更新OSDMap信息,将主节点状态更新为关闭状态,也即,设置master-status=inactive-off,并通知从节点也即第二存储节点重新启动。在第二存储节点重新启动之后,可以向Monitor注册,Monitor记录OSDMap信息,将从节点状态更新为活跃状态,也即,设置slave-status=active-on,并将地址信息更新为第二存储节点的网络地址,也即,设置addr=ip-b。
可选地,在控制第二存储节点重启之前,该方法还包括:判断状态信息中的从节点状态是否为非活跃状态;如果从节点状态是非活跃状态,则控制第二存储节点重启。
在一种可选的实施例中,Monitor可以检查从节点状态,判断slave-status是否为inactive-on,如果是,则可以通知从节点,也即第二存储节点重新启动。
可选地,在检测到第一存储节点恢复运行的情况下,该方法还包括:接收第一存储节点发送的注册信息,其中,第一存储节点发送的注册信息至少包括:第一存储节点的网络地址;判断第一存储节点的网络地址与对象存储设备的配置文件中的预设主节点地址是否匹配;如果第一存储节点的网络地址与预设主节点地址匹配成功,则将对象存储设备的状态信息中的主节点状态更新为非活跃状态,并控制第二存储节点重启;在接收到第二存储节点发送的重启确认信息之后,将状态信息中的主节点状态更新为活跃状态,将状态信息中的从节点状态更新为关闭状态,并将状态信息中的地址信息更新为第一存储节点的网络地址。
上述步骤中的配置文件可以是OSD的配置文件,该配置文件中新增有主节点地址master-addr(也即上述的预设主节点地址)和从节点地址slave-addr。重启确认信息可以是ACK(Acknowledgement,确认字符)确认消息,但不仅限于此。
在一种可选的实施例中,在检测到第一存储节点恢复运行之后,第一存储节点可以向Monitor注册,此时,Monitor可以确定从第二存储节点已经启动并对外提供服务,如果第一存储节点的网络地址ip-a可以匹配到配置文件中的预设主节点地址master-addr,则Monitor可以更新OSDMap信息,也即,设置master-status=inactive-on。同时,Monitor向第二存储节点发送重新启动通知,第二存储节点在接收到重新启动通知消息之后,向Monitor发送ACK确认信息,然后重启。Monitor在接收到ACK之后,修改OSDMap信息,将主节点状态设置活跃状态,并将从节点状态设置为关闭状态,也即,设置master-status=active-on,slave-status=inactive-off。另外,将地址信息更新为第一存储节点的网络地址,也即,设置addr=ip-a。
可选地,在第一存储节点启动之后,该方法还包括:接收第一存储节点发送的注册信息,其中,第一存储节点发送的注册信息至少包括:第一存储节点的网络地址;判断对象存储设备是否启动;如果对象存储设备未启动,则判断第一存储节点的网络地址与对象存储设备的配置文件中的预设主节点地址是否匹配;如果第一存储节点的网络地址与预设主节点地址匹配成功,则确定对象存储设备对应的状态信息中的主节点地址为第一存储节点的网络地址,状态信息中的主节点状态为活跃状态,以及状态信息中的地址信息为第一存储节点的网络地址。
在一种可选的实施例中,在第一存储节点,也即主节点启动之后,可以发送注册信息至Monitor,该注册信息中至少包括有主节点的网络地址ip-a,Monitor检查OSDMap信息之后发现该OSD还未启动,并且根据OSD的配置文件可以匹配到该节点的网络地址ip-a属于配置文件中预设主节点地址,此时,Monitor可以记录如下信息,将主节点状态设置为活跃状态,将主节点地址设置为该节点的网络地址,也即,设置master-addr=ip-a,master-status=active-on。接着Monitor更新下发到OSD及客户端的OSDMap,其中,OSDMap[1].addr=ip-a,也即,将地址信息设置为该节点的网络地址。至此,Monitor已经向整个分布式存储系统宣告OSD实例进程位于地址是ip-a的服务器,由第一存储节点对外提供服务。
可选地,在第二存储节点启动之后,该方法还包括:接收第二存储节点发送的注册信息,其中,第二存储节点发送的注册信息至少包括:第二存储节点的网络地址;判断第二存储节点的网络地址与配置文件中的预设备节点地址是否匹配;如果第二存储节点的网络地址与预设备节点地址匹配成功,则确定状态信息中的从节点地址为第二存储节点的网络地址,以及状态信息中的从节点状态为非活跃状态。
在一种可选的实施例中,在第一存储节点启动之后,此时启动第二存储节点,第二存储节点可以发送注册信息至Monitor,该注册信息中至少包括有从节点的网络地址ip-b,Monitor检查OSDMap信息之后发现主节点已经启动,并且根据OSD的配置文件可以匹配到该节点的网络地址ip-b属于配置文件中预设备节点地址,此时,Monitor可以记录如下信息,将从节点状态设置为非活跃状态,并将从节点地址设置为该节点的网络地址,也即,设置slave-addr=ip-b,slave-status=inactive-on。
可选地,在确定状态信息中的从节点地址为第二存储节点的网络地址,以及状态信息中的从节点状态为非活跃状态之后,该方法还包括:检测预设时间段内是否接收到第二存储节点发送的心跳数据;如果预设时间段内未接收到心跳数据,则更新从节点状态为关闭状态。
上述步骤中的预设时间段可以根据需要进行设置,可以预先通过实验确定,本发明对此不作具体限定。
在一种可选的实施例中,Monitor在设置OSDMap信息之后,可以向第二存储节点发送响应,告知其悬挂服务,并定时向Monitor发送心跳,如果在预设时间段内没有检测到第二存储节点的心跳,也即,未接收到第二存储节点发送的心跳数据,则可以更新OSDMap信息,将从节点状态更新为关闭状态,也即,设置slave-status=inactive-off。
可选地,在第二存储节点启动之后,该方法还包括:接收第二存储节点发送的注册信息,其中,第二存储节点发送的注册信息至少包括:第二存储节点的网络地址;判断对象存储设备是否启动;如果对象存储设备未启动,则判断第二存储节点的网络地址与对象存储设备的配置文件中的预设备节点地址是否匹配;如果第二存储节点的网络地址与预设备节点地址匹配成功,则确定对象存储设备对应的状态信息中的从节点地址为第二存储节点的网络地址,状态信息中的从节点状态为活跃状态,以及状态信息中的地址信息为第一存储节点的网络地址。
在一种可选的实施例中,在第二存储节点,也即从节点启动之后,可以发送注册信息至Monitor,该注册信息中至少包括有从节点的网络地址ip-b,Monitor检查OSDMap信息之后发现该OSD还未启动,并且根据OSD的配置文件可以匹配到该节点的网络地址ip-b属于配置文件中预设备节点地址,此时,Monitor可以记录如下信息,将从节点状态设置为活跃状态,将从节点地址设置为该节点的网络地址,也即,设置slave-addr=ip-b,slave-status=active-on。接着Monitor更新下发到OSD及客户端的OSDMap,其中,OSDMap[1].addr=ip-b,也即,将地址信息设置为该节点的网络地址。至此,Monitor已经向整个分布式存储系统宣告OSD实例进程位于地址是ip-b的服务器,由第二存储节点对外提供服务。
可选地,在第一存储节点启动之后,该方法还包括:接收第一存储节点发送的注册信息,其中,第一存储节点发送的注册信息至少包括:第一存储节点的网络地址;判断第一存储节点的网络地址与对象存储设备的配置文件中的预设主节点地址是否匹配;如果第一存储节点的网络地址与预设主节点地址匹配成功,则将对象存储设备的状态信息中的主节点状态更新为非活跃状态,并控制第二存储节点重启;在接收到第二存储节点发送的重启确认信息之后,将状态信息中的主节点状态更新为活跃状态,将状态信息中的从节点状态更新为关闭状态,并将状态信息中的地址信息更新为第一存储节点的网络地址。
在一种可选的实施例中,在第二存储节点启动之后,此时启动第一存储节点,第一存储节点可以发送注册信息至Monitor,该注册信息中至少包括有主节点的网络地址ip-a,Monitor检查OSDMap信息之后发现从节点已经启动,并且根据OSD的配置文件可以匹配到该节点的网络地址ip-a属于配置文件中预设主节点地址,此时,Monitor可以记录如下信息,将主节点状态设置为非活跃状态,并将主节点地址设置为该节点的网络地址,也即,设置mater-addr=ip-a,mater-status=inactive-on。同时向第二存储节点发送重新启动通知,第二存储节点接收到重新启动通知消息之后,向Monitor发送ACK确认信息,然后重启。Monitor接收到ACK之后,修改OSDMap信息,将主节点状态更新为活跃状态,从节点状态更新为关闭状态,也即,设置mater-status=active-on,slave-status=inactive-off,然后更新下发到OSD及客户端的OSDMap,其中OSDMap[1].addr=ip-a,也即,将地址信息设置为第一存储节点的网络地址。至此,Monitor已经向整个系统宣告OSD实例进程位于地址是ip-a的服务器,由第一存储节点对外提供服务。
下面结合图2a、图2b、图2c和图3,以Ceph分布式存储系统为例,对本发明一种优选的实施例进行详细说明。
如图2a所示,一块双端口SSD盘,两个端口分别连接到A、B两台服务器,这两台服务器都可以访问这块盘。创建一个OSD实例OSD.1,在集群管理中心Monitor注册OSD实例信息{osd.1,vip-1}。vip-1是虚拟IP地址,在服务器A、B上对应ip-a、ip-b两个实IP,形成主从关系。
如图2b所示,正常情况下vip-1附着在主ip所在的A服务器上,OSD.1的实例进程在服务器A上启动并提供服务。
如图2c所示,当发生OSD软件故障、服务器A网络故障等非磁盘故障的情况下,通过集群检测和控制系统,强制将vip-1从服务器A飘移到服务器B,并在B服务器上启动OSD.1实例,继续对外提供服务。
在发生此类故障时,由于磁盘是正常工作的,服务器B可以正常读写磁盘数据,通过控制vip从主服务器飘移到从服务,并启动OSD.1服务,无需触发数据重建或数据重平衡,可以快速继续对外提供服务。
如图3所示,主节点和从节点之间的状态转换流程如下:
对于启动流程,在OSD的配置文件中,新增master-addr和slave-addr,分别设置OSD对应的主节点和从节点的public地址,如下所示:
[osd.1]
master-addr=ip-a
slave-addr=ip-b
OSD启动时,首先向Monitor注册,注册时携带osd-fsid,ceph-fsid,whoami,addr等信息,Monitor有一个全局的OSDMap信息表,记录集群内每个OSD的相关信息,Monitor对OSD携带上来的信息进行校验,校验通过才允许OSD启动并加入集群。
在主OSD节点先启动的情况下:
OSD-A启动时,携带addr=ip-a,whoami=1,Monitor检查OSDMap[1]中的信息,发现该OSD还没有启动,同时根据OSD的配置文件匹配到ip-a属于主节点的地址,因此会记录如下信息:
OSDMap[1].mater-addr=ip-a
OSDMap[1].master-status=active-on
接着Monitor更新下发到OSD及客户端的OSDMap,其中OSDMap[1].addr=ip-a。至此,Monitor已经向整个系统宣告OSD.1服务进程位于地址是ip-a的服务器,OSD-A开始对外提供服务。
接下来,OSD-B启动,携带addr=ip-b,whoami=1,Monitor检查发现OSD.1的主节点已经启动,且ip-b匹配到OSD配置文件中的从节点的地址,在OSDMap中记录如下信息:
OSDMAP[1].slave-addr=ip-b
OSDMap[1].slave-status=inactive-on
然后向OSD-B发送响应,告知其悬挂服务,并定时向Monitor发送心跳。如果一段时间没有检测到OSD-B的心跳,会更新其状态信息为:
OSDMap[1].slave-status=inactive-off。
在从OSD节点先启动的情况下:
OSD-B启动时,携带addr=ip-b,whoami=1,Monitor检查OSDMap[1]中的信息,发现该OSD还没有启动,同时根据OSD的配置文件匹配到ip-b属于从节点的地址,因此会记录如下信息:
OSDMap[1].slave-addr=ip-b
OSDMap[1].slave-status=active-on
接着Monitor更新下发到OSD及客户端的OSDMap,其中OSDMap[1].addr=ip-b。至此,Monitor已经向整个系统宣告OSD.1服务进程位于地址是ip-b的服务器,OSD-B开始对外提供服务。
接下来,OSD-A启动,携带addr=ip-a,whoami=1,Monitor检查发现OSD.1的从节点已经启动并对外提供服务,且当前来注册的OSD是OSD.1的主节点,因此会触发Failback,相关流程见“Fail back流程”。
对于Fail over流程,当Monitor接到其它OSD报告OSD.1故障,且判定确实故障的时候,更新OSDMap信息:
OSDMap[1].mater-addr=ip-a
OSDMap[1].master-status=inactive-off
同时检查备节点状态,如果备节点状态为inactive-on,则通知备节点重新启动。备节点重新启动,向Monitor注册,Monitor检查发现主节点故障,记录OSDMap信息如下:
OSDMap[1].slave-addr=ip-b
OSDMap[1].slave-status=active-on
然后更新下发到OSD及客户端的OSDMap,其中OSDMap[1].addr=ip-b。至此,Monitor已经向整个系统宣告OSD.1服务进程位于地址是ip-b的服务器,OSD-B开始对外提供服务,实现Fail over。
对于Fail back流程,OSD.1因主节点故障而Fail over到备节点,备节点对外提供服务,此时如果主节点恢复运行,向Monitor注册,就会触发Fail back流程。
OSD-A启动,携带addr=ip-a,whoami=1,Monitor检查发现OSD.1的备节点已经启动并对外提供服务,且ip-a匹配到OSD.1的主节点地址,Monitor更新OSD.1的状态信息如下:
OSDMap[1].mater-addr=ip-a
OSDMap[1].master-status=inactive-on
同时向OSD-B发送重新启动通知,OSD-B接收到重新启动通知消息后,向Monitor发送ACK确认消息,然后重启。Monitor收到ACK后,修改OSD.1的状态信息如下:
OSDMap[1].mater-addr=ip-a
OSDMap[1].master-status=active-on
OSDMap[1].slave-addr=ip-b
OSDMap[1].slave-status=inactive-off
然后更新下发到OSD及客户端的OSDMap,其中OSDMap[1].addr=ip-a。至此,Monitor已经向整个系统宣告OSD.1服务进程位于地址是ip-a的服务器,OSD-A开始对外提供服务,实现Fail back。
通过本发明上述流程,在磁盘健康且数据完好的情况下,因软件、网络、服务器计算组件等类型故障而导致OSD不可用时,通过服务器共享存储、OSD实例按需在不同服务器上启动提供服务;另外,多通路可以访问磁盘的情况下,如果检测到部分通路不能访问,但磁盘工作完好,采取访问通路切换方式继续提供服务。从而实现在分布式存储系统中避免和减少不必要的数据重建,不仅提升系统可用性,同时还增强了系统的可靠性和稳定性,并且能极大延长磁盘的使用寿命,有效降低用户运维和使用成本。
实施例2
根据本发明实施例,还提供了一种数据处理系统。该系统可以执行上述实施例1中提供的数据处理方法,并且具体实现方案和优选实施例与上述实施例1相同,在此不作赘述。
图4是根据本发明实施例的一种数据处理系统的示意图,如图4所示,该系统包括:第一存储节点42、第二存储节点44和控制节点46,其中,第一存储节点42和第二存储节点44与同一个对象存储设备48连接,控制节点46与第一存储节点42和第二存储节点44通信。
其中,控制节点46用于在检测到第一存储节点发生故障,且第一存储节点未发生磁盘故障的情况下,通过第二存储节点对对象存储设备中存储的数据进行操作。
上述的控制节点可以是分布式存储系统中的Monitor节点,但不仅限于此。
可选地,控制节点46还用于控制对象存储设备对应的虚拟地址从第一存储节点迁移到第二存储节点,并控制第二存储节点上启动对象存储设备对应的存储实例进程。
可选地,控制节点46还用于在检测到第一存储节点恢复运行的情况下,通过第一存储节点对该对象存储设备中存储的数据进行操作。
可选地,控制节点46还用于控制对象存储设备对应的虚拟地址从第二存储节点迁移到第一存储节点,并控制第一存储节点上启动对象存储设备对应的存储实例进程。
可选地,第一存储节点42还用于在第一存储节点通过多条通路与对象存储设备连接的情况下,如果检测到多条通路中的至少一条通路出现故障,则通过多条通路中的其他通路对该对象存储设备中存储的数据进行操作。
可选地,控制节点46还用于在检测到第一存储节点发生故障的情况下,获取对象存储设备的状态信息,将状态信息中的主节点状态更新为关闭状态,控制第二存储节点重启;第二存储节点44还用于发送注册信息,第二存储节点发送的注册信息至少包括:第二存储节点的网络地址;控制节点46还用于将状态信息中的从节点状态更新为活跃状态,并将状态信息中的地址信息更新为第二存储节点的网络地址,其中,发送状态信息至其他对象存储设备或客户端。
可选地,控制节点46还用于在控制第二存储节点重启之前,判断状态信息中的从节点状态是否为非活跃状态;如果从节点状态是非活跃状态,则控制第二存储节点重启。
可选地,第一存储节点42还用于发送注册信息,其中,第一存储节点发送的注册信息至少包括:第一存储节点的网络地址;控制节点46还用于在检测到第一存储节点恢复运行的情况下,判断第一存储节点的网络地址与对象存储设备的配置文件中的预设主节点地址是否匹配,如果第一存储节点的网络地址与预设主节点地址匹配成功,则将对象存储设备的状态信息中的主节点状态更新为非活跃状态,并控制第二存储节点重启;第二存储节点44还用于发送重启确认信息;控制节点46还用于将状态信息中的主节点状态更新为活跃状态,将状态信息中的从节点状态更新为关闭状态,并将状态信息中的地址信息更新为第一存储节点的网络地址。
可选地,控制节点46还用于在第一存储节点启动之后,接收第一存储节点发送的注册信息,判断对象存储设备是否启动,如果对象存储设备未启动,则判断第一存储节点的网络地址与对象存储设备的配置文件中的预设主节点地址是否匹配,如果第一存储节点的网络地址与预设主节点地址匹配成功,则确定对象存储设备对应的状态信息中的主节点地址为第一存储节点的网络地址,状态信息中的主节点状态为活跃状态,以及状态信息中的地址信息为第一存储节点的网络地址,其中,第一存储节点发送的注册信息至少包括:第一存储节点的网络地址。
可选地,第二存储节点44还用于启动后发送注册信息,其中,第二存储节点发送的注册信息至少包括:第二存储节点的网络地址;控制节点46还用于判断第二存储节点的网络地址与配置文件中的预设备节点地址是否匹配,如果第二存储节点的网络地址与预设备节点地址匹配成功,则确定状态信息中的从节点地址为第二存储节点的网络地址,以及状态信息中的从节点状态为非活跃状态。
可选地,控制节点46还用于在确定状态信息中的从节点地址为第二存储节点的网络地址,以及状态信息中的从节点状态为非活跃状态之后,检测预设时间段内是否接收到第二存储节点发送的心跳数据,如果预设时间段内未接收到心跳数据,则更新从节点状态为关闭状态。
可选地,第二存储节点44还用于启动后发送注册信息,其中,第二存储节点发送的注册信息至少包括:第二存储节点的网络地址;控制节点46还用于判断对象存储设备是否启动,如果对象存储设备未启动,则判断第二存储节点的网络地址与对象存储设备的配置文件中的预设备节点地址是否匹配,如果第二存储节点的网络地址与预设备节点地址匹配成功,则确定对象存储设备对应的状态信息中的从节点地址为第二存储节点的网络地址,状态信息中的从节点状态为活跃状态,以及状态信息中的地址信息为第一存储节点的网络地址。
可选地,第一存储节点42还用于启动后发送注册信息,其中,第一存储节点发送的注册信息至少包括:第一存储节点的网络地址;控制节点46还用于判断第一存储节点的网络地址与对象存储设备的配置文件中的预设主节点地址是否匹配,如果第一存储节点的网络地址与预设主节点地址匹配成功,则将对象存储设备的状态信息中的主节点状态更新为非活跃状态,并控制第二存储节点重启;第二存储节点44还用于发送重启确认信息;控制节点46还用于将状态信息中的主节点状态更新为活跃状态,将状态信息中的从节点状态更新为关闭状态,并将状态信息中的地址信息更新为第一存储节点的网络地址。
实施例3
根据本发明实施例,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,在程序运行时控制计算机可读存储介质所在设备执行上述实施例1的数据处理方法。
实施例4
根据本发明实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述实施例1的数据处理方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (17)

1.一种数据处理方法,其特征在于,包括:
在检测到第一存储节点发生故障的情况下,判断所述第一存储节点是否发生磁盘故障;
如果所述第一存储节点未发生磁盘故障,则确定所述第一存储节点对应的第二存储节点,其中,所述第一存储节点和所述第二存储节点与同一个对象存储设备连接;
通过所述第二存储节点对所述对象存储设备中存储的数据进行操作。
2.根据权利要求1所述的方法,其特征在于,通过所述第二存储节点对所述对象存储设备中存储的数据进行操作包括:
控制所述对象存储设备对应的虚拟地址从所述第一存储节点迁移到所述第二存储节点;
控制所述第二存储节点上启动所述对象存储设备对应的存储实例进程。
3.根据权利要求1所述的方法,其特征在于,在检测到所述第一存储节点恢复运行的情况下,通过所述第一存储节点对所述对象存储设备中存储的数据进行操作。
4.根据权利要求3所述的方法,其特征在于,通过所述第一存储节点对所述对象存储设备中存储的数据进行操作包括:
控制所述对象存储设备对应的虚拟地址从所述第二存储节点迁移到所述第一存储节点;
控制所述第一存储节点上启动所述对象存储设备对应的存储实例进程。
5.根据权利要求1所述的方法,其特征在于,在所述第一存储节点通过多条通路与所述对象存储设备连接的情况下,所述方法还包括:
如果检测到所述多条通路中的至少一条通路出现故障,则将所述第一存储节点通过所述多条通路中的其他通路对所述对象存储设备中存储的数据进行操作。
6.根据权利要求1至5中任意一项所述的方法,其特征在于,在检测到第一存储节点发生故障的情况下,所述方法还包括:
获取所述对象存储设备的状态信息,其中,发送所述状态信息至其他对象存储设备或客户端;
将所述状态信息中的主节点状态更新为关闭状态;
控制所述第二存储节点重启,并接收所述第二存储节点发送的注册信息,其中,所述第二存储节点发送的所述注册信息至少包括:所述第二存储节点的网络地址;
将所述状态信息中的从节点状态更新为活跃状态,并将所述状态信息中的地址信息更新为所述第二存储节点的网络地址。
7.根据权利要求6所述的方法,其特征在于,在控制所述第二存储节点重启之前,所述方法还包括:
判断所述状态信息中的从节点状态是否为非活跃状态;
如果所述从节点状态是所述非活跃状态,则控制所述第二存储节点重启。
8.根据权利要求1至5中任意一项所述的方法,其特征在于,在检测到所述第一存储节点恢复运行的情况下,所述方法还包括:
接收所述第一存储节点发送的注册信息,其中,所述第一存储节点发送的所述注册信息至少包括:所述第一存储节点的网络地址;
判断所述第一存储节点的网络地址与所述对象存储设备的配置文件中的预设主节点地址是否匹配;
如果所述第一存储节点的网络地址与所述预设主节点地址匹配成功,则将所述对象存储设备的状态信息中的主节点状态更新为非活跃状态,并控制所述第二存储节点重启;
在接收到所述第二存储节点发送的重启确认信息之后,将所述状态信息中的主节点状态更新为活跃状态,将状态信息中的从节点状态更新为关闭状态,并将所述状态信息中的地址信息更新为所述第一存储节点的网络地址。
9.根据权利要求1至5中任意一项所述的方法,其特征在于,在所述第一存储节点启动之后,所述方法还包括:
接收所述第一存储节点发送的注册信息,其中,所述第一存储节点发送的所述注册信息至少包括:所述第一存储节点的网络地址;
判断所述对象存储设备是否启动;
如果所述对象存储设备未启动,则判断所述第一存储节点的网络地址与所述对象存储设备的配置文件中的预设主节点地址是否匹配;
如果所述第一存储节点的网络地址与所述预设主节点地址匹配成功,则确定所述对象存储设备对应的状态信息中的主节点地址为所述第一存储节点的网络地址,所述状态信息中的主节点状态为活跃状态,以及所述状态信息中的地址信息为所述第一存储节点的网络地址。
10.根据权利要求8所述的方法,其特征在于,在所述第二存储节点启动之后,所述方法还包括:
接收所述第二存储节点发送的注册信息,其中,所述第二存储节点发送的所述注册信息至少包括:所述第二存储节点的网络地址;
判断所述第二存储节点的网络地址与所述配置文件中的预设备节点地址是否匹配;
如果所述第二存储节点的网络地址与所述预设备节点地址匹配成功,则确定所述状态信息中的从节点地址为所述第二存储节点的网络地址,以及所述状态信息中的从节点状态为非活跃状态。
11.根据权利要求10所述的方法,其特征在于,在确定所述状态信息中的从节点地址为所述第二存储节点的网络地址,以及所述状态信息中的从节点状态为非活跃状态之后,所述方法还包括:
检测预设时间段内是否接收到所述第二存储节点发送的心跳数据;
如果所述预设时间段内未接收到所述心跳数据,则更新所述从节点状态为关闭状态。
12.根据权利要求1至5中任意一项所述的方法,其特征在于,在所述第二存储节点启动之后,所述方法还包括:
接收所述第二存储节点发送的注册信息,其中,所述第二存储节点发送的所述注册信息至少包括:所述第二存储节点的网络地址;
判断所述对象存储设备是否启动;
如果所述对象存储设备未启动,则判断所述第二存储节点的网络地址与所述对象存储设备的配置文件中的预设备节点地址是否匹配;
如果所述第二存储节点的网络地址与所述预设备节点地址匹配成功,则确定所述对象存储设备对应的状态信息中的从节点地址为所述第二存储节点的网络地址,所述状态信息中的从节点状态为活跃状态,以及所述状态信息中的地址信息为所述第一存储节点的网络地址。
13.根据权利要求12所述的方法,其特征在于,在所述第一存储节点启动之后,所述方法还包括:
接收所述第一存储节点发送的注册信息,其中,所述第一存储节点发送的所述注册信息至少包括:所述第一存储节点的网络地址;
判断所述第一存储节点的网络地址与所述对象存储设备的配置文件中的预设主节点地址是否匹配;
如果所述第一存储节点的网络地址与所述预设主节点地址匹配成功,则将所述对象存储设备的状态信息中的主节点状态更新为非活跃状态,并控制所述第二存储节点重启;
在接收到所述第二存储节点发送的重启确认信息之后,将所述状态信息中的主节点状态更新为活跃状态,将状态信息中的从节点状态更新为关闭状态,并将所述状态信息中的地址信息更新为所述第一存储节点的网络地址。
14.根据权利要求1所述的方法,其特征在于,所述对象存储设备为双端口固态硬盘。
15.一种数据处理系统,其特征在于,包括:
第一存储节点;
第二存储节点,所述第一存储节点和所述第二存储节点与同一个对象存储设备连接;
控制节点,与所述第一存储节点和所述第二存储节点通信,用于在检测到第一存储节点发生故障,且所述第一存储节点未发生磁盘故障的情况下,通过所述第二存储节点对所述对象存储设备中存储的数据进行操作。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至14中任意一项所述的数据处理方法。
17.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至14中任意一项所述的数据处理方法。
CN202010733167.4A 2020-07-27 2020-07-27 数据处理方法和系统、计算机可读存储介质及处理器 Active CN111901415B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010733167.4A CN111901415B (zh) 2020-07-27 2020-07-27 数据处理方法和系统、计算机可读存储介质及处理器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010733167.4A CN111901415B (zh) 2020-07-27 2020-07-27 数据处理方法和系统、计算机可读存储介质及处理器

Publications (2)

Publication Number Publication Date
CN111901415A true CN111901415A (zh) 2020-11-06
CN111901415B CN111901415B (zh) 2023-07-14

Family

ID=73189260

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010733167.4A Active CN111901415B (zh) 2020-07-27 2020-07-27 数据处理方法和系统、计算机可读存储介质及处理器

Country Status (1)

Country Link
CN (1) CN111901415B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107046575A (zh) * 2017-04-18 2017-08-15 南京卓盛云信息科技有限公司 一种云存储系统及其高密度存储方法
CN108628717A (zh) * 2018-03-02 2018-10-09 北京辰森世纪科技股份有限公司 一种数据库系统及监控方法
CN108958984A (zh) * 2018-08-13 2018-12-07 深圳市证通电子股份有限公司 基于ceph的双活同步在线热备方法
CN109101357A (zh) * 2018-07-20 2018-12-28 广东浪潮大数据研究有限公司 一种osd故障的检测方法及装置
CN110286852A (zh) * 2019-05-20 2019-09-27 平安科技(深圳)有限公司 双控构架分布式存储系统、数据读取方法、装置和存储介质
CN110895521A (zh) * 2019-11-07 2020-03-20 浪潮电子信息产业股份有限公司 一种osd与mon的连接方法、装置、设备及存储介质
CN110971662A (zh) * 2019-10-22 2020-04-07 烽火通信科技股份有限公司 一种基于Ceph的两节点高可用实现方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107046575A (zh) * 2017-04-18 2017-08-15 南京卓盛云信息科技有限公司 一种云存储系统及其高密度存储方法
CN108628717A (zh) * 2018-03-02 2018-10-09 北京辰森世纪科技股份有限公司 一种数据库系统及监控方法
CN109101357A (zh) * 2018-07-20 2018-12-28 广东浪潮大数据研究有限公司 一种osd故障的检测方法及装置
CN108958984A (zh) * 2018-08-13 2018-12-07 深圳市证通电子股份有限公司 基于ceph的双活同步在线热备方法
CN110286852A (zh) * 2019-05-20 2019-09-27 平安科技(深圳)有限公司 双控构架分布式存储系统、数据读取方法、装置和存储介质
CN110971662A (zh) * 2019-10-22 2020-04-07 烽火通信科技股份有限公司 一种基于Ceph的两节点高可用实现方法及装置
CN110895521A (zh) * 2019-11-07 2020-03-20 浪潮电子信息产业股份有限公司 一种osd与mon的连接方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN111901415B (zh) 2023-07-14

Similar Documents

Publication Publication Date Title
US8984330B2 (en) Fault-tolerant replication architecture
US7890792B2 (en) Server switching method and server system equipped therewith
JP4572250B2 (ja) 計算機切り替え方法、計算機切り替えプログラム及び計算機システム
US8498967B1 (en) Two-node high availability cluster storage solution using an intelligent initiator to avoid split brain syndrome
US9489274B2 (en) System and method for performing efficient failover and virtual machine (VM) migration in virtual desktop infrastructure (VDI)
EP2800303B1 (en) Switch method, device and system for virtual application dual machine in cloud environment
JP5529972B2 (ja) 複製されたデータインスタンスのためのフェイルオーバーおよび復旧
US7457916B2 (en) Storage system, management server, and method of managing application thereof
JP4448878B2 (ja) 障害回復環境の設定方法
US9256507B2 (en) Computer system and its event notification method
US20110004791A1 (en) Server apparatus, fault detection method of server apparatus, and fault detection program of server apparatus
US20140173330A1 (en) Split Brain Detection and Recovery System
CN105302661A (zh) 一种实现虚拟化管理平台高可用的系统和方法
CN108628717A (zh) 一种数据库系统及监控方法
JP2008065525A (ja) 計算機システム、データ管理方法及び管理計算機
US11573737B2 (en) Method and apparatus for performing disk management of all flash array server
CN111147274B (zh) 为集群解决方案创建高度可用的仲裁集的系统和方法
US11119872B1 (en) Log management for a multi-node data processing system
CN104036043A (zh) 一种mysql高可用的方法及管理节点
CN110908723A (zh) 操作系统的主备切换方法、装置及相关设备
US8015437B2 (en) Restoring data to a distributed storage node
CN113849136A (zh) 一种基于国产平台的自动化fc块存储处理方法和系统
JP6124644B2 (ja) 情報処理装置および情報処理システム
EP3167372B1 (en) Methods for facilitating high availability storage services and corresponding devices
US11392423B2 (en) Method for running a quorum-based system by dynamically managing the quorum

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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100094 101, floors 1-5, building 7, courtyard 3, fengxiu Middle Road, Haidian District, Beijing

Applicant after: Beijing Xingchen Tianhe Technology Co.,Ltd.

Address before: 100097 room 806-1, block B, zone 2, Jinyuan times shopping center, indigo factory, Haidian District, Beijing

Applicant before: XSKY BEIJING DATA TECHNOLOGY Corp.,Ltd.

GR01 Patent grant
GR01 Patent grant