我正在考虑构build一个大型的ZFS池(150TB +),我想听听大家关于由于硬件故障导致的数据丢失情况的经验,特别是区分只有一些数据丢失的情况与整个文件系统如果在ZFS中甚至有这样的区别)。
例如:假设由于外部驱动器shell失效或控制器卡故障而导致vdev丢失。 从我读的池中应该进入故障模式,但如果vdev返回池应该恢复? 或不? 或者如果vdev部分损坏,是否会丢失整个池,一些文件等?
如果ZIL设备出现故障会发生什么? 或者只是几个ZIL中的一个?
真正的任何和所有轶事或假想的情景深深的技术知识背后的支持表示赞赏!
谢谢!
更新:
我们这样做的价格便宜,因为我们是一个小企业(9人左右),但我们产生了大量的成像数据。
这些数据大部分都是小文件,按我的计算,每TB约有50万个文件。
数据是重要的,但不是超级重要的。 我们计划使用ZFS池镜像48TB“实时”数据arrays(使用3年左右),并将剩余的存储空间用于“归档”数据。
该池将使用NFS共享。
据推测,该机架在build筑物备用发电机线上,并且我们有两个APC UPS能够在满载情况下为机架供电5分钟左右。
devise正确的方法 ,您将最大限度地减lessZFS数据丢失的可能性。 尽pipe如此,你还没有解释你存储在游泳池里的东西。 在我的应用程序中,它主要服务于VMWare VMDK,并通过iSCSI导出zvols。 150TB不是一个微不足道的数额,所以我会依靠一个专业的缩放build议。
我从来没有用ZFS丢失数据。
我经历了一切:
但是通过所有这些,数据从来没有受到明显的损失。 只是停机。 对于位于此存储之上的VMWare VMDK,在事件之后经常需要fsck或重新启动,但不会比任何其他服务器崩溃更糟糕。
至于ZIL设备的损失,这取决于devise,你正在存储什么,你的I / O和写入模式。 我使用的ZIL设备相对较小(4GB-8GB),function类似写入caching。 有些人镜像他们的ZIL设备。 使用高端STEC SSD设备使镜像成本过高。 我使用单个DDRDrive PCIe卡代替。 规划电池/ UPS保护,并使用具有超级电容备份的SSD或PCIe卡(类似于RAID控制器BBWC和FBWC实现 )。
我的大部分经验一直在Solaris / OpenSolaris和NexentaStor方面。 我知道人们在FreeBSD上使用ZFS,但我不确定zpool版本和其他function有多远。 对于纯粹的存储部署,我build议使用Nexentastor路由(并与经验丰富的合作伙伴交stream ),因为这是一个专门构build的操作系统,在Solaris衍生物上运行的关键部署要比FreeBSD更多。
我不小心覆盖了最新版本的OpenSolaris上的两个ZIL,导致整个池不可挽回地丢失。 (真是糟糕的错误!我不明白,丢失ZIL将意味着失去了池,幸运的是从停机时间的备份恢复。)
自从版本151a虽然(不知道如何ZPool版本的手段),这个问题已经修复。 而且,我可以certificate它是有效的。
除此之外,我在一台20tb的服务器上丢失了零数据 – 包括由于用户错误,多次电源故障,磁盘pipe理不当,错误configuration,大量故障磁盘等等而造成的进一步的情况。即使pipe理和Solaris上的configuration界面经常发生变化,并且从一个版本到另一个版本变得越来越疯狂,并且呈现出一个重要的不断变化的技能目标,这对ZFS来说仍然是最好的select。
我不但没有丢失ZFS的数据(在我可怕的错误之后),而且它不断地保护着我。 我不再经历数据腐败 – 在过去的20年里,在任何数量的服务器和工作站上,我一直在困扰着我。 数据损坏无声无息(或者只是“非常安静”)数据损坏已经使我无数次,当数据滚动备份旋转,但实际上已损坏的磁盘上。 或其他备份备份损坏版本的情况。 这一直是一个更大的问题,而不仅仅是一次性丢失大量数据,而这些数据几乎总是被备份起来。 出于这个原因,我只是喜欢ZFS,并且不能理解为什么校验和自动恢复在十年内不是文件系统中的标准function。 (诚然,真正的生死系统通常有其他方法来保证完整性,但仍然 – 企业数据的完整性也很重要!)
对聪明人来说,如果你不想陷入ACL地狱,不要使用内置于ZFS的CIFS服务器。 使用Samba。 (你说你使用NFS。)
我不同意SAS与SATA的争论,至less有人build议SAS总是比SATA更适合ZFS。 我不知道这个评论是否引用了磁盘的旋转速度,推测可靠性,接口速度或其他属性。 (或者也许只是“他们花费更多,而且一般不被消费者使用,所以他们是优秀的”。最近发布的一个行业调查(我仍然保持着这个消息)显示,SATA实际上平均超过SAS,至less这个调查的样本量很大(这让我震惊)。我不记得那是SATA或消费者的“企业”版本,还是速度有多快 – 但是在我相当丰富的经验中,企业和消费者模型在相同统计意义上的显着比率(消费者驱动问题的时间太长,以至于失败),这在企业中是非常重要的 – 但这并没有让我感到困惑,而且我认为它与硬件控制器更相关在这种情况下可以将整卷卷离线,但这不是一个SAS vs SATA的问题,ZFS也从来没有让我失望过,由于这个经验,我现在使用1/3企业和2 / 3个消费SATA驱动器。)另外我没有看到重要的表演 在configuration正确的情况下(例如一条三路镜像),这种混合的SATA会受到影响,但是IOPS的需求又很低,所以取决于您的商店的规模和典型使用情况,YMMV。 我已经注意到,在我的使用情况下,每个磁盘的内置caching大小对延迟问题的影响比盘片转速更重要。
换句话说,这是一个包含多个参数的信封:成本,吞吐量,IOPS,数据types,用户数量,pipe理带宽和常见用例。 要说SAS总是正确的解决scheme,就是忽视这些因素的大范围排列。
但是无论如何,ZFS绝对是摇摆不定的。