CN107948017A - 高可用集群系统 - Google Patents

高可用集群系统 Download PDF

Info

Publication number
CN107948017A
CN107948017A CN201711289128.4A CN201711289128A CN107948017A CN 107948017 A CN107948017 A CN 107948017A CN 201711289128 A CN201711289128 A CN 201711289128A CN 107948017 A CN107948017 A CN 107948017A
Authority
CN
China
Prior art keywords
node
cluster
configuration
database
highly available
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
CN201711289128.4A
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.)
Uf Financial Information Technology Ltd By Share Ltd
Original Assignee
Uf Financial Information Technology Ltd By Share 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 Uf Financial Information Technology Ltd By Share Ltd filed Critical Uf Financial Information Technology Ltd By Share Ltd
Publication of CN107948017A publication Critical patent/CN107948017A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • 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/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • 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/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • 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/0677Localisation of faults
    • 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/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • 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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting

Landscapes

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

Abstract

本发明提供了一种高可用集群系统。包括:配置模块,用于配置集群节点,以及每个节点上开启的服务;注册模块,用于接收集群节点的注册监听请求;监听模块,用于在集群节点注册监听后,监控集群节点的变化情况,并在集群节点发生变化时,广播节点变化通知;事件处理模块,用于在集群中各节点接收到变化通知后,根据节点变化情况进行相应的处理;集群,包括至少一个主节点,以及至少一个从节点。本发明提供的高可用集群系统,告别传统服务的高可用及数据库的高可用等的分开模式,提供了一种全面的集群高可用实现机制,只需简单配置便可以实现集群的状态监测,统一集群的高可用、服务的高可用,保证了配置及事务的一致性。

Description

