在决定使用 LVM 卷组还是 ZFS 池来配置新的文件服务器时,需要考虑什么?在多用途文件服务器领域是否有“更好”的选择?与之前的不同问题,我不想对技术进行分层。
设想:
- RHEL / CentOS 6 x64 服务器
- 许多可用的、相同的 DAS 和 SAN LUN
选择:
我个人对 LVM 非常熟悉,因此如果它是更好的选择,我会很乐意使用它。不过,ZFS 看起来非常有前途,学习新技术总是好的。
鉴于我们希望能够将一个相当大的存储(多个 TB)共享给不同的部门,并且他们需要能够通过 CIFS 和 NFS 访问它们,我们是否应该使用 ZFS 或 LVM 作为底层池管理器?
我知道使用类似的产品FreeNAS是可能的,但由于各种原因,我需要能够将其推广到“典型”的 Linux 服务器上。
答案1
我两者都用,但更喜欢 ZFS。Linux 上的 ZFS 已经非常对我来说很好,但它不是能解决所有情况的“万能药”。
典型的服务器看起来如下:
(请记住,我通常使用硬件 RAID 并且主要使用 ZFS 作为灵活的卷管理器)
- 具有由底层磁盘组成的逻辑卷的硬件 RAID。该阵列将被划分为一个小型操作系统卷(显示为块设备),然后进行分区(/、/usr、/var 等)。
- 剩余空间将提供另一个块设备作为 ZFS zpool 使用。
Smart Array P420i in Slot 0 (Embedded) (sn: 001438029619AC0) array A (SAS, Unused Space: 1238353 MB) logicaldrive 1 (72.0 GB, RAID 1+0, OK) logicaldrive 2 (800.0 GB, RAID 1+0, OK) physicaldrive 1I:2:1 (port 1I:box 2:bay 1, SAS, 900.1 GB, OK) physicaldrive 1I:2:2 (port 1I:box 2:bay 2, SAS, 900.1 GB, OK) physicaldrive 1I:2:3 (port 1I:box 2:bay 3, SAS, 900.1 GB, OK) physicaldrive 1I:2:4 (port 1I:box 2:bay 4, SAS, 900.1 GB, OK)
然后我使用 zpool 并根据需要创建额外的 ZFS 文件系统(或挂载点)和 zvols。
# zpool list -v vol1
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
vol1 796G 245G 551G 30% 1.00x ONLINE -
wwn-0x600508b1001c4d9ea960806c1becebeb 796G 245G 551G -
还有文件系统...
# zfs list
NAME USED AVAIL REFER MOUNTPOINT
vol1 245G 539G 136K /vol1
vol1/images 245G 539G 245G /images
vol1/mdmarra 100G 539G 100G /growlr_pix
因此,使用 ZFS 进行数据分区非常好,因为它允许您处理数据池、设置配额并在挂载点粒度管理属性。LVM 仍然需要处理文件系统工具,并且更加严格。