influxDB/Telegraf basic
简介及相关知识
Telegraf 是一个用 Go 编写的代理程序,可收集系统和服务的统计数据,并写入到 InfluxDB 数据库。内存占用小,通过插件系统可轻松添加支持其他服务的扩展。
Influxdb 是一个开源的分布式时序、时间和指标数据库,使用 Go 语言编写,无需外部依赖。Influxdb 有如下三大特性:
①、基于时间序列,支持与时间有关的相关函数(如最大,最小,求和等);
②、可度量性:你可以实时对大量数据进行计算;
③、基于事件:它支持任意的事件数据;
2、为什么要用telegraf和influxdb?
①、在数据采集和平台监控系统中,Telegraf 可以采集多种组件的运行信息,而不需要自己手写脚本定时采集,降低数据获取的难度;
②、Telegraf 配置简单,只要有基本的 Linux 基础即可快速上手;
③、Telegraf 按照时间序列采集数据,数据结构中包含时序信息,influxdb就是为此类数据设计而来,使用 Influxdb 可以针采集得到的数据完成各种分析计算操作;
以上来源于:https://www.cnblogs.com/imyalost/p/9873621.html
时序数据库主要用于存储基于时间序列的指标数据,例如一个Web页面的PV、UV等指标,将其定期采集,并打上时间戳,就是一份基于时间序列的指标。时序数据库通常用来配合前端页面来展示一段时间的指标曲线。
快速安装与启动
官方下载地址: https://portal.influxdata.com/downloads/
安装influxDB
:
安装Telegraf
:
启动服务:
run in docker
influxdb:
telegraf:
Telegraf收集nginx状态到influxDB并用Grafana查询展示
telegraf简单配置
配置Telegraf
(默认deb安装的位置为/etc/telegraf/telegraf.conf
):
需要略微修改的地方:
将122
行和129
行取消注释,具体以当前文件为准。
大概5761
行和5763
行,取消注释[[inputs.nginx]],注意,这里的urls
填写的是你nginx的nginx-status
页面,
如果你没有该页面,或者该模块没有被编译进nginx,参考这篇文章👉🏻:https://www.tecmint.com/enable-nginx-status-page/
重启telegraf使配置生效:
influxDB中查看收集到的数据
Grafana中查询influxDB并展示
添加influxDB
数据源很简单,填好URL
和Database
为telegraf
就可以了,这里我就不再赘述.
其他高级操作自行摸索。。。:
附录:influxdb 基本操作
:warning: influxdb
的本地客户端cli工具名称叫做:influx
经典CRUD操作:
导入导出数据:
用户管理:
其他:
参考链接