针对 EBS 卷的大小和配置的限制 - Amazon EBS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

针对 EBS 卷的大小和配置的限制

Amazon EBS 卷的大小受块数据存储的物理和算术以及操作系统 (OS) 和文件系统设计者的实施决策的限制。 Amazon 对卷大小施加了额外的限制,以保障其服务的可靠性。

以下部分介绍了限制 EBS 卷的可用大小并提供配置 EBS 卷的建议的最重要因素。

存储容量

下表总结了 Amazon EBS 上的最常用文件系统的理论和实现存储容量(假定 4096 字节块大小)。

分区方案 最大可寻址块数 理论最大大小(块数 x 块大小) Ext4 实现的最大大小* XFS 实现的最大大小** NTFS 实现的最大大小 EBS 支持的最大大小
MBR 232 2 TiB 2 TiB 2 TiB 2 TiB 2 TiB
GPT 264

64 ZiB

1 EiB =

242 10TiB

(在 RHEL7 上认证的 50TiB)

500 TiB

(在 RHEL7 上认证)

256 TiB 64 TiB †

https://ext4.wiki.kernel.org/index.php/Ext4_Howtohttps://access.redhat.com/solutions/1532

** https://access.redhat.com/solutions/1532

io2 Block Express 卷最高支持 64TiB 的 GPT 分区。有关更多信息,请参阅 预调配 IOPS SSD(io2)Block Express 卷

服务限制

Amazon EBS 将数据中心的大规模分布式存储提取到虚拟硬盘中。对安装在 EC2 实例上的操作系统而言,附加的 EBS 卷似乎是包含 512 字节磁盘扇区的物理硬盘驱动器。操作系统通过其存储管理实用程序对数据块(或集群)分配到这些虚拟扇区进行管理。分配与卷分区方案(例如主启动记录 [MBR] 或 GUID 分区表 [GPT])一致,并且属于已安装文件系统(ext4、NTFS 等)的功能。

EBS 不知道其虚拟磁盘扇区中包含的数据;它只会确保扇区的完整性。这意味着 Amazon 操作和操作系统操作是相互独立的。在您选择卷大小时,请注意二者的功能和限制,如以下情况中所示:

  • EBS 当前支持最大卷大小 64 TiB。这意味着您可以创建一个大小为 64 TiB 的 EBS 卷,但操作系统是否能够识别该容量的全部取决于其自身的设计特征以及该卷的分区方式。

  • 启动卷必须使用 MBR 或 GPT 分区方案。您从中启动实例的 AMI 决定了启动模式以及随后用于启动卷的分区方案。

    使用 MBR 时,启动卷的大小限制为 2 TiB。

    使用 GPT 时,如与 GRUB2(Linux)或 UEFI 启动模式(Windows)配合使用,启动卷的大小最多可达 64 TiB。

    有关更多信息,请参阅 使 Amazon EBS 卷可供使用

  • 2 TiB(2048 GiB)或更大的非启动卷必须使用 GPT 分区表才能访问整个卷。

分区方案

除其他影响之外,分区方案还确定了可以在单个卷中唯一寻址的逻辑数据块的数量。有关更多信息,请参阅数据块大小。正在使用的常见分区方案是主启动记录(MBR)和 GUID 分区表(GPT)。这两个方案之间的重要差别可归纳如下。

MBR

MBR 使用 32 位数据结构来存储块地址。这意味着,每个数据块会映射到 232 个可能整数之一。卷的最大可寻址大小由以下公式给出:

232 × Block size

MBR 卷的块大小通常限制为 512 字节。因此:

232 × 512 bytes = 2 TiB

工程解决办法是提高 MBR 卷的这个 2 TiB 限制,但还没有被行业广泛采用。因此,Linux 和 Windows 永远不会检测到 MBR 体积大于 2 TiB, Amazon 即使显示其大小更大。

GPT

GPT 使用 64 位数据结构来存储块地址。这意味着,每个数据块会映射到 264 个可能整数之一。卷的最大可寻址大小由以下公式给出:

264 × Block size

GPT 卷的块大小通常限制为 4,096 字节。因此:

264 × 4,096 bytes
   = 264 × 212 bytes
   = 270 × 26 bytes
   = 64 ZiB

现实世界中的计算机系统不支持任何接近这个理论最大值的值。实施的文件系统大小目前上限为 50TiB(对于 ext4)和 256TiB(对于 NTFS)。

数据块大小

现代硬盘驱动器上的数据存储是通过逻辑块寻址 来管理的,逻辑块寻址是一个抽象层,它允许操作系统在逻辑块中读取和写入数据,而无需详细了解底层硬件。操作系统依赖存储设备将块映射到其物理扇区。EBS 将 512 字节的扇区公告给操作系统,操作系统使用数据块(是扇区大小的数倍)将数据读写到磁盘。

逻辑数据块的行业默认大小当前为 4096 字节(4 KiB)。由于某些工作负载受益于较小或较大的块大小,因此文件系统支持可在格式化期间指定的非默认块大小。应使用非默认块大小的情况不在本主题的范围之内,但块大小的选择会对卷的存储容量产生影响。下表显示了存储容量随不同块大小的变化:

块大小 最大卷大小
4KiB(默认) 16 TiB
8 KiB 32 TiB
16 KiB 64 TiB
32 KiB 128 TiB
64KiB(最大) 256 TiB

EBS 实施的卷大小限制(64TiB)目前等于 16KiB 数据块支持的最大大小。