1.什么是TICK?
TICK 是由 InfluxData 开发的一套开源工具栈,
由 Telegraf, InfluxDB, Chronograf, Kapacitor 四个工具的首字母组成。
Telegraf
Telegraf 是一个用Go语言开发的代理程序,可用于收集和报告指标。Telegraf插件直接从其运行的系统中获取各种指标,从第三方API中提取指标,甚至通过StatsD和Kafka消费者服务来监听指标。它还具有输出插件,可以将指标发送到各种其他数据存储,服务和消息队列,包括InfluxDB,Graphite,OpenTSDB,Datadog,Librato,Kafka,MQTT,NSQ等。github地址:https://github.com/influxdata/telegraf
InfluxDB
InfluxDB 是一个用Go语言开发的时序数据库,用于处理高写入和查询负载,专门为带时间戳的数据编写,对DevOps监控,IoT监控和实时分析等应用场景非常有用。通过自定义配置让InfluxDB保留规定时间内的数据,并自动从系统中删除不在规定时间内的数据,可以节省计算机上的空间。InfluxDB还提供了一种类似于SQL的查询语言来与数据进行交互,并且InfluxDB相比传统关系型数据库更关注数据的实时性和并发插入时的承受能力。github地址:https://github.com/influxdata/influxdb
Chronograf
Chronograf 是InfluxData的开源可视化引擎,可让通过数据的实时可视化快速构建仪表板,但是由于Chronograf没有Grafana扩展性和易用性强,所以后面会使用了Grafana替代Chronograf。github地址:https://github.com/influxdata/chronograf
Kapacitor
Kapacitor 是InfluxData开源的数据处理引擎。它可以处理来自InfluxDB的流数据和批处理数据,并且用户可以用tickScript脚本来处理,监视和警报时序数据库中的时序数据。github地址:https://github.com/influxdata/kapacitor
2.TICK技术栈应用场景
在近几年互联网高速发展的背景下,时序数据逐渐成为各类大型企业和各种不同领域研究的对象,对应的业务场景也应运而生,那就是监控系统,而TICK是InfluxData提供面向时序列数据的一整套的开源的高性能监控解决方案。当然也有很多大型企业自己开发搭建基于时序数据库企业级的监控系统,例如小米、阿里的饿了吗等大型企业,它们也会用到TICK技术栈或者其中的某种工具,对于一些中小型企业要做基于时序数据的监控系统,TICK技术栈可以说是一种不可多得的选择。就目前而言,TICK技术栈中的InfluxDB已经被广泛用于各行各业,应用于存储系统的监控数据,IoT行业的实时数据等场景。
3.安装及部署
1.mac 安装influxdb + Chronograf - 简书