存储集群管理工具

PowerScale MCP Server 是一款通过自然语言管理 PowerScale 存储集群的工具,提供健康检查、容量分析、配额管理、快照、复制、文件操作、NFS/SMB/S3 配置、用户管理等功能,简化了基础设施管理流程。

  • by j-sims
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 j-sims/isi_mcp_demo

使用说明

PowerScale MCP服务器

使用自然语言管理PowerScale存储群集。问问你的法学硕士客户:

  • “集群是否健康?”
  • “为10.0.0.0/24创建具有读写访问权限的/ifs/data/项目的NFS导出”
  • “将/if/home/jsmith上的配额增加50 GiB”

服务器将简明的英语翻译成集群操作,消除了手工编写Ansible脚本和API的复杂性。

为什么? 存储集群管理跨CLI、API和电子表格进行。此MCP(模型上下文协议)服务器抽象了这种摩擦,允许您通过对话管理基础设施,同时维护完整的合规审计跟踪。

包含内容: 41个功能组中的215个工具——健康检查、容量分析、配额、快照、复制、文件操作、NFS/SMB/S3配置、用户管理、性能指标和高级分析。所有操作都通过渲染的Ansible剧本进行审核。凭证经过加密,支持多集群管理——通过可选的 cluster_name 参数用于并行跨集群操作,或使用运行时集群切换用于顺序操作。两种控制模式:简单的工具切换或用于生产部署的细粒度Keycloak RBAC。

示例用法

快速检查

"Is the cluster healthy?"
"How much free space is on the cluster?"
"List all current snapshot schedules"
"Switch to the production cluster"
"Compare capacity usage across all clusters in parallel"
"Check health on prod, dr, and staging clusters simultaneously"

多步骤操作任务

"Create an /ifs/data/financial directory with ACLs for the Finance group,
set up SMB and NFS access, create a 5GB hard quota with 4GB soft quota,
schedule snapshots 4 times daily, and replicate to our DR cluster every 20 minutes"

"Set up home directories for 10 new contractors (contractor01-contractor10) with
individual SMB shares, 2GB quotas, daily snapshots, and add them all to the
contractors security group"

"Create a student lab environment: set up 10 student users with home dirs,
SMB shares, 2GB quotas, and daily snapshot schedules at noon"

报告和分析

"Generate a CSV of quota usage with a chargeback analysis at $0.30/MiB
and save it as ChargeBack-$(date).csv"

"Create a custom HTML report named PowerscaleSummary-$(date).html with
cluster health, capacity, quota usage, and replication status, formatted
as a dark-themed dashboard with tabs for each cluster"

"Generate a PCI compliance report comparing our cluster configuration against
current standards and highlight any risks or misconfigurations"

交互式引导设置

"I need storage for a new application. Walk me through the setup process,
asking me questions about capacity, performance, redundancy, and access
requirements, then configure the storage appropriately"

行政清理

"Remove all lab users, groups, home directories, quotas, and snapshot
schedules we created during testing so we can start fresh"

文档

  • 安装和设置 --初始设置、运行服务器和保管库凭据管理
  • 升级 --检查您的版本,与仓库进行比较,并升级
  • 集群和工具管理 --管理多个集群、运行时集群切换和动态工具组
  • 功能和工具 --完整的功能列表、工具组和详细的工具描述
  • 能力和功能 --可用的工具组和示例用例
  • 建筑 --系统设计、数据流和组件概述
  • 客户端集成 --连接Claude Desktop、Claude Code、Cursor和其他LLM客户端
  • 安全 --凭证管理、SSL/TLS和生产最佳实践
  • TLS证书 --自动生成开发证书,带来您自己的CA签名证书、轮换和客户端信任

快速开始

git clone <repo-url>
cd isi_mcp_demo
./setup.sh        # interactive — prompts for cluster host, credentials, vault password

服务器现在可以在 http://localhost/mcp。连接LLM客户端并开始管理集群。

常见的设置变体:

# HTTPS (recommended for non-localhost access)
./setup.sh --ssl true
# → https://localhost/mcp  (clients must trust nginx/certs/ca.crt — see Client Integration docs)

# HTTPS + OAuth authentication (production)
./setup.sh --ssl true --auth true
# → https://localhost/mcp  (MCP clients prompt for login via browser)

# Non-standard port
./setup.sh --ssl true --listen-port 8443
# → https://localhost:8443/mcp

看 安装和设置 获取包括所有部署模式的完整设置指南。

看 功能和工具 获取完整的功能列表、工具组和详细的工具描述。

系统要求

  • Docker和Docker Compose (两者 docker compose 插件v2和独立 docker-compose 支持v1)
  • 配备OneFS v9.12.0的PowerScale集群(仅测试了此版本)
  • 支持MCP协议的LLM客户端(Claude、Cursor、Windsurf等)

支持矩阵

组件 版本 状态 注释
PowerScale 9.12.0 已测试 只有此OneFS版本经过验证
python 3.12 必填 用于Docker镜像
isilon sdk >=0.7.0,<1.0.0 必需 PowerScale API客户端库
易熔铁芯 >=2.16.0,<3.0.0 必需 Ansible自动化框架
变速器 >=2.4.0,<3.0.0 必需 Python原生Ansible脚本执行
dellemc.powerscale 最新 必需 Dell PowerScale Ansible集合(自动安装)
快速多通道处理 >=2.0.0,<3.0.0 必需 MCP服务器框架
优维康 >=0.30.0,<1.0.0 必需 ASGI服务器
码头工人 20.10+ 推荐 用于集装箱化部署
Docker Compose 1.29+(v1)或2.x(插件) 推荐 支持独立和插件
Node.js 14+ 可选 适用于MCP客户端(克劳德代码,克劳德桌面)

版本策略:补丁版本(例如0.7.0→ 0.7.1) 自动兼容。主要/次要版本更改可能会引入突破性更改——在升级生产部署之前进行彻底测试。

项目状态

这是用于PowerScale集群自动化的MCP功能的概念验证演示。在非生产环境中使用,风险自负。该项目得到了积极维护,适合测试、学习和沙盒部署。对于生产使用,首先彻底验证临时集群中的所有操作。

支持

该项目由社区支持,并尽最大努力提供。对于问题、疑问或功能请求,请在 GitHub。请参阅上述文档以获取更多指导。