对于操作系统的安装,应用等
将一张磁盘分配给JHFS +。
如果限于两块磁盘,而一块是硬盘,请使用该硬盘。
为了确保用户数据的完整性
将至少另一个磁盘提供给ZFS。
为什么不使用HFS Plus?
一项简短的HFS测试(@jolly的DIY Fusion Drive名望命令行演示)展示了HFS Plus在一种情况下的故障。
在其他情况下:数据损坏可能不会引起注意,并且会通过所有备份传播到无法恢复的地步。
诸如Disk Utility和Alsoft DiskWarrior(这是HFS Plus的本质)之类的实用程序可能无法检测到此类损坏。对最终用户的影响范围从细微到极端。如果没有对损坏的文件的肯定识别,那么很难找出问题的根源。
为什么选择ZFS?
例见接受的答案在服务器故障,问题ZFS数据丢失的情况 -
… 我从未使用ZFS丢失数据。
我已经经历了一切...
如果磁盘硬(旋转)
避免混合使用包含HFS Plus的文件系统:
由于HFS +对所有元数据更新(通过I / O持有)具有单个全局锁,因此它对磁盘延迟非常敏感。…
(我目前在Seagate Momentus®XT ST750LX003-1AC154固态混合硬盘上使用的JHFS +和ZFS –内置于具有8 GB内存的MacBookPro5,2内–足够好,但如果在单个磁盘上没有这种混合,性能可能会更好。)
具有三个或更多磁盘,仅一个固态硬盘和山狮
将一片SSD分配给CoreStorage LVG,然后将其与JHFS +启动卷合并。目的:类似Fusion Drive的行为。
给SSD的不同切片到ZFS。要么:
- 简单地
zpool add poolname cache /dev/disknslicen
或
- 将切片提供给CoreStorage,然后将该CoreStorage添加到您的ZFS池中。
通过级别2的自适应替换缓存,可以很好地建立方法(1),以提高性能。Brendan的博客»L2ARC屏幕截图 (2009-01-30)提醒我们,重新启动操作系统会导致L2ARC变冷,并且:
我们还在研究持久性L2ARC,因此,如果服务器重新启动,它可以开始热启动,将来的更新中将可用。
方法(2)旨在将自动分层功能引入ZFS,而无需在重新启动时进行冷处理。例行检查数据完整性(scrub
)可能会将数据从高性能层降级……如果这样,我想知道另一个例程是否可以减轻降级的影响 -增量zfs send
…(备份)应从ZFS池中读取最近写入的块; 因此,CoreStorage应该将事物提升到首选层。
多个池共享一个SSD
服务器故障中问题的可接受答案如下:
出于数据完整性和性能的考虑,在池之间共享SSD不是一个好主意。…
但是,该问题的主题是ZFS-如何将SSD分区以供ZIL或L2ARC使用? (2011-02-22)–早于ZEVO,Fusion Drive等。在ZEVO抵御不合时宜地丢失L2ARC的情况下 (2012-11-04)我的最初猜测是,多个池共享一个SSD,该SSD的L2ARC部分无需对数据完整性构成风险。
(我没有使用ZIL的经验。)
就个人而言:在过去的几个月中,我已经将ZEVO ZFS用于我的主目录,并使用CoreStorage来加密ZFS数据集和启动卷。密码不同,因此(比FileVault 2更好)该机器的其他管理员无法访问我的数据。
当前,Apple Disk Utility过于错误,无法提供真实的概述,因此这里有其他视图。
笔记本电脑中的一个固态混合驱动器:
加上外部硬盘驱动器(StoreJet)及其缓存vdev(逐字记录,USB闪存驱动器),用于2级自适应替换缓存:
提示:可以在主动使用硬盘驱动器的同时物理移除高速缓存设备。不会造成任何伤害;这是ZFS的优点之一。
通常:如果将两种池技术(Apple CoreStorage加ZFS)混合在一起的想法使您大开眼界,那就来了!然后:
@bmike可能希望在此答案之外加上tl; dr…图表可能会使整个caboodle易于消化。