介绍

ServerBee 是一个轻量级、高性能的 VPS 监控探针系统,使用现代 Rust 技术栈构建。

ServerBee 是一个轻量级、自托管的 VPS 监控探针系统,专为个人和小型团队的服务器监控需求而设计。它使用 Rust 全栈构建,兼具高性能和极低的资源占用。

ServerBee 是什么

ServerBee 由两个核心组件构成:

  • Server:部署在管理服务器上的控制中心,提供 Web 管理面板、数据存储、告警评估、后台任务和 API 接口
  • Agent:部署在每台被监控服务器上的轻量级采集程序,负责采集系统指标并实时上报,也可按授权执行探测、终端、文件、Docker 等操作

Agent 通过 WebSocket 与 Server 保持长连接,实现实时数据推送。所有数据存储在 SQLite 数据库中,无需安装外部数据库服务。

核心功能

实时监控与自定义仪表盘

通过 WebSocket 驱动的实时仪表盘查看所有服务器运行状态。支持 CPU、内存、磁盘、网络、负载、温度、GPU、磁盘 I/O、流量等指标,以及多仪表盘、多组件布局。

告警与服务监控

灵活的告警规则引擎支持资源阈值、流量周期、网络质量、离线、到期和 IP 变化事件,内置防抖逻辑和维护期抑制。服务监控支持 SSL 证书、DNS、HTTP 关键字、TCP 和 WHOIS 检查,并可通过 Webhook、Telegram、Bark、Email、APNs 等通知组发送告警。

Web 终端、远程任务与文件管理

通过浏览器在任意服务器上打开 PTY Shell,执行一次性命令,或调度带重试的 cron 任务。文件管理器提供受控的远程浏览、读取、编辑、上传和下载能力,配合路径沙箱和审计日志使用。

Ping、网络质量与 Traceroute

支持从多个 Agent 节点发起 ICMP、TCP、HTTP 探测,检测目标可用性、延迟和丢包,并提供图表、CSV 导出和预设网络目标。网络详情页还提供 Traceroute 排障能力。

Docker 管理

启用 Docker capability 后,可以查看容器列表、实时统计、生命周期事件、日志流、网络、卷,并执行容器操作。

公开状态页、主题和品牌

对外发布单个公开状态页(路径 /status,无需认证),可配置服务器范围、实时指标、90 天可用性时间线、可用性阈值、事件公告和维护窗口。外观设置支持预设/自定义 OKLCH 主题,以及白标站点标题、Logo、Favicon 和页脚文本。

VPS 成本洞察

录入每台服务器的价格和计费周期后,ServerBee 会把月度等价成本、消耗速率、单位资源成本、剩余天数等信号同时呈现在服务器列表、仪表盘服务器卡片以及服务器详情页的成本洞察面板,并给出客观的成本提醒(空闲烧钱、离线烧钱、账单过期、在线率偏低)。

OAuth 与移动端

支持通过 GitHub、Google 或任意通用 OIDC 提供商登录。iOS 客户端支持移动端会话、设备配对和推送通知。

完善的测试与 CI 把关

项目包含 3,800 项以上的自动化测试,其中的集成测试通过 mock-agent 测试桩,经由 HTTP 和 WebSocket 驱动真实的 Axum 路由。主 CI 工作流会把变更文件与基准提交对比,只针对变更涉及的领域运行零警告 Clippy、Rust 测试任务,以及前端和安装脚本检查。详见测试与质量。

技术栈

组件技术选型
ServerRust (Axum 0.8 + sea-orm + SQLite + tokio)
AgentRust (sysinfo + tokio-tungstenite)
FrontendReact 19 + Vite + TanStack Router + TanStack Query + Bklit charts + shadcn/ui
通信WebSocket(JSON 文本消息,终端数据 base64 编码)
数据库SQLite (WAL 模式)
部署单二进制 / Docker / 安装脚本

为什么选择 Rust

  • 高性能:Agent 冷启动约 4.3 MB、稳态约 27 MB(systemd cgroup);Server 生产环境通常 140–170 MB(已设置 MALLOC_ARENA_MAX=2),详见资源开销
  • 安全可靠:Rust 的内存安全保证消除了大量常见的运行时错误
  • 单二进制部署:Server 将前端静态资源通过 rust-embed 嵌入二进制文件,部署时只需一个可执行文件
  • 零依赖:无需安装 MySQL、Redis 等外部服务,SQLite 内嵌于程序中

工作原理

ServerBee 采用 hub-and-spoke(中心辐射)架构:

  1. Server 是中心节点:提供 Web 界面和 REST API,管理所有 WebSocket 连接,运行后台任务。
  2. Agent 跑在每台被监控的 VPS 上,每隔几秒采集并上报指标。
  3. 前端是嵌入 Server 二进制中的 React SPA,无需额外部署。

Agent 与 Server 之间的通信全部走 WebSocket(JSON 消息)。终端会话复用同一套 JSON 文本协议,PTY 原始字节流放在 base64 编码的 data 字段中传输。

快速链接