CN114816820A - chproxy集群故障修复方法、装置、设备及存储介质 - Google Patents

chproxy集群故障修复方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114816820A
CN114816820A CN202210445733.0A CN202210445733A CN114816820A CN 114816820 A CN114816820 A CN 114816820A CN 202210445733 A CN202210445733 A CN 202210445733A CN 114816820 A CN114816820 A CN 114816820A
Authority
CN
China
Prior art keywords
chproxy
node
configuration file
main
backup
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
CN202210445733.0A
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.)
Ping An Puhui Enterprise Management Co Ltd
Original Assignee
Ping An Puhui Enterprise Management 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 Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN202210445733.0A priority Critical patent/CN114816820A/zh
Publication of CN114816820A publication Critical patent/CN114816820A/zh
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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及云监控领域,揭露了一种chproxy集群故障修复方法,包括:获取集群的配置文件,其中,所述集群包括主chproxy节点及备份chproxy节点;获取主节点的实际最新更新时间及记录更新时间,判断实际最新更新时间与记录时间是否一致,若不一致,则将备份节点的配置文件替换为主节点的配置文件并重启chproxy服务;若实际最新更新时间与记录时间一致,则利用预设的脚本判断主节点的服务状态是否异常;在主节点的服务状态异常时,将主节点的服务切换至备份节点。本发明还提出一种chproxy集群故障修复方法、装置、设备及存储介质。本发明可以提高chproxy集群的可用性。

Description

