好吧,我希望这个问题足够独特,不会被视为另一个“LVM 和 RAID 之间有什么区别?” 问题。开始...
我正在设置一个 linux 服务器,它有一个驱动器笼,可以让我热插拔大约 6 个驱动器。我追求的特点是:
如果我只是希望能够用较小的更换驱动器,以增加空间,我可以只使用LVM与lvreduce(提供的,当然,我使用的是热收缩FS像赖泽或EXT [2-4],也使当前 FS 可以通过我想要拉的驱动器的数量缩小)。但这并没有给我任何冗余。
我能想到的第一个同时获得冗余和更换驱动器能力的解决方案是将驱动器用作镜像对。一对将是 md0,下一对将是 md1,等等。然后,我会将它们添加到单个卷组中。当我想增加空间时,我会从卷组中减少一个 md* 设备,拉出两个驱动器,添加两个更大的驱动器,制作一个新的 md 镜像,然后将它们添加到卷组中,展开FS,我完成了。
但这使我的空间效率降低到 50%,因为每个物理驱动器都有自己的镜像。我只有 3TB ......这会让我需要尽快更换更大的驱动器。
当然,我可以将它们插入为 3 驱动器 RAID5 组,而不是镜像对。每 3 个驱动器会给我 2TB。所以,我总共有 4TB,但现在我遇到了一个问题,为了从卷组中拉出一个 md 设备,它需要更多的空间(拉出一个需要 2TB 而不是1TB)。这意味着我将在 FS 中需要更多的空闲空间,否则我无法像这样交换驱动器。
所以,这就是我被困的地方。我所知道的通过异构驱动器大小和在线驱动器更换获得冗余的唯一方法要求我在更高的空间效率和更高的空闲空间要求之间做出权衡决定,以便拉出一个驱动器(或一组驱动器) )。
有什么我遗漏的聪明技巧吗?
一种解决方案是依赖 ZFS 作为文件系统。然而,它对于 Solaris 和多个 BSD 变体来说很常见,因此在 Linux 上没有必要。一种可能的解决方案是在 Debian/kFreeBSD 变体中使用 Debian,这意味着带有 GNU 用户空间的 BSD 内核。
ZFS 非常适合从 ZFS 池动态分配存储。对于 6 个驱动器,您可以使用一个 RAID-2Z,这意味着 6 个驱动器中的两个可能会出现故障。但付出的代价是您只能使用 4 个驱动器对应的磁盘空间。还有其他可能性,因为在 ZFS 中,根据哪个驱动器配置构建池并不重要。
看一眼
归档时间: |
|
查看次数: |
861 次 |
最近记录: |