一种基于表路由代理模式的Kapacitor集群方法技术

技术编号:34789601 阅读:19 留言:0更新日期:2022-09-03 19:52
本发明专利技术公开了一种基于表路由代理模式的Kapacitor集群方法,包括以下步骤:提供协议的支持;通过外部数据写Kapacitor的服务请求;建立关联关系;通过标准接口把所有的任务下发到每个Kapacitor实例中;实时监控每个分组中的Kapacitor实例;解析出表与Kapacitor实例的绑定关系,查询信息数据,并将数据实时写入到具体的Kapacitor实例;完成任务配置,发现异常触发告警。本发明专利技术基于Kapacitor分布式集群的中间件代理模式,支持标准的行协议,对外完全透明与Kapacitor单节点使用方式保持一致,减轻接入压力。接入压力。接入压力。

【技术实现步骤摘要】
一种基于表路由代理模式的Kapacitor集群方法


[0001]本专利技术涉及智慧运维领域,具体来说,涉及一种基于表路由代理模式的Kapacitor集群方法。

技术介绍

[0002]随着云化、容器化、分布式微服务的技术和架构持续演进,物联网的持续进化;应用实例和各种被监控对象的数量都以指数级增长,现代应用系统的性能,可用性等KPI(Key Performance Indicator,关键性能指标)数据都具有两个明显的特征:1、系统KPI的数据具备时序型数据特征。
[0003]2、指标量都是海量级别,为了能够对当前的应用系统架构来做更好的监控。
[0004]实现对海量指标的计算需求变得更加迫切,对海量指标处理系统的稳定性也提出了更大的挑战。
[0005]业界在流式计算这方面,比较流行的组件有spark和flink,但这两种组件都存在两个相同的问题,1、资源需求高,2、运维复杂度太大。在以项目化交付的场景中,系统规模差异过大,有的十多台主机,有的一万多台主机。负面影响过大。Kapacitor是InfluxData公司开发的一种支持监控告警,ETL的轻量化流式计算组件;而传统的Kapacitor方案,只支持单机模式。无法应对当前对海量指标处理的性能和稳定性需求。同时业界的一些基于任务拆分的分布式方案存在如下问题:1、计算和存储的强耦合无法隔离相互影响,告警的能力强依赖于指标存储服务InfluxDB。2、强依赖于InfluxDB的订阅服务,数据的流量被全量推送,无法做到精确控制,导致资源浪费。
>[0006]针对相关技术中的问题,目前尚未提出有效的解决方案。

技术实现思路

