CN104348842B - 分布式存储系统路由方法、路由管理服务器及系统 - Google Patents

分布式存储系统路由方法、路由管理服务器及系统 Download PDF

Info

Publication number
CN104348842B
CN104348842B CN201310312242.XA CN201310312242A CN104348842B CN 104348842 B CN104348842 B CN 104348842B CN 201310312242 A CN201310312242 A CN 201310312242A CN 104348842 B CN104348842 B CN 104348842B
Authority
CN
China
Prior art keywords
host
routing
server
standby
delay machine
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.)
Active
Application number
CN201310312242.XA
Other languages
English (en)
Other versions
CN104348842A (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.)
Tencent Technology Shenzhen Co Ltd
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201310312242.XA priority Critical patent/CN104348842B/zh
Publication of CN104348842A publication Critical patent/CN104348842A/zh
Application granted granted Critical
Publication of CN104348842B publication Critical patent/CN104348842B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明涉及一种分布式存储系统路由方法、服务器及系统,其方法包括:路由管理服务器在监测到主机宕机时,切换系统路由为只读备机状态;接收接入服务器同步只读备机状态的系统路由信息成功后的上报信息;当接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将备机设置为主机,并由所有接入服务器同步修改后的系统路由信息。本发明在主机宕机的情况下,实现主机与备机的自动切换,保证了分布式存储系统主备切换中数据的一致性,提高了系统性能。

Description

