前言¶
DeepSeek Harness (DSH) 的插件生态强调集成与即用性。在开发或运维场景中,查看服务器状态往往需要切换终端或打开独立监控面板。dsh-server-monitor 作为一个独立的只读监控插件,解决了在 DSH 侧边栏中直接查看 Linux 服务器资源与容器状态的需求。它拥有独立的 SSH 配置与凭证管理,不依赖 dsh-remote-workspace 等其他插件的连接设置。
插件介绍¶
该插件由 GooDAnDReaDY 维护,采用 MIT 许可证。它为 DSH 提供了一个可视化的服务器监控面板,支持 Linux、macOS、BSD 和 Windows OpenSSH 环境。插件会自动从目标主机采集系统与容器数据,并支持运行维护脚本与查看日志。
核心功能¶
SSH 服务器管理¶
支持添加和管理多种系统的 SSH 配置:
* 认证方式:支持 SSH 私钥(内联或服务器端路径)以及密码认证。
* 密钥生成:可在界面中直接生成 Ed25519 密钥对,生成后的私钥保存在 DSH 主机本地,公钥可复制到目标服务器使用。
* 配置导入:支持从 ~/.ssh/config 导入主机配置。
系统与容器监控¶
插件在侧边栏可见时会每 15 秒刷新一次数据,展示以下信息:
* 系统资源:主机信息、CPU、内存、Swap、磁盘使用率。
* 进程与网络:运行进程列表、网络接口与监听端口数据。
* 容器管理:针对 Docker 和 Podman 的状态卡片,支持启动、停止、重启操作,以及日志查看模态框。
* 活动趋势:以折线图形式展示过去一小时的资源活动趋势。
系统运维工具¶
- 日志查看:集成
journalctl,支持按单元和优先级(err..emerg)过滤,并提供一键“AI 分析诊断”导出功能。 - 维护手册:提供代码片段库和自定义脚本,支持跨服务器按标签(如
#prod)执行。 - 终端交互:提供基于 loopback xterm 的交互式终端会话。
安装与启用¶
在 DSH 的 web profile 环境下,执行以下命令安装插件:
dsh plugin --profile web add @goodandready/dsh-server-monitor
安装后,按照 CLI 提示添加服务器、选择认证方式并测试连接。安装完成后,在 DSH 侧边栏即可打开“Server Monitor”。
配置说明¶
轮询间隔¶
在插件设置卡片中,可以通过 pollIntervalSec 配置后台数据采集间隔。支持以下数值:
* 10、30、60、300(秒)。
* 其他数值将默认使用 30 秒。
SSH 配置项¶
插件管理独立的 SSH 配置文件,主要配置项如下:
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
host |
string | - | Linux 主机地址(DSH 可达) |
port |
number | 22 | SSH 端口 |
username |
string | root | 远程账户(建议使用受限权限) |
authType |
string | key | 认证类型:key 或 password |
privateKeyPath |
string | - | 可选的密钥路径(DSH 主机上) |
shell |
string | posix | Shell 类型:posix 或 powershell(用于 Windows) |
tags |
list | [] | 标签,用于过滤服务器列表 |
凭证与密钥存储¶
- 密钥路径:通过界面生成的 SSH 密钥会保存在
~/.dsh/keys/id_ed25519_dsh。 - 权限安全:在 POSIX 系统上,密钥目录权限为
0700,文件权限为0600。凭证存储在插件私有的 vault 中,绝不会写入 DSH 全局设置或返回给浏览器。
环境要求与注意事项¶
运行环境¶
- DSH Profile:需要安装了该插件的 DSH web profile。
- 网络可达:DSH 进程必须能通过 SSH 访问目标主机。
- 权限要求:远程账户需有运行只读系统命令的权限;查询 Docker/Podman 数据需相应权限。
- 依赖:运行时依赖
ssh2(v1.17.0 或更高版本)。
纯 JavaScript 实现¶
插件不需要在宿主机安装 C/C++ 编译器或 Python 构建工具链。虽然 ssh2 包含可选的原生加速模块,但插件具备纯 JavaScript 回退机制,在无原生构建工具的环境下也能正常运行。
离线环境¶
在断网或隔离环境中,通过 .tgz 安装时,确保 ssh2 及其传递依赖已存在于本地包管理器的存储中。
总结¶
dsh-server-monitor 为 DeepSeek Harness 提供了一套完整的、集成式的服务器监控与轻量运维方案。它通过独立的凭证管理和丰富的可视化组件,让用户在 DSH 界面内即可完成从资源查看到故障诊断的大部分工作。