Node Information - 更美观的 Grafana 性能监控面板
## 前言一直以来都想做一个自己喜欢的面板,自从看到 [探针 Grafana + Prometheus 之比 Docker 更简单的部署流程](https://www.nodeseek.com/post-15265-1) 和 (https://www.nodeseek.com/post-75293-1) 这两篇帖子,便决定用 Grafana 来实现我的愿望,做出来了的同时也 push 上了 Grafana 的官网 (**(https://grafana.com/grafana/dashboards/22403-node-information/)**),大家可以方便地导入到自己的 Grafana 里^ ^
## 面板功能
这是一个基于 (https://grafana.com/),通过 (https://prometheus.io/docs/guides/node-exporter/) 和 (https://prometheus.io/) 来获取并收集被监控数据并投射的面板。主要功能有 **CPU / 内存 / 硬盘使用率**、**网络速率 / 粗略流量统计 / 重传率** 等信息的查看,其中通过各式图表得到几种不同的分析视角。上层板块是所有在线机器的总数据,下层折叠板块是选定机器更详细的资源信息。
图例如下:
!(https://s2.loli.net/2024/12/01/f8ZaUNvRsIP2HbS.jpg)
!(https://s2.loli.net/2024/12/01/qkmPdpe3uCGaBDH.jpg)
## 安装方式
### 1️⃣ Grafana (来自 Grafana.com) on Debian/Ubuntu [主机]
1. 安装必要的软件包
```
sudo apt-get install -y apt-transport-https software-properties-common wget
```
1. 载入 GPG 密钥
```
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
```
1. 选择稳定版
```
echo "deb https://apt.grafana.com stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
```
1. 安装
```
sudo apt-get update && sudo apt-get install grafana
```
1. 反代 可搜索相关教程
### 2️⃣ Prometheus [主机]
```
wget -qO- 'https://raw.githubusercontent.com/AhFeil/bash-script/main/install-prometheus.sh' | sudo bash
```
### 3️⃣ Node Exporter [主机 + 被监控机器]
```
wget -qO- 'https://raw.githubusercontent.com/AhFeil/bash-script/main/install-node_exporter.sh' | sudo bash
```
同时也推荐通过防火墙仅为监控服务器放行,命令参考(ufw):
```
sudo ufw allow from 监控服务器IP to any port 9100 comment 'node_exporter'
```
## 使用方式
参考 [探针 Grafana + Prometheus 之比 Docker 更简单的部署流程](https://www.nodeseek.com/post-15265-1),将面板ID
```
1860
```
改为我的
```
22403
```
/etc/prometheus/prometheus.yml 中添加名为 node_exporter 的 job,可参考:
```
- job_name: "node_exporter"
scrape_interval: 10s
static_configs:
- targets: ["IP1:9100"]
labels:
instance: '实例1'
- targets: ["IP2:9100"]
labels:
instance: '实例2'
```
限于篇幅,更详细教程请参考原帖,或自行搜寻
## 硬件要求 (个人经验)
10台机器在 1C / 1G内存 / 10G硬盘 的环境下堪堪够用,如果需要监控更多机器,需考虑更高的主机配置
## 已知问题
1. 网络速率和流量统计限定了 eth.* ens.* 等五个常见接口来统计出入站数据,可能会有部分机器(比如一些 AWS)的网络接口不在我的收集范围内,从而显示不出一些网络数据,之后我想好该怎么限定(或者要不要限定)后会更新,也欢迎大佬建议
2. "provide" 不是正确的第三人称单数...
## 其他面板
本帖的 Node Information 是我目前唯一"算是"完整制作好的面板,也许会有一些 bug 以及不完善的地方,大家如果使用过程中遇到了,也欢迎告诉我。感兴趣的伙伴也关注一下 Grafana 面板,目前已知能做且比较现成的还有延迟测试和流媒体解锁测试的功能,或许 Grafana 就这么流行起来了呢?我自己还在弄用 Fping Exporter 来记录延迟的面板,以及本面板的中文版本,满意了会再发布~
页:
[1]