关于 aws-storage
aws-storage 是面向 AWS 用户的存储选型与运维指导技能,涵盖对象、文件、块存储及数据迁移和保护。它依据工作负载和成本因素帮助选择服务,并将深入的单项服务问题转给专门技能。
主要功能
- 01按工作负载比较 AWS 存储服务
- 02涵盖对象、文件和块存储
- 03指导成本与存储类别选择
- 04将运维问题转给专门技能
- 05支持 AWS MCP 服务或 AWS CLI
适用场景
- 01为新工作负载或迁移选择存储
- 02选择存储类别并降低存储成本
- 03查找存储配置或故障排查指导
- 04规划数据迁移、备份与保护
MCP 相关
可在有无 AWS MCP 服务的情况下使用。若该服务可用,技能建议用它核实最新规格和价格;相关指导也适用于 AWS CLI。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ aws/ agent-toolkit-for-aws --skill aws-storage安装后在 Claude Code 中输入/aws-storage确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/data-movement-and-protection-knowledge.mdebs-knowledge.mdefs-knowledge.mdfsx-lustre-knowledge.mdfsx-ontap-knowledge.mdfsx-openzfs-knowledge.mdfsx-windows-knowledge.mds3-express-knowledge.mds3-files-knowledge.mds3-general-purpose-knowledge.mds3-tables-knowledge.mds3-vectors-knowledge.md详细介绍
概述
此技能提供领域专业知识,帮助在 AWS 存储服务中进行选择、选择存储类别、优化成本,以及查找用于操作存储服务的资源。涵盖对象存储(S3 通用存储桶及其存储类别、目录存储桶上的 S3 Express One Zone、S3 Tables、S3 Vectors)、文件存储(Amazon EFS、S3 Files、FSx for Lustre、FSx for NetApp ONTAP、FSx for OpenZFS 和 FSx for Windows File Server)、块存储(EBS 卷类型和 EC2 实例存储),以及连接这些服务的数据移动和保护服务(DataSync、Storage Gateway、Transfer Family 和 AWS Backup)。本技能不提供有关数据库或分析查询引擎的建议。无论是否使用 AWS MCP 服务,本技能均可使用;若 AWS MCP 服务可用,建议使用 AWS MCP 服务 验证最新规格和定价,所有指导也适用于标准 AWS CLI。对于深入使用单项服务的任务,请转到下文“路由”部分列出的专用技能。
如何处理用户查询
触发此技能时,请对用户的请求进行分类,并遵循相应路径。
规则
无论采用哪条路径,所有回复均须遵循以下规则:
- 必须验证最新数据。AWS MCP 服务可用时,引用具体信息前请使用 search_documentation 和 read_documentation 交叉核对。引用费用时,必须附上相关定价页面的链接。引用性能指标时,必须附上相关产品页面的链接。否则,请通过链接的 AWS 文档页面核实,或使用 AWS CLI 确认当前值。如果参考文件要求查询文档以获取当前值,回答前必须从链接页面检索该值。不得以记忆中的数字代替,也不得用近似值或范围代替检索到的值。如果当前环境无法检索,请指出无法验证的具体值,不要引用记忆中的数值。
- 回答有关某项服务的问题前,必须从下文“路由”部分获取相关服务的参考文件。AWS 存储规格、限制和服务功能经常变化。不得仅凭记忆作答。回复中必须指出参考文件中的相关故障排查指导和“注意事项”。请根据工作负载的适配情况说明建议理由,不要提及参考文件是否“明确”指出某项服务适用于特定工作负载。
- 推荐服务或方案时,必须说明成本影响。不要等用户询问。比较服务时,不能只看存储费用;元数据费用等按对象收取的费用可能会显著影响总体拥有成本(TCO)。如需深入分析成本、监控或优化,超出存储选择范畴时,请转到
billing-and-cost-management技能。 - 提出建议时,必须明确用户需求。回答的具体程度应与请求的具体程度相匹配。如果查询已确定存储类别和相关服务,请检索信息并直接给出建议。如果查询信息不完整,必须说明建议所依据的假设和局限性,并列出有助于确认或调整建议的补充问题。只有在查询完全无法确定存储类别时,才应以追问代替建议。即使最适合该工作负载的服务不在本技能范围内,也应推荐该服务;同时提供相关的范围内选项作为替代方案。
步骤 1:判断意图
确定用户的需求:
| 意图 | 示例触发语 | 含义 |
|---|---|---|
| SELECT | “我应该用什么?”,“哪个服务?”,“比较服务 A 和服务 B”,“帮我选择”,“我想将 X 迁移到 AWS”(描述工作负载,但未指定服务) | 用户需要帮助选择存储服务或方案 |
| INVESTIGATE | “如何配置服务 X?”,“服务 Y 为什么失败?”,“服务 Z 有哪些限制?”,“如何开始使用服务 X?”(指定了某项服务,并询问操作问题) | 用户知道自己使用的是什么,需要入门、故障排查或运维方面的帮助 |
你必须遵循下方相应路径说明中的交互逻辑。
模糊情况:如果用户主要是在寻求建议,无论上下文如何,都属于 SELECT。如果用户需要帮助执行已知计划,则属于 INVESTIGATE。
步骤 2a:SELECT 路径
用户需要帮助做出选择。你必须使用以下决策因素来提供建议,并提出问题以补充会影响选择的信息。
决策因素:
| # | 决策因素 | 需要了解的内容 |
|---|---|---|
| 1 | 工作负载上下文 | 这是新工作负载,还是迁移现有工作负载?如果是迁移,源系统是什么(例如 NetApp、ZFS、Windows File Server、Lustre、GPFS 等)?哪些应用或工作负载会访问此存储?它们如何访问数据(API、文件协议、块设备)?客户端运行什么 OS 或平台?数据模型是什么(结构化/表格数据、向量嵌入、非结构化对象、文件系统)? |
| 2 | 容量和访问模式 | 数据量有多大?有多少文件或对象?典型大小是多少?访问模式是顺序还是随机?以读取为主、以写入为主,还是两者兼有? |
| 3 | 性能要求 | 是否有具体的延迟、吞吐量或 IOPS 要求?预期并发量是多少(同时访问的客户端或计算节点数量)? |
| 4 | 持久性和数据保护 | 恢复时间目标(RTO)是多少?恢复点目标(RPO)是多少?是否有合规性保留要求?是否需要跨区域韧性?是否需要不可变性? |
| 5 | 可用性 | 多可用区(Multi-AZ)还是单可用区(Single-AZ)可以接受?是否需要与特定计算资源共置? |
使用存储选项表来识别候选服务,而不是据此排除服务;与“常见工作负载”列中的关键词匹配,并非唯一的选择依据。你必须使用下方“路由”部分来获取每个候选服务的参考文件。
结合这些因素,推荐具体的 AWS 存储服务,并且:
- 你必须明确说明建议与用户已陈述需求之间的对应关系。
- 如果选择难以区分,或取决于尚未明确的信息,你必须提供备选方案并说明权衡。
步骤 2b:调查路径
用户了解自己的服务或方案,需要操作方面的帮助。
- 根据下表对问题领域进行分类,以确定哪些上下文信息重要。
| 问题领域 | 示例触发语 | 需要澄清的内容 |
|---|---|---|
| 迁移和数据传输 | “如何将数据迁移到 AWS?”,“设置 DataSync”,“将本地 NFS 同步到 EFS”,关于源和目标的问题 | 源系统和协议、目标服务、数据量、通往 AWS 的网络路径(Direct Connect、VPN、互联网) |
| 数据保护和弹性 | “设置备份”,“跨区域复制”,“我的灾难恢复策略是什么?”,“RTO 在 1 小时以内”,故障转移、不可变性 | 故障场景(删除、损坏、可用区/区域丢失、合规保留)、RTO 和 RPO 目标、复制范围(同区域、跨区域、跨账户) |
| 成本和生命周期 | “降低存储费用”,“调整卷大小”,“优化成本”,生命周期规则、分层决策、存储类别选择 | 当前服务和配置、访问频率(每天、每周、很少)、数据量和增长趋势 |
| 性能 | “读取速度很慢”,“吞吐量瓶颈”,“需要更多 IOPS”,容量规划 | 当前观测值与需求(延迟、IOPS 或吞吐量)、访问模式(随机/顺序、读写比例)、疑似瓶颈在存储还是计算/网络 |
| 安全和合规 | “静态加密”,“限制存储桶访问”,“满足 HIPAA 要求”,访问控制、合规框架 | 安全目标(限制访问、审计访问、加密、隔离网络、满足合规要求),如有,合规框架 |
| 配置和指导 | “在 EKS 上挂载 EFS”,“设置复制”,“服务 X 是否支持 Y?”,部署步骤、最佳实践 | 客户端环境(操作系统、计算类型、VPC/本地环境)、目标操作或功能 |
| 故障排查 | “遇到 AccessDenied 错误”,“挂载卡住”,“延迟意外飙升”,“为什么我的生命周期规则没有转换存储类别?” | 错误消息或症状、最近发生的变更、已尝试的操作 |
- 针对“需要澄清的内容”列中尚未在查询中提供的信息提出范围界定问题。如果缺少的信息不会改变指导,则在明确说明假设的前提下直接作答,无需等待更多问题。
- 对所有候选服务,必须从下方的路由部分检索参考文件。
- 提供具体、可执行的指导,指出注意事项,并附上文档链接。
- 回答配置或安全问题时,必须建议启用访问日志记录、CloudTrail 数据事件和 CloudWatch 指标,以便进行可观测性监控。
存储选项
此技能涵盖的 AWS 存储服务,按存储类别分组。有关存储类别的更多信息,请参阅块存储、文件存储和对象存储对比。
对象存储
| 服务 | 主要特征 | 常见工作负载 |
|---|---|---|
| S3 General Purpose | 几乎无限扩展的对象存储,提供多种存储类别,涵盖频繁访问到低成本归档;生命周期规则可将数据移至针对较少访问数据优化的低成本存储类别。支持区域级可用。可从任何位置通过 REST/HTTP API 访问。 | 数据湖与分析、备份和归档目标、ML 训练数据、媒体存储与内容分发、日志与事件数据、静态网站和应用资源、法规与合规归档 |
| S3 Express One Zone | 单可用区目录存储桶,针对频繁访问且对延迟敏感的数据进行优化,可实现个位数毫秒级延迟。 | 大规模 ML 训练与推理、Spark 和 EMR shuffle、ML 检查点、暂存数据和模型加载、ETL 中间数据、热分区交互式分析、可观测性与日志分析(热层)、Kafka 分层存储、媒体与视频编辑、高频事务访问、机器学习推理缓存 |
| S3 Tables | S3 上托管的 Apache Iceberg 表,具备自动压缩和查询优化功能。支持区域级可用。专为使用 SQL 引擎查询的结构化表格数据打造。 | 数据湖表、结构化分析数据、ETL 管道输出、将流数据写入表以进行 SQL 分析、迁移 S3 之外的开放表格式数据或 S3 上自托管的 Iceberg 数据 |
| S3 Vectors | S3 上的向量存储与相似性搜索,原生支持以经济高效的方式存储和查询向量嵌入。提供与 S3 General Purpose 存储桶相同的弹性、持久性和可用性。支持区域级可用。 | RAG 管道、语义搜索、推荐系统、向量去重与匹配、异常与欺诈检测、AI Agent 记忆、经济高效地存储大型向量数据集 |
| S3 Metadata | 可查询的对象元数据,采用完全托管的只读 Apache Iceberg 表,包括系统定义的详细信息、用户定义的元数据、对象标签和注释 | 商业分析、内容编目、数据治理与合规、存储优化、实时推理应用、AI Agent |
文件存储
命名服务时,必须始终注明完整名称(FSx for Lustre、FSx for Windows File Server、FSx for NetApp ONTAP 或 FSx for OpenZFS)。Lambda 和 Fargate 可以挂载 EFS 和 S3 Files。请查阅最新的 AWS 文档,确认无服务器计算还可以挂载哪些服务。无服务器计算和基于 S3 的管道可以通过 S3 Access Points for FSx 访问 FSx for NetApp ONTAP 和 FSx for OpenZFS 中的数据(无需复制即可通过 S3 API 公开文件数据;当用户需要通过 S3 原生使用方或分析服务读取存储在 FSx 中的数据时,请说明此功能)。
| 服务 | 主要特征 | 常见工作负载 |
|---|---|---|
| EFS | EFS Standard、EFS Infrequent Access(EFS IA)和 EFS Archive 存储类别,由 EFS Lifecycle Management 管理,以自动优化成本。无服务器弹性 NFS,无需规划或预置容量,可由 Lambda、Fargate、EC2、ECS 和 EKS 挂载。默认采用多可用区(Regional)或单可用区部署。为共享 Linux 文件访问提供最简单的方案,可在许多并发客户端之间实现高聚合吞吐量。 | 容器(ECS、EKS、Fargate)、云原生 Linux 应用程序、无服务器持久存储、分析和 ML 训练数据(包括 SageMaker)、大数据、媒体处理、内容管理、共享主目录、Web 服务、开发/测试、不常访问的文件数据 |
| FSx for Lustre | SSD 和 Intelligent-Tiering 存储类别,其中 Intelligent-Tiering 完全弹性,而 SSD 为固定容量。并行文件系统,可为跨多个计算节点的大规模并行访问提供极高的聚合吞吐量。 | 大规模 ML 和 GPU 训练与推理、高性能计算(HPC)、基因组学和地震数据处理、金融建模、媒体渲染、后端 EDA |
| FSx for OpenZFS | 除 SSD 外还提供 Intelligent-Tiering,并支持 ZFS 数据管理(即时可写克隆、快照、压缩、按需复制)。延迟极低、IOPS 高,易于运维且成本效益高,适用于对性能敏感的工作负载和快速开发/测试周期。支持单可用区和多可用区部署模式。可通过 S3 Access Points for FSx 使用 S3 API 访问。 | 数据库(包括在 EC2 上运行的数据库)、通过快速克隆进行开发/测试、ZFS 或 Linux-NFS 迁移、前端 EDA、金融建模、媒体处理、对延迟敏感的业务线应用程序 |
| FSx for NetApp ONTAP | 完整的 ONTAP 数据管理功能(SnapMirror 复制、FlexClone、重复数据删除、压缩、SnapLock WORM、QoS、vscan 防病毒、文件访问审计)。支持多协议:NFS、SMB、iSCSI、NVMe-over-TCP,并可通过 S3 Access Points for FSx 使用 S3 API 访问。可扩展至高聚合吞吐量和高 IOPS。支持单可用区和多可用区部署模式。 | 企业网络附加存储(NAS)迁移、多协议环境、通用文件共享和主目录、包括在 EC2 上运行的关键业务数据库(SAP HANA、Oracle、SQL Server)、VMware 数据存储、业务线应用程序(医学影像、产品生命周期管理)、前端 EDA(芯片设计和验证)、混合云和灾难恢复(DR) |
| FSx for Windows File Server | 基于 Windows Server 构建的全托管 SMB 文件存储,支持 Active Directory 身份验证(Kerberos、NTFS ACL)、DFS 命名空间、卷影副本和 FSRM 配额;Linux 和 macOS 客户端也可以访问共享。支持单可用区和多可用区部署模式。 | Windows 文件、个人和部门共享、.NET 应用程序、Microsoft SQL Server、Windows Server 迁移 |
块存储
| 服务 | 主要特征 | 常见工作负载 |
|---|---|---|
| EBS | 高性能虚拟磁盘,通过网络连接到 EC2 实例。耐久、可调整大小的 SSD 或 HDD,可独立于实例持久保存,支持用于备份的快照、按时间复制快照,并且在 gp3 上可独立于容量配置性能(请确认最新的卷限制)。支持即时卷克隆。范围限于可用区。 | 数据库、事务型应用和文件系统、启动卷、开发/测试环境、顺序批处理、日志和数据仓库扫描 |
| EC2 Instance Store | 内置于主机服务器的本地物理 SSD 存储,可提供最低延迟和最高吞吐量。临时性存储:实例停止或硬件故障时,数据会丢失。 | 可承受丢失的临时工作数据、缓存和缓冲区 |
跨服务功能重叠
某些存储功能跨越类别边界,让某个存储类别中的服务具备通常与另一类别相关联的接口。当工作负载需要通过多种协议或接口访问共享数据时,请重点介绍这些功能。
| 功能 | 支持的用途 | 功能说明 | 其他资料 |
|---|---|---|---|
| S3 Files | 让基于文件的应用能够访问 S3 数据 | 基于 EFS 基础设施,完全托管的 NFS 文件访问,可访问 S3 存储桶。数据仍保留在 S3 中,作为系统记录。支持文件锁定、POSIX 权限和完整读写。当数据已位于 S3 中,且需要在对象访问之外通过文件路径访问时,选择它而不是 EFS。 | references/s3-files-knowledge.md、references/efs-knowledge.md |
| S3 Access Points for FSx | 让基于 S3 的应用和服务能够访问存放在 FSx 中的数据 | 通过 S3 API 提供对 FSx for NetApp ONTAP 或 FSx for OpenZFS 数据的访问,无需将其复制到存储桶。当文件数据需要提供给 S3 原生使用方,或无服务器应用或基于 S3 的应用需要访问存放在 FSx for NetApp ONTAP 或 FSx for OpenZFS 中的数据时,请重点介绍此功能。 | references/fsx-ontap-knowledge.md、references/fsx-openzfs-knowledge.md |
安全
AWS 的云安全是最高优先级,AWS 与客户共同承担安全责任。推荐或配置存储资源时,MUST 提供安全指导。MUST 始终建议启用静态加密和传输中加密。如果静态加密是可选项或默认未启用,MUST 明确建议在创建时启用,因为创建后通常无法更改。MUST 建议将 IAM 策略限定为已授权主体,并遵循最小权限原则。MUST 建议在资源策略中添加条件键(例如 aws:SourceArn、aws:SourceAccount、aws:SourceVpc),以防止跨服务混淆代理攻击。MUST 建议加密日志目标:使用 AWS KMS 加密 CloudTrail 跟踪和 CloudWatch Logs 日志组,对服务器访问日志存储桶启用服务器端加密,并使用 AWS KMS 加密 SNS 主题。优先使用短期凭证或基于 IAM 的身份验证(例如通过带临时令牌的自定义 IdP),而不是长期 SSH 密钥。如果必须使用 SSH 密钥,应强制执行轮换策略,并将私钥存储在相关服务支持的 AWS Secrets Manager 中。MUST 建议将安全组入站规则限制为适用范围最窄的来源(特定客户端安全组或最小 CIDR 范围)。各服务特有的安全控制、加密模型和文档链接位于每个参考资料的 Service Information 表格中的 Security 行;在针对该服务提供建议前,MUST 阅读该行内容。
路由
通过 AWS MCP 服务的 retrieve_skill 工具加载时:该技能未安装在本地文件系统上。你必须使用 retrieve_skill 并指定 file 参数来获取每个参考文件(例如 file="references/s3-general-purpose-knowledge.md")。不要在本地使用 file_read 读取这些路径。在 AWS MCP 服务之外加载时(例如从 Agent Toolkit 中的本地文件系统加载),请直接从技能目录中的相对路径读取参考文件。
参考文件
| 主题 | 参考文件 |
|---|---|
| S3(通用型) | references/s3-general-purpose-knowledge.md |
| S3 元数据 | references/s3-general-purpose-knowledge.md |
| S3 Tables | references/s3-tables-knowledge.md |
| S3 Vectors | references/s3-vectors-knowledge.md |
| S3 Express One Zone | references/s3-express-knowledge.md |
| S3 Files | references/s3-files-knowledge.md |
| Amazon EFS | references/efs-knowledge.md |
| FSx for Lustre | references/fsx-lustre-knowledge.md |
| FSx for NetApp ONTAP | references/fsx-ontap-knowledge.md |
| FSx for OpenZFS | references/fsx-openzfs-knowledge.md |
| FSx for Windows File Server | references/fsx-windows-knowledge.md |
| Amazon EBS | references/ebs-knowledge.md |
| 数据迁移与保护(DataSync、Transfer Family、Storage Gateway、AWS Backup) | references/data-movement-and-protection-knowledge.md |
专用技能
| 主题 | 参考文件 |
|---|---|
| S3 安全 | securing-s3-buckets |
| 使用 S3 Tables | creating-data-lake-table |
| 使用 S3 Vectors | storing-and-querying-vectors |
| 排查 S3 Files 问题 | troubleshooting-s3-files |
| 排查 EFS 问题 | troubleshooting-efs |
| 查询 S3 系统表 | querying-aws-s3 |
| 将数据摄取到数据湖 | ingesting-into-data-lake |
| 查找数据湖资产 | finding-data-lake-assets |
| 查询数据湖 | querying-data-lake |