CN107911230A - 基于metaq集群的自动监控恢复方法 - Google Patents

基于metaq集群的自动监控恢复方法 Download PDF

Info

Publication number
CN107911230A
CN107911230A CN201711000405.5A CN201711000405A CN107911230A CN 107911230 A CN107911230 A CN 107911230A CN 201711000405 A CN201711000405 A CN 201711000405A CN 107911230 A CN107911230 A CN 107911230A
Authority
CN
China
Prior art keywords
metaq
monitoring
topic
client
clusters
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
CN201711000405.5A
Other languages
English (en)
Other versions
CN107911230B (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.)
Chengdu Danlu Network Technology Co Ltd
Original Assignee
Chengdu Danlu Network 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 Chengdu Danlu Network Technology Co Ltd filed Critical Chengdu Danlu Network Technology Co Ltd
Priority to CN201711000405.5A priority Critical patent/CN107911230B/zh
Publication of CN107911230A publication Critical patent/CN107911230A/zh
Application granted granted Critical
Publication of CN107911230B publication Critical patent/CN107911230B/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
    • 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
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Telephonic Communication Services (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了基于metaq集群的自动监控恢复方法,包括(1)进行前期准备;(2)利用python语言编写一个能够实现metaq发送消息的客户端;(3)将该客户端连接上该集群所注册的zookeeper集群;(4)客户端从zookeeper集群中获取所有的监控topic以及每个监控topic所在的服务器的IP;(5)客户端定时向每个监控topic发送一条空消息,若空消息全部发送成功则重复步骤(5),若有空消息发送失败则进行步骤(6)等步骤。本发明提供基于metaq集群的自动监控恢复方法,可以很好的完成对运维的监控,可以在发生线程等更底层的故障时及时的发现并进行重启恢复的操作,大大提高了监控的效果,保证了系统的正常运行。

Description

基于metaq集群的自动监控恢复方法
技术领域
本发明属于电子信息技术领域,具体是指基于metaq集群的自动监控恢复方法。
背景技术
目前的metaq集群着重用于解决持久化以及负载方面更上层或者更底层等应用方面的问题,但在运维里的线程级别的监控却暂时没有人采用该方法进行。
如今用于运维的监控方法只能做到进程级别的监控,而当发生线程等更底层的故障时便无法及时发现,更无法在故障时及时的进行重启恢复的操作,大大降低了对运维监控的效果,不利于行业的发展。
发明内容
本发明的目的在于克服上述问题,提供基于metaq集群的自动监控恢复方法,可以很好的完成对运维的监控,可以在发生线程等更底层的故障时及时的发现并进行重启恢复的操作,大大提高了监控的效果,保证了系统的正常运行。
本发明的目的通过下述技术方案实现:
基于metaq集群的自动监控恢复方法,包括以下步骤:
(1)进行前期准备;
(11)准备若干台部署有metaq的服务器并在该服务器上创建相应的业务topic,将部署有metaq的服务器组成一个集群;
(12)在每台metaq服务器上创建一个监控topic,且保证同一集群中的每台服务器上创建的监控topic均不相同;
(13)将集群中的所有业务topic都至少在两台metaq服务器上进行创建;
(14)将同一集群中的所有的metaq均注册到同一个zookeeper集群中;
(2)利用python语言编写一个能够实现metaq发送消息的客户端;
(3)将该客户端连接上该集群所注册的zookeeper集群;
(4)客户端从zookeeper集群中获取所有的监控topic以及每个监控topic所在的服务器的IP;
(5)客户端定时向每个监控topic发送一条空消息,若空消息全部发送成功则重复步骤(5),若有空消息发送失败则进行步骤(6);
(6)客户端统计发送空消息失败的监控topic,并在该监控topic所在的统计变量上将失败次数+1,若该监控topic的失败次数未到3次,则返回步骤(5),若该监控topic的失败次数到达3次或3次以上,则进行步骤(7);
(7)客户端检查失败3次或3次以上的监控topic所在服务器的上次重启时间,若重启时间与当前时间间隔未超过预设值则返回步骤(5),若重启时间与当前时间间隔超过预设值则进入步骤(8);
(8)客户端检查当前时间是否在维护时间段,若当前时间在维护时间段则返回步骤(5),若当前时间不在维护时间段则进行步骤(9);
(9)客户端调用失败3次或3次以上的监控topic所在服务器的系统命令以重启相应的metaq,并调用微信和邮件接口向预设的微信和邮箱发送告警信息,接着将该topic的失败次数信息和重启时间信息清零,最后再次返回步骤(5)。
步骤(5)中客户端发送空消息的频率默认为10秒一次,且具体时间频率能根据需求进行更改。
步骤(7)中的预设值为10分钟,且该预设置的时间长短需要根据实际需求进行调整,设置预设值时需要保证服务器在预设值中可以完成重启。
步骤(8)中的维护时间段是根据实际的维护需求进行确定的,优选的维护时间段应选择在业务量较少的夜间或凌晨。
本发明与现有技术相比,具有以下优点及有益效果:
(1)本发明的集群中的业务topic均在至少两台metaq服务器上进行创建,可以很好的避免数据的丢失,同时还能大大减少metaq服务器重启时对整个集群造成的影响,确保了系统的正常与稳定运行。
(2)本发明中选用的metaq的设计场景是在大型分布式服务解耦中使用,其设计时的压力都是每秒千万级的,而本方法中每十秒只会产生一条空消息,不会影响到metaq的正常使用,从而确保了本方法的稳定性。
(3)本发明可以很好的完成对运维的监控,可以在发生线程等更底层的故障时及时的发现并进行重启恢复的操作,大大提高了监控的效果,保证了系统的正常运行。
具体实施方式
下面结合实施例对本发明作进一步的详细说明,但本发明的实施方式不限于此。
实施例
基于metaq集群的自动监控恢复方法,包括以下步骤:
(1)进行前期准备;
(11)准备若干台部署有metaq的服务器并在该服务器上创建相应的业务topic,将部署有metaq的服务器组成一个集群;
(12)在每台metaq服务器上创建一个监控topic,且保证同一集群中的每台服务器上创建的监控topic均不相同;
(13)将集群中的所有业务topic都至少在两台metaq服务器上进行创建;
(14)将同一集群中的所有的metaq均注册到同一个zookeeper集群中;
(2)利用python语言编写一个能够实现metaq发送消息的客户端;
此处的客户端是指能够实现发送metaq消息的程序,在整个集群的监控中只需要设置一个客户端即可,该客户端可以部署在集群中的任意一台服务器上,为了方便管理也可以将该客户端单独部署在一台服务器上。
(3)将该客户端连接上该集群所注册的zookeeper集群;
(4)客户端从zookeeper集群中获取所有的监控topic以及每个监控topic所在的服务器的IP;
(5)客户端定时向每个监控topic发送一条空消息,若空消息全部发送成功则重复步骤(5),若有空消息发送失败则进行步骤(6);
客户端发送空消息的频率默认为10秒一次,且具体时间频率能根据需求进行更改。
(6)客户端统计发送空消息失败的监控topic,并在该监控topic所在的统计变量上将失败次数+1,若该监控topic的失败次数未到3次,则返回步骤(5),若该监控topic的失败次数到达3次或3次以上,则进行步骤(7);
(7)客户端检查失败3次或3次以上的监控topic所在服务器的上次重启时间,若重启时间与当前时间间隔未超过预设值则返回步骤(5),若重启时间与当前时间间隔超过预设值则进入步骤(8);
预设值为10分钟,且该预设置的时间长短需要根据实际需求进行调整,设置预设值时需要保证服务器在预设值中可以完成重启。设置预设值的目的是防止服务器在重启的过程中被再次重启,进而使得服务器进入一个重启的死循环,以确保服务器可以正常的完成重启的过程。
(8)客户端检查当前时间是否在维护时间段,若当前时间在维护时间段则返回步骤(5),若当前时间不在维护时间段则进行步骤(9);
维护时间段是根据实际的维护需求进行确定的,优选的维护时间段应选择在业务量较少的夜间或凌晨。具体的判断时间以业务所在地的实际时间为准,若业务所在地在美国则需要根据美国的具体时间来调整服务器所在地的实际维护时间段。
(9)客户端调用失败3次或3次以上的监控topic所在服务器的系统命令以重启相应的metaq,并调用微信和邮件接口向预设的微信和邮箱发送告警信息,接着将该topic的失败次数信息和重启时间信息清零,最后再次返回步骤(5)。
其中,微信和邮件接口为客户端所在服务器的预设接口,其设置与调用方式均为本领域的惯用技术手段,在此便不进行赘述。
如上所述,便可很好的实现本发明。

Claims (4)

1.基于metaq集群的自动监控恢复方法,其特征在于:包括以下步骤:
(1)进行前期准备;
(11)准备若干台部署有metaq的服务器并在该服务器上创建相应的业务topic,将部署有metaq的服务器组成一个集群;
(12)在每台metaq服务器上创建一个监控topic,且保证同一集群中的每台服务器上创建的监控topic均不相同;
(13)将集群中的所有业务topic都至少在两台metaq服务器上进行创建;
(14)将同一集群中的所有的metaq均注册到同一个zookeeper集群中;
(2)利用python语言编写一个能够实现metaq发送消息的客户端;
(3)将该客户端连接上该集群所注册的zookeeper集群;
(4)客户端从zookeeper集群中获取所有的监控topic以及每个监控topic所在的服务器的IP;
(5)客户端定时向每个监控topic发送一条空消息,若空消息全部发送成功则重复步骤(5),若有空消息发送失败则进行步骤(6);
(6)客户端统计发送空消息失败的监控topic,并在该监控topic所在的统计变量上将失败次数+1,若该监控topic的失败次数未到3次,则返回步骤(5),若该监控topic的失败次数到达3次或3次以上,则进行步骤(7);
(7)客户端检查失败3次或3次以上的监控topic所在服务器的上次重启时间,若重启时间与当前时间间隔未超过预设值则返回步骤(5),若重启时间与当前时间间隔超过预设值则进入步骤(8);
(8)客户端检查当前时间是否在维护时间段,若当前时间在维护时间段则返回步骤(5),若当前时间不在维护时间段则进行步骤(9);
(9)客户端调用失败3次或3次以上的监控topic所在服务器的系统命令以重启相应的metaq,并调用微信和邮件接口向预设的微信和邮箱发送告警信息,接着将该topic的失败次数信息清零并记录重启时间信息,最后再次返回步骤(5)。
2.根据权利要求1所述的基于metaq集群的自动监控恢复方法,其特征在于:所述步骤(5)中客户端发送空消息的频率默认为10秒一次,且具体时间频率能根据需求进行更改。
3.根据权利要求2所述的基于metaq集群的自动监控恢复方法,其特征在于:所述步骤(7)中的预设值为10分钟,且该预设置的时间长短需要根据实际需求进行调整,设置预设值时需要保证服务器在预设值中可以完成重启。
4.根据权利要求2所述的基于metaq集群的自动监控恢复方法,其特征在于:所述步骤(8)中的维护时间段是根据实际的维护需求进行确定的,优选的维护时间段应选择在业务量较少的夜间或凌晨。
CN201711000405.5A 2017-10-24 2017-10-24 基于metaq集群的自动监控恢复方法 Active CN107911230B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711000405.5A CN107911230B (zh) 2017-10-24 2017-10-24 基于metaq集群的自动监控恢复方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711000405.5A CN107911230B (zh) 2017-10-24 2017-10-24 基于metaq集群的自动监控恢复方法

Publications (2)

Publication Number Publication Date
CN107911230A true CN107911230A (zh) 2018-04-13
CN107911230B CN107911230B (zh) 2020-08-28

Family

ID=61840873

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711000405.5A Active CN107911230B (zh) 2017-10-24 2017-10-24 基于metaq集群的自动监控恢复方法

Country Status (1)

Country Link
CN (1) CN107911230B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1410197A2 (en) * 2000-12-27 2004-04-21 Softwired AG Scaleable message system
US20040240462A1 (en) * 2003-05-27 2004-12-02 Sun Microsystems, Inc. Hashing based messaging approach to a cluster
CN103825785A (zh) * 2014-03-24 2014-05-28 北京中电普华信息技术有限公司 一种服务节点的监测方法及装置
CN105243001A (zh) * 2014-07-07 2016-01-13 阿里巴巴集团控股有限公司 业务对象的异常告警方法和装置
CN105338061A (zh) * 2015-09-29 2016-02-17 华中科技大学 一种轻量级消息中间件的实现方法与系统
CN106130763A (zh) * 2016-06-24 2016-11-16 平安科技(深圳)有限公司 服务器集群及适用于该集群的数据库资源组切换控制方法
CN106371976A (zh) * 2016-08-31 2017-02-01 福建天晴数码有限公司 客户端及Web服务器监控线程的方法及其系统
CN106385341A (zh) * 2016-08-31 2017-02-08 福建天晴数码有限公司 客户端监控线程的方法及其系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1410197A2 (en) * 2000-12-27 2004-04-21 Softwired AG Scaleable message system
US20040240462A1 (en) * 2003-05-27 2004-12-02 Sun Microsystems, Inc. Hashing based messaging approach to a cluster
CN103825785A (zh) * 2014-03-24 2014-05-28 北京中电普华信息技术有限公司 一种服务节点的监测方法及装置
CN105243001A (zh) * 2014-07-07 2016-01-13 阿里巴巴集团控股有限公司 业务对象的异常告警方法和装置
CN105338061A (zh) * 2015-09-29 2016-02-17 华中科技大学 一种轻量级消息中间件的实现方法与系统
CN106130763A (zh) * 2016-06-24 2016-11-16 平安科技(深圳)有限公司 服务器集群及适用于该集群的数据库资源组切换控制方法
CN106371976A (zh) * 2016-08-31 2017-02-01 福建天晴数码有限公司 客户端及Web服务器监控线程的方法及其系统
CN106385341A (zh) * 2016-08-31 2017-02-08 福建天晴数码有限公司 客户端监控线程的方法及其系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李汝光等: "基于ZooKeeper的分布式缓存的设计与实现", 《绵阳师范学院学报》 *

Also Published As

Publication number Publication date
CN107911230B (zh) 2020-08-28

Similar Documents

Publication Publication Date Title
CN101996106B (zh) 一种对软件运行状态进行监控的方法
CN112565415B (zh) 一种基于云边协同的跨地域资源纳管系统和纳管方法
CN108429629A (zh) 设备故障恢复方法和装置
CN105306272B (zh) 信息系统故障场景信息收集方法及系统
CN102857371B (zh) 一种面向集群系统的动态配置管理方法
CN103905247B (zh) 一种基于多客户裁决的双机备份方法及系统
CN103036719A (zh) 一种基于主备集群服务器的跨地区服务容灾方法及装置
CN104717077B (zh) 一种管理数据中心的方法、装置及系统
CN105095001A (zh) 分布式环境下虚拟机异常恢复方法
CN106060088A (zh) 一种服务管理方法及装置
CN112653734B (zh) 服务器集群实时主从控制和数据同步系统及方法
CN104850460A (zh) 一种服务程序线程管理方法
CN108616914A (zh) 一种断线重连的方法及装置
CN111459639B (zh) 一种支持全球多机房部署的分布式任务管理平台及方法
CN108737566B (zh) 一种分布式的实时消息过滤系统
CN106357430A (zh) 一种云计算集群服务状态监控方法和系统
CN105376305A (zh) 一种云计算网络智能容灾架构
CN113765690A (zh) 集群切换方法、系统、装置、终端、服务器及存储介质
CN106210053A (zh) 一种电力系统广域消息管理方法
CN107528705A (zh) 故障处理方法及装置
CN106123476B (zh) 用于冰箱的智能检测方法
CN107911230A (zh) 基于metaq集群的自动监控恢复方法
CN104618461A (zh) 一种基于动码云手机的服务器监控方法
CN104331353A (zh) 软件高可用保证的方法
CN110781055B (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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Xie Erju

Inventor after: Zhou Longbo

Inventor before: Zhou Longbo

GR01 Patent grant
GR01 Patent grant