分布式存储系统路由方法、路由管理服务器及系统
技术领域
本发明涉及计算机技术领域,尤其涉及一种分布式存储系统路由方法、路由管理服务器及系统。
背景技术
在分布式存储系统中配置有主机和备机,其中,主机是实际对外提供服务的节点;备机是为主机部署的对应的备份节点,在主机宕机的情况下,备机自动升级为主机,对外提供服务,以提高数据的安全性。
随着分布式存储系统规模的逐渐增大,节点宕机成为一个比较普遍的现象,在出现主机宕机的情况下,如何在最短的时间内把备机升级为主机并对外提供服务,此时则需要主备自动切换技术,不需要人工干预,并保证不误切,以及数据一致性。
目前使用比较普遍的是采用zookeeper技术,主要是部署zookeeper集群接受主备上报的心跳,然后由zookeeper来发放租约来决定由谁来对外提供服务。但是,现有的zookeeper技术存在以下缺点:
当分布式存储系统规模比较大时,采用zookeeper方式管理比较复杂;另外,当zookeeper系统出现问题时,会导致整个存储系统获取租约失败,进而停止对外提供服务,影响系统业务正常进行。
发明内容
本发明实施例提供一种分布式存储系统路由方法、路由管理服务器及系统,旨在保证分布式存储系统主备切换中数据的一致性,提高系统性能。
本发明实施例提出一种分布式存储系统路由方法,包括:
路由管理服务器在监测到主机宕机时,切换系统路由为只读备机状态;
接收接入服务器同步只读备机状态的系统路由信息成功后的上报信息;
当接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将所述备机设置为主机,并由所有接入服务器同步修改后的系统路由信息。
本发明实施例还提出一种分布式存储系统路由管理服务器,包括:
第一切换模块,用于在路由管理服务器监测到主机宕机时,切换系统路由为只读备机状态;
信息接收模块,用于接收接入服务器同步只读备机状态的路由信息成功后的上报信息;
第二切换模块,用于当接收到所有接入服务器成功同步所述只读备机状态的路由信息的上报信息时,修改系统路由信息,将所述备机设置为主机,并由所有接入服务器同步修改后的系统路由信息。
本发明实施例还提出一种分布式存储系统,包括:主机、至少一备机、至少一接入服务器,以及如上所述的路由管理服务器,所述路由管理服务器分别与所述主机、所述至少一备机、所述至少一接入服务器通信连接,其中:
所述主机,用于存储服务数据并通过所述路由管理服务器对外提供服务;
所述至少一备机,用于存储服务数据,在所述主机宕机时,由所述路由管理服务器控制切换为主机对外提供服务;
所述至少一接入服务器,用于从所述路由管理服务器获取系统路由信息,处理业务接入访问;以及在所述主机宕机时,同步只读备机状态的系统路由信息并上报所述路由管理服务器,在所述备机切换为主机后,同步修改后的系统路由信息。
本发明实施例提出的一种分布式存储系统路由方法、路由管理服务器及系统,在路由管理服务器监测到主机宕机时,切换系统路由为只读备机状态;当路由管理服务器接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将备机设置为主机,并由所有接入服务器同步修改后的系统路由信息,由此在主机宕机的情况下,实现主机与备机的自动切换,保证了分布式存储系统主备切换中数据的一致性,提高了系统性能。
附图说明
图1是本发明分布式存储系统路由方法第一实施例的流程示意图;
图2是本发明实施例中分布式存储系统的架构示意图;
图3是本发明分布式存储系统路由方法第二实施例的流程示意图;
图4a是本发明分布式存储系统路由方法实施例中路由管理服务器监测主机是否宕机的一种流程示意图;
图4b是本发明分布式存储系统路由方法实施例中路由管理服务器监测主机是否宕机的另一种流程示意图;
图4c是本发明分布式存储系统路由方法实施例中路由管理服务器监测主机是否宕机的再一种流程示意图;
图5是本发明分布式存储系统路由管理服务器第一实施例的结构示意图;
图6是本发明分布式存储系统路由管理服务器第二实施例的结构示意图;
图7a是本发明分布式存储系统路由管理服务器实施例中宕机监测模块的一种结构示意图;
图7b是本发明分布式存储系统路由管理服务器实施例中宕机监测模块的另一种结构示意图;
图7c是本发明分布式存储系统路由管理服务器实施例中宕机监测模块的再一种结构示意图。
为了使本发明的技术方案更加清楚、明了,下面将结合附图作进一步详述。
具体实施方式
本发明实施例解决方案主要是:在路由管理服务器监测到主机宕机时,切换系统路由为只读备机状态;当路由管理服务器接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将备机设置为主机,并由所有接入服务器同步修改后的系统路由信息。
如图1所示,本发明第一实施例提出一种分布式存储系统路由方法,包括:
步骤S101,路由管理服务器在监测到主机宕机时,切换系统路由为只读备机状态;
本实施例方法涉及的分布式存储系统的架构如图2所示,该分布式存储系统包括:路由(route)管理服务器、存储服务器以及若干个接入服务器,其中:
接入服务器(proxy):负责业务接入访问,其路由信息是由定时线程去路由管理服务器拉取(定时线程的间隔可以设置默认为1秒)。
路由管理服务器(router):负责管理存储服务器的路由信息,定时去检测每个存储服务器的心跳上报状态;
存储服务器采用一主一备部署方式,包括主机(master)和备机(slave):负责服务数据的具体存储,主机和备机定时上报心跳状态到路由管理服务器。其中,主机为实际对外提供服务的节点,在主机宕机的情况下,备机自动升级为主机,对外提供服务,以保证分布式存储系统数据的一致性。
上述系统路由信息为从存储服务器至接入服务器之间的路径信息。
在本实施例中,路由管理服务器会实时监测主机是否宕机,其中,监测方法在此不做限定,比如可以通过判断主机上报心跳状态是否超时来判断主机是否宕机。
路由管理服务器在监测到主机宕机时,进入主备切换流程,本实施例在切换过程中引入备机只读的有损服务状态,保证主备切换中数据的一致性。
具体地,路由管理服务器在监测到主机宕机时,切换系统路由为只读备机状态,即只允许备机进行数据读取操作,而禁止备机进行数据写入操作,从而可以保证主备切换中数据的一致性。
然后,路由管理服务器等待接收所有接入服务器同步该只读备机状态的系统路由信息成功后的上报信息。
步骤S102,接收接入服务器同步只读备机状态的系统路由信息成功后的上报信息;
各接入服务器从路由管理服务器拉取系统路由信息,当上述只读备机状态的系统路由信息同步成功后,接入服务器向路由管理服务器上报同步成功的信息。
通过上述过程,可以保证系统不会同时存在两个主机的写操作,提高数据传输的准确性和系统性能。
步骤S103,当接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将所述备机设置为主机,并由所有接入服务器同步修改后的系统路由信息。
当路由管理服务器确认接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,路由管理服务器修改系统路由信息,将备机设置为主机。
然后,所有接入服务器同步修改后的系统路由信息,最后完成主机与备机的切换。
本实施例通过上述方案,在路由管理服务器监测到主机宕机时,切换系统路由为只读备机状态;当路由管理服务器接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将备机设置为主机,并由所有接入服务器同步修改后的系统路由信息,由此在主机宕机的情况下,实现主机与备机的自动切换,保证了分布式存储系统主备切换中数据的一致性,提高了系统性能。
如图3所示,本发明第二实施例提出一种分布式存储系统路由方法,在上述图1所示的实施例的基础上,在上述步骤S101:路由管理服务器在监测到主机宕机时,切换系统路由为只读备机状态的步骤之前,还包括:
步骤S100,路由管理服务器监测主机是否宕机;若是,则进入步骤S101,否则,结束流程。
本实施例与上述第一实施例的区别在于,本实施例还包括路由管理服务器监测主机是否宕机的方案。
具体地,如图4a所示,作为一种实施方式,上述步骤S100可以包括:
步骤S1001,所述路由管理服务器定期检查所述主机上报的心跳状态;
步骤S1002,判断主机心跳上报是否超时,若是,则进入步骤S1004;否则,进入步骤S1005;
步骤S1004,判定所述主机宕机。
步骤S1005,判定所述主机未宕机。
在本实施方式中,通过路由管理服务器定期检查所述主机上报的心跳状态;当路由管理服务器检查到主机心跳上报超时时,即判定所述主机宕机,当路由管理服务器检查到主机心跳上报未超时时,表明主机心跳状态正常,即判定主机未宕机。
由此通过上述方案,实现了主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求。
如图4b所示,作为另一种实施方式,上述步骤S100可以包括:
步骤S1001,所述路由管理服务器定期检查所述主机上报的心跳状态;
步骤S1002,判断主机心跳上报是否超时,若是,则进入步骤S1003;否则,进入步骤S1005;
步骤S1003,检查所述备机上报的心跳状态;当检查到所述备机上报的心跳状态正常时,进入步骤S1006;否则,结束流程;
步骤S1006,所述路由管理服务器向所述主机发送探测包,进入步骤S1007;
步骤S1007,判断探测包是否返回;若探测包未返回,则进入步骤S1004;若有探测包返回,则进入步骤S1005;
步骤S1004,判定所述主机宕机。
步骤S1005,判定所述主机未宕机。
在本实施方式中,在上述图4a所示的实施方式的基础上,在路由管理服务器监测主机是否宕机的过程中,当路由管理服务器检查到所述主机心跳上报超时时,检查备机上报的心跳状态;当路由管理服务器检查到备机上报的心跳状态正常时,路由管理服务器会尝试向主机发送探测包;当探测包未返回时,则判定主机宕机。
由此通过上述方案,实现了主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求。此外,相比图4a所示的实施方式,本实施方式对主机的宕机检查更准确。
如图4c所示,作为另一种实施方式,上述步骤S100可以包括:
步骤S1001,所述路由管理服务器定期检查所述主机上报的心跳状态;
步骤S1002,判断主机心跳上报是否超时,若是,则进入步骤S1003;否则,进入步骤S1005;
步骤S1003,检查所述备机上报的心跳状态;当检查到所述备机上报的心跳状态正常时,进入步骤S1006;否则,进入步骤S1005;
步骤S1006,所述路由管理服务器向所述主机发送探测包,进入步骤S1007;
步骤S1007,判断探测包是否返回;若探测包未返回,则进入步骤S1008;若有探测包返回,则进入步骤S1005;
步骤S1008,从接入层选取若干接入服务器向所述主机发送探测包;若没有探测包返回,则进入步骤S1004;若有探测包返回,则进入步骤S1005;
步骤S1004,判定所述主机宕机。
步骤S1005,判定所述主机未宕机。
在本实施方式中,在上述图4b所示的实施方式的基础上,在路由管理服务器监测主机是否宕机的过程中,当所述路由管理服务器向所述主机发送探测包,且所述探测包未返回时,路由管理服务器会随机从接入层选取若干接入服务器向主机发送探测包,若没有探测包返回,则判定主机宕机。
由此通过上述方案,实现了主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求。此外,相比图4b所示的实施方式,本实施方式对主机的宕机检查更准确。
本实施例通过上述方案,通过对主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求;此外,在路由管理服务器监测到主机宕机时,切换系统路由为只读备机状态;当路由管理服务器接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将备机设置为主机,并由所有接入服务器同步修改后的系统路由信息,由此在主机宕机的情况下,实现主机与备机的自动切换,保证了分布式存储系统主备切换中数据的一致性,提高了系统性能。
如图5所示,本发明第一实施例提出一种分布式存储系统路由管理服务器,包括:第一切换模块201、信息接收模块202、第二切换模块203,其中:
第一切换模块201,用于在路由管理服务器监测到主机宕机时,切换系统路由为只读备机状态;
信息接收模块202,用于接收接入服务器同步只读备机状态的路由信息成功后的上报信息;
第二切换模块203,用于当接收到所有接入服务器成功同步所述只读备机状态的路由信息的上报信息时,修改系统路由信息,将所述备机设置为主机,并由所有接入服务器同步修改后的系统路由信息。
本实施例路由管理服务器所在的分布式存储系统的架构如图2所示,该分布式存储系统包括:路由(route)管理服务器、存储服务器以及若干个接入服务器,其中:
接入服务器(proxy):负责业务接入访问,其路由信息是由定时线程去路由管理服务器拉取(定时线程的间隔可以设置默认为1秒)。
路由管理服务器(router):负责管理存储服务器的路由信息,定时去检测每个存储服务器的心跳上报状态;
存储服务器采用一主一备部署方式,包括主机(master)和备机(slave):负责服务数据的具体存储,主机和备机定时上报心跳状态到路由管理服务器。其中,主机为实际对外提供服务的节点,在主机宕机的情况下,备机自动升级为主机,对外提供服务,以保证分布式存储系统数据的一致性。
上述系统路由信息为从存储服务器至接入服务器之间的路径信息。
在本实施例中,路由管理服务器会实时监测主机是否宕机,其中,监测方法在此不做限定,比如可以通过判断主机上报心跳状态是否超时来判断主机是否宕机。
路由管理服务器在监测到主机宕机时,进入主备切换流程,本实施例在切换过程中引入备机只读的有损服务状态,保证主备切换中数据的一致性。
具体地,路由管理服务器在监测到主机宕机时,通过第一切换模块201切换系统路由为只读备机状态,即只允许备机进行数据读取操作,而禁止备机进行数据写入操作,从而可以保证主备切换中数据的一致性。
然后,路由管理服务器等待接收所有接入服务器同步该只读备机状态的系统路由信息成功后的上报信息。
各接入服务器从路由管理服务器拉取系统路由信息,当上述只读备机状态的系统路由信息同步成功后,接入服务器向路由管理服务器上报同步成功的信息。路由管理服务器通过信息接收模块202接收接入服务器同步只读备机状态的路由信息成功后的上报信息。通过上述过程,可以保证系统不会同时存在两个主机的写操作,提高数据传输的准确性和系统性能。
当路由管理服务器确认接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,通过第二切换模块203修改系统路由信息,将备机设置为主机。
然后,所有接入服务器同步修改后的系统路由信息,最后完成主机与备机的切换。
本实施例通过上述方案,在路由管理服务器监测到主机宕机时,切换系统路由为只读备机状态;当路由管理服务器接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将备机设置为主机,并由所有接入服务器同步修改后的系统路由信息,由此在主机宕机的情况下,实现主机与备机的自动切换,保证了分布式存储系统主备切换中数据的一致性,提高了系统性能。
如图6所示,本发明第二实施例提出一种分布式存储系统路由管理服务器,在上述第一实施例的基础上,还包括:
宕机监测模块200,用于监测主机是否宕机。
本实施例与上述第一实施例的区别在于,本实施例还包括路由管理服务器监测主机是否宕机的方案。
具体地,如图7a所示,作为一种实施方式,所述宕机监测模块200可以包括:主机心跳检查单元2001及判断单元2002,其中:
主机心跳检查单元2001,用于定期检查所述主机上报的心跳状态;
判断单元2002,用于当所述主机心跳检查单元检查到主机心跳上报超时时,判定所述主机宕机。
在本实施方式中,通过路由管理服务器定期检查所述主机上报的心跳状态;当路由管理服务器检查到主机心跳上报超时时,即判定所述主机宕机,当路由管理服务器检查到主机心跳上报未超时时,表明主机心跳状态正常,即判定主机未宕机。
由此通过上述方案,实现了主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求。
如图7b所示,作为另一种实施方式,在上述图7a所示的实施方式的基础上,所述宕机监测模块200还可以包括:
备机心跳检查单元2003,用于当所述主机心跳检查单元检查到所述主机心跳上报超时时,检查所述备机上报的心跳状态;
探测包发送单元2004,用于当所述备机心跳检查单元检查到所述备机上报的心跳状态正常时,向所述主机发送探测包;
所述判断单元2002,还用于当所述探测包未返回时,判定所述主机宕机。
在本实施方式中,在上述图4a所示的实施方式的基础上,在路由管理服务器监测主机是否宕机的过程中,当路由管理服务器检查到所述主机心跳上报超时时,检查备机上报的心跳状态;当路由管理服务器检查到备机上报的心跳状态正常时,路由管理服务器会尝试向主机发送探测包;当探测包未返回时,则判定主机宕机。
由此通过上述方案,实现了主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求。此外,相比图4a所示的实施方式,本实施方式对主机的宕机检查更准确。
如图7c所示,作为再一种实施方式,在上述图7b所示的实施方式的基础上,所述宕机监测模块200还可以包括:
选取单元2005,用于当所述探测包发送单元2004向所述主机发送探测包,且所述探测包未返回时,从接入层选取若干接入服务器向所述主机发送探测包;若没有探测包返回,则由所述判断单元2002判定所述主机宕机。
在本实施方式中,在上述图4b所示的实施方式的基础上,在路由管理服务器监测主机是否宕机的过程中,当所述路由管理服务器向所述主机发送探测包,且所述探测包未返回时,路由管理服务器会随机从接入层选取若干接入服务器向主机发送探测包,若没有探测包返回,则判定主机宕机。
由此通过上述方案,实现了主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求。此外,相比图4b所示的实施方式,本实施方式对主机的宕机检查更准确。
本实施例通过上述方案,通过对主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求;此外,在路由管理服务器监测到主机宕机时,切换系统路由为只读备机状态;当路由管理服务器接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将备机设置为主机,并由所有接入服务器同步修改后的系统路由信息,由此在主机宕机的情况下,实现主机与备机的自动切换,保证了分布式存储系统主备切换中数据的一致性,提高了系统性能。
此外,本发明较佳实施例还提出一种分布式存储系统,包括:主机、至少一备机、至少一接入服务器,以及路由管理服务器,所述路由管理服务器可以为上述实施例所述的所述路由管理服务器,该路由管理服务器分别与所述主机、所述至少一备机、所述至少一接入服务器通信连接,其中:
所述主机,用于存储服务数据并通过所述路由管理服务器对外提供服务;
所述至少一备机,用于存储服务数据,在所述主机宕机时,由所述路由管理服务器控制切换为主机对外提供服务;
所述至少一接入服务器,用于从所述路由管理服务器获取系统路由信息,处理业务接入访问;以及在所述主机宕机时,同步只读备机状态的系统路由信息并上报所述路由管理服务器,在所述备机切换为主机后,同步修改后的系统路由信息。
进一步地,所述主机还用于定时上报心跳状态至所述路由管理服务器;
所述至少一备机还用于定时上报心跳状态至所述路由管理服务器。
具体地,本实施例路由管理服务器所在的分布式存储系统的架构可以如图2所示,该分布式存储系统包括:路由(route)管理服务器、存储服务器以及若干个接入服务器,其中:
接入服务器(proxy):负责业务接入访问,其路由信息是由定时线程去路由管理服务器拉取(定时线程的间隔可以设置默认为1秒)。
路由管理服务器(router):负责管理存储服务器的路由信息,定时去检测每个存储服务器的心跳上报状态;
存储服务器采用一主一备部署方式,包括主机(master)和备机(slave):负责服务数据的具体存储,主机和备机定时上报心跳状态到路由管理服务器。其中,主机为实际对外提供服务的节点,在主机宕机的情况下,备机自动升级为主机,对外提供服务,以保证分布式存储系统数据的一致性。
上述系统路由信息为从存储服务器至接入服务器之间的路径信息。
在本实施例中,首先,路由管理服务器会实时监测主机是否宕机,可以采用以下方式:
作为一种实施方式,通过路由管理服务器定期检查所述主机上报的心跳状态;当路由管理服务器检查到主机心跳上报超时时,即判定所述主机宕机,当路由管理服务器检查到主机心跳上报未超时时,表明主机心跳状态正常,即判定主机未宕机。
由此通过上述方案,实现了主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求。
作为另一种实施方式,在上述实施方式的基础上,在路由管理服务器监测主机是否宕机的过程中,当路由管理服务器检查到所述主机心跳上报超时时,检查备机上报的心跳状态;当路由管理服务器检查到备机上报的心跳状态正常时,路由管理服务器会尝试向主机发送探测包;当探测包未返回时,则判定主机宕机。
由此通过上述方案,实现了主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求。此外,上述实施方式,本实施方式对主机的宕机检查更准确。
作为再一种实施方式,在上述实施方式的基础上,在路由管理服务器监测主机是否宕机的过程中,当所述路由管理服务器向所述主机发送探测包,且所述探测包未返回时,路由管理服务器会随机从接入层选取若干接入服务器向主机发送探测包,若没有探测包返回,则判定主机宕机。
由此通过上述方案,实现了主机宕机检查,使得系统可以根据宕机检查结果判断是否进入主备切换流程,从而满足了系统需求。此外,相比上述实施方式,本实施方式对主机的宕机检查更准确。
后续过程中,路由管理服务器在监测到主机宕机时,进入主备切换流程,本实施例在切换过程中引入备机只读的有损服务状态,保证主备切换中数据的一致性。
具体地,路由管理服务器在监测到主机宕机时,切换系统路由为只读备机状态,即只允许备机进行数据读取操作,而禁止备机进行数据写入操作,从而可以保证主备切换中数据的一致性。
然后,路由管理服务器等待接收所有接入服务器同步该只读备机状态的系统路由信息成功后的上报信息。
各接入服务器从路由管理服务器拉取系统路由信息,当上述只读备机状态的系统路由信息同步成功后,接入服务器向路由管理服务器上报同步成功的信息。
通过上述过程,可以保证系统不会同时存在两个主机的写操作,提高数据传输的准确性和系统性能。
当路由管理服务器确认接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,路由管理服务器修改系统路由信息,将备机设置为主机。
然后,所有接入服务器同步修改后的系统路由信息,最后完成主机与备机的切换。
本实施例通过上述方案,在路由管理服务器监测到主机宕机时,切换系统路由为只读备机状态;当路由管理服务器接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将备机设置为主机,并由所有接入服务器同步修改后的系统路由信息,由此在主机宕机的情况下,实现主机与备机的自动切换,保证了分布式存储系统主备切换中数据的一致性,提高了系统性能。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。具体地,图6、图7所述的分布式存储系统路由管理服务器所对应的程序指令可以存储在路由管理服务器的可读存储介质中,并被其中的至少一个处理器执行,以实现图1至图2所述的分布式存储系统路由方法。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种分布式存储系统路由方法,其特征在于,包括:
路由管理服务器在监测到主机宕机时,切换系统路由为只读备机状态;所述系统路由为从存储服务器至接入服务器之间的路径信息;
接收接入服务器同步只读备机状态的系统路由信息成功后的上报信息;
当接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将备机设置为主机,并由所有接入服务器同步修改后的系统路由信息。
2.根据权利要求1所述的方法,其特征在于,所述路由管理服务器在监测到主机宕机时,切换系统路由为只读备机状态的步骤之前,还包括:
所述路由管理服务器监测主机是否宕机;具体包括:
所述路由管理服务器定期检查所述主机上报的心跳状态;
当检查到所述主机心跳上报超时时,判定所述主机宕机。
3.根据权利要求2所述的方法,其特征在于,所述路由管理服务器监测主机是否宕机的步骤进一步还包括:
当检查到所述主机心跳上报超时时,检查所述备机上报的心跳状态;
当检查到所述备机上报的心跳状态正常时,所述路由管理服务器向所述主机发送探测包;
当所述探测包未返回时,判定所述主机宕机。
4.根据权利要求3所述的方法,其特征在于,所述路由管理服务器监测主机是否宕机的步骤进一步还包括:
当所述路由管理服务器向所述主机发送探测包,且所述探测包未返回时,从接入层选取若干接入服务器向所述主机发送探测包,若没有探测包返回,则判定所述主机宕机。
5.一种分布式存储系统路由管理服务器,其特征在于,包括:
第一切换模块,用于在路由管理服务器监测到主机宕机时,切换系统路由为只读备机状态;所述系统路由为从存储服务器至接入服务器之间的路径信息;
信息接收模块,用于接收接入服务器同步只读备机状态的系统路由信息成功后的上报信息;
第二切换模块,用于当接收到所有接入服务器成功同步所述只读备机状态的系统路由信息的上报信息时,修改系统路由信息,将备机设置为主机,并由所有接入服务器同步修改后的系统路由信息。
6.根据权利要求5所述的服务器,其特征在于,还包括:
宕机监测模块,用于监测主机是否宕机;所述宕机监测模块包括:
主机心跳检查单元,用于定期检查所述主机上报的心跳状态;
判断单元,用于当所述主机心跳检查单元检查到主机心跳上报超时时,判定所述主机宕机。
7.根据权利要求6所述的服务器,其特征在于,所述宕机监测模块还包括:
备机心跳检查单元,用于当所述主机心跳检查单元检查到所述主机心跳上报超时时,检查所述备机上报的心跳状态;
探测包发送单元,用于当所述备机心跳检查单元检查到所述备机上报的心跳状态正常时,向所述主机发送探测包;
所述判断单元,还用于当所述探测包未返回时,判定所述主机宕机。
8.根据权利要求7所述的服务器,其特征在于,所述宕机监测模块还包括:
选取单元,用于当所述探测包发送单元向所述主机发送探测包,且所述探测包未返回时,从接入层选取若干接入服务器向所述主机发送探测包;若没有探测包返回,则由所述判断单元判定所述主机宕机。
9.一种分布式存储系统,其特征在于,包括:主机、至少一备机、至少一接入服务器,以及权利要求5-8中任一项所述的路由管理服务器,所述路由管理服务器分别与所述主机、所述至少一备机、所述至少一接入服务器通信连接,其中:
所述主机,用于存储服务数据并通过所述路由管理服务器对外提供服务;
所述至少一备机,用于存储服务数据,在所述主机宕机时,由所述路由管理服务器控制切换为主机对外提供服务;
所述至少一接入服务器,用于从所述路由管理服务器获取系统路由信息,处理业务接入访问;以及在所述主机宕机时,同步只读备机状态的系统路由信息并上报所述路由管理服务器,在所述备机切换为主机后,同步修改后的系统路由信息;所述系统路由为从存储服务器至接入服务器之间的路径信息。
10.根据权利要求9所述的系统,其特征在于,
所述主机,还用于定时上报心跳状态至所述路由管理服务器;
所述至少一备机,还用于定时上报心跳状态至所述路由管理服务器。
CN201310312242.XA 2013-07-23 2013-07-23 分布式存储系统路由方法、路由管理服务器及系统 Active CN104348842B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310312242.XA CN104348842B (zh) 2013-07-23 2013-07-23 分布式存储系统路由方法、路由管理服务器及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310312242.XA CN104348842B (zh) 2013-07-23 2013-07-23 分布式存储系统路由方法、路由管理服务器及系统

