From k8s-networking
规划 GPFS ECE 高性能文件存储的容量和性能。当用户提到 GPFS、ECE、Spectrum Scale、高性能文件系统、NVMe 存储规划、GPFS 容量计算、纠删码(EC8+2P、EC8+3P、EC4+2P)、GPFS 硬件配置、RoCE、InfiniBand 时使用此 skill。即使用户没有明确说"规划"或"计算",只要涉及 GPFS ECE 存储容量或性能相关的问题都应该触发此 skill。
How this skill is triggered — by the user, by Claude, or both
Slash command
/k8s-networking:gpfs-ece-plannerThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
帮助用户根据容量和性能需求,规划 GPFS ECE (Erasure Coding Edition) 高性能 NVMe 文件存储部署方案。自动生成多个满足需求的配置方案(不同服务器台数和 SSD 规格组合),展示每个方案的容量和性能指标,并给出推荐方案。
evals/evals.jsonreferences/TECHNICAL_SPECS.mdscripts/gpfs-ece-planner.jsscripts/test.jsworkspace/grade.pyworkspace/iteration-1/eval-1/eval_metadata.jsonworkspace/iteration-1/eval-1/with_skill/grading.jsonworkspace/iteration-1/eval-1/with_skill/outputs/gpfs-1pib-planning-result.txtworkspace/iteration-1/eval-1/with_skill/timing.jsonworkspace/iteration-1/eval-2/eval_metadata.jsonworkspace/iteration-1/eval-2/with_skill/grading.jsonworkspace/iteration-1/eval-2/with_skill/outputs/planning_result.txtworkspace/iteration-1/eval-2/with_skill/timing.jsonworkspace/iteration-1/eval-3/eval_metadata.jsonworkspace/iteration-1/eval-3/with_skill/grading.jsonworkspace/iteration-1/eval-3/with_skill/outputs/gpfs-2pib-ft2-planning-result.jsonworkspace/iteration-1/eval-3/with_skill/outputs/gpfs-2pib-ft2-planning-result.mdworkspace/iteration-1/eval-3/with_skill/timing.json帮助用户根据容量和性能需求,规划 GPFS ECE (Erasure Coding Edition) 高性能 NVMe 文件存储部署方案。自动生成多个满足需求的配置方案(不同服务器台数和 SSD 规格组合),展示每个方案的容量和性能指标,并给出推荐方案。
此 skill 使用 JavaScript 脚本 scripts/gpfs-ece-planner.js 进行核心计算,流程如下:
gpfs-ece-planner.js 脚本生成多个方案询问用户的容量需求,支持十进制和二进制单位:
始终向用户推荐使用二进制单位(TiB、PiB),因为它们与实际存储计算更匹配。
询问用户是否有性能需求:
带宽单位支持十进制(MB/s、GB/s)和二进制(MiB/s、GiB/s)。如果用户未提供性能需求,输出时优先使用十进制单位。
默认 800Gb(2 块双口 200Gb NIC)。用户可指定实际网络总带宽(如 400Gb)。
性能影响规则:
询问用户以下信息:
使用 Bash 工具调用 scripts/gpfs-ece-planner.js 脚本:
cd /Users/wutz/Projects/wutz/infra-skills/skills/gpfs-ece-planner
node scripts/gpfs-ece-planner.js --capacity "500TiB" [--read-bw "100GB/s"] [--write-bw "50GB/s"] [--read-iops "1000000"] [--write-iops "500000"] [--network-type roce] [--network-bandwidth 800] [--fault-tolerance 1] --json
参数说明:
--capacity:容量需求(必填)--read-bw:读带宽需求(可选)--write-bw:写带宽需求(可选)--read-iops:读 IOPS 需求(可选)--write-iops:写 IOPS 需求(可选)--network-type:网络类型(可选,默认 roce)--network-bandwidth:网络总带宽 Gb(可选,默认 800)--fault-tolerance:容错级别(可选,默认 1)--json:以 JSON 格式输出结果脚本会返回 JSON 格式的结果,包含:
solutions:所有满足需求的方案数组,每个方案包含:
solutionId:方案编号isRecommended:是否为推荐方案configuration:配置方案(服务器台数、纠删码方案、磁盘配置)capacity:可用容量performance:性能指标(读/写带宽和 IOPS)characteristics:方案特点描述recommendedSolution:推荐方案编号(通常是 1,即服务器台数最少的方案)使用表格格式展示所有方案的对比,包含方案特点,突出显示推荐方案。
=== GPFS ECE 高性能文件存储规划方案 ===
共找到 4 个满足需求的方案
| 方案 | 服务器台数 | 纠删码 | SSD配置 | 可用容量 | 读带宽 | 写带宽 | 读IOPS | 写IOPS | 方案特点 |
|------|-----------|--------|---------|----------|--------|--------|--------|--------|----------|
| **方案1 ⭐** | 5台 | EC8+2P | 24×15.36TB | 1.18 PiB | 259.73 GB/s | 111.62 GB/s | 1,125,000 | 1,125,000 | 最少服务器台数,初期投资最低;容忍1台服务器离线 |
| 方案2 | 9台 | EC8+2P | 24×7.68TB | 1.06 PiB | 444.06 GB/s | 200.91 GB/s | 2,025,000 | 2,025,000 | 性能与成本平衡;容忍1台服务器离线 |
| 方案3 | 10台 | EC8+2P | 24×7.68TB | 1.18 PiB | 486.89 GB/s | 223.23 GB/s | 2,250,000 | 2,250,000 | 最高性能;容忍2台服务器离线 |
每台服务器硬件配置: 处理器: 2 颗 Intel Xeon 6530 内存: 16 根 32GB DDR5 4800(共 512GB) 系统盘: 2 块 480GB SATA SSD 做 RAID1 存储网络: 2 块双口 200Gb RoCE NIC(共 800Gb) 管理网络: 1 块双口 25Gb 以太网卡 数据盘: 根据方案选择相应数量和规格的 NVMe SSD
推荐理由: 方案 1 使用最少的服务器台数(5台),在满足容量需求的同时提供了充足的性能,是最经济的选择。
## 重要说明
- 脚本支持 7.68TB、15.36TB NVMe SSD 规格
- 脚本会自动生成所有满足需求的方案组合(不同服务器台数和 SSD 规格)
- 推荐方案选择标准:服务器台数最少的方案(最经济)
- 如果所有方案都是 ft=1,会额外生成一个 ft=2 方案(容忍 2 台服务器离线)供用户选择
- 如果用户有特殊性能需求,可以从其他方案中选择性能更高的配置
- EC 方案由服务器台数自动确定:3台→EC4+2P、4台→EC8+3P、5+台→EC8+2P
- 每节点读带宽随节点数增加而递减(非线性),写带宽固定
- 输出单位与用户输入单位保持一致(二进制或十进制)
- 以太网性能为 RoCE/IB 的 30%(固定乘数,不随带宽变化)
- RoCE/IB 下非标准带宽仅影响 BW,不影响 IOPS
- ft=2 至少需要 10 台服务器,ft=3 至少需要 11 台
## 参考文档
详细的技术规格和计算公式请参考:[references/TECHNICAL_SPECS.md](references/TECHNICAL_SPECS.md)
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub wutz/infra-skills --plugin storage-skills