高可用集群系统
技术领域
本发明涉及大数据技术领域,具体而言,涉及一种高可用集群系统。
背景技术
目前现有的集群大部分偏重的是请求分发及负载均衡的机制,对于集群的高可用、服务的高可用、数据库的高可用都是分开的,且配置复杂,没有一种统一的机制来保证集群的高可用、配置及事务的一致性、数据库的高可用、服务的高可用等。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明的一方面在于提出了一种高可用集群系统。
有鉴于此,本发明提出了一种高可用集群系统,包括:配置模块,用于配置集群节点,以及每个节点上开启的服务;注册模块,用于接收集群节点的注册监听请求;监听模块,用于在集群节点注册监听后,监控集群节点的变化情况,并在集群节点发生变化时,广播节点变化通知;事件处理模块,用于在集群中各节点接收到变化通知后,根据节点变化情况进行相应的处理;集群,包括至少一个主节点,以及至少一个从节点。
根据本发明的高可用集群系统,通过配置模块配置集群节点,以及每个节点上开启的服务;集群中各个节点启动的时候会向注册模块进行注册;注册之后,监控模块会实时监控集群各个节点的状态(在线或离线),并在集群节点发生变化时,进行集群消息的通知(广播),保证集群配置信息、事务等一致性;同时,由于监控模块的存在,集群间还可以发送消息以保证集群间的配置统一,动态完成;事件处理模块在接收到广播通知后,根据具体的节点变化情况进行相应的处理,例如,某节点宕机或其它原因导致此节点离线时,能够按照预设方式通知系统管理员,当然,某一节点的离线并不影响整个系统的使用,其他节点也可以继续提供服务。通过本发明的高可用集群系统,告别传统服务的高可用及数据库的高可用等的分开模式,提供了一种全面的集群高可用实现机制,只需简单配置便可以实现集群的状态监测,统一集群的高可用、服务的高可用,保证了配置及事务的一致性。
另外,根据本发明上述的高可用集群系统,还可以具有如下附加的技术特征:
在上述技术方案中,优选地,监听模块,具体用于:监控集群节点配置变化,以及集群节点状态变化,并在集群节点配置发生变化,和/或集群节点状态发生变化时,广播节点变化通知。
在该技术方案中,监听模块具体用于配置变化监听(如配置参数的变化),以及集群节点状态变化监听(如在线或离线),并在检测到对应主体发生变化的时候,进行集群消息的通知(广播),所有注册监听的节点会收到变化通知。
在上述任一技术方案中,优选地,配置模块,具体用于:增加集群节点时,设置主节点和从节点,以及根据各个节点的资源及业务场景进行服务配置。
在该技术方案中,增加集群节点时可以通过配置模块指定主节点,且集群中只有一个主节点,多个从节点;并且,可以指定每个节点上开启的服务,以及根据各个节点的资源(cpu、内存等)及业务场景等来进行服务配置,实现负载均衡,合理利用了资源。
在上述任一技术方案中,优选地,服务包括主数据库服务和备数据库服务;配置模块,具体还用于:设置主数据库和备数据库所在的节点。
在该技术方案中,服务包括主数据库服务和备数据库服务,但不限于此,如License服务、各种调度服务等。把数据库的作为服务,这样就可以通过配置模块指定主备数据库所在的节点,实现灵活配置提供服务的节点,充分利用资源。
在上述任一技术方案中,优选地,还包括:数据库,用于存储配置数据、日志文件,该数据库包括主数据库和备数据库。
在该技术方案中,该高可用集群系统还包括数据库,用于保存日志信息、集群节点的配置信息、主数据库设置信息等。本领域技术人员应该理解,数据库的选择可以有多种,优选地,采用postgreSql数据库,且主备数据库之间通过流复制实现主备数据同步。
在上述任一技术方案中,优选地,事件处理模块,包括:配置变化处理单元,用于当集群中某个节点配置发生变化时,根据配置调整集群中其它节点的配置。
在该技术方案中,当集群间某个节点的配置(包括如节点参数、日志级别、监控是否开启等等)发生变化时,由于监控模块的存在,集群间可以相互通信,配置变化处理单元根据该节点的配置变化调整集群间其它节点的配置,保证了集群间的配置统一,并且是动态完成,而不是传统的配置改变需要重启节点来保证各个节点的配置一致,进一步实现集群的高可用。
在上述任一技术方案中,优选地,事件处理模块,包括:数据库处理单元,用于当主数据库不可用时,采用主备切换机制切换至备数据库,以及在主数据库没有被设置的情况下,采用Master选举机制选择选举出主数据库。
在该技术方案中,当主数据库不可用时,会触发主备切换机制,自动切换备存储库,此时备用存储库升为主存储库,同时选择集群节点上的其他存储库作为从存储库,继续主从同步,从而实现了数据库的高可用。
在上述任一技术方案中,优选地,事件处理模块,包括:集群变化处理单元,用于当集群节点状态发生变化时,按照预设方式通知系统管理员。
在该技术方案中,当监控模块监控到集群中的节点状态发生变化时,如某节点宕机或其它原因导致此节点离线时,按照系统预设通信方式将离线信息通知给系统管理员,如发送邮件,管理员通过邮件中的日志内容进行初步定位节点离线原因,将此节点故障时间降低到最小。
在上述任一技术方案中,优选地,集群变化处理单元,还用于:当主节点离线时,采用主从机制Master-Slave选举出新的主节点。
在该技术方案中,集群实现的机制采用的是主从模式,对于windows及linux系统都支持,当主节点宕机,会触发Master-Slave选举机制,保证集群的正常运行,同时支持集群的在线扩展,即实现集群节点动态增加而不影响现有集群的使用。
在上述任一技术方案中,优选地,预设方式包括邮件通知的方式。
在该技术方案中,预设方式包括邮件通知的方式,但不限于此,还可以采用如微信通知的方式等。
在上述任一技术方案中,优选地,采用zookeeper技术进行节点的注册、监听及广播;采用dubbo技术进行所述服务的配置。
在该技术方案中,是基于zookeeper、dubbo等技术提供的具有可靠状态同步机制的高可用集群,结合zookeeper技术特点及优势,可以实时监控集群各个节点的状态(在线与离线),某节点宕机或其它原因导致此节点离线时,能够通过预先设置的方式,优选地,采用邮件方式通知系统管理员,管理员通过邮件中的日志内容进行初步定位节点离线原因,将此节点故障时间降低到最小,同时利用zookeeper进行集群消息的通知(广播),保证集群配置信息、事务等一致性。当然,某一节点的离线并不影响整个系统的使用,其他节点也可以继续提供服务。利用dubbo技术可以提供高可用的服务,可以指定服务可以由那些集群节点提供,根据各个节点的资源(cpu、内存等)及业务场景等来进行服务配置,合理利用了资源。提供数据库的主备切换机制、数据库备份及恢复机制保证数据库的高可用。
本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1示出了根据本发明的第一个实施例的高可用集群系统的示意框图;
图2示出了根据本发明的第二个实施例的高可用集群系统的示意框图;
图3示出了根据本发明的第三个实施例的高可用集群系统的示意框图;
图4示出了根据本发明的第四个实施例的高可用集群系统的示意框图;
图5示出了根据本发明的第五个实施例的高可用集群系统的示意框图;
图6示出了根据本发明的一个实施例的高可用集群系统的整体框架示意图;
图7示出了根据本发明的一个实施例的高可用集群系统的具体模块示意图;
图8示出了根据本发明的一个实施例的高可用集群系统的配置过程示意图;
图9示出了根据本发明的一个实施例的高可用集群系统的监控状态示意图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
如图1所示,根据本发明的第一个实施例的高可用集群系统的示意框图。其中,该高可用集群系统100,包括:
配置模块102,用于配置集群节点,以及每个节点上开启的服务;
注册模块104,用于接收集群节点的注册监听请求;
监听模块106,用于在集群节点注册监听后,监控集群节点的变化情况,并在集群节点发生变化时,广播节点变化通知;
事件处理模块108,用于在集群中各节点接收到变化通知后,根据节点变化情况进行相应的处理;
集群110,包括至少一个主节点,以及至少一个从节点。
本发明提供的高可用集群系统,通过配置模块配置集群节点,以及每个节点上开启的服务;集群中各个节点启动的时候会向注册模块进行注册;注册之后,监控模块会实时监控集群各个节点的状态(在线或离线),并在集群节点发生变化时,进行集群消息的通知(广播),保证集群配置信息、事务等一致性;同时,由于监控模块的存在,集群间还可以发送消息以保证集群间的配置统一,动态完成;事件处理模块在接收到广播通知后,根据具体的节点变化情况进行相应的处理,例如,某节点宕机或其它原因导致此节点离线时,能够按照预设方式通知系统管理员,当然,某一节点的离线并不影响整个系统的使用,其他节点也可以继续提供服务。通过本发明的高可用集群系统,告别传统服务的高可用及数据库的高可用等的分开模式,提供了一种全面的集群高可用实现机制,只需简单配置便可以实现集群的状态监测,统一集群的高可用、服务的高可用,保证了配置及事务的一致性。
在本发明的一个实施例中,优选地,监听模块106,具体用于:监控集群节点配置变化,以及集群节点状态变化,并在集群节点配置发生变化,和/或集群节点状态发生变化时,广播节点变化通知。
在该实施例中,监听模块具体用于配置变化监听(如配置参数的变化),以及集群节点状态变化监听(如在线或离线),并在检测到对应主体发生变化的时候,进行集群消息的通知(广播),所有注册监听的节点会收到变化通知。
在本发明的一个实施例中,优选地,配置模块102,具体用于:增加集群节点时,设置主节点和从节点,以及根据各个节点的资源及业务场景进行服务配置。
在该实施例中,增加集群节点时可以通过配置模块指定主节点,且集群中只有一个主节点,多个从节点;并且,可以指定每个节点上开启的服务,以及根据各个节点的资源(cpu、内存等)及业务场景等来进行服务配置,实现负载均衡,合理利用了资源。
在本发明的一个实施例中,优选地,服务包括主数据库服务和备数据库服务;配置模块102,具体还用于:设置主数据库和备数据库所在的节点。
在该实施例中,服务包括主数据库服务和备数据库服务,但不限于此,如License服务、各种调度服务等。把数据库的作为服务,这样就可以通过配置模块指定主备数据库所在的节点,实现灵活配置提供服务的节点,充分利用资源。
图2示出了根据本发明的第二个实施例的高可用集群系统的示意框图。其中,该高可用集群系统200,包括:
配置模块202,用于配置集群节点,以及每个节点上开启的服务;
注册模块204,用于接收集群节点的注册监听请求;
监听模块206,用于在集群节点注册监听后,监控集群节点的变化情况,并在集群节点发生变化时,广播节点变化通知;
事件处理模块208,用于在集群中各节点接收到变化通知后,根据节点变化情况进行相应的处理;
集群210,包括至少一个主节点,以及至少一个从节点;
数据库212,用于存储配置数据、日志文件,该数据库包括主数据库和备数据库。
在该实施例中,该高可用集群系统还包括数据库,用于保存日志信息、集群节点的配置信息、主数据库设置信息等。本领域技术人员应该理解,数据库的选择可以有多种,优选地,采用postgreSql数据库,且主备数据库之间通过流复制实现主备数据同步。
图3示出了根据本发明的第三个实施例的高可用集群系统的示意框图。其中,该高可用集群系统300,包括:
配置模块302,用于配置集群节点,以及每个节点上开启的服务;
注册模块304,用于接收集群节点的注册监听请求;
监听模块306,用于在集群节点注册监听后,监控集群节点的变化情况,并在集群节点发生变化时,广播节点变化通知;
事件处理模块308,用于在集群中各节点接收到变化通知后,根据节点变化情况进行相应的处理;
其中,事件处理模块308,配置变化处理单元3082,用于当集群中某个节点配置发生变化时,根据配置调整集群中其它节点的配置;
集群310,包括至少一个主节点,以及至少一个从节点;
数据库312,用于存储配置数据、日志文件,该数据库包括主数据库和备数据库。
在该实施例中,当集群间某个节点的配置(包括如节点参数、日志级别、监控是否开启等等)发生变化时,由于监控模块的存在,集群间可以相互通信,配置变化处理单元根据该节点的配置变化调整集群间其它节点的配置,保证了集群间的配置统一,并且是动态完成,而不是传统的配置改变需要重启节点来保证各个节点的配置一致,进一步实现集群的高可用。
图4示出了根据本发明的第四个实施例的高可用集群系统的示意框图。其中,该高可用集群系统400,包括:
配置模块402,用于配置集群节点,以及每个节点上开启的服务;
注册模块404,用于接收集群节点的注册监听请求;
监听模块406,用于在集群节点注册监听后,监控集群节点的变化情况,并在集群节点发生变化时,广播节点变化通知;
事件处理模块408,用于在集群中各节点接收到变化通知后,根据节点变化情况进行相应的处理;
其中,事件处理模块408包括:
配置变化处理单元4082,用于当集群中某个节点配置发生变化时,根据配置调整集群中其它节点的配置;
数据库处理单元4084,用于当主数据库不可用时,采用主备切换机制切换至备数据库,以及在主数据库没有被设置的情况下,采用Master选举机制选择选举出主数据库;
集群410,包括至少一个主节点,以及至少一个从节点;
数据库412,用于存储配置数据、日志文件,该数据库包括主数据库和备数据库。
在该实施例中,当主数据库不可用时,会触发主备切换机制,自动切换备存储库,此时备用存储库升为主存储库,同时选择集群节点上的其他存储库作为从存储库,继续主从同步,从而实现了数据库的高可用。
图5示出了根据本发明的第五个实施例的高可用集群系统的示意框图。其中,该高可用集群系统500,包括:
配置模块502,用于配置集群节点,以及每个节点上开启的服务;
注册模块504,用于接收集群节点的注册监听请求;
监听模块506,用于在集群节点注册监听后,监控集群节点的变化情况,并在集群节点发生变化时,广播节点变化通知;
事件处理模块508,用于在集群中各节点接收到变化通知后,根据节点变化情况进行相应的处理;
其中,事件处理模块508包括:
配置变化处理单元5082,用于当集群中某个节点配置发生变化时,根据配置调整集群中其它节点的配置;
数据库处理单元5084,用于当主数据库不可用时,采用主备切换机制切换至备数据库,以及在主数据库没有被设置的情况下,采用Master选举机制选择选举出主数据库;
集群变化处理单元5086,用于当集群节点状态发生变化时,按照预设方式通知系统管理员;
集群510,包括至少一个主节点,以及至少一个从节点;
数据库512,用于存储配置数据、日志文件,该数据库包括主数据库和备数据库。
在该实施例中,当监控模块监控到集群中的节点状态发生变化时,如某节点宕机或其它原因导致此节点离线时,按照系统预设通信方式将离线信息通知给系统管理员,如发送邮件,管理员通过邮件中的日志内容进行初步定位节点离线原因,将此节点故障时间降低到最小。
在本发明的一个实施例中,优选地,集群变化处理单元5086,还用于:当主节点离线时,采用主从机制Master-Slave选举出新的主节点。
在该实施例中,集群实现的机制采用的是主从模式,对于windows及linux系统都支持,当主节点宕机,会触发Master-Slave选举机制,保证集群的正常运行,同时支持集群的在线扩展,即实现集群节点动态增加而不影响现有集群的使用。
在上述任一实施例中,预设方式包括邮件通知的方式。
在该实施例中,预设方式包括邮件通知的方式,但不限于此,还可以采用如微信通知的方式等。
在上述任一实施例中,采用zookeeper技术进行节点的注册、监听及广播;采用dubbo技术进行所述服务的配置。
在该实施例中,基于zookeeper、dubbo等技术提供的具有可靠状态同步机制的高可用集群,结合zookeeper技术特点及优势,可以实时监控集群各个节点的状态(在线与离线),某节点宕机或其它原因导致此节点离线时,能够通过预先设置的方式,优选地,采用邮件方式通知系统管理员,管理员通过邮件中的日志内容进行初步定位节点离线原因,将此节点故障时间降低到最小,同时利用zookeeper进行集群消息的通知(广播),保证集群配置信息、事务等一致性。当然,某一节点的离线并不影响整个系统的使用,其他节点也可以继续提供服务。利用dubbo技术可以提供高可用的服务,可以指定服务可以由那些集群节点提供,根据各个节点的资源(cpu、内存等)及业务场景等来进行服务配置,合理利用了资源。提供数据库的主备切换机制、数据库备份及恢复机制保证数据库的高可用。
具体实施例:
提供了一种基于zookeeper、dubbo及脚本(shell、bat)技术的集群高可用实现机制,通过简单配置即可实现,同时对外提供了一些对外接口API来支持服务配置的扩展,对于系统的已有服务或者需要编码实现的服务(非dubbo服务),通过调用API即可将服务加入到集群中,实现服务的可配置。整体架构如图6所示:
主从集群节点:配置集群节点,增加集群节点时可以指定主节点且集群中只有一个主节点,多个从节点,且可以勾选每个节点上开启的服务,可以指定数据库的主从(如果不指定会自动选择),配置过程如图8所示;
注册中心:集群中各个节点启动的时候会向注册中心进行注册,注册之后,会被监控在线状态,节点状态发生变化,会通知主节点,监控状态如图9所示;
邮件系统:主节点接到节点状态变化的通知后,通过邮件系统发送邮件给系统管理员;
存储库:自带存储库为postgreSql,通过流复制实现了主备数据同步,当主存储库不可用时,将自动切换备存储库,此时备用存储库升为主存储库,同时选择集群节点上的其他存储库作为从存储库,继续主从同步,从而实现了数据库的高可用;
在该实施例中,通过利用zookeeper、dubbo、流复制等技术提供了集群高可用的实现机制,主要是利用zookeeper的分布式应用程序的协调能力来实现注册管理、服务管理及通知机制、数据库的高可用。具体的模块设计如图7所示:
集群消息通知机制:采用观察者模式,集群节点启动后,会向注册中心注册监听,当注册中心检测到对应主题的变化时候,所有注册监听的节点会受到变化通知,通知体包含具体的通知消息信息,获取信息后作出对应的处理;
服务管理:如果是特殊的服务(非dubbo服务),想利用集群的服务管理来提供高可用服务,只需定义好服务后调用集群对外提供的API即可。成为集群的服务后可以通过配置进行服务的开启、关闭、及开启服务的集群节点;
数据库高可用:把数据库的作为服务,这样就可以指定主备数据库所在的节点,当然也可以自动选举,也可以手动切换;
选举机制:当集群主节点宕机等原因导致主节点不可用时,通过选举法选出新的主节点,成为主节点后要承接起原来主节点上的服务以保证集群的正常运行。数据库主存储库没有手动指定时,采用主动获取资格的方式成为主存储库,优先获取资格的节点成为主存储库的节点;
session机制:集群登陆通过引入shiro并自己实现shiro的session缓存机制实现,如需单点登录,只需简单修改配置文件即可实现。
在该实施例中,通过提供这样一种高可用集群的实现机制,可以快速实现基于集群应用的开发,调用API及配置方式即可,方便快捷,节省开发时间并满足高可用集群的需求。基于此高可用集群机制,为DI(数据集成)、高级分析、BQ等集群产品提供高可用的集群环境提供了强大的支持。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (11)

