轻量级服务器监 Beszel

核心功能解析:从数据采集到智能预警

1. 多维度资源监控

基础指标:实时统计 CPU、内存、磁盘 I/O、网络带宽及温度数据。

Docker 容器细化:展示每个容器的资源消耗趋势,帮助优化容器配置。

历史数据分析:长期记录设备运行状态,便于回溯性能瓶颈。
2. 告警与通知

用户可自定义阈值(如 CPU 使用率超过 90%),触发告警后通过邮件或 Webhook 推送通知,确保问题及时处理。部分用户通过集成第三方服务(如钉钉、Slack),进一步扩展了告警渠道。

3. 安全与权限管理

OAuth2/OIDC 支持:兼容 Google、GitHub 等身份提供商,增强登录安全性。

多用户隔离:不同用户拥有独立视图,管理员可灵活分配权限。
4. 数据持久化与备份

支持本地存储或 S3 兼容云存储,自动备份监控数据,避免数据丢失。

技术架构:服务端与客户端的协同

Beszel 采用 Hub-Agent 分离式架构,兼顾灵活性与扩展性:

Hub(服务端):基于 PocketBase 构建,提供 Web 仪表盘,负责数据汇总与展示。用户通过浏览器访问 IP:8090 即可查看监控面板。

Agent(客户端):部署于被监控设备,通过轻量级 SSH 服务器采集系统指标并传输至 Hub。Agent 需访问 Docker 守护进程(/var/run/docker.sock)以获取容器数据。

安装部署

二进制安装

csharp 复制代码
#beszel安装
# 下载并运行Beszel服务端 https://github.com/henrygd/beszel/releases
wget https://github.com/henrygd/beszel/releases/download/v0.17.0/beszel_linux_amd64.tar.gz
tar zxf beszel_linux_amd64.tar.gz
nohup ./beszel serve --http 172.166.46.1:8090 &

#为了让Beszel开机自启,我们可以创建systemd服务文件:
# /etc/systemd/system/beszel.service
[Unit]
Description=Beszel Monitoring Server
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/data/beszel
ExecStart=/data/beszel/beszel serve --http 172.166.46.1:8090
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

登陆页面、创建用户,并创建KEY

csharp 复制代码
# 复制安装beszel-agent的命令后,直接到mysql服务器执行 #

或者使用二进制安装beszel-agent

csharp 复制代码
# 在被监控服务器上下载Agent
wget https://github.com/henrygd/beszel/releases/download/v0.17.0/beszel-agent_linux_amd64.tar.gz

tar zxf beszel-agent_linux_amd64.tar.gz
# 启动Agent
./beszel-agent --server http://your-beszel-server:8090 --key your-api-key

#这个key之还是需要在beszel页面上获取

docker安装

beszel安装

csharp 复制代码
services:
  beszel:
    image: 'henrygd/beszel'
    ports:
      - '8090:8090'
    volumes:
      - ./beszel_data:/beszel_data

登陆页面、创建用户,并查看KEY

beszel-agent安装

csharp 复制代码
services:
  beszel-agent:
    image: 'henrygd/beszel-agent'
    network_mode: host
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
    environment:
      PORT: 45876
      KEY: '从Hub获取的公钥'

KEY一样的需要在beszel页面上查看

监控与告警

告警值


选择你要告警的值

告警方式

配置步骤:

在"Settings > Notifications"添加通知渠道

邮件:smtp://user:pass@smtp.example.com:587

钉钉:dingtalk://access_token@webhook

企业微信:wecom://corpid@secret/agentid

csharp 复制代码
注意不同的告警方式有不同的写法
相关推荐
每日出拳老爷子21 小时前
【远程协助】内网 IT 运维远程协助系统的最小可用架构
运维·服务器·远程工作·流媒体·视音频
weixin_4624462321 小时前
使用 Puppeteer 设置 Cookies 并实现自动化分页操作:前端实战教程
运维·前端·自动化
CheungChunChiu21 小时前
Linux 内核动态打印机制详解
android·linux·服务器·前端·ubuntu
西***63471 天前
打破部署桎梏!编码器两大核心架构(NVR/PoE)深度解析
服务器·音视频·视频编解码
实战项目1 天前
软件测试自动化框架的设计与实现
运维·自动化
Aotman_1 天前
Element-UI Message Box弹窗 使用$confirm方法自定义模版内容,修改默认样式
linux·运维·前端
Elastic 中国社区官方博客1 天前
使用 Elastic 中的 OpenTelemetry 为 Nginx 实现端到端分布式追踪的实用指南
大数据·运维·分布式·elasticsearch·搜索引擎·信息可视化·全文检索
独自破碎E1 天前
配置ssh解决https不稳定的问题
运维·ssh
heartbeat..1 天前
零基础学 SQL:DQL/DML/DDL/DCL 核心知识点汇总(附带连接云服务器数据库教程)
java·服务器·数据库·sql
那些年的笔记1 天前
Linux屏幕旋转方法
linux·运维·服务器