PICFLOW 图片社区的生产服务器(阿里云 ECS,40GB SSD,1.7GB 内存)已运行 122 天,各项服务稳定。为进一步掌握服务器健康状态,我们部署了一套轻量监控系统。

监控方案

采用 Node.js ssh2 库直连服务器执行命令,无需在服务器端安装任何 agent:

{Client}  →  SSH 密码认证  →  exec uptime/df/free/ps

对比传统方案:

方案 服务器端依赖 额外端口 安全性
本方案 (ssh2) 仅需 SSH 与 SSH 一致
Zabbix / Nagios 需安装 agent 需开放端口 攻击面大
Prometheus + node_exporter 需安装 exporter 需开放端口 需额外配置

实现细节

SSH 连接借助 npm 包 ssh2 实现密码认证,并在本地环境的 Claude Code 中注册了定时任务:

  • cron: 7-57/30 * * * *
  • 每 30 分钟自动抓取服务器状态
  • 报告内容包括:uptime、磁盘使用率、内存占用、Top 进程、监听端口

当前服务器状态

指标 数值
运行时间 122 天
CPU 负载 0.05 / 0.11 / 0.13
磁盘使用率 31%(26GB 空余)
可用内存 606MB
MySQL 内存占比 17.9%
主要服务 Nginx (80/443/6060), MySQL 8.0, Redis, PHP-FPM

服务器上还运行着宝塔面板(BT-Panel)方便日常管理,阿里云盾(AliYunDun)提供基础安全防护。

后续计划

  • 配置 SSH 密钥认证,不再依赖密码
  • 增加磁盘 IO 和网络带宽的周期性采集

Updated:

📝 本文由AI生成