1.一种高可用集群系统,其特征在于,包括:
配置模块,用于配置集群节点,以及每个节点上开启的服务;
注册模块,用于接收所述集群节点的注册监听请求;
监听模块,用于在所述集群节点注册监听后,监控所述集群节点的变化情况,并在所述集群节点发生变化时,广播节点变化通知;
事件处理模块,用于在集群中各节点接收到所述变化通知后,根据节点变化情况进行相应的处理;
所述集群,包括至少一个主节点,以及至少一个从节点。
2.根据权利要求1所述的高可用集群系统,其特征在于,所述监听模块,具体用于:
监控所述集群节点配置变化,以及所述集群节点状态变化,并在所述集群节点配置发生变化,和/或所述集群节点状态发生变化时,广播所述节点变化通知。
3.根据权利要求1所述的高可用集群系统,其特征在于,所述配置模块,具体用于:
增加集群节点时,设置主节点和从节点,以及根据各个节点的资源及业务场景进行服务配置。
4.根据权利要求3所述的高可用集群系统,其特征在于,
所述服务包括主数据库服务和备数据库服务;
所述配置模块,具体还用于:设置主数据库和备数据库所在的节点。
5.根据权利要求1所述的高可用集群系统,其特征在于,还包括:
数据库,用于存储配置数据、日志文件,所述数据库包括主数据库和备数据库。
6.根据权利要求2至5中任一项所述的高可用集群系统,其特征在于,所述事件处理模块,包括:
配置变化处理单元,用于当所述集群中某个节点配置发生变化时,根据所述配置调整所述集群中其它节点的配置。
7.根据权利要求2至5中任一项所述的高可用集群系统,其特征在于,所述事件处理模块,包括:
数据库处理单元,用于当主数据库不可用时,采用主备切换机制切换至备数据库,以及在所述主数据库没有被设置的情况下,采用Master选举机制选择选举出所述主数据库。
8.根据权利要求2至5中任一项所述的高可用集群系统,其特征在于,所述事件处理模块,包括:
集群变化处理单元,用于当所述集群节点状态发生变化时,按照预设方式通知系统管理员。
9.根据权利要求8所述的高可用集群系统,其特征在于,所述集群变化处理单元,还用于:
当所述主节点离线时,采用主从机制Master-Slave选举出新的主节点。
10.根据权利要求8所述的高可用集群系统,其特征在于,
所述预设方式包括邮件通知的方式。
11.根据权利要求1至5至中任一项所述的高可用集群系统,其特征在于,
采用zookeeper技术进行所述节点的注册、监听及广播;
采用dubbo技术进行所述服务的配置。
CN201711289128.4A 2017-09-30 2017-12-07 高可用集群系统 Pending CN107948017A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2017109163296 2017-09-30
CN201710916329 2017-09-30