Publications (2)

Publication Number Publication Date
CN104348842A CN104348842A (zh) 2015-02-11
CN104348842B true CN104348842B (zh) 2019-03-15

Family

ID=52503639

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310312242.XA Active CN104348842B (zh) 2013-07-23 2013-07-23 分布式存储系统路由方法、路由管理服务器及系统

Country Status (1)

Country Link
CN (1) CN104348842B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104994173A (zh) * 2015-07-16 2015-10-21 浪潮(北京)电子信息产业有限公司 一种消息处理方法和系统
CN106095977A (zh) * 2016-06-20 2016-11-09 环球大数据科技有限公司 一种数据库的分布式处理方法及系统
CN111541608B (zh) * 2020-04-16 2022-07-19 腾讯科技(成都)有限公司 一种网络通信的方法、系统以及相关装置
CN111600794B (zh) * 2020-07-24 2020-12-18 腾讯科技(深圳)有限公司 服务器切换方法、终端、服务器及存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141282B (zh) * 2006-09-07 2010-05-12 中兴通讯股份有限公司 一种网管系统及其管理方法
US7904743B2 (en) * 2007-08-27 2011-03-08 International Business Machines Corporation Propagation by a controller of reservation made by a host for remote storage
CN101159606B (zh) * 2007-11-09 2010-07-07 华为技术有限公司 解决地址冲突的方法和网络设备
US8250323B2 (en) * 2007-12-06 2012-08-21 International Business Machines Corporation Determining whether to use a repository to store data updated during a resynchronization
CN101876924B (zh) * 2009-04-30 2013-10-30 升东网络科技发展(上海)有限公司 数据库故障自动检测及转移方法
CN102761528A (zh) * 2011-04-28 2012-10-31 中兴通讯股份有限公司 数据管理系统及方法
US20120311375A1 (en) * 2011-06-01 2012-12-06 Microsoft Corporation Redirecting requests to secondary location during temporary outage
CN103036796B (zh) * 2011-09-29 2016-12-07 阿里巴巴集团控股有限公司 路由信息更新方法及装置
CN102810111B (zh) * 2012-05-07 2016-05-11 互动在线(北京)科技有限公司 一种保持Oracle数据库服务高可用的实现方法和系统
CN103019875B (zh) * 2012-12-19 2015-12-09 北京世纪家天下科技发展有限公司 一种实现数据库双主改造的方法及装置

