这是一个假设的问题,我只是评估应该以哪种方式为我的家庭服务器配置硬盘驱动器,为此我需要知道这一点:
假设我有一个配置了 mdadm 的 Raid5,并将生成的设备 md0 和 md1 放入 LVM 中以获得一个大的故障安全驱动器:
现在灰色的 1TB 驱动器崩溃了,由于 1TB 驱动器是最新技术已经有几年了,我想买一个 2TB 驱动器。
将这个新的 2TB 驱动器引入我的 Raid 系统的最佳方式是什么?当然,我可以用 2TB 驱动器替换损坏的 1TB 驱动器,但这样我就会浪费该驱动器中无法使用的 1TB 驱动器。是否可以缩小 md1 阵列并将新驱动器放入 md0 阵列中?
答案1
使用软件 RAID,您不必使用整个磁盘。
如果您有 3x2TB 和 3x1TB,并计划将来用 2TB 替换 1TB,则可以使用 1TB 成员。因此,RAID5(或者如果您更喜欢 RAID6)超过 6x1TB,RAID5 超过 3x1TB。因此 2TB 将由两个 RAID 共享。
当您淘汰 1TB 并添加 2TB 时,一个 RAID 将看到替换项,而另一个 RAID 将添加剩余的 1TB 作为新成员。
答案2
如果您仍处于设计阶段(即您尚未致力于 mdadm 和/或 lvm),那么我建议您认真考虑使用现代文件系统,例如Btrfs或者ZFS。
btrfs 内置于主线 Linux 内核中,zfs 可从zfsonlinux网站作为大多数 Linux 发行版的易于安装的内核模块或 dkms 软件包。还有一个用于 zfsonlinux 的 Ubuntu PPA。
ZFS 和 btrfs 都有出色且易于使用的工具来管理磁盘和磁盘组。它们还实现了错误检测和纠正(对于大型现代驱动器来说非常重要,因为统计上几乎可以保证错误)、子卷、快照(包括访问和/或回滚以前的版本),并且它们都具有非常有用的功能将完整或增量备份发送到另一台计算机的基于快照的方法(zfs 发送/接收和 btrfs 发送/接收)。两者都有许多其他功能和优点,此处无法一一列出。
ZFS 和 btrfs 相对于 lvm 的另一大优势是 lvm 逻辑卷具有固定大小(有点像虚拟磁盘分区),如果需要增大或缩小 lv 的大小,则必须采取特殊步骤(例如如果你犯了一个错误,给 /usr 分配了太多空间,而给 /var 分配了足够的空间,那么你需要做很多工作来解决这个问题)。使用 ZFS 和 btrfs,子卷更像是总空间中的软配额分配(带有可选保留),并且更改分配是一个微不足道的过程,不需要任何文件系统“杂耍”(备份/恢复/移动文件)。事实上,如果您不愿意,您甚至不需要为每个子卷设置配额 - 所有子卷都会愉快地共享可用空间的总池。
ZFS 具有池的概念,池由虚拟设备 (vdev) 组成,而虚拟设备又由物理设备(即磁盘)组成。使用 ZFS,您的驱动器可以配置为包含两个 vdev 的单个池,其中一个具有由 3x2TB 驱动器组成的 RAID-5 阵列,另一个由 3x1TB 驱动器组成的 RAID-5 阵列组成。 vdev 被条带化以组成池。 (顺便说一句,ZFS的raid5和raid6实际上并不是raid5或raid6,它只是工作原理非常相似。它被称为raid-z)
ZFS 的好处之一是您可以轻松替换 vdev 中的驱动器,当您使用更大的驱动器替换 vdev 中的所有驱动器时,额外的空间将自动用于存储。例如,如果您将一个或两个 3x1TB 驱动器替换为 2TB 驱动器,您将不会获得额外空间,但一旦您替换了第三个驱动器,您将立即获得额外空间。
您还可以随时添加另一个虚拟设备(即由一个或多个驱动器组成)。例如,您可以添加一对 3TB 或 4TB 驱动器。您可以替换 vdev 中的驱动器,但无法从池中删除 vdev - 如果需要这样做,唯一的方法是备份、销毁池并从头开始创建新池。
Btrfs 最近获得了实验性 raid-5/6 支持,并且多年来一直支持 raid-0/1/10。它在概念上与 zfs 完全不同,并且在某些方面它比 zfs 做得更好(例如,当您在 btrfs 文件系统中添加或更改驱动器时“重新平衡”驱动器之间的数据),但总体而言,它的功能比 zfs 少。最大的优点是它位于主线内核中,因此是标准的 - 保证可以在任何现代 Linux 系统上使用。
btrfs 对使用不同大小的驱动器具有特定支持,通过-d single
使用mkfs.btrfs
.看将 Btrfs 与多个设备一起使用了解详情。
答案3
当您更换 1 TB 驱动器时,将新的 2TB 驱动器添加到 md0,这将使其容量增加 2 TB。将 md1 从 raid5 转换为 raid10,这会将其容量减少 1 TB,从而让您充分享受替换磁盘上额外 1 TB 的好处。
作为替代方案,您可以将 md1 转换为 raid0,然后将 md1 添加到 md0。这将为您提供 1 TB 的更多可用空间,但故障风险稍高。