Publications (1)

Publication Number Publication Date
CN107948017A true CN107948017A (zh) 2018-04-20

Family

ID=61945157

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711289128.4A Pending CN107948017A (zh) 2017-09-30 2017-12-07 高可用集群系统

Country Status (1)

Country Link
CN (1) CN107948017A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108984417A (zh) * 2018-08-15 2018-12-11 北京达佳互联信息技术有限公司 软件测试方法、装置、终端及存储介质
CN110351370A (zh) * 2019-04-24 2019-10-18 上海数据交易中心有限公司 一种数据配送方法及装置
CN110381125A (zh) * 2019-06-29 2019-10-25 苏州浪潮智能科技有限公司 一种信息获取方法及装置
CN110891247A (zh) * 2019-10-23 2020-03-17 福建星网智慧软件有限公司 一种客户端无状态接入集群的方法、系统、设备和介质
CN111277632A (zh) * 2020-01-13 2020-06-12 中国建设银行股份有限公司 系统集群中应用管理的方法和装置
CN111338767A (zh) * 2018-12-18 2020-06-26 无锡雅座在线科技股份有限公司 PostgreSQL主从数据库自动切换系统及方法
CN111459909A (zh) * 2020-03-13 2020-07-28 北京许继电气有限公司 一种构建PostgreSQL数据库集群方法
CN112084072A (zh) * 2020-09-11 2020-12-15 重庆紫光华山智安科技有限公司 一种提高PostgreSQL集群容灾能力的方法、系统、介质及终端
CN114124700A (zh) * 2021-10-26 2022-03-01 马上消费金融股份有限公司 集群的参数配置方法、装置、电子设备及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130204948A1 (en) * 2012-02-07 2013-08-08 Cloudera, Inc. Centralized configuration and monitoring of a distributed computing cluster
CN105721200A (zh) * 2016-01-21 2016-06-29 北京乐动卓越科技有限公司 主从式服务器系统的应用方法及该系统
CN106375342A (zh) * 2016-10-21 2017-02-01 用友网络科技股份有限公司 一种基于zookeeper技术的系统集群方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130204948A1 (en) * 2012-02-07 2013-08-08 Cloudera, Inc. Centralized configuration and monitoring of a distributed computing cluster
CN105721200A (zh) * 2016-01-21 2016-06-29 北京乐动卓越科技有限公司 主从式服务器系统的应用方法及该系统
CN106375342A (zh) * 2016-10-21 2017-02-01 用友网络科技股份有限公司 一种基于zookeeper技术的系统集群方法及系统

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108984417B (zh) * 2018-08-15 2022-06-03 北京达佳互联信息技术有限公司 软件测试方法、装置、终端及存储介质
CN108984417A (zh) * 2018-08-15 2018-12-11 北京达佳互联信息技术有限公司 软件测试方法、装置、终端及存储介质
CN111338767A (zh) * 2018-12-18 2020-06-26 无锡雅座在线科技股份有限公司 PostgreSQL主从数据库自动切换系统及方法
CN111338767B (zh) * 2018-12-18 2023-09-29 无锡雅座在线科技股份有限公司 PostgreSQL主从数据库自动切换系统及方法
CN110351370A (zh) * 2019-04-24 2019-10-18 上海数据交易中心有限公司 一种数据配送方法及装置
CN110351370B (zh) * 2019-04-24 2022-06-21 上海数据交易中心有限公司 一种数据配送方法及装置
CN110381125A (zh) * 2019-06-29 2019-10-25 苏州浪潮智能科技有限公司 一种信息获取方法及装置
CN110891247A (zh) * 2019-10-23 2020-03-17 福建星网智慧软件有限公司 一种客户端无状态接入集群的方法、系统、设备和介质
CN110891247B (zh) * 2019-10-23 2021-11-23 福建星网智慧软件有限公司 一种客户端无状态接入集群的方法、系统、设备和介质
CN111277632A (zh) * 2020-01-13 2020-06-12 中国建设银行股份有限公司 系统集群中应用管理的方法和装置
CN111277632B (zh) * 2020-01-13 2022-05-06 中国建设银行股份有限公司 系统集群中应用管理的方法和装置
CN111459909A (zh) * 2020-03-13 2020-07-28 北京许继电气有限公司 一种构建PostgreSQL数据库集群方法
CN112084072A (zh) * 2020-09-11 2020-12-15 重庆紫光华山智安科技有限公司 一种提高PostgreSQL集群容灾能力的方法、系统、介质及终端
CN114124700A (zh) * 2021-10-26 2022-03-01 马上消费金融股份有限公司 集群的参数配置方法、装置、电子设备及可读存储介质

