手把手教你零成本部署多服务器监控面板

26 次阅读 0 点赞 0 评论 7 分钟原创技术教程

本教程带你从零部署一套完整的多服务器监控系统。依托 Cloudflare 免费套餐,你将完成 Worker 后端搭建、跨平台探针安装及多渠道告警配置。无需额外购买服务器,即可实现实时监控、历史数据回看与离线通知,轻松掌控所有节点状态。

#服务器监控 #Cloudflare #免费工具 #运维自动化 #开源项目 #探针 #告警通知 #D1数据库
手把手教你零成本部署多服务器监控面板

零成本搭建多服务器监控面板:Cloudflare 实战教程

分散在多家云厂商的服务器需要逐一 SSH 登录查看负载,现成监控 SaaS 往往收费高昂或免费额度受限。利用 Cloudflare 免费套餐配合开源项目 CF-Server-Monitor,可以快速搭建一套功能完整的多服务器监控系统。后端完全运行在 Cloudflare 边缘网络,探针仅单向汇报数据,安全且低维护。

环境准备

部署前需准备以下条件:

  • Cloudflare 账号:用于托管 Worker 与 D1 数据库。
  • GitHub 账号:用于 Fork 仓库并触发 Actions 自动部署。
  • 目标服务器:Linux VPS、NAS、Windows 电脑或路由器,需具备公网访问能力。
  • 终端工具:用于粘贴并执行部署命令。

第一步:部署监控后端

推荐采用 GitHub Actions 自动部署,后续项目更新只需在 GitHub 点击 Sync fork 即可同步重构,无需反复操作控制台。

  1. Fork 仓库:打开 CF-Server-Monitor 页面,点击右上角 Fork 至个人账号。
  2. 创建 D1 数据库:登录 Cloudflare Dashboard,进入 Workers & Pages > D1 SQL Database,点击 Create database 创建库名(如 server-monitor-db),创建完成后记录数据库 ID。
  3. 获取凭证:返回首页复制 Account ID。进入 API Tokens 页面,选择 Edit Cloudflare Workers 模板创建 Token,按需限制资源范围后生成,务必立即保存。
  4. 配置 Secrets:在 Fork 仓库的 Settings > Secrets and variables > Actions 中添加四项密钥:
    • CF_API_TOKEN:上一步生成的 Token
    • CF_ACCOUNT_ID:Cloudflare 账户 ID
    • D1_DATABASE_ID:D1 数据库 UUID
    • API_SECRET:强密码(执行 python3 -c "import secrets; print(secrets.token_urlsafe(32))" 生成),该值同时作为 Agent 上报密钥与初始后台密码。
  5. 触发部署:切至 Actions 标签页,点击 Run workflow 运行 Deploy to Cloudflare Workers。出现绿色对勾即表示 Worker 已上线。

第二步:安装探针 Agent

  1. 登录管理后台:访问 https://你的 Worker 域名/admin#/admin,用户名 admin,密码为 API_SECRET。登录后务必在后台设置独立的管理员密码,将 API 密钥与管理凭证分离。
  2. 添加节点:进入服务器管理,填写名称并点击添加。点击复制按钮,按需切换目标系统(Linux/Docker/Windows/macOS/群晖等)获取一键安装命令。
  3. 执行安装:将命令粘贴至目标服务器终端执行。Linux 系统默认 60 秒上报一次,安装后以 cf-probe 服务运行。
bash 复制代码
## Linux 一键安装(参数已自动注入)
curl -fsSL https://raw.githubusercontent.com/huilang-me/cfsm-agent/main/install.sh | sh

## Docker 环境运行
docker run -d --name cf-probe --restart=unless-stopped --network=host \
  -v cf-probe-data:/data \
  -e SERVER_ID=<服务器ID> -e SECRET='<API_SECRET>' -e WORKER_URL=https://你的域名/update \
  ghcr.io/huilang-me/cfsm-agent:latest

推荐采用非 root 安装模式,探针文件存放于 ~/.cf-probe/,降低提权风险。普通用户安装后如需断网保持运行,执行 loginctl enable-linger 用户名 即可。Agent 启动后会根据 SERVER_ID 自动拉取上报间隔、Ping 节点等动态配置。

第三步:配置告警通知

监控核心价值在于异常及时触达。进入后台全局设置 > 通知渠道完成绑定。

  • Bark/Telegram/飞书等 IM:选择内置渠道,填入 Bot Token 或 Webhook 地址,点击发送测试验证回调格式。
  • SMTP 邮件:填写服务器、端口及账号密码。注意 Cloudflare 永久封禁 25 端口出站,需使用 465(隐式 TLS)或 587(STARTTLS),第三方邮箱必须使用授权码。
  • 告警规则:系统内置离线告警、到期前 1-7 天提醒,以及 CPU/内存/磁盘/上下行速率等负载阈值通知。节点掉线恢复后会自动发送恢复消息。

踩坑指南

  • 提示 API_SECRET is required:Worker 环境变量未生效。进入 Cloudflare 变量页面删除并重填,若遇缓存拦截,可先改为其他值保存再改回原值,强制触发 Worker 重新编译。
  • Agent 未上报数据:终端 ping Worker 域名 确认可达性。安装命令追加 -debug=1 查看实时日志,排查网络或鉴权问题后移除 debug 重新安装。国内节点建议绑定自定义域名,或临时修改 hosts 指向可用 Cloudflare CDN IP。
  • D1 额度担忧:默认支持约 60 台服务器。节点较多时将上报间隔调整为 120 秒,写入量直接减半。前端读取已做缓存与采样优化,常规使用极难触发上限。
  • 忘记后台密码:进入 Cloudflare D1 控制台,打开 setting 表,编辑 site_options 的 password 字段。可暂时替换为旧版兼容值 e10adc3949ba59abbe56e057f20f883e(对应密码 123456),登录后立即设置新密码。

完成与扩展

部署完成后,访问前台大盘即可查看所有节点实时状态、三网延迟与丢包率、7 天历史趋势及地图分布。后台外观设置支持自定义背景与 CSS,若第三方图片不显示,需在 CSP 白名单添加对应域名 origin。

基于这套零成本架构,后续可尝试将前端构建至 GitHub Pages 实现多站点聚合,或使用 Scriptable 编写 iOS 锁屏小组件。依托 Cloudflare 边缘计算与 D1 轻量数据库,个人开发者无需承担额外服务器成本,即可拥有生产级监控能力。

最后更新:2026-09-29T10:03:53

评论 (0)

发表评论

blog.comments.form.loading
0/500

暂无评论,快来发表第一条评论吧!