在本系列的上一篇博文中,我们讨论了 MinIO AIStor 的模型上下文协议 (MCP) 服务器的基本用户级功能。我们学习了如何使用人类语言命令查看存储桶的内容、分析对象并标记它们以便将来处理,以及如何通过 LLM(例如 Anthropic Claude)与集群进行简单的交互。
在本博客中,我们将学习如何使用相同的方法来补充 AIStor 管理功能,例如获取有关集群状态和健康状况的信息、分析数据分布以及其他任务。
经验丰富的 MinIO 系统管理员不惧怕命令行。他们可以轻松地使用mc admin命令来管理集群。使用 LLM 和 MCP 服务器可以为他们带来哪些经验?LLM 擅长汇总大量信息,并且可以将我们从集群中获取的信息格式化为易于理解的方式。
不太高级的用户如果也需要有关集群状态的信息,可以使用 LLM 功能来获得问题的简单答案,而不必致电管理员。
AIStor 集群管理员信息
当我们想要获取集群的管理信息时,我们会运行mc admin命令。通常,它们会提供节点和磁盘的列表,以及它们的健康状况和利用率信息。如果我们向 LLM 提出同样的问题会怎样?
以下是 MCP 服务器与 Claude 合作的总结。
现在,假设您是这个集群的管理员,而您的老板正在询问您集群的状态。与命令行输出相比,您是否更愿意展示这份报告?
即使这些信息对你的老板来说太多了,你也可以要求一份更短的报告。只需一个提示即可。
答案是:
这在目前的命令行或 UI 工具中是难以想象的。拥有如此简洁的集群健康状况摘要至关重要。我们甚至得到了 Claude 的推荐。
除了健康状态之外,我们还要询问可用空间和整体数据分布情况。当然,您可以通过分析命令的输出来获取这些信息mc admin info --json,但 LLM 或许也能做到?
哇,这太有用了!Claude 提供了每个桶的总大小、对象数量及其特征。你注意到它创建的漂亮表格了吗?手动创建它得花上一整天的时间。
如果我们要求创建饼图怎么办?Claude 能做到吗?
它确实做到了!
我们来求一下聚类图吧。
对象版本控制
对象存储生命周期管理的一项基本功能是版本控制,即每次写入对象都会被存储为一个唯一的对象。版本控制通常默认不启用。假设您是一位数据科学家,不记得检查存储桶是否启用版本控制的具体命令。您可以使用通俗易懂的语言来提问:
这很好地提醒了我们版本控制的重要性,尤其是对于缺乏经验的集群管理员和权限较低的用户来说。那么另一个存储桶呢?
这又一次很好地解释了为什么版本控制如此重要,以及为什么这个存储桶可能禁用了版本控制。与其询问集群管理员,不如也为这个存储桶启用版本控制。我们不记得具体命令了,但应该没问题。
我们没有指定要在哪个存储桶上启用版本控制,但 Claude 记住了对话的上下文并采取了正确的行动。
信息生命周期管理 (ILM)
您还可以使用人类语言请求来获取有关生命周期管理配置的信息,例如保留对象版本的规则和删除限制。
以下是摘要。
再次强调,Claude 不仅提供了基本信息(也就是我们期望从命令行或 UI 工具中获取的信息),还解释了其含义。这正是 MCP 服务器作为传统命令行管理的补充所展现的亮点——它提供了上下文和指导,从而简化和加速任务的执行。
安全注意事项
安全性通常是关于 MCP 服务器的首要问题之一。如果我们允许它们访问我们的文件系统、数据库和对象存储,该如何控制它们的功能?
我们在 AIStor MCP 服务器的多个层面上实现了这一点。首先,服务器默认以只读模式启动。其次,我们为 MCP 服务器添加了特殊标志,以赋予其更多功能。用户可以添加以下标志:–allow-write、–allow-delete和–allow-admin。如果没有这些标志,某些功能甚至对 LLM 都无法显示。LLM 甚至不知道服务器可以删除对象或获取集群信息。
此外,所有对象存储权限均适用。我们建议为此服务器创建一个单独的帐户,并创建一个仅允许必要操作的安全配置文件。我们建议首先以只读模式使用该服务器,主要用于汇总存储桶和对象。如果需要管理员级别的信息,请使用diagnostics每个集群中默认存在的配置文件。
结论
与 LLM 功能结合使用时,MCP 服务器将为 AIStor 的管理和用户体验增添新功能。它将复杂的命令行输出转换为人性化的摘要,为集群状态查询提供简洁的答案,并生成饼图和图表等可视化辅助工具。这种方法使管理员和普通用户能够快速、直观地了解其集群的运行状况、数据分布和对象管理。
此外,整合法学硕士 (LLM) 是一种有价值的学习工具,可以在提供信息检索的同时提供解释和背景。
安全性通过多层级设计实现,包括默认只读模式和用于授予额外功能的特定标志,确保对管理功能的访问控制和安全。因此,MCP 服务器提供了一种强大且直观的方式来管理和理解 AIStor 集群,使其成为任何组织的宝贵资产。