[0007]针对相关技术中的问题,本专利技术提出一种基于表路由代理模式的Kapacitor集群方法,以克服现有相关技术所存在的上述技术问题。
[0008]为此,本专利技术采用的具体技术方案如下:一种基于表路由代理模式的Kapacitor集群方法,该方法包括以下步骤:S1、通过分布式中间件代理提供基于Kapacitor标准HTTP协议的支持;S2、服务请求的接入,通过外部数据写Kapacitor的服务请求;S3、在分布式路由管理的可视化界面进行路由信息配置,建立Kapacitor实例与表的关联关系;S4、根据所述路由信息配置获取Kapacitor实例,并通过Kapacitor提供的标准http api接口把所有的任务下发到每个Kapacitor实例中;S5、实时监控每个分组中的Kapacitor实例;S6、当外部请求发起写操作时,解析出表与Kapacitor实例的绑定关系,查询Kapacitor实例信息数据,并将数据实时写入到具体的Kapacitor实例;
S7、针对用户的需求,完成任务配置,发现异常触发告警。
[0009]进一步的,所述通过分布式中间件代理提供基于Kapacitor标准HTTP协议的支持还包括提供统一资源定位符地址及请求服务地址,且所述请求服务地址为/write。
[0010]进一步的,所述服务请求的接入,通过外部数据写Kapacitor的服务请求还包括以下步骤:在指标量较小的场景下,链接地址配置信息配置为分布式中间件代理提供的服务地址和端口,数据会被写入到分布式中间件代理提供的/write接口;当面对海量指标数据时,分布式中间件代理为无状态可水平扩展的服务,分布式集群通过增加负载均衡器把外部请求转发到分布式中间件代理提供的/write请求地址上。
[0011]进一步的,所述在分布式路由管理的可视化界面进行路由信息配置,建立Kapacitor实例与表的关联关系还包括以下步骤:在分布式路由管理的可视化界面,用户通过输入Kapacitor实例名称、实例地址、用户名密码、批量大小及批量周期来完成Kapacitor实例的配置;在分布式路由管理的可视化界面,用户输入待路由管理的指标表名称和表的备注,完成指标表信息的配置;在分布式路由管理的可视化界面,用户选择创建分组。
[0012]进一步的,所述在分布式路由管理的可视化界面,用户选择创建分组包括以下步骤:输入分组名,选择是否默认分组;用户选择配置的Kapacitor实例信息,并设置每个被选择实例的角色,一个组内只能有一个主角色,可有多个备角色;用户选择配置的表信息,可以选择多个表,并完成Kapacitor实例与表的关联关系。
[0013]进一步的,所述根据所述路由信息配置获取Kapacitor实例,并通过Kapacitor提供的标准http api接口把所有的任务下发到每个Kapacitor实例中任务下发之前还包括以下步骤:通过用户选择指标计算的周期、计算的函数、生效对象、以及判定是否告警的条件阈值信息,把可视化的结果转换为符合TICKscripts规范的Kapacitor任务。
[0014]进一步的,所述实时监控每个分组中的Kapacitor实例包括以下步骤:若发现不可用的Kapacitor实例,如果是分组中的主节点Kapacitor实例不可用,将基于分组中各备节点的指标综合判断,选择最优的备节点设置为主节点,刷新路由信息。
[0015]进一步的,所述当外部请求发起写操作时,解析出表与Kapacitor实例的绑定关系,查询Kapacitor实例信息数据,并将数据实时写入到具体的Kapacitor实例包括以下步骤:当外部请求发起写操作时,分布式中间件代理接收到InfluxData的标准行协议数据;基于InfluxData行协议的规则,通过语法树解析出InfluxData的表信息;根据解析出的表信息,查询表和表所在分组的配置关系。
[0016]进一步的,所述分布式中间件代理接收到InfluxData的标准行协议数据中标准行
协议数据的格式为:<measurement>[,<tag_key>=<tag_value>[,<tag_key>=<tag_value>]] <field_key>=<field_value>[,<field_key>=<field_value>] [<timestamp>];其中,measurement表示表名;tag_key表示标签字段;field_key表示值字段名称;tag_value表示标签值;field_value表示值字段值;timestamp表示时间。
[0017]进一步的,所述根据解析出的表信息,查询表和表所在分组的配置关系包括以下步骤:如果查询到表与分组的配置关系,返回此分组内Kapacitor主节点的实例;如果未查询到,将返回默认分组内Kapacitor主节点的实例。
[0018]本专利技术的有益效果为:1、本专利技术基于Kapacitor分布式集群的中间件代理模式,支持标准的行协议(lin本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于表路由代理模式的Kapacitor集群方法,其特征在于,该方法包括以下步骤:S1、通过分布式中间件代理提供基于Kapacitor标准HTTP协议的支持;S2、服务请求的接入,通过外部数据写Kapacitor的服务请求;S3、在分布式路由管理的可视化界面进行路由信息配置,建立Kapacitor实例与表的关联关系;S4、根据所述路由信息配置获取Kapacitor实例,并通过Kapacitor提供的标准http api接口把所有的任务下发到每个Kapacitor实例中;S5、实时监控每个分组中的Kapacitor实例;S6、当外部请求发起写操作时,解析出表与Kapacitor实例的绑定关系,查询Kapacitor实例信息数据,并将数据实时写入到具体的Kapacitor实例;S7、针对用户的需求,完成任务配置,发现异常触发告警。2.根据权利要求1所述的一种基于表路由代理模式的Kapacitor集群方法,其特征在于,所述通过分布式中间件代理提供基于Kapacitor标准HTTP协议的支持还包括提供统一资源定位符地址及请求服务地址,且所述请求服务地址为/write。3.根据权利要求1所述的一种基于表路由代理模式的Kapacitor集群方法,其特征在于,所述服务请求的接入,通过外部数据写Kapacitor的服务请求还包括以下步骤:在指标量较小的场景下,链接地址配置信息配置为分布式中间件代理提供的服务地址和端口,数据会被写入到分布式中间件代理提供的/write接口;当面对海量指标数据时,分布式中间件代理为无状态可水平扩展的服务,分布式集群通过增加负载均衡器把外部请求转发到分布式中间件代理提供的/write请求地址上。4.根据权利要求1所述的一种基于表路由代理模式的Kapacitor集群方法,其特征在于,所述在分布式路由管理的可视化界面进行路由信息配置,建立Kapacitor实例与表的关联关系还包括以下步骤:在分布式路由管理的可视化界面,用户通过输入Kapacitor实例名称、实例地址、用户名密码、批量大小及批量周期来完成Kapacitor实例的配置;在分布式路由管理的可视化界面,用户输入待路由管理的指标表名称和表的备注,完成指标表信息的配置;在分布式路由管理的可视化界面,用户选择创建分组。5.根据权利要求4所述的一种基于表路由代理模式的Kapacitor集群方法,其特征在于,所述在分布式路由管理的可视化界面,用户选择创建分组包括以下步骤:输入分组名,选择是否默认分组;用户选择配置的Kapacitor实例信息,并设置每个被选择实例的角色,一个组内只能有一个主角色,可有多个备角色;用户选择配置的表信息,可以选择多个表,并完成Kapacitor实例与表的关联关系。6.根据权利要求1所述的一种基于表路由代理模式的Kapacitor集群方法,...

【专利技术属性】
技术研发人员:刘启铨程海明钱鹏飞
申请(专利权)人:浩鲸云计算科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1