我正在准备一台带有 8 个 1TB 磁盘的 Dell R520 PowerEdge 服务器作为数据存档/仓库(文件、RDBMS、NoSQL)服务器。开箱即用的 PERC H710P RAID 控制器配置了 3 个 2TB RAID6 虚拟磁盘。我的理解是 2TB 限制与 Windows“基本磁盘”(http://technet.microsoft.com/en-us/library/cc773268.aspx)有关。
我将安装 Debian 7.4 或 Ubuntu 12.04 LTS 作为操作系统。为简单起见,我想创建一个约 5TB 的分区用于数据存储。
是否建议创建一个跨越三个虚拟磁盘的大小的 LVM 分区?这会降低我从 RAID6 获得的有效 2 磁盘容差吗?或者在这样的多个磁盘上跨越 LVM 时是否存在性能问题?
或者,将虚拟磁盘删除并重新创建为一个大型 6TB RAID6 虚拟磁盘会更好吗?Debian 或 Ubuntu 是否也限制为 2TB?我相信曾经是这样的。还在吗?
2 TB 的限制与其说是 Windows 或 Linux 的限制,不如说是分区表计数器的限制。旧式 MBR 分区表使用 32 位计数器来寻址扇区并指定分区的长度。这将允许指定
512 * (2^32)
大小为 Bytes 的分区,即2 TB 限制。当然,您可能会遇到其他限制 - 旧的 RAID 控制器不允许您创建大于 2 TB 的卷,虚拟化解决方案可能限制为每个虚拟磁盘 2 TB,但如果您没有这些,我强烈建议您只需创建一个更大的逻辑磁盘并使用没有上述限制的GPT对其进行分区。几乎所有现代操作系统都支持 GPT,尽管有些工具可能不支持(如 Linux
fdisk
)。是否使用 LVM 完全取决于您自己的喜好,并且可能在很大程度上与您的情况下的逻辑驱动器大小无关。如果所有 LD 都跨越同一组磁盘,它也不会影响可用性。如果您决定扩大阵列(例如,通过将磁盘交换为更高容量的磁盘并使用控制器的在线容量扩展功能调整大小),LVM 具有增加复杂性的特定缺点。但由于它也是一个额外的存储抽象层,它带有一组你可能有一天会需要的不错的特性。