在树莓派4B上安装监控面板Netdata

Netdata是针对系统和应用程序的实时性能和运行状况分布式监视面板,在树莓派4B上有很好的兼容性能,同时具有非常美观的UI。可实时监控运行在服务器上的系统(Web服务器,数据库,各种应用程序)。

点击此处查看官方演示页面

自动化安装脚本

由于树莓派是基于Debian的arm版本Raspbian,可以直接使用官方提供的安装脚本。

bash <( curl -Ss https://my-netdata.io/kickstart.sh ) 

如果想手动更新可以通过 --no-updates关闭自动更新

bash <( curl -Ss https://my-netdata.io/kickstart.sh ) --no-updates

Docker安装

在Docker中运行Netdata的局限性,由于与宿主机环境隔离,在容器中运行Netdata可能会限制一部分功能。某些数据(例如主机OS的性能或状态)无法像在主机上直接运行Netdata那样访问或获取信息不够详细。

解决此问题的一种方法是向Docker容器提供特殊的挂载,以便代理可以查看宿主机内OS信息,例如 /sys, /proc,和 /etc等文件夹。通过使用ENTRYPOINT 指令而不是COMMAND指令启动Docker映像。需要根据具体程序或服务调整启动脚本,您可以在Docker文档中找到有关ENTRYPOINT和COMMAND的更多信息

1. 获取镜像

执行命令下载官方镜像。

docker pull netdata/netdata:latest

2. 启动容器

参考docker启动如下。

docker run -d --name=netdata \
-p 19999:19999 \
-v $(pwd)/netdataconfig/netdata:/etc/netdata:ro \
-v netdatalib:/var/lib/netdata \
-v netdatacache:/var/cache/netdata \
-v /etc/passwd:/host/etc/passwd:ro \
-v /etc/group:/host/etc/group:ro \
-v /proc:/host/proc:ro \
-v /sys:/host/sys:ro \
-v /etc/os-release:/host/etc/os-release:ro \
--restart unless-stopped \
--cap-add SYS_PTRACE \
--security-opt apparmor=unconfined \
netdata/netdata

docker-compose.yml配置文件如下。

version: '3'
services:
netdata:
image: netdata/netdata
container_name: netdata
hostname: example.com # 配置为主机的域名
ports:
- 19999:19999
restart: unless-stopped
cap_add:
- SYS_PTRACE
security_opt:
- apparmor:unconfined
volumes:
- ./netdataconfig/netdata:/etc/netdata:ro
- netdatalib:/var/lib/netdata
- netdatacache:/var/cache/netdata
- /etc/passwd:/host/etc/passwd:ro
- /etc/group:/host/etc/group:ro
- /proc:/host/proc:ro - /sys:/host/sys:ro
- /etc/os-release:/host/etc/os-release:ro
volumes:
netdataconfig:
netdatalib:
netdatacache:

3. 配置容器

docker exec -it netdata bash
cd /etc/netdata
./edit-config netdata.conf

配置完成后需重启容器。

总结

Netdata支持数百种集成监控,集合可以监控每个系统和应用程序,查看实时指标。点击此处可查看所有支持项目

安装完成后界面如图所示,由于docker挂载宿主机较为复杂,建议使用自动安装。

Leave a Reply

召唤伊斯特瓦尔