TDengine + collectd/StatsD + Grafana

    IT 运维监测数据通常都是对时间特性比较敏感的数据,例如:

    • 系统资源指标:CPU、内存、IO、带宽等。
    • 软件系统指标:存活状态、连接数目、请求数目、超时数目、错误数目、响应时间、服务类型及其他与业务有关的指标。

    当前主流的 IT 运维系统通常包含一个数据采集模块,一个数据存储模块,和一个可视化显示模块。collectd / statsD 作为老牌开源数据采集工具,具有广泛的用户群。但是 collectd / StatsD 自身功能有限,往往需要配合 Telegraf、Grafana 以及时序数据库组合搭建成为完整的监控系统。而 TDengine 新版本支持多种数据协议接入,可以直接接受 collectd 和 statsD 的数据写入,并提供 Grafana dashboard 进行图形化展示。

    本文介绍不需要写一行代码,通过简单修改几行配置文件,就可以快速搭建一个基于 TDengine + collectd / statsD + Grafana 的 IT 运维系统。架构如下图:

    安装 collectd, StatsD, Grafana 和 TDengine 请参考相关官方文档。

    安装 StatsD

    请参考官方文档

    请参考官方文档

    安装 TDengine

    从涛思数据官网下载页面下载最新 TDengine-server 版本安装。

    请参考。

    配置 collectd

    在 文件中增加如下内容,其中 hostport 请填写 TDengine 和 taosAdapter 配置的实际值:

    1. backends 部分添加 "./backends/repeater"

    导入 Dashboard

    使用 Web 浏览器访问运行 Grafana 的服务器的 3000 端口 登录 Grafana 界面,系统初始用户名密码为 admin/admin。 点击左侧齿轮图标并选择 Plugins,应该可以找到 TDengine data source 插件图标。

    导入 collectd 仪表盘

    https://github.com/taosdata/grafanaplugin/blob/master/examples/collectd/grafana/dashboards/collect-metrics-with-tdengine-v0.1.0.json 下载 dashboard json 文件,点击左侧加号图标并选择 Import,按照界面提示选择 JSON 文件导入。之后可以看到如下界面的仪表盘:

    TDengine Database IT-DevOps-Solutions-collectd-dashboard

    导入 StatsD 仪表盘

    从 下载 dashboard json 文件,点击左侧加号图标并选择 Import,按照界面提示导入 JSON 文件。之后可以看到如下界面的仪表盘:

    TDengine 作为新兴的时序大数据平台,具备极强的高性能、高可靠、易管理、易维护的优势。得力于 TDengine 的 schemaless 协议解析功能,以及强大的生态软件适配能力,用户可以短短数分钟就可以搭建一个高效易用的 IT 运维系统或者适配一个已存在的系统。