新华网北京频道 行业信息
光大科技重点产品推介丨新一代分布式事件处理引擎
2022-12-02 11:49:19 来源: 光大科技
关注新华网
微博
Qzone
评论
图集

  近年来,随着企业IT架构不断转型及数据量显著增加,监控报警/事件处理面临着诸多难题:因吞吐量、入库效率较低,性能方面无法应对日益增长的告警规模和告警风暴;因受处理逻辑限制,功能方面无法处理复杂逻辑业务场景,无法根据需求定制化开发;架构方面无法做到高可用、无法将计算和存储解耦等等。

  为此,光大科技以事件数据处理业务为切入点,通过开源框架与自主研发相结合,采用最新的分布式计算和存储技术,研发了高并发、高性能、分布式、可扩展的新一代事件分布式事件处理引擎产品(简称UMDB)。

  事件处理引擎在运维平台或监控平台中是核心处理组件,可实现对不同设备或监控工具的事件/告警进行实时解析处理,包括事件丰富、报警压缩、恢复关联、自动升降级、维护期判断、告警通知等。

  目前业界大部分运维平台或监控平台使用的大多是OMNIbus商业产品(一个基于内存支持SQL的事件处理引擎),虽然前几年一直处于业内领先水平,但随着企业架构复杂化、数据量显著提升,对相关软件提高性能、自主可控的诉求不断增加。 光大科技研发的新一代分布式事件处理引擎产品,可应对海量报警下的实时处理场景,并对标原OMNIbus商业产品,实现对其快速平滑替换升级,切实解决当前客户面临的事件处理能力瓶颈,满足自主可控要求。

  同时,UMDB针对各行业事件处理产品特性进行了优化:1.长期运行的高效性与稳定性保障了业务系统的稳定运行;2.良好的扩展性使开发人员不再担心额外的需求需要做过多的变动;3.操作的便捷性使得运维人员上手容易,减少运维成本。

  服务目标:

  1.

  事件采集单纯化

  事件采集器一般只部署为主备的方式,相当于单机运行,当数据量比较大,尤其是告警风暴发生时,如果带有处理逻辑,往往处理不过来,就会造成事件大量延时,所以采集器只纯粹做原始事件采集工作,采集到原始事件时,直接发送到事件处理平台由其集中处理;

  2.

  事件处理集中化

  事件处理有很多规则需要统一管理,有很多设备对象和其它资源需要缓存,因此事件处理需要做成一个集中处理平台,才能较好地满足需求;

  3.

  实现分布式事件处理能力

  事件处理过程中存在大量的流处理和批处理,要做大量复杂的逻辑运算,因此需要构建分布式集群来处理企业级大量的事件;

  4.

  系统水平扩充能力强

  随着时间的推移,设备和应用会不断增长,事件也会随之增长,因此事件处理系统应具备水平扩充的能力;

  5.

  分布式内存数据库

  由于告警数据量大、告警会不时产生风暴、每一条告警处理过程中会大量的读写告警库,需要一个分布式内存数据库作为告警库,分布式内存数据库可以将访问和逻辑处理分摊,并且在内存中进行,性能可以满足需求;

  6.

  告警库Sql支持

  告警处理过程中对告警库的访问非常灵活,支持Sql可以满足需求,很多支持Key-Value的分布式内存NoSQL不能满足需求,如Redis, Geode等;

  7.

  自主构建

  事件处理逻辑复杂多变,采用商业化软件不能紧贴功能需求和业务需求,在开源软件的基础上自主构建事件处理平台,既可以提升构建速度,也可以最大程度满足功能需求和业务需求。

  产品构架:

  ※ 事件接入 主要是连接工具层与报警处理层之间的数据传输。报警接入服务通过Zookeeper注册获取,获取报警处理地址,并进行数据传输;

  ※ 事件处理 主要是对报警采集器传输过来的报警,按照业务需要进行处理。通用的报警处理:报警预处理、报警丰富、报警压缩、维护期处理、通知处理等等。这些处理场景可以根据自己的业务需要,自定义添加和调整;

  ※ 事件APP容器 主要是对报警处理平台中所有的场景APP进行热部署、解析和管理,保证APP的正常运行;

  ※ 数据管理 主要是对报警处理平台数据的管理。如:增量备份或定时备份的数据归档、报警处理平台主备同步、数据导入、导出功能等;

  ※ 数据接口 主要是对内的开发接口和对外的数据接口。包括:APP热部署接口主要是对APP管理层的控制接口、数据操作接口主要是对外提供操作和查询的接口、运行时接口主要是报警处理平台自监控接口、其他接口主要是通过APP自定义发布接口等;

  ※ 事件存储 以内存和磁盘结合的方式对事件进行存储,即所有事件在内存中和磁盘中保持一致,平台运行过程中所需要的事件直接从内存获取;平台重启时可以从磁盘加载数据,这样既保证了运行的高性能,又保证事件的持久化;

  ※ 展示层 对各类告警进行统一展示,具备丰富的声光提示、告警快速查询和处置、自定义告警过滤器和告警视图等能力。

  产品特性

  分布式高可用架构

  采用Dubbo框架搭建集群,提供分布式调用和负载均衡功能,处理能力可水平扩展;处理节点在宕一定数量的情况下集群依然可用;

  高并发高性能

  告警处理入库能力10000条/s;活动告警库存储量1000万级;历史告警库存储量亿级;

  强兼容性

  全兼容OMNIbus的处理规则库及报警处理逻辑,直接导出导入生效,实现无缝平滑过渡;

  支持多数据中心部署

  支持多数据中心主备模式部署,数据中心间自动同步数据;数据定时自动备份,全备+增量备份的方式,保证数据无丢失;

  高扩展性

  支持自定义App开发和部署;支持类SQL App并扩充SQL函数及语法;

  APP应用商店模式

  对于大型复杂的处理逻辑,可以使用Scala或Java语言开发,打成Jar包热部署到处理引擎中,同时也可以随时将App卸载;流APP可链条化编排,批APP可调度运行在不同的节点上,各APP间可协做共同完成复杂的业务,如汇总处理、分布处理;

  告警链路追踪

  每一条告警处理的关键路径上都有追踪信息,可以查看告警处理链路、统计告警处理的性能指标。

  应用案例

  某商业银行统一监控平台事件处理商业产品(某国外厂商替换)

  某商业银行于2021年8月完成统一事件处理引擎替换,新一代事件处理引擎UMDB双中心架构正式投产运行,实现某商业银行统一监控管理平台全面国产化改造升级。

  UMDB在架构上采用分布式多线程并行处理模式,解耦计算和存储模块,提供高并发、高性能、易扩展的处理能力。丰富了数据采集对接模式,可直接对接Syslog、SnmpTrap、ITM、Zabbix等多种告警源。告警数据经过规则解析、告警丰富等一系列流/批处理后完成告警统一管理、统一展示、统一外发。此外,基于UMDB还扩展了告警处理手段,数据逻辑处理技术上可扩展Java/Scala等高级开发语言,实现诸如故障根因分析、告警汇聚、告警热点等复杂业务场景。

    该项目实现监控系统针对网络设备事件、硬件设备事件、Zabbix监控告警、Prometheus监控告警的快速接入,实现告警/事件统一接入、统一解析处理、统一展现,并基于流批处理规则和大数据算法,对整个数据中心不同领域告警进行关联分析、告警压缩、告警抑制、智能告警推荐等场景,效果显著。

 

+1
【纠错】 责任编辑: 田瑜

010070060010000000000000011154411129178575