TICK 是由 InfluxData开发的一套开源工具栈,由 Telegraf, InfluxDB, Chronograf, Kapacitor 四个工具的首字母组成。html
Telegraf是一个用Go语言开发的代理程序,可用于收集和报告指标。Telegraf插件直接从其运行的系统中获取各类指标,从第三方API中提取指标,甚至经过StatsD和Kafka消费者服务来监听指标。它还具备输出插件,能够将指标发送到各类其余数据存储,服务和消息队列,包括InfluxDB,Graphite,OpenTSDB,Datadog,Librato,Kafka,MQTT,NSQ等。github地址:https://github.com/influxdata/telegraflinux
InfluxDB是一个用Go语言开发的时序数据库,用于处理高写入和查询负载,专门为带时间戳的数据编写,对DevOps监控,IoT监控和实时分析等应用场景很是有用。经过自定义配置让InfluxDB保留规定时间内的数据,并自动从系统中删除不在规定时间内的数据,能够节省计算机上的空间。InfluxDB还提供了一种相似于SQL的查询语言来与数据进行交互,而且InfluxDB相比传统关系型数据库更关注数据的实时性和并发插入时的承受能力。github地址:https://github.com/influxdata/influxdbgit
Chronograf是InfluxData的开源可视化引擎,可以让经过数据的实时可视化快速构建仪表板,可是因为Chronograf没有Grafana扩展性和易用性强,因此后面会使用了Grafana替代Chronograf。github地址:https://github.com/influxdata/chronografgithub
Grafana是一款采用go语言和Angular框架编写的开源的可视化工具,主要用于大规模指标数据的可视化展现,提供包括折线图,饼图,仪表盘等多种监控数据可视化UI,是网络架构和应用分析中最流行的时序数据可视化工具,支持多种不一样的时序数据库数据源。github地址:https://github.com/grafana/grafana数据库
Kapacitor是InfluxData开源的数据处理引擎。它能够处理来自InfluxDB的流数据和批处理数据,而且用户能够用tickScript脚原本处理,监视和警报时序数据库中的时序数据。github地址:https://github.com/influxdata/kapacitor网络
Kapacitor - 时序数据的处理,监视和警报等架构
在近几年互联网高速发展的背景下,时序数据逐渐成为各种大型企业和各类不一样领域研究的对象,对应的业务场景也应运而生,那就是监控系统,而TICK是InfluxData提供面向时序列数据的一整套的开源的高性能监控解决方案。固然也有不少大型企业本身开发搭建基于时序数据库企业级的监控系统,例如小米、阿里的饿了吗等大型企业,它们也会用到TICK技术栈或者其中的某种工具,对于一些中小型企业要作基于时序数据的监控系统,TICK技术栈能够说是一种不可多得的选择。就目前而言,TICK技术栈中的InfluxDB已经被普遍用于各行各业,应用于存储系统的监控数据,IoT行业的实时数据等场景。并发
Kapacitor官方文档地址: https://docs.influxdata.com/kapacitor/v1.5/introduction/getting-started/框架
固然后续我也会继续出关于TICK每一个套件的安装部署以及入门的文章,若是文中有错误或其它问题,欢迎在评论区及时指正和提出来,我会积极的进行处理的。