Similar Documents

Publication Publication Date Title
CN107948017A (zh) 高可用集群系统
CN104935672B (zh) 负载均衡服务高可用实现方法和设备
US6665262B1 (en) Distributed fault management architecture
CN105450757A (zh) 一种服务管理方法及系统
CN108712501B (zh) 信息的发送方法、装置、计算设备以及存储介质
CN104618221B (zh) 一种去中心化的消息服务系统
CN105429799B (zh) 服务器备份方法及装置
US8880703B2 (en) Address distribution method, device and system thereof
CN112671882A (zh) 一种基于微服务的同城双活系统和方法
CN206164554U (zh) 业务信息处理系统
CN105653425A (zh) 基于复杂事件处理引擎的监控系统
CN107995029A (zh) 选举控制方法及装置、选举方法及装置
CN106464516B (zh) 网络管理系统中的事件处理
CN105760260B (zh) 一种备份系统及备份方法
CN106209411B (zh) 分布式网络系统容错方法、装置及容错式分布式网络系统
CN109542659A (zh) 应用多活方法、设备、数据中心集群及可读存储介质
CN105915426B (zh) 环形网络的故障恢复方法及装置
CN107682411A (zh) 一种大规模sdn控制器集群及网络系统
CN111459639A (zh) 一种支持全球多机房部署的分布式任务管理平台及方法
CN102143288A (zh) 呼叫中心的容灾方法和装置
CN112333249A (zh) 一种业务服务系统及方法
CN108199896A (zh) 基于RabbitMQ的分布式消息发布系统
US7519855B2 (en) Method and system for distributing data processing units in a communication network
CN113326100B (zh) 一种集群管理方法、装置、设备及计算机存储介质
CN106850877A (zh) 分布式存储系统中的虚拟ip的设置方法和装置

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180420