Amazon EBS 卷设计与运维 - gp3 和 io2 的选型标准与快照策略

明确 gp3 和 io2 的卷类型选型标准,介绍 IOPS 和吞吐量的设计指南以及基于快照的备份策略。

EBS 卷类型选型标准

EBS 有通用 SSD(gp3 / gp2)、预置 IOPS SSD(io2 / io2 Block Express 以及上一代的 io1)、吞吐量优化 HDD(st1)和冷 HDD(sc1)4 个类别。选型的起点是 gp3。gp3 基线提供 3,000 IOPS 和 125 MiB/s,无需额外费用,并可根据需要独立扩展至最大 80,000 IOPS 和 2,000 MiB/s(截至 2026 年 8 月)。但是,要提升到上限需要满足一定条件。追加 IOPS 可按每 1 GiB 卷大小 500 IOPS 的比例配置,达到最大的 80,000 IOPS 需要 160 GiB 以上的卷大小。追加吞吐量可按每 1 IOPS 预置 IOPS 0.25 MiB/s 的比例配置,达到最大的 2,000 MiB/s 需要 8,000 IOPS 以上(卷大小 16 GiB 以上)。如果手头仍保留着将 16,000 IOPS 和 1,000 MiB/s 写作 gp3 上限的设计指南,就有按现行上限重新审视的余地。gp2 的 IOPS 与卷大小成正比,要增加 IOPS 需要增大卷,而 gp3 消除了这一限制。io2 Block Express 面向数据库工作负载,单卷最高可达 256,000 IOPS。io2 / io2 Block Express 具备 99.999% 的设计耐久性(年故障率 0.001% 以下),比通用 SSD 的 99.8%~99.9% 高 1 个数量级。因此适用于 Oracle 或 SAP HANA 等关键任务工作负载。请注意,这是设计上的耐久性数值,并非服务等级协议(SLA)所保证的数值。st1 适合大数据和日志处理等以顺序读取为主的工作负载,以低成本提供最高 500 MiB/s 的吞吐量。

IOPS 与吞吐量设计

要估算 IOPS 需求,需要了解应用的 I/O 模式。数据库等随机 I/O 较多的工作负载以 IOPS 为瓶颈,ETL 和日志分析等顺序 I/O 以吞吐量为瓶颈。通过 CloudWatch 的 VolumeReadOps、VolumeWriteOps 指标测量实际 IOPS,如果 VolumeQueueLength 持续处于较高水平,则存在发生 I/O 等待的可能性,需要列为调查对象。(合适的值因卷类型和 I/O 大小而异,因此无法用单一阈值机械地判断。)在 gp3 上追加超出基线 3,000 IOPS 的部分时,每 1 IOPS 约产生 0.006 美元/月的费用(截至 2026 年 8 月,东京区域)。只要所需 IOPS 在 gp3 的上限之内,基本方针就是先在 gp3 一侧提升。考虑迁移到 io2 的情形是:需要超过 gp3 上限的 IOPS、要求 99.999% 的耐久性,或要求低于毫秒级的稳定低延迟。io2 的预置 IOPS 单价按用量分段计费。在东京区域,不超过 32,000 IOPS 的部分为每 1 IOPS 约 0.074 美元/月,32,001 IOPS 至 64,000 IOPS 的部分为约 0.0518 美元/月,超过 64,000 IOPS 的部分为约 0.0363 美元/月(截至 2026 年 8 月)。在第一个阶段,单价是 gp3 的 10 倍以上,因此准确估算真正需要的 IOPS 是成本优化的关键。

快照策略与备份设计

EBS 快照采用增量方式,仅将上次快照以来变更的块保存到 S3。首次复制全部数据,第 2 次起仅保存差异,因此存储成本和创建时间大幅减少。快照自动化使用 Amazon Data Lifecycle Manager(DLM)。通过 DLM 策略定义基于标签的计划,可自动化每日和每周快照的创建与代际管理。作为生产环境的配置示例,可以举出用 DLM 保留 7 代每日快照和 4 代每周快照的组合。保留代数应根据恢复目标(RPO / RTO)和合规要求来确定,因此请将这一数值视为起点。启用跨区域复制后,也能应对区域故障时的灾难恢复(DR)。Fast Snapshot Restore(FSR)是消除从快照恢复的卷在首次访问时产生的延迟惩罚的功能。对于数据库等无法容忍首次访问延迟的工作负载,建议启用 FSR。

EBS 费用

(截至 2026 年 8 月,东京区域(ap-northeast-1)的按需价格)gp3 每 GB 月费 0.096 美元,包含 3,000 IOPS 和 125 MiB/s 的吞吐量,无需额外费用。超出部分按每 1 IOPS 月费 0.006 美元、每 1 MiB/s 月费 0.048 美元追加。gp2 每 GB 月费 0.12 美元,因此同等容量下 gp3 便宜 20%,而且可以将 IOPS 和吞吐量与容量分开设置,这一点具有优势。io2 每 GB 月费 0.142 美元,另按预置 IOPS 计费,其单价按用量分段。(不超过 32,000 IOPS 的部分为每 1 IOPS 月费 0.074 美元,32,001 IOPS 至 64,000 IOPS 的部分为 0.0518 美元,超过 64,000 IOPS 的部分为 0.0363 美元。)HDD 类不收取 IOPS 费用,st1(吞吐量优化 HDD)每 GB 月费 0.054 美元,sc1(冷 HDD)为 0.018 美元。单价因区域而异,因此以上内容仅是东京区域内的对比,实际估算请通过所用区域的官方价格表确认。方针上以 gp3 为默认选择,仅在需要超过 gp3 上限的 IOPS 或 99.999% 的耐久性时才选择 io2。此外,盘点未挂载的卷和不再需要的快照也有效果(未使用的卷也会持续按容量计费)。

按工作负载选择卷

EBS 的卷类型应根据工作负载的特性来选择。多数一般用途适合使用成本与性能平衡良好的通用类型,其性能可独立调整,因此可以灵活使用。像数据库这样要求高 IOPS 和稳定低延迟的用途,适合使用能够保证性能的高性能类型。对于连续读写大文件等重视吞吐量的处理,应选择为此优化的类型。一律选择高性能类型会浪费成本,而性能不足则会导致处理停滞。重要的是看准工作负载所要求的性能特性来进行选型。

性能监控与卷的变更

在 EBS 的运维中,需监控卷的性能是否与实际工作负载相匹配。需测量 IOPS、吞吐量、延迟和队列的状况,确认性能是否已经触顶。性能不足,或者反过来过剩时,需调整卷的设置。EBS 可以在不停止运行的情况下变更大小、性能和类型,因此能够根据需求的变化灵活应对。不是一开始就过量配置,而是一边观察实际使用情况一边调整到合适的大小和性能,这样就能在保持性能的同时抑制成本浪费。

总结 - EBS 设计最佳实践

EBS 卷设计的基本方针是从 gp3 开始,通过 CloudWatch 指标实测,按需扩展。利用 gp3 可独立调整 IOPS 和吞吐量的灵活性,避免过度预置。通过 DLM 自动化快照,并使用跨区域复制为灾难恢复(DR)做准备。卷类型的变更可以在线执行,因此无需一开始就追求最优解,基于实测数据逐步优化的方法是有效的。

参考资料(AWS 官方)

本页的第一手信息来源是 AWS 官方网站及官方文档。最新的规格与价格请以下列官方页面为准。

如本页内容与官方文档不一致,请以官方文档为准。

分享