chproxy集群故障修复方法、装置、设备及存储介质
技术领域
本发明涉及云监控技术领域,尤其涉及一种chproxy集群故障修复方法、装置、设备及存储介质。
背景技术
clickhouse集群是一种高性能的列示数据库管理系统,主要用于web流量分析,clickhouse集群非常适用于商业智能领域,同时也能够广泛应用于电信、金融、电子商务、信息安全、网络游戏、物联网等众多其他领域。
但现有的clickhouse集群常采用F5+Chproxy+多分片多副本的架构模式,是一套chproxy管理一套clickhouse集群,在chproxy节点服务出现故障时,导致对应的clickhouse集群服务宕机,因此,要减少chproxy集群的故障率,提高chproxy集群的高可用性成为亟需解决的问题。
发明内容
本发明提供一种chproxy集群故障修复方法、装置、设备及存储介质,其主要目的在于解决chproxy集群的可用性较低的问题。
为实现上述目的,本发明提供的一种chproxy集群故障修复方法,包括:
获取chproxy集群的配置文件,其中,所述chproxy集群包括主chproxy节点及备份chproxy节点;
获取所述主chproxy节点的配置文件的实际最新更新时间;
获取所述配置文件的记录更新时间,判断所述实际最新更新时间与所述配置文件的记录更新时间是否一致;
若所述实际最新更新时间与所述记录时间不一致,则将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,并重启所述备份chproxy节点的chproxy服务;
若所述实际最新更新时间与所述记录时间一致,则利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常;
在所述主chproxy节点的服务状态为异常时,则将所述主chproxy节点的服务切换至所述备份chproxy节点。
可选地,所述获取所述主chproxy节点的配置文件的实际最新更新时间,包括:
根据所述配置文件调用预设的检测脚本,对所述检测脚本添加预设的时间提取规则;
利用所述时间提取规则对所述配置文件的更新时间进行提取,得到更新时间信息;
提取所述更新时间信息中的最新更新时间,得到所述配置文件的实际最新更新时间。
可选地,所述获取所述配置文件的记录更新时间,包括:
利用预构建的消息中间件获取所述配置文件的系统运行文件信息;
从所述系统运行文件信息中提取预设字段的信息,得到所述配置文件的记录更新时间。
可选地,所述将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,包括:
获取所述主chproxy节点的配置文件的存储路径以及所述备份chproxy节点的配置文件的存储路径;
在所述存储路径中提取所述主chproxy节点配置文件对应的目标替换文件,并删除所述备份chproxy节点的配置文件;
将所述目标替换文件复制到所述备份chproxy节点的配置文件的存储路径下。
可选地,所述获取所述主chproxy节点配置文件的存储路径以及所述备份chproxy节点配置文件的存储路径,包括:
获取所述主chproxy节点的配置文件以及所述备份chproxy节点配置文件的根目录地址;
利用预设的解析器方法遍历所述根目录地址下的目录结构,得到所述主chproxy节点的配置文件以及所述备份chproxy节点的配置文件的存储目录;
基于所述配置文件的文件名在所述存储目录中检索得到所述主chproxy节点的配置文件以及所述备份chproxy节点的配置文件的存储路径。
可选地,所述利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常,包括:
通过预先设置的脚本定时抓取所述主chproxy节点的服务运行状态信息,其中,所述运行状态信息包括服务运行错误或运行正常;
在所述主chproxy节点的服务连续运行错误次数超过预设阈值时,确定所述主chproxy节点的服务异常。
可选地,所述将所述主chproxy节点的服务切换至所述备份chproxy节点,包括:
在所述主chproxy节点及所述备份chproxy节点之间设置Keepalived插件,其中,所述Keepalived插件生成所述chproxy集群的虚拟IP;
当检测到所述主chproxy节点的服务状态异常时,将所述虚拟IP转移至所述备份chproxy节点;
启动所述备份chproxy节点的chproxy服务,完成chproxy节点服务的切换。
为了解决上述问题,本发明还提供一种chproxy集群故障修复装置,所述装置包括:
配置文件获取模块,用于获取chproxy集群的配置文件,其中,所述chproxy集群包括主chproxy节点及备份chproxy节点;
实际最新更新时间获取模块,用于获取所述主chproxy节点的配置文件的实际最新更新时间;
更新时间判断模块,用于获取所述配置文件的记录更新时间,判断所述实际最新更新时间与所述配置文件的记录更新时间是否一致;
配置文件替换模块,用于若所述实际最新更新时间与所述记录时间不一致,则将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,并重启所述备份chproxy节点的chproxy服务;
服务状态判断模块,用于若所述实际最新更新时间与所述记录时间一致,则利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常;
服务切换模块,用于在所述主chproxy节点的服务状态为异常时,则将所述主chproxy节点的服务切换至所述备份chproxy节点。
为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述所述的chproxy集群故障修复方法。
为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个计算机程序,所述至少一个计算机程序被电子设备中的处理器执行以实现上述所述的chproxy集群故障修复方法。
本发明实施例通过获取chproxy集群的配置文件,所述chproxy集群包括主chproxy节点及备份chproxy节点,通过所述主备节点进一步地保证chproxy集群的运行稳定性;获取主chproxy节点的实际最新更新时间及记录更新时间,并判断所述实际最新更新时间与所述记录更新时间是否一致,在实际最新更新时间与记录更新时间不一致时,将备份chproxy节点的配置文件替换为主chproxy节点的配置文件并重启备份chproxy的chproxy服务,保证chproxy集群服务的可用性;在实际最新更新时间与记录更新时间一致时,判断主chproxy节点的服务状态是否异常,在主chproxy节点的服务状态异常时,将主chproxy节点的服务切换至备份chproxy节点,进一步地保证chproxy集群服务的可用性。因此本发明提出的chproxy集群故障修复方法、装置、设备及存储介质,可以解决chproxy集群可用性较低的问题。
附图说明
图1为本发明一实施例提供的chproxy集群故障修复方法的流程示意图;
图2为本发明一实施例提供的获取实际最新更新时间的流程示意图;
图3为本发明一实施例提供的获取记录更新时间的流程示意图;
图4为本发明一实施例提供的配置文件替换的流程示意图;
图5为本发明一实施例提供的获取配置文件存储路径的流程示意图;
图6为本发明一实施例提供的获取服务状态的流程示意图;
图7为本发明一实施例提供的重启配置服务的流程示意图;
图8为本发明一实施例提供的切换chproxy节点服务的流程示意图;
图9为本发明一实施例提供的chproxy集群故障修复装置的功能模块图;
图10为本发明一实施例提供的实现所述chproxy集群故障修复方法的电子设备的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本申请实施例提供一种chproxy集群故障修复方法。所述chproxy集群故障修复方法的执行主体包括但不限于服务端、终端等能够被配置为执行本申请实施例提供的该方法的电子设备中的至少一种。换言之,所述chproxy集群故障修复方法可以由安装在终端设备或服务端设备的软件或硬件来执行,所述软件可以是区块链平台。所述服务端包括但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等。所述服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(ContentDelivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
参照图1所示,为本发明一实施例提供的chproxy集群故障修复方法的流程示意图。在本实施例中,所述chproxy集群故障修复方法包括以下步骤Sxx-Sxx:
S1、获取chproxy集群的配置文件,其中,所述chproxy集群包括主chproxy节点及备份chproxy节点;
本发明实施例中,chproxy是clickhouse读写分离、负载均衡的插件,本发明实施例中,所述chproxy集群是在原有的chproxy架构上为每个chproxy节点增加了其对应的备份节点,即所述主节点以及备份节点。
具体地,本发明实施例中,所述chproxy集群包括但不限于一组主备节点,例如chproxy1节点及chproxy2节点为一组主备节点,chproxy3及chproxy4为另一组主备节点。
本发明实施例中,所述配置文件为chproxy_config.xml,所述配置文件是包含成功操作所述chproxy节点服务程序的文件,配置文件本质上不是在已有的程序中进行硬编码,而是用户可进行配置的文件,通常存储在纯文本文件中。
S2、获取所述主chproxy节点的配置文件的实际最新更新时间;
本发明实施例中,所述主chproxy节点的配置文件的实际最新更新时间代表所述主chproxy节点的配置服务的实际更改时间,即所述主chproxy的配置文件的实际最新更新时间,但所述实际最新时间可能不会被记录,导致主chproxy节点与备份chproxy节点的配置文件无法同步更新。
详细地,参阅图2所示,所述获取所述主chproxy节点的配置文件的实际最新更新时间,包括以下步骤S21-S23:
S21、根据所述配置文件调用预设的检测脚本,对所述检测脚本添加预设的时间提取规则;
S22、利用所述时间提取规则对所述配置文件的更新时间进行提取,得到更新时间信息;
S23、提取所述更新时间信息中的最新更新时间,得到所述配置文件的实际最新更新时间。
本发明实施例中,所述预设的检测脚本可以是chproxy_change_check.sh来检测所述主chproxy节点配置文件的实际最新更新时间。
本发明实施例中,通过所述配置文件的实际更新时间能够确定所述主chproxy节点的配置文件的实际最新更改时间,能够进一步地判断所述主chproxy节点的chproxy服务配置是否发生变化,提高所述chproxy节点集群的可用性,避免由于所述chproxy节点服务配置不同而导致的chproxy服务故障。
S3、获取所述配置文件的记录更新时间,判断所述实际最新更新时间与所述配置文件的记录更新时间是否一致;
本发明实施例中,所述配置文件的记录更新时间为系统运行文件所记录的配置文件更新时间,由于记录更新时间由日志文件更新得到,若日志文件没有及时记录,所述备份chproxy节点的配置文件无法与所述主chproxy节点的配置文件同步更新,导致所述chproxy集群的服务出现错误。
详细地,参阅图3所示,所述获取所述配置文件的记录更新时间,包括以下步骤S21-S22:
S31、利用预构建的消息中间件获取所述配置文件的系统运行文件信息;
S32、从所述系统运行文件信息中提取预设字段的信息,得到所述配置文件的记录更新时间。
本发明实施例中,所述消息中间件可以是Kafka消息中间件,通过所述消息中间件及所述系统运行文件能够快速的获取所述配置文件的记录更新时间,提高后续计算的效率。
具体地,本发明实施例中,通过所述判断所述实际最新更新时间与所述记录更新时间确定所述主chproxy节点的配置文件是否发生更改,导致所述主chproxy节点的配置文件与所述备份chproxy节点的配置文件不一致,表示所述chproxy集群服务出现故障。
S4、若所述实际最新更新时间与所述记录时间不一致,则将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,并重启所述备份chproxy节点的chproxy服务;
本发明实施例中,在所述实际最新更新时间与所述记录时间不一致时,即所述主chproxy节点所配置的chproxy节点服务发生了变化,需要将所述备份chproxy节点的配置文件替换为所述主chproxy节点的备份文件,完成配置服务的同步,避免出现服务故障。
详细地,参阅图4所示,所述将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,包括以下步骤S41-S43:
S41、获取所述主chproxy节点的配置文件的存储路径以及所述备份chproxy节点的配置文件的存储路径;
S42、在所述存储路径中提取所述主chproxy节点配置文件对应的目标替换文件,并删除所述备份chproxy节点的配置文件;
S43、将所述目标替换文件复制到所述备份chproxy节点的配置文件的存储路径下。
进一步地,本发明实施例中,参阅图5所示,所述获取所述主chproxy节点配置文件的存储路径以及所述备份chproxy节点配置文件的存储路径,包括以下步骤S51-S53:
S51、获取所述主chproxy节点的配置文件以及所述备份chproxy节点的配置文件的根目录地址;
S52、利用预设的解析器方法遍历所述根目录地址下的目录结构,得到所述主chproxy节点的配置文件以及所述备份chproxy节点的配置文件的存储目录;
S53、基于所述配置文件的文件名在所述存储目录中检索得到所述主chproxy节点的配置文件以及所述备份chproxy节点的配置文件的存储路径。
具体地,本发明实施例中,所述解析器方法包括但不限于fs.readdirSync()等获取文件目录的方法,本发明另一可选实施例中,可以通过同步脚本chproxy_change_recover.sh实现主备chproxy节点配置文件的一致。
本发明实施例中,通过将所述主chproxy节点的配置文件复制到所述备份chproxy节点的备份文件中实现主备chproxy节点的chproxy服务配置一致,提高所述一套chproxy节点服务的稳定性。
本发明另一可选实施例中,在所述主备chproxy节点的配置文件完成同步时会触发chproxy服务重启脚本chproxy_restart.sh重启所述备份chproxy节点的chproxy服务,使替换的配置文件生效。
S5、若所述脚本更新时间与所述记录时间一致,则利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常;
本发明实施例中,所述预先设置的程序脚本为chproxy_service_check.sh脚本,通过所述chproxy_service_check.sh脚本进行持续性的chproxy服务状态检测,进一步地确定所述主chproxy节点的服务状态。
详细地,参阅图6所示,所述利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常,包括以下步骤S61-S62:
S61、通过预先设置的脚本定时抓取所述主chproxy节点的服务运行状态信息,其中,所述运行状态信息包括服务运行错误或运行正常;
S62、在所述主chproxy节点的服务连续运行错误次数超过预设阈值时,确定所述主chproxy节点的服务异常。
具体地,本发明实施例中,所述程序插件可以定时每10秒,或每15秒定时抓取所述主chproxy节点的服务状态,所述预设阈值可以为10次,即所述主chproxy节点的服务状态连续10次为运行错误,则确定所述主chproxy节点的服务状态为异常。
本发明实施例中,可以通过所述chproxy_service_check.sh脚本实时获取所述主chproxy节点的服务状态,进一步地判断所述主chproxy节点的服务是否出现异常,及时的进行异常处理,保证所述一套chproxy节点服务的稳定性。
S6、在所述主chproxy节点的服务状态的服务状态为异常时,将所述主chproxy节点的服务切换至所述备份chproxy节点;
本发明实施例中,在所述主chproxy节点的服务状态为异常时,表示所述主chproxy节点服务出现故障,无法提供正常的chproxy节点服务,需要将所述主chproxy节点的服务转移至所述备份chproxy节点,实现chproxy节点服务的持续性。
本发明实施例中,参阅图7所示,所述将所述主chproxy节点的服务切换至所述备份chproxy节点之前,所述方法还包括以下步骤S71-S72:
S71、重启所述主chproxy节点的chproxy服务;
S72、在所述主chproxy节点的chproxy服务重启失败时,将所述主chproxy节点的chproxy服务切换至所述备份chproxy节点。
详细地,参阅图8所示,所述将所述主chproxy节点的服务切换至所述备份chproxy节点,包括以下步骤S81-S83:
S81、在所述主chproxy节点及所述备份chproxy节点之间设置Keepalived插件,其中,所述Keepalived插件生成所述chproxy集群的虚拟IP;
S82、当检测到所述主chproxy节点的服务状态异常时,将所述虚拟IP转移至所述备份chproxy节点;
S83、启动所述备份chproxy节点的chproxy服务,完成chproxy节点服务的切换。
本发明实施例中,所述Keepalived插件生成虚拟IP外部联接对应的前台应用系统,不同的应用系统又对应不同的clickhouse集群,通过所述虚拟IP的切换,完成了chproxy服务的切换,从而实现clickhouse集群的管理。
本发明实施例中,通过所述Keepalived插件完成chproxy服务的切换,始终保证所述chproxy服务是可用的,实现了所述chproxy集群服务的可用性,提高了所述chproxy服务的稳定性及连续性。
本发明另一可选实施例中,在所述主chproxy节点的服务状态为正常时,即所述主chproxy节点的chproxy配置服务正常,不需要进行chproxy服务的切换,只需返回上述获取所述主chproxy节点的配置文件的实际最新更新时间的步骤,继续进行所述chproxy集群的故障检测,保证所述chproxy集群服务的连续性。
本发明实施例通过获取chproxy集群的配置文件,所述chproxy集群包括主chproxy节点及备份chproxy节点,通过所述主备节点进一步地保证chproxy集群的运行稳定性;获取主chproxy节点的实际最新更新时间及记录更新时间,并判断所述实际最新更新时间与所述记录更新时间是否一致,在实际最新更新时间与记录更新时间不一致时,将备份chproxy节点的配置文件替换为主chproxy节点的配置文件并重启备份chproxy的chproxy服务,保证chproxy集群服务的可用性;在实际最新更新时间与记录更新时间一致时,判断主chproxy节点的服务状态是否异常,在主chproxy节点的服务状态异常时,将主chproxy节点的服务切换至备份chproxy节点,进一步地保证chproxy集群服务的可用性。因此本发明提出的chproxy集群故障修复方法,可以解决chproxy集群可用性较低的问题。
如图9所示,是本发明一实施例提供的chproxy集群故障修复装置的功能模块图。
本发明所述chproxy集群故障修复装置100可以安装于电子设备中。根据实现的功能,所述chproxy集群故障修复装置100可以包括配置文件获取模块101、实际最新更新时间获取模块102、更新时间判断模块103、配置文件替换104、服务状态判断模块105及服务切换模块106。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
所述配置文件获取模块101,用于获取chproxy集群的配置文件,其中,所述chproxy集群包括主chproxy节点及备份chproxy节点;
所述实际最新更新时间获取模块102,用于获取所述主chproxy节点的配置文件的实际最新更新时间;
所述更新时间判断模块103,用于获取所述配置文件的记录更新时间,判断所述实际最新更新时间与所述配置文件的记录更新时间是否一致;
所述配置文件替换模块104,用于若所述最新更新时间与所述记录时间不一致,则将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,并重启所述备份chproxy节点的chproxy服务;
所述服务状态判断模块105,用于若所述实际最新更新时间与所述记录时间一致,则利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常;
所述服务切换模块106,用于在所述主chproxy节点的服务状态为异常时,则将所述主chproxy节点的服务切换至所述备份chproxy节点。
详细地,本发明实施例中所述chproxy集群故障修复装置100中所述的各模块在使用时采用与上述图1至图8中所述的chproxy集群故障修复方法一样的技术手段,并能够产生相同的技术效果,这里不再赘述。
如图10所示,是本发明一实施例提供的实现chproxy集群故障修复方法的电子设备的结构示意图。
所述电子设备1可以包括处理器10、存储器11、通信总线12以及通信接口13,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如chproxy集群故障修复程序。
其中,所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing Unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备的控制核心(ControlUnit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如执行chproxy集群故障修复程序等),以及调用存储在所述存储器11内的数据,以执行电子设备的各种功能和处理数据。
所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备的内部存储单元,例如该电子设备的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备的外部存储设备,例如电子设备上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括电子设备的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备的应用软件及各类数据,例如chproxy集群故障修复程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述通信总线12可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
所述通信接口13用于上述电子设备与其他设备之间的通信,包括网络接口和用户接口。可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备与其他电子设备之间建立通信连接。所述用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备中处理的信息以及用于显示可视化的用户界面。
图中仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图中示出的结构并不构成对所述电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备1中的所述存储器11存储的chproxy集群故障修复程序是多个指令的组合,在所述处理器10中运行时,可以实现以下方法:
获取chproxy集群的配置文件,其中,所述chproxy集群包括主chproxy节点及备份chproxy节点;
获取所述主chproxy节点的配置文件的实际最新更新时间;
获取所述配置文件的记录更新时间,判断所述实际最新更新时间与所述配置文件的记录更新时间是否一致;
若所述实际最新更新时间与所述记录时间不一致,则将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,并重启所述备份chproxy节点的chproxy服务;
若所述实际最新更新时间与所述记录时间一致,则利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常;
在所述主chproxy节点的服务状态为异常时,则将所述主chproxy节点的服务切换至所述备份chproxy节点。
具体地,所述处理器10对上述指令的具体实现方法可参考附图对应实施例中相关步骤的描述,在此不赘述。
进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。所述计算机可读存储介质可以是易失性的,也可以是非易失性的。例如,所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
本发明还提供一种计算机可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序在被电子设备的处理器所执行时,可以实现以下方法:
获取chproxy集群的配置文件,其中,所述chproxy集群包括主chproxy节点及备份chproxy节点;
获取所述主chproxy节点的配置文件的实际最新更新时间;
获取所述配置文件的记录更新时间,判断所述实际最新更新时间与所述配置文件的记录更新时间是否一致;
若所述实际最新更新时间与所述记录时间不一致,则将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,并重启所述备份chproxy节点的chproxy服务;
若所述实际最新更新时间与所述记录时间一致,则利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常;
在所述主chproxy节点的服务状态为异常时,则将所述主chproxy节点的服务切换至所述备份chproxy节点。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种chproxy集群故障修复方法,其特征在于,所述方法包括:
获取chproxy集群的配置文件,其中,所述chproxy集群包括主chproxy节点及备份chproxy节点;
获取所述主chproxy节点的配置文件的实际最新更新时间;
获取所述配置文件的记录更新时间,判断所述实际最新更新时间与所述配置文件的记录更新时间是否一致;
若所述实际最新更新时间与所述记录时间不一致,则将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,并重启所述备份chproxy节点的chproxy服务;
若所述实际最新更新时间与所述记录时间一致,则利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常;
在所述主chproxy节点的服务状态为异常时,则将所述主chproxy节点的服务切换至所述备份chproxy节点。
2.如权利要求1所述的chproxy集群故障修复方法,其特征在于,所述获取所述主chproxy节点的配置文件的实际最新更新时间,包括:
根据所述配置文件调用预设的检测脚本,对所述检测脚本添加预设的时间提取规则;
利用所述时间提取规则对所述配置文件的更新时间进行提取,得到更新时间信息;
提取所述更新时间信息中的最新更新时间,得到所述配置文件的实际最新更新时间。
3.如权利要求1所述的chproxy集群故障修复方法,其特征在于,所述获取所述配置文件的记录更新时间,包括:
利用预构建的消息中间件获取所述配置文件的系统运行文件信息;
从所述系统运行文件信息中提取预设字段的信息,得到所述配置文件的记录更新时间。
4.如权利要求1所述的chproxy集群故障修复方法,其特征在于,所述将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,包括:
获取所述主chproxy节点的配置文件的存储路径以及所述备份chproxy节点的配置文件的存储路径;
在所述存储路径中提取所述主chproxy节点的配置文件对应的目标替换文件,并删除所述备份chproxy节点的配置文件;
将所述目标替换文件复制到所述备份chproxy节点的配置文件的存储路径下。
5.如权利要求4所述的chproxy集群故障修复方法,其特征在于,所述获取所述主chproxy节点配置文件的存储路径以及所述备份chproxy节点配置文件的存储路径,包括:
获取所述主chproxy节点的配置文件以及所述备份chproxy节点的配置文件的根目录地址;
利用预设的解析器方法遍历所述根目录地址下的目录结构,得到所述主chproxy节点的配置文件以及所述备份chproxy节点的配置文件的存储目录;
基于所述配置文件的文件名在所述存储目录中检索得到所述主chproxy节点的配置文件以及所述备份chproxy节点的配置文件的存储路径。
6.如权利要求1所述的chproxy集群故障修复方法,其特征在于,所述利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常,包括:
通过预先设置的脚本定时抓取所述主chproxy节点的服务运行状态信息,其中,所述运行状态信息包括服务运行错误或运行正常;
在所述主chproxy节点的服务连续运行错误次数超过预设阈值时,确定所述主chproxy节点的服务异常。
7.如权利要求1所述的chproxy集群故障修复方法,其特征在于,所述将所述主chproxy节点的服务切换至所述备份chproxy节点,包括:
在所述主chproxy节点及所述备份chproxy节点之间设置Keepalived插件,其中,所述Keepalived插件生成所述chproxy集群的虚拟IP;
当检测到所述主chproxy节点的服务状态异常时,将所述虚拟IP转移至所述备份chproxy节点;
启动所述备份chproxy节点的chproxy服务,完成chproxy节点服务的切换。
8.一种chproxy集群故障修复装置,其特征在于,所述装置包括:
配置文件获取模块,用于获取chproxy集群的配置文件,其中,所述chproxy集群包括主chproxy节点及备份chproxy节点;
实际最新更新时间获取模块,用于获取所述主chproxy节点的配置文件的实际最新更新时间;
更新时间判断模块,用于获取所述配置文件的记录更新时间,判断所述实际最新更新时间与所述配置文件的记录更新时间是否一致;
配置文件替换模块,用于若所述实际最新更新时间与所述记录时间不一致,则将所述备份chproxy节点的配置文件替换为所述主chproxy节点的配置文件,并重启所述备份chproxy节点的chproxy服务;
服务状态判断模块,用于若所述实际最新更新时间与所述记录时间一致,则利用预先设置的脚本判断所述主chproxy节点的服务状态是否异常;
服务切换模块,用于在所述主chproxy节点的服务状态为异常时,则将所述主chproxy节点的服务切换至所述备份chproxy节点。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任意一项所述的chproxy集群故障修复方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任意一项所述的chproxy集群故障修复方法。
CN202210445733.0A 2022-04-26 2022-04-26 chproxy集群故障修复方法、装置、设备及存储介质 Pending CN114816820A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210445733.0A CN114816820A (zh) 2022-04-26 2022-04-26 chproxy集群故障修复方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210445733.0A CN114816820A (zh) 2022-04-26 2022-04-26 chproxy集群故障修复方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN114816820A true CN114816820A (zh) 2022-07-29

Family

ID=82508463

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210445733.0A Pending CN114816820A (zh) 2022-04-26 2022-04-26 chproxy集群故障修复方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114816820A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115314369A (zh) * 2022-10-12 2022-11-08 中国信息通信研究院 区块链节点共识的方法和装置、设备和介质
CN115757361A (zh) * 2022-12-26 2023-03-07 北京柏睿数据技术股份有限公司 一种数据库集群系统自动化部署的方法和系统
CN115904822A (zh) * 2022-12-21 2023-04-04 长春吉大正元信息技术股份有限公司 一种集群修复方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115314369A (zh) * 2022-10-12 2022-11-08 中国信息通信研究院 区块链节点共识的方法和装置、设备和介质
CN115904822A (zh) * 2022-12-21 2023-04-04 长春吉大正元信息技术股份有限公司 一种集群修复方法及装置
CN115757361A (zh) * 2022-12-26 2023-03-07 北京柏睿数据技术股份有限公司 一种数据库集群系统自动化部署的方法和系统
CN115757361B (zh) * 2022-12-26 2023-08-18 北京柏睿数据技术股份有限公司 一种数据库集群系统自动化部署的方法和系统

Similar Documents

Publication Publication Date Title
CN114816820A (zh) chproxy集群故障修复方法、装置、设备及存储介质
CN108234170B (zh) 一种服务器集群的监控方法和装置
CN113360579A (zh) 数据库高可用处理方法、装置、电子设备及存储介质
US8554727B2 (en) Method and system of tiered quiescing
CN115118738B (zh) 基于rdma的灾备方法、装置、设备及介质
CN111625252A (zh) 集群的升级维护方法、装置、电子设备及存储介质
CN113626238B (zh) ctdb服务健康状态监控方法、系统、装置及存储介质
CN107291821A (zh) 一种同城双活架构快速切换的方法
CN107943617B (zh) 数据的修复方法、装置及服务器集群
CN113687834B (zh) 分布式系统节点部署方法、装置、设备及介质
CN114371962A (zh) 数据采集方法、装置、电子设备及存储介质
CN115687384A (zh) Uuid标识生成方法、装置、设备及存储介质
CN114185502B (zh) 基于产线环境的日志打印方法、装置、设备及介质
CN114385453A (zh) 数据库集群异常处理方法、装置、设备及介质
CN114237982A (zh) 系统灾备切换方法、装置、设备及存储介质
CN114911479A (zh) 基于配置化的界面生成方法、装置、设备及存储介质
CN114598731A (zh) 集群日志采集方法、装置、设备及存储介质
CN114003316A (zh) 集群定时任务执行方法、装置、电子设备及存储介质
CN114785789B (zh) 数据库故障管理方法、装置、电子设备及存储介质
CN117851520B (zh) 证券核心交易引擎的数据同步方法、系统、设备及介质
CN116225789B (zh) 交易系统备份能力检测方法、装置、设备及介质
CN114706715B (zh) 一种基于bmc的分布式raid的控制方法、装置、设备及介质
CN113434359B (zh) 数据溯源系统构建方法、装置、电子设备及可读存储介质
CN116860508B (zh) 分布式系统软件缺陷连续自愈方法、装置、设备及介质
CN114185777A (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