Also Published As

Publication number Publication date
CN104348842A (zh) 2015-02-11

Similar Documents

Publication Publication Date Title
CN108234191A (zh) 云计算平台的管理方法和装置
US7225356B2 (en) System for managing operational failure occurrences in processing devices
CN109474465A (zh) 一种基于服务器集群的可动态流转的高可用性的实现方法和系统
CN109495312A (zh) 基于仲裁盘和双链路的高可用集群的实现方法和系统
CN104348842B (zh) 分布式存储系统路由方法、路由管理服务器及系统
CN105933137A (zh) 一种资源管理方法、装置及系统
CN109788055B (zh) 一种基于微服务架构的服务治理系统及其方法
CN112948063B (zh) 云平台的创建方法、装置、云平台以及云平台实现系统
CN103207841A (zh) 基于键值对缓存的数据读写方法及装置
CN106302569A (zh) 处理虚拟机集群的方法和计算机系统
CN103383689A (zh) 一种服务进程故障检测方法、装置及服务节点
CN107276839B (zh) 一种云平台的自监控方法和系统
CN109286529A (zh) 一种恢复RabbitMQ网络分区的方法及系统
CN103580891A (zh) 一种数据同步的方法、系统及服务器
CN107357800A (zh) 一种数据库高可用零丢失解决方法
CN105959145B (zh) 一种适用高可用性集群的并行管理服务器的方法及系统
EP4254831A1 (en) Method and device for selecting clock source
CN103647710A (zh) 一种路径配置方法及装置
CN109495528A (zh) 分布式锁所有权调度方法和装置
CN102571311B (zh) 主备切换的通讯系统和通讯方法
CN117370316A (zh) 数据库的高可用管理方法和装置、电子设备及存储介质
CN111953808A (zh) 一种双机双活架构的数据传输切换方法及架构构建系统
CN107291575B (zh) 一种数据中心故障时的处理方法和设备
CN115794769B (zh) 高可用数据库管理的方法、电子设备及存储介质
CN110351122A (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20190809

Address after: 518000 Nanshan District science and technology zone, Guangdong, Zhejiang Province, science and technology in the Tencent Building on the 1st floor of the 35 layer

Co-patentee after: Tencent cloud computing (Beijing) limited liability company

Patentee after: Tencent Technology (Shenzhen) Co., Ltd.

Address before: Shenzhen Futian District City, Guangdong province 518044 Zhenxing Road, SEG Science Park 2 East Room 403

Patentee before: Tencent Technology (Shenzhen) Co., Ltd.

TR01 Transfer of patent right