Telegraf:系统仪表盘
适用于 telegraf 指标的 InfluxDB 仪表盘
描述
用于 telegraf + influxdb 的模板化仪表盘。
类似于基本 https://grafana.net/dashboards/914,但带有模板、重复面板/行等功能。
该项目是为了“学习 influxdb/telegraf”而制作的,最终变成了我每天都在使用的东西。
变量(包括服务器/数据源/间隔等标准变量)
- CPU(默认为全部)
- 磁盘(每磁盘 IOPS)
- 网络接口(数据包、带宽、错误/丢包)
- 挂载点(空间 / inodes)
指标
- 详细的网络堆栈信息,nstat 插件允许我们获取原始 snmp 数据,例如
- TCP 握手数据
- TCP 中止数据
- ICMP 错误,ICMP 数据
- SYN 数据
- TCP 错误(重传等)
- IPv4 错误
- IPv6 错误
- Conntrack 数据
- 文件描述符
- UDP 数据
……基本上你可以从普通 Linux 系统中提取的所有“通用”信息
默认情况下,所有变量都指向“全部”,因此如果您有大量磁盘/网络接口,仪表盘可能会非常庞大。
目前我在一台拥有 46 个磁盘、8 个接口的机器上进行了测试,加载正常(但速度很慢,可怜的浏览器几乎无法处理所有这些数据)
已知问题 / 权宜之计
Docker “veth” 接口通过模板正则表达式被列入黑名单。Docker 会创建大量以“veth%容器ID%”命名的接口,即使它们是几个月前的旧接口,也仍然出现在选择器中,因此这些接口的信息几乎毫无用处。
磁盘 IO 只显示 /dev/sda、/dev/hda、/dev/vda 等磁盘的信息。使用每分区的 IOPS 会产生太多图表,但如果你确实需要,可以通过编辑“磁盘”模板变量中的正则表达式来解决。另外,我不确定 drbd 和其他“虚拟”块设备的情况。
分离 IPv4/IPv6 数据(我没有 IPv6 网络,因此优先级不高)
更新日志
- 2019 年 8 月 7 日:支持 nvme 磁盘 (/dev/nvmeXnY)