在linux中部署grafana agent需选对安装方式、配好river格式采集任务、启动systemd服务并验证连通性:debian/ubuntu用apt,rhel/centos用yum/dnf,无root则下二进制;配置metrics/logs/traces采集,启动后查status及日志,curl验证指标端点。

在 Linux 环境中部署 Grafana Agent 实现高效数据采集,关键在于选对安装方式、配好采集目标、启动服务并验证连通性。它不是单纯装个包就完事,而是要让 Agent 稳定运行、精准抓取 metrics、logs 或 traces,并可靠转发到后端(如 Prometheus、Loki、Tempo 或 Grafana Cloud)。
根据系统类型选择安装方式
不同发行版适配不同包管理器,优先用原生方式安装,便于后续更新和 systemd 管理:
-
Debian/Ubuntu:添加官方仓库 + apt 安装
执行以下命令导入密钥并添加源:sudo mkdir -p /etc/apt/keyrings/<br>wget -q -O - https://apt.grafana.com/gpg.key | gpg --dearmor | sudo tee /etc/apt/keyrings/grafana.gpg > /dev/null<br>echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com stable main" | sudo tee /etc/apt/sources.list.d/grafana.list
再运行sudo apt-get update && sudo apt-get install grafana-agent -
RHEL/CentOS/Fedora:配置 yum/dnf 仓库后安装
创建/etc/yum.repos.d/grafana.repo,写入 baseurl 和 gpgkey;然后执行sudo dnf install grafana-agent(RHEL 8+/Fedora)或sudo yum install grafana-agent(RHEL 7/CentOS 7) -
无 root 权限或需指定版本:直接下载二进制
从 GitHub Releases 下载对应架构的 tar.gz 包(如v0.39.2-linux-amd64.tar.gz),解压后将grafana-agent二进制放入$HOME/bin或任意可执行路径,自行管理进程
配置采集任务(以 River 格式为主)
Grafana Agent v0.30+ 默认使用 River 配置语言(替代旧版 YAML),更简洁、支持模块化与表达式。基础采集通常包含三类组件:
-
metrics:通过
prometheus.scrape抓取本地或远程指标(如 node_exporter 的http://localhost:9100/metrics) -
logs:用
loki.source.syslog接收 UDP/TCP syslog,或loki.source.file监控日志文件(如/var/log/syslog) -
traces:启用
tempo.receiver.otlp接收 OTLP 协议的链路追踪数据
示例片段(保存为 /etc/grafana-agent.river):
prometheus.scrape "demo" {
targets = [{"__address__" = "localhost:9100"}]
forward_to = [prometheus.remote_write.default.receiver]
}
<p>loki.source.syslog "system" {
address = "0.0.0.0:5140"
forward_to = [loki.write.default.receiver]
}</p><p>prometheus.remote_write "default" {
endpoint {
url = "<a href="https://www.php.cn/link/d9b85b7ae11b4ceb07c1b101b1ff5361">https://www.php.cn/link/d9b85b7ae11b4ceb07c1b101b1ff5361</a>"
}
}</p>启动服务并确认运行状态
安装后默认不自动启动,需手动启用:
- 启动服务:
sudo systemctl start grafana-agent - 设为开机自启:
sudo systemctl enable grafana-agent - 检查状态:
sudo systemctl status grafana-agent—— 应显示active (running) - 查看实时日志:
sudo journalctl -u grafana-agent -f,关注是否有 scrape 成功、remote write 连接成功等日志 - 验证内置指标端点:
curl http://localhost:12345/metrics | grep agent_scrapes_total,有数值说明采集器已工作
对接 Grafana 可视化(可选但推荐)
Agent 本身不提供 UI,需配合 Grafana 展示数据:
- 在 Grafana 中添加数据源:选择 Prometheus 类型,URL 填 Agent 的内置 Prometheus 兼容端点(默认
http://localhost:12345) - 若使用 remote write,也可将 Grafana 数据源指向远端 Prometheus 或 Grafana Cloud 实例
- 导入现成仪表盘(如 Node Exporter Full:
1860)快速查看系统指标











