小 T 导读:随着 TDengine 这款时序数据库(Time Series Database, TSDB)在各个领域应用的越来越广泛,很多用户选择将 Grafana 与 TDengine 配合使用,以可视化的方式监控各项指标的运行状态。为了让用户更便捷地组合使用 TDengine+Grafana,我们不仅对 TDengine Grafana 插件进行了改造升级,还推出了基于 Grafana 的零依赖监控解决方案 TDinsight。本篇文章将对 TDengine + Grafana 的落地实施进行详细介绍。
TDengine 时序数据库能够与开源数据可视化系统 Grafana 快速集成搭建数据监测报警系统,整个过程无需任何代码开发,TDengine 中数据表的内容可以在仪表盘(DashBoard)上可视化展现。关于 TDengine 插件的使用,你可以在 GitHub(https://github.com/taosdata/grafanaplugin/blob/master/README.md) 中了解更多。
前置条件
要让 Grafana 能正常添加 TDengine 数据源,需要以下几方面的准备工作:
- TDengine 集群已经部署并正常运行
- taosAdapter 已经安装并正常运行,具体细节请参考 taosAdapter 的使用手册(https://docs.taosdata.com/reference/taosadapter/)
在此过程中,我们需要记录以下信息:
- TDengine 集群 REST API 地址,如:
http://tdengine.local:6041
- TDengine 集群认证信息,可使用用户名及密码
安装 Grafana
目前 TDengine 支持 Grafana 7.5 以上的版本。用户可以根据当前的操作系统,到 Grafana 官网下载安装包,并执行安装。下载地址如下:https://grafana.com/grafana/download。
配置 Grafana
安装 Grafana Plugin 并配置数据源
- 图形化界面安装
- 使用安装脚本
- 手动安装
- K8s/Docker 容器
对于使用 Grafana 7.x 版本或使用 Grafana Provisioning 配置的用户,可以在 Grafana 服务器上使用安装脚本自动安装插件即添加数据源 Provisioning 配置文件。
bash -c "$(curl -fsSL \
https://raw.githubusercontent.com/taosdata/grafanaplugin/master/install.sh)" -- \
-a http://localhost:6041 \
-u root \
-p taosdata
安装完毕后,需要重启 Grafana 服务后方可生效。
保存该脚本并执行 ./install.sh --help
可查看详细帮助文档。
创建 Dashboard
回到主界面创建 Dashboard,点击 Add Query 进入面板查询页面:
如上图所示,在 Query 中选中 TDengine
数据源,在下方查询框可输入相应 SQL 进行查询,具体说明如下:
- INPUT SQL:输入要查询的语句(该 SQL 语句的结果集应为两列多行),例如:
select _wstart, avg(mem_system) from log.dnodes_info where ts >= $from and ts < $to interval($interval)
,其中,from、to 和 interval 为 TDengine 插件的内置变量,表示从 Grafana 插件面板获取的查询范围和时间间隔。除了内置变量外,也支持使用自定义模板变量。 - ALIAS BY:可设置当前查询别名。
- GENERATE SQL: 点击该按钮会自动替换相应变量,并生成最终执行的语句。
按照默认提示,查询当前 TDengine 部署所在服务器指定间隔系统内存平均使用量如下:
关于如何使用 Grafana 创建相应的监测界面以及更多有关使用 Grafana 的信息,请参考 Grafana 官方的文档(https://grafana.com/docs/)。
导入 Dashboard
在数据源配置页面下,我们可以为该数据源导入 TDinsight 面板,作为 TDengine 集群的监控可视化工具。如果 TDengine 服务端为 3.0 版本请选择 TDinsight for 3.x
导入。
其中适配 TDengine 2.* 的 Dashboard 已发布在 Grafana:Dashboard 15167 – TDinsight(https://grafana.com/grafana/dashboards/15167-tdinsight/) 。其他安装方式和相关使用说明请见 TDinsight 用户手册。
如果你想要使用 TDengine 作为数据源的其他面板,如监控多个 TDengine 集群、查阅 TDengine 告警实例、进行 Telegraf 采集节点信息的数据展示,可以点击进入 https://docs.taosdata.com/third-party/grafana/ 查看。