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