一句话答案
像 Hermes 这样的 AI 智能体,通过定时健康检查、读懂结果、自动修复简单问题,让 VPS 在故障被你察觉之前就被拦下(或已被修好)。
“VPS 健康”到底指什么
在自动化之前,先想清楚真正会坏的是什么:
| 指标 | 为什么重要 |
| --- | --- |
| CPU / 负载 | 失控的进程会悄悄拖垮其它一切 |
| 内存 | OOM(内存耗尽)会毫无征兆地杀掉服务 |
| 磁盘空间 | / 满了就停止写入、搞坏数据库、让部署失败 |
| 服务状态 | nginx、mysql 或 docker 悄悄退出 |
| HTTP 响应 | 服务器活着,但网站返回 500 |
| SSL 证书 | 一过期,浏览器就用警告吓跑每个访客 |
| 在线时长 / 重启 | 莫名重启,说明底层不稳定 |
监控面板是等你登录后才给你看这些;AI 智能体是按计划主动检查,并在你醒来前就采取行动。
老办法 vs. 智能体办法
老办法: 装一整套监控(Prometheus + Grafana + alertmanager),接好各种 exporter,配置告警路由——然后……直到真的出事之前,你从没打开过那个面板。
智能体办法: 把任务描述一次。智能体按计划通过 SSH 跑一段健康检查脚本,读取结果,判断是不是真有问题,然后要么自己修,要么在 Telegram 上带着准确诊断 ping 你。
不用再盯面板。智能体本身就是面板,而且用大白话跟你说话。
智能体是怎么做到的
像 Hermes 这样的智能体,运行在一台能 SSH 进 VPS 的主机上。三项能力撑起全部工作:
- 执行命令——跑 shell 命令,包括
ssh进远程服务器、对线上站点curl。 - 定时任务——每 15 分钟跑一次健康检查,永远运行,你不用记着它存在。
- 消息送达——把结果直接发到你的聊天软件,告警就落在你本就在用的地方。
智能体不替代你的监控工具,它消费那些工具的输出,并把它变成行动。
健康检查脚本
这是智能体实际运行的脚本。它通过 SSH 登入目标,拉取上面的各项指标:
#!/usr/bin/env bash
# health-check.sh —— 在智能体主机上运行,SSH 进入目标 VPS
set -u
HOST="${1:?用法: health-check.sh <host> <site>}"
SITE="${2:?用法: health-check.sh <host> <site>}"
SSH="ssh -o ConnectTimeout=10 -o BatchMode=yes $HOST"
remote=$($SSH bash -s <<'REMOTE'
echo "=== uptime ==="; uptime
echo "=== load ==="; cat /proc/loadavg
echo "=== memory ==="; free -m | head -2
echo "=== disk ==="; df -h / | tail -1
echo "=== services ==="; for s in nginx mysql docker; do
printf "%s: %s\n" "$s" "$(systemctl is-active $s 2>/dev/null || echo unknown)"
done
REMOTE
)
# 直接从智能体侧检查 HTTP
http_code=$(curl -s -o /dev/null -w "%{http_code}" "https://$SITE" --max-time 10)
# SSL 剩余天数
ssl_days=$(echo | openssl s_client -servername "$SITE" -connect "$SITE:443" 2>/dev/null \
| openssl x509 -noout -enddate 2>/dev/null \
| sed 's/notAfter=//' \
| xargs -I{} date -d {} +%s 2>/dev/null \
| awk -v now=$(date +%s) '{print int(($1-now)/86400)}')
printf "HOST: %s\n%s\nHTTP %s -> %s\nSSL 剩余天数: %s\n" \
"$HOST" "$remote" "$SITE" "$http_code" "$ssl_days"
把它当作 ./health-check.sh wesley-chong-2 bnext.my 运行,就能得到一屏完整的快照。
接成定时任务
根据你想让智能体“思考”多少,有两种模式:
模式 A——简单看门狗(只在红灯时告警)。 适合只想出问题时被 ping 一下。脚本输出原样送达:磁盘到 98%、HTTP 返回 500,你就收到消息;全绿则不打扰你。
模式 B——智能体分诊(智能响应)。 适合想让智能体判断甚至修复。它读取输出、推理根因、安全重启故障服务,并汇报它做了什么——而不只是告诉你“出事了”。
两个真实目标
wesley-chong-2(工作流主机): 这里跑智能体任务、构建和实验。风险在于长时间任务把资源吃光。定时巡检盯住 CPU 和磁盘,并在数据库、队列 worker 等副服务掉线时自动拉起。
bnext.my(商业站点): 这是直接产生收入的门面。HTTP 与 SSL 检查最重要——一个 500 或一张过期证书都会丢掉潜在客户。智能体从外部盯公开端点,而不是只看服务器内部,因此能抓到“服务器活着但网站坏了”这种内部检查发现不了的问题。
最佳实践
- 从外部检查,而不只是内部。 一个服务可能“active”却返回 500。永远
curl公开 URL。 - SSL 至少提前 14 天盯。 证书过期是最尴尬、也最容易预防的宕机。
- 让智能体修复,但要设边界。 自动重启服务可以;没有人在回路里,绝不要自动
rm -rf或重启主机。 - 安静是好事。 只在红灯时告警。全绿意味着任务跑过了、你什么也没听到。
- 脚本保持极简。 一段 20 行的 shell 脚本,胜过你以后永远不会碰的 200 行监控配置。
最终收益
部署好之后,问题从“服务器还好吗?”变成了“智能体已经处理了什么?”。多数早晨的答案是:要么啥也没坏,要么它自己修好并告诉你了。
这才是 AI 智能体驻守 VPS 真正的产物——不是一块面板,而是从不间断的关注。
如果你不想自己搭这套、却想让自家服务器也享受这种守护,这正是 bnextsolutions 所搭建的托管式 DevOps。



