2024 树莓派4b 安装 grafana + InfluxDB + telegraf 实现实时监控服务器状态

想着树莓派闲置也是闲置,不如安装下其他软件。自己网上也是搜索下相关教程,有的教程根本不全非常坑,所以自己记录下踩坑记录。

1.安装Grafana. 

 
Grafana是一个golang开发的可视化工具。我是直接安装,没有用docker安装。当然你也可以自己用docker安装

Install Grafana on Raspberry Pi | Grafana Labs  官网教程。

修改Apt源

sudo mkdir -p /etc/apt/keyrings/
wget -q -O - https://apt.grafana.com/gpg.key | gpg --dearmor | sudo tee /etc/apt/keyrings/grafana.gpg > /dev/null

添加 Grafana APT 仓库:

echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com stable main" | sudo tee /etc/apt/sources.list.d/grafana.list

安装grafana

sudo apt-get update
sudo apt-get install -y grafana

设置开机自启动和启动grafana

sudo /bin/systemctl enable grafana-server

sudo /bin/systemctl start grafana-server

启动后,在浏览器中输入树莓派的本机ip 直接打开grafana 默认账号 admin / admin

http://192.168.2.55:3000

 2.docker 安装 InfluxDB 
 

InfluxDB是一个时序数据库。
首先,先在树莓派中创建一个目录 用来映射docker容器中的目录

mkdir /home/pi/docker_workspace/influxdb


拉取镜像

sudo docker pull influxdb:1.8.10

启动容器

sudo docker run -d -p 8086:8086 --name influxdb -v /home/pi/docker_workspace/influxdb:/var/lib/influxdb influxdb:1.8.10

启动后还没有玩,要进入容器中创建一个数据库,用来存放 telegraf收集到服务器的数据。

sudo docker exec -it influxdb bash

 图中是我之前创建好的

# 创建用户并赋权
create user admin with password '123456' with all privileges

# 添加数据库
create database telegraf

3.安装telegraf

Telegraf是一个专门收集数据的工具。可以从堆栈、传感器和系统中收集数据。 

接下来重点来了,用docker安装telegraf必须要有一个配置文件才能启动,如果没有,docker容器根本起不来。这是网上查了很多资料得出来的结论。

下面是这个文件的配置信息, 如果没有你要的,可以去github找下。
telegraf/plugins/inputs at master · influxdata/telegraf · GitHub

创建文件夹及文件

mkdir telegraf

cd telegraf

sudo vim telegraf.conf

 telegraf.conf

[[inputs.cpu]]
  2   percpu = true
  3 [[inputs.disk]]
  4 [[inputs.diskio]]
  5 [[inputs.net]]
  6 [[inputs.mem]]
  7 [[inputs.system]]
  8 [[inputs.swap]]
  9 [[inputs.processes]]
 10 [[inputs.kernel]]
 11 
 12 [[inputs.file]]
 13   files = ["/sys/class/thermal/thermal_zone0/temp"]
 14   name_override = "cpu_temperature"
 15   data_format = "value"
 16   data_type = "integer"
 17 
 18 [[outputs.influxdb]]
 19   ## The full HTTP or UDP URL for your InfluxDB instance.
      ## 你自己的influxdb的ip和端口号
 20   urls = ["http://localhost:8086"]
 21 
 22   ## The target database for metrics; will be created as needed.
      ## 刚才你创建的数据库
 23   database = "telegraf"
 24 
 25   ## Name of existing retention policy to write to.  Empty string writes to
 26   ## the default retention policy.  Only takes effect when using HTTP.
 27    retention_policy = ""
 28 
 29   ## Timeout for HTTP messages.

 保存后 拉取镜像

docker pull telegraf:1.32.0

启动容器

docker run --name telegraf -d  \
    --net=container:influxdb \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v /proc:/host/proc:ro \
    -v /opt/:/opt/ \
    -v /home/pi/docker_workspace/telegraf/:/etc/telegraf/ \
    -e HOST_PROC=/host/proc \
    telegraf:1.32.0

启动后,可以用命令看下启动成功没

如果没有成功可以删除容器 把-d 改成 -it 看下是啥原因启动不了,逐个解决。

# 查看启动失败的容器id
docker ps -a

# 删除容器
docker rm xxxxx

# 以-it方式进行启动容器
docker run --name telegraf -it  \
    --net=container:influxdb \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v /proc:/host/proc:ro \
    -v /opt/:/opt/ \
    -v /home/pi/docker_workspace/telegraf/:/etc/telegraf/ \
    -e HOST_PROC=/host/proc \
    telegraf:1.32.0

4.配置Grafana 

如果以上步骤都没有问题,就可以配置Grafana了。

浏览器输入  自己的Ip 默认密码 admin/adminGrafanaicon-default.png?t=O83Ahttp://192.168.2.55:3000/

 我的granfana版本是11.2.1

添加数据源

 

 数据库,用户和密码 之前已经设置过了,填写就行。最后点击保存。

如果出现这个提示就证明没有问题,不是检查下是不是ip端口号没填写对。

添加树莓派监控仪表板 

这里有一条是我之前创建的

选择导入

填写 20498 进行加载

选择之前新建的数据源 点击导入

最后就大功告成了!

其他部分

部分面板数据缺失

如果有,点击这个面板的编辑

看它的数据来源是什么 然后去之前分享的gitHub页面找插件


把配置信息写入到 telegraf.conf 配置文件中 保存

按先后次序重启 influxdb telegraf 两个容器,因为telegraf依赖influxdb.然后再次登录grafanfa,不出意外就可以看到你想要的数据了。

但是树莓派不是所有的数据都支持的 比如GPU温度等,基本的cpu 内存数据出来就行,不用全部都要搞出来,有的还不支持。
 

更换展示面板的模板

刚才那个模板看腻了,不想要了,能不能更换模板呢,答案是可以的,点击仪表盘 新建一个 点击导入 ,有个网址可以选择模板。可以搜索到自己喜欢的,复制下id,复制到导入那里,点击加载就可以了。

这个模板好像不支持,自己换一个。用我之前推荐的模板也可以。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值