The present invention provides a Zabbix cluster architecture system and application method supporting horizontal expansion, including: the Zabbix is used to send the identity information of all devices connected to the Zabbix to the Zookeeper, and also for receiving the mapping relationship of the identity information of all devices sent by the Zookeeper; and the Zookeeper is used to report the received Zabbix. The identity information is mapped and sent to the corresponding Zabbix. The identity information, including the registration ID, management upper limit and heartbeat status of each device, is deeply integrated with Zookeeper to manage the mapping relationship between Agent, Proxy and Server on the monitored server. The off-line and re-online situation of Proxy downtime belonging to different Zabbix can be controlled by the system. The automatic processing does not need manual intervention, and the maintenance cost is low.
【技术实现步骤摘要】
一种支持横向扩展的Zabbix集群架构系统及应用方法
:本专利技术涉及计算机服务器管理领域,具体涉及一种支持横向扩展的Zabbix集群架构系统及应用方法。
技术介绍
:为了满足业务复杂度不断上升和规模不断扩大的需求,同时保证对外提供服务的高质量,越来越多的企业往往引入各类新兴技术如云平台、Docker技术等开发搭建和运行迭代业务系统,这使得分布式系统的规模和复杂度日益增加,对系统进行高效监控也成为了迫切的需求。Zabbix(Zabbix(音同za:bix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案)作为一个企业级的开源分布式监控解决方案,提供了多层监控和自定义监控等多种功能,成为了企业系统监控的常用方案。然而随着监控规模的不断扩大,Zabbix的性能和扩展瓶颈也日益凸显。Zabbix使用传统的Mysql作为配置管理数据库,由于Mysql导致Mysql数据库性能瓶颈成为了整个系统的瓶颈,具体表现为随着监测规模不断扩大,Zabbix存储采集数据和读取监测指标值用时变长、配置和更改采集数据项用时变长,整体监测性能大大降低了。目前,使用Zabbix的企业主要通过独立部署多套Zabbix来扩大监控规模,每一套Zabbix负责监测一部分设备。当已有的Zabbix达到监测上限后,再部署新一套Zabbix去监测剩下的设备,以此类推。然而这样的解决方案带来了一个重要问题:需要人工或第三方介入来记录Zabbix与被监测设备之间的映射关系,导致后期维护成本过高。例如,由于监测设备分别由多套Zabbix单独监测,当监测设备发生下线或搬迁等动态变 ...
【技术保护点】
1.一种支持横向扩展的Zabbix集群架构系统,其特征在于,所述系统包括:多个Zabbix、Zookeeper和多个设备;所述Zabbix用于将与所述Zabbix连接的所有设备的身份信息发送给所述Zookeeper,还用于:接收所述Zookeeper发送的所述所有设备的身份信息的映射关系;所述Zookeeper用于将接收到的所述多个Zabbix上报的身份信息进行映射处理后,发送给对应的所述Zabbix;所述身份信息,包括:所述每个设备的注册ID、管理上限和心跳状态。
【技术特征摘要】
1.一种支持横向扩展的Zabbix集群架构系统,其特征在于,所述系统包括:多个Zabbix、Zookeeper和多个设备;所述Zabbix用于将与所述Zabbix连接的所有设备的身份信息发送给所述Zookeeper,还用于:接收所述Zookeeper发送的所述所有设备的身份信息的映射关系;所述Zookeeper用于将接收到的所述多个Zabbix上报的身份信息进行映射处理后,发送给对应的所述Zabbix;所述身份信息,包括:所述每个设备的注册ID、管理上限和心跳状态。2.如权利要求1所述的支持横向扩展的Zabbix集群架构系统,其特征在于,所述Zabbix包括:ZabbixServer、ZabbixProxy和ZabbixAgent;所述ZabbixServer用于上报设备的身份信息,分配Agent到ZabbixProxy,还用于接收ZabbixAgent和ZabbixProxy发送的信息以及ZabbixServer和ZabbixProxy以及ZabbixServer和ZabbixAgent的映射关系;所述ZabbixProxy用于上报设备的身份信息,还用于收集监控信息发送至ZabbixServer并建立与ZabbixServer的链接;所述ZabbixAgent用于上报设备的注册ID,还用于获取设备的身份信息发送至ZabbixProxy和ZabbixServer,并建立与ZabbixServer的链接。3.如权利要求2所述的支持横向扩展的Zabbix集群架构系统,其特征在于,所述Zookeeper包括:Zookeeper数据模型树、注册器和分配器;所述Zookeeper数据模型树用于注册所述Zabbix上报的设备身份信息,创建设备的身份信息的数据节点,还用于记录ZabbixServer和ZabbixProxy以及ZabbixServer和ZabbixAgent的映射关系;所述注册器,用于接收ZabbixServer、ZabbixProxy和ZabbixAgent上报的设备身份信息,并注册到所述Zookeeper数据模型树;所述分配器,用于根据最小负载和最新注册算法处理所述Zookeeper数据模型树上的设备身份信息,得到ZabbixServer和ZabbixProxy以及ZabbixServer和ZabbixAgent的映射关系,还用于将所述ZabbixServer和ZabbixProxy以及ZabbixServer和ZabbixAgent的映射关系分配到ZabbixServer。4.如权利要求3所述的支持横向扩展的Zabbix集群架构系统,其特征在于,所述Zookeeper,还包括:状态监听器;所述状态监听器,用于监听ZabbixServer和ZabbixProxy在预设时间间隔上报的设备心跳状态;所述状态监听器,还用于当所述状态监听器在一定时间内没有收到所述ZabbixServer上报的设备心跳状态时,将所述将所述设备对应的ZabbixServer标记为不可用,同时所...
【专利技术属性】
技术研发人员:何慧虹,王勇,樊冬进,郭三川,
申请(专利权)人:国家计算机网络与信息安全管理中心,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。