Linux怎么安装Telegraf监控采集_Linux Telegraf安装配置教程【进阶】

阿晨姑娘_7844

阿晨姑娘_7844

2026-04-01

584人浏览

原创

推荐使用系统包管理器安装telegraf:debian/ubuntu需添加influxdata仓库后apt安装;centos/rhel 7/8需创建influxdb.repo配置文件。

linux怎么安装telegraf监控采集_linux telegraf安装配置教程【进阶】

一、使用系统包管理器安装

在主流Linux发行版中,通过官方软件源或InfluxData提供的仓库安装Telegraf是最稳定且易于维护的方式。该方法自动处理依赖关系,并支持后续的yum/apt升级机制。

1、对于Debian/Ubuntu系统,执行以下命令添加InfluxData仓库并安装:

sudo apt update && sudo apt install -y software-properties-common

sudo add-apt-repository "deb https://repos.influxdata.com/debian stable main"

sudo apt update && sudo apt install telegraf

2、对于CentOS/RHEL 7/8系统,创建仓库配置文件:

sudo tee /etc/yum.repos.d/influxdb.repo

[influxdb]

name = InfluxDB Repository - RHEL \$releasever

baseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stable

enabled = 1

gpgcheck = 1

gpgkey = https://repos.influxdata.com/influxdb.key

EOF

3、运行安装命令:

sudo yum install telegraf

4、启动并启用服务:

sudo systemctl daemon-reload

sudo systemctl enable telegraf

sudo systemctl start telegraf

二、使用预编译二进制包安装

当目标系统无网络访问权限、无法添加第三方仓库,或需指定特定版本时,可直接下载官方发布的DEB/RPM/TAR.GZ包进行离线部署。此方式不依赖包管理器,适用于定制化环境或容器场景。

1、创建专用用户以最小权限运行Telegraf:

sudo useradd -r -s /bin/false telegraf

2、下载对应架构的最新稳定版tar.gz包(以amd64为例):

sudo mkdir -p /opt/telegraf

cd /tmp && curl -sLO https://dl.influxdata.com/telegraf/releases/telegraf-1.33.3_linux_amd64.tar.gz

sudo tar xzf telegraf-1.33.3_linux_amd64.tar.gz -C /opt/telegraf --strip-components=1

3、设置文件所有权与路径链接:

sudo chown -R telegraf:telegraf /opt/telegraf

sudo ln -sf /opt/telegraf/usr/bin/telegraf /usr/local/bin/telegraf

4、复制默认配置并调整属主:

sudo cp /opt/telegraf/etc/telegraf/telegraf.conf /etc/telegraf/telegraf.conf

sudo chown telegraf:telegraf /etc/telegraf/telegraf.conf

5、手动创建systemd服务单元文件(/etc/systemd/system/telegraf.service):

[Unit]

Description=The plugin-driven server agent for reporting metrics into InfluxDB

Documentation=https://github.com/influxdata/telegraf

After=network.target

[Service]

User=telegraf

ExecStart=/usr/local/bin/telegraf -config /etc/telegraf/telegraf.conf -config-directory /etc/telegraf/telegraf.d

Restart=on-failure

RestartSec=30

EnvironmentFile=-/etc/default/telegraf

[Install]

WantedBy=multi-user.target

6、启用并启动服务:

sudo systemctl daemon-reload

sudo systemctl enable telegraf

sudo systemctl start telegraf

三、使用Docker容器部署

在已部署Docker引擎的Linux主机上,采用容器方式运行Telegraf可实现环境隔离、快速回滚及配置即代码管理。容器内运行无需修改宿主机系统,适合CI/CD集成或临时监控任务。

1、拉取官方Telegraf镜像:

docker pull telegraf:1.33.3

2、准备本地配置目录:

mkdir -p $HOME/telegraf/config

curl -s https://raw.githubusercontent.com/influxdata/telegraf/master/etc/telegraf.conf > $HOME/telegraf/config/telegraf.conf

3、编辑$HOME/telegraf/config/telegraf.conf,启用所需输入插件(如[[inputs.cpu]])并配置输出目标(如[[outputs.influxdb_v2]]);特别注意将urls设为宿主机可访问的InfluxDB地址(例如http://host.docker.internal:8086)。

4、运行容器并挂载配置与主机资源:

docker run -d \

--name telegraf \

--restart unless-stopped \

--net host \

-v $HOME/telegraf/config/telegraf.conf:/etc/telegraf/telegraf.conf:ro \

-v /proc:/proc:ro \

-v /sys:/sys:ro \

-v /var/run/utmp:/var/run/utmp:ro \

-v /etc:/hostfs/etc:ro \

telegraf:1.33.3

5、验证容器日志是否正常采集:

docker logs telegraf | head -20

四、配置核心输入插件

Telegraf默认仅启用基础系统指标采集,需显式启用并调优输入插件才能满足进阶监控需求。每个插件均支持细粒度参数控制,如采集间隔、标签过滤与性能阈值。

1、编辑主配置文件:

sudo nano /etc/telegraf/telegraf.conf

2、取消注释并配置CPU插件,启用每核统计与活跃状态报告:

[[inputs.cpu]]

percpu = true

totalcpu = true

report_active = true

3、启用磁盘I/O监控,排除临时挂载点并限制采集深度:

[[inputs.diskio]]

devices = ["sda", "nvme0n1"]

skip_serial_number = true

4、添加进程监控,聚焦于高资源消耗服务:

[[inputs.processes]]

process_names = ["nginx", "mysql", "redis-server"]

5、启用内核指标,捕获中断与上下文切换压力:

[[inputs.kernel]]

6、保存配置后重启服务以生效:

sudo systemctl restart telegraf

五、配置多输出目标与数据路由

单一Telegraf实例可同时向多个后端写入数据,通过output插件组合与tag路由策略实现监控数据分发。此能力适用于灾备上报、分级存储或跨平台指标同步等进阶场景。

1、在配置文件中保留默认[[outputs.influxdb_v2]]区块,并补充Graylog GELF输出:

[[outputs.gelf]]

address = "udp://192.168.10.50:12201"

tagexclude = ["host", "path"]

2、为不同输出配置独立的metric过滤规则:在[[outputs.influxdb_v2]]下添加

namepass = ["cpu", "mem", "disk"]

在[[outputs.gelf]]下添加

namedrop = ["swap", "kernel"]

3、配置全局agent参数以协调多输出负载:

[agent]

interval = "10s"

round_interval = true

metric_batch_size = 1000

metric_buffer_limit = 10000

flush_interval = "10s"

4、验证各输出是否接收数据:

sudo journalctl -u telegraf -n 50 --no-pager | grep -E "(influxdb|gelf)"

5、若使用InfluxDB v2.x,确保已在配置中正确填写token、organization和bucket字段,否则写入将被拒绝。

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.08.16

5370

6

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3890

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3333

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2473

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

5990

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

5642

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3313

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

2805

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

3039

6

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.6万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.4万人学习