技能简介
通过GraphQL API连接Unraid服务器,获取27个只读端点的数据,覆盖系统运行状态、磁盘温度与健康、存储阵列、网络共享、Docker容器、虚拟机和系统日志等信息。
业务背景
运维团队可实时掌握Unraid服务器健康状态,无需登录后台即可快速排查系统异常。通过统一监控面板查看CPU内存负载、磁盘温度及阵列完整性,提前发现硬件风险;同时追踪Docker容器与虚拟机运行状况,减少服务中断时间,提升IT基础设施的可视化管理效率。
落地案例:某技术团队管理多台Unraid存储服务器,每日需人工登录各台设备检查磁盘健康。接入该工具后,设置定时查询获取所有服务器的SMART状态、阵列校验进度及未读警报,异常情况自动推送通知。运维人员从被动救火转为主动预防,大幅缩短故障响应周期。
能做什么
- 检测服务器在线状态与CPU/内存实时使用率
- 查看磁盘温度、SMART健康度和阵列校验进度
- 列出网络共享文件夹及其配置
- 获取Docker容器和虚拟机的运行状态
- 读取系统日志文件内容
- 汇总未读通知数量(信息/警告/警报)
使用说明
1. 安装与配置
# 克隆技能仓库
git clone https://github.com/openclaw/skills.git
cd skills/jmagar/unraid
# 设置环境变量
export UNRAID_URL="https://your-unraid-server/graphql"
export UNRAID_API_KEY="your-api-key"
获取API密钥路径:Unraid Web界面 → Settings → Management Access → API Keys → Create(选择”Viewer”只读角色)。
2. 基础查询
# 检查服务器是否在线
./scripts/unraid-query.sh -q "{ online }"
# 获取CPU和内存使用率
./scripts/unraid-query.sh -q "{ metrics { cpu { percentTotal } memory { used total percentTotal } } }"
# 完整系统仪表盘
./scripts/dashboard.sh
3. 常用场景
# 磁盘健康与温度
./examples/disk-health.sh
# 阵列状态与校验进度
./scripts/unraid-query.sh -q "{ array { state parityCheckStatus { status progress errors } } }"
# 读取最近20条系统日志
./examples/read-logs.sh syslog 20
# 列出所有Docker容器
./scripts/unraid-query.sh -q "{ docker { containers { names image state status } } }"
# 列出所有虚拟机
./scripts/unraid-query.sh -q "{ vms { name state cpus memory } }"
4. 输出格式控制
-f json # 原始JSON(默认)
-f pretty # 格式化JSON
-f raw # 仅返回数据,无包装层
输入与输出
见下方输入与输出表格。
| 项目 | 内容 |
|---|---|
| 输入 | Unraid服务器URL、API密钥(Viewer角色)、GraphQL查询语句、可选格式参数(json/pretty/raw) |
| 输出 | 服务器在线状态、CPU/内存/磁盘实时指标、阵列状态、共享文件夹、Docker容器、虚拟机、日志内容、通知概览 |
| 适用人群 | Unraid NAS管理员、家庭服务器运维人员、远程监控NAS状态的开发者、IT基础设施运维 |
| 不包含 | 写入修改配置、Docker容器实时日志、虚拟机控制台、API密钥自动轮换、多因素认证 |
风险提示
- API密钥需妥善保管,避免泄露导致未授权访问
- 该技能仅支持只读操作,无法修改服务器配置
- Docker容器输出日志无法通过API获取,需SSH登录后执行docker logs
- 依赖Unraid 7.2+版本,旧版本可能不兼容GraphQL端点
- 网络不稳定时可能导致查询超时或连接失败
来源信息
原始链接:https://github.com/openclaw/skills/tree/main/skills/jmagar/unraid/SKILL.md
来源类型:GitHub开源项目
常见问题
Q1:Unraid服务器监控 适合哪些场景?
A:适合需要「通过GraphQL API连接Unraid服务器,获取27个只读端点的数」的场景,尤其是希望快速验证并落地的团队与个人。
Q2:第一次使用应该先做什么?
A:先明确目标任务,再按照页面中的“能做什么”和“使用说明”完成最小可行流程。
Q3:如何判断是否值得长期使用?
A:建议连续使用 1-2 周,对比效率、稳定性和协作成本,再决定是否纳入长期工具栈。
