Telegraf:InfluxData 出品的指标采集代理

Telegraf:InfluxData 出品的指标采集代理

原文https://github.com/influxdata/telegraf


项目介绍

Telegraf 是 InfluxData 开源的一个数据采集代理,用来收集、处理、聚合和输出指标数据。和传统的 Exporter 不同,Telegraf 不局限于 Prometheus 生态------它可以把数据写到 InfluxDB、Kafka、Prometheus、Graphite 等各种后端。

特点

  • 插件丰富:超过 300 个插件,涵盖系统、网络、数据库、消息队列、云服务等
  • 无依赖:编译成独立二进制文件,解压就能跑,不需要装什么运行时
  • 配置清晰:TOML 格式,结构一目了然
  • 社区活跃:超过 1200 名贡献者,遇到问题基本能在网上找到答案

支持的部分插件领域:

分类 插件示例
系统 CPU、内存、磁盘、网络、Docker、Nvidia SMI
日志 File、Tail、Directory Monitor
消息队列 AMQP、Kafka、MQTT
网络设备 Cisco Telemetry MDT、gNMI
数据库 MySQL、PostgreSQL、MongoDB、Redis
硬件 OPC UA、Modbus、SMART
Windows 事件日志、WMI、性能计数器
通用 Exec、HTTP、SNMP、SQL

安装

安装方式有多种,最常用的是通过包管理器:

bash 复制代码
# Debian/Ubuntu
wget -q https://repos.influxdata.com/influxdata-archive_compat.key
echo '...' | gpg --import -
# 然后 apt install telegraf

# CentOS/RHEL
rpm -i https://dl.influxdata.com/telegraf/releases/telegraf-1.30.0-1.x86_64.rpm

# Docker
docker run -d --name=telegraf -v /path/to/telegraf.conf:/etc/telegraf/telegraf.conf telegraf

配置说明

配置文件的格式是 TOML,核心结构就这么三块:

toml 复制代码
# 1. 全局设置
[agent]
  interval = "10s"          # 多久采集一次
  flush_interval = "10s"    # 多久往外发一次

# 2. 输入:从哪采集
[[inputs.cpu]]
  percpu = true
[[inputs.disk]]
  ignore_fs = ["tmpfs", "devtmpfs"]

# 3. 输出:发给谁
[[outputs.influxdb]]
  urls = ["http://localhost:8086"]
  database = "telegraf"

[[outputs.prometheus_client]]
  listen = ":9273"

使用方法

Telegraf 的工作流程很简单:

  1. 写一个 TOML 配置文件,指定要用哪些输入插件、处理插件、输出插件
  2. 运行 telegraf --config /etc/telegraf/telegraf.conf
  3. 它就会按 interval 间隔采集,然后按 flush_interval 间隔输出

什么时候用 Telegraf

场景 推荐 原因
只需要采集服务器指标 node_exporter 更轻量
需要同时采集多个组件(CPU + MySQL + Nginx) Telegraf 一个代理全搞定
数据要同时写到 Prometheus 和 InfluxDB Telegraf 支持多输出
需要自定义脚本来采集特殊指标 Telegraf 有 exec 插件
Windows 环境 Telegraf 系统支持好

一句话总结:Telegraf 适合需要一套代理搞定所有采集的场景,node_exporter 适合只想简单监控 Linux 服务器的场景。两者不冲突,可以共存。

相关推荐
SkyWalking中文站6 小时前
认识 Horizon UI · 5/17:3D 基础设施地图
运维·监控·自动化运维
SkyWalking中文站1 天前
认识 Horizon UI · 1/17:SkyWalking 新一代可观测性控制台
运维·前端·监控
雪梨酱QAQ1 天前
Kubeneters HA Cluster部署
运维
江华森1 天前
Spring Cloud 微服务全栈实战:从 Eureka 到 Docker Compose 一文贯通
运维
江华森1 天前
Matplotlib 数据绘图基础入门
运维
江华森1 天前
NumPy 数值计算基础入门
运维
乘云数字DATABUFF5 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--7 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森7 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜8 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https