从静态到全栈 —— Project Dashboard 部署 + VPS Monitor 完善

三、VPS Monitor 完善

3.1 动态服务发现(已完成)

之前 VPS Monitor 的 Web 服务列表是硬编码的,删服务还要改代码。这次改成了多源扫描 + 配置驱动:

  • Docker 容器(docker ps)
  • PM2 进程(pm2 jlist)
  • 监听端口(ss -tlnp)
  • K8s NodePort(kubectl get svc)

配合 config/services.json 提供「美化信息」(名称、描述、分类)。

3.2 「公開ポート」改成 Tab 分组

原来「公開ポート」只显示端口号列表,看不出谁在用。现在改成 4 个 Tab:

Tab规则例子
🌐 公開0.0.0.0 且端口 ≥ 10243004、3003、6443
🔒 内部127.0.0.1 / Tailscale / IPv618789、10248-10259
⚙️ 系统端口 < 102422、80、111
❓ 不明其他(一般空)

每个端口显示「端口 + 服务名 + 监听地址」。K8s 端口也加了配置(k3s API、kubelet、kube-proxy 等),一眼看出谁在用。

3.3 RPM 和请求推移加时间范围

  • モデル別 RPM:加 [5分] [1時間] 切换
  • リクエスト推移:加 [30分] [1時間] [6時間] [24時間] 切换

3.4 服务列表和端口列表职责分离

在 config/services.json 加 type 字段:

{
  "port": 6443,
  "name": "k3s API Server",
  "type": "system",    ← 只在「公開ポート」显示
  "category": "k8s"
}

Web 服务(18 个)→ 只显示应用。公開ポート(31 个)→ 显示所有。职责清晰。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注