Questions tagged «zfs»

ZFS是最初由Sun Microsystems开发并获得CDDL许可的现代文件系统和卷管理器。它是一种写时复制文件系统,支持大型存储阵列,防止损坏,快照,克隆,压缩,重复数据删除和NFSv4 ACL。ZFS的开源分支可以在http://open-zfs.org/上找到,这由FreeBSD和Mac OS X社区中的ZFSonlinux.org,illumos.org和ZFS开发人员支持。


12
ZFS和XFS
我们正在考虑构建一个约16TB的存储服务器。目前,我们正在将ZFS和XFS都视为文件系统。优点和缺点是什么?我们要寻找什么?还有第三种更好的选择吗?
62 filesystems  storage  zfs  xfs 

6
FreeBSD上的ZFS:从数据损坏中恢复
我在zpool中有几TB非常有价值的个人数据,由于数据损坏,我无法访问这些数据。该池最初是在2009年左右在FreeBSD 7.2系统上建立的,该系统在Ubuntu 8.04系统顶部的VMWare虚拟机中运行。FreeBSD VM仍然可用并且运行良好,现在只有主机OS已更改为Debian6。来宾VM可以通过VMWare通用SCSI设备访问硬盘,共有12个。 有2个游泳池: zpool01:2x 4x 500GB zpool02:1x 4x 160GB 工作的是空的,坏掉的保留所有重要数据: [user@host~]$ uname -a FreeBSD host.domain 7.2-RELEASE FreeBSD 7.2-RELEASE #0: \ Fri May 1 07:18:07 UTC 2009 \ root@driscoll.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64 [user@host ~]$ dmesg | grep ZFS WARNING: ZFS is considered to be an experimental feature in FreeBSD. ZFS filesystem …

1
我将把FreeBSD自动安装器切成小块,然后用油煮沸
我试图将主目录的层次结构暴露给许多FreeBSD监狱。配置主目录,以便每个目录都是唯一的ZFS数据集。这些监狱用于开发工作,因此会定期创建和销毁。 我首先想到的只是使用nullfs挂载/home在监狱中,但是nullfs并没有提供任何访问下级文件系统的方法。 我的第二个想法是通过NFS导出目录,然后在每个监狱中运行自动安装程序守护程序(amd)。如果可以在监狱中执行NFS挂载,那本来可以工作的。但事实并非如此。 我的第三个想法是在主机上运行amd,并将nullfs挂载到监狱中...但是不存在对nullfs的 amd支持。 我的第四个想法是回到使用NFS导出目录的原因,因为amd当然可以与NFS一起使用,对吗?不幸的是,amd不想在目标挂载点上挂载目录,而是希望将其挂载到一个临时位置(/.amd_mnt/...),然后创建一个符号链接...当然,这在监狱环境中毫无用处。 因此,也许您可​​以使用nullfs向/.amd_mnt监狱公开的子目录?没有!这使我们回到了我的第一次尝试,在该尝试中,我们发现无法使用nullfs访问下级文件系统。 然后我的头爆炸了。 我要做什么有很好的解决方案?一个不好的解决方案是在启动监狱后运行一个脚本,该脚本将为每个主目录创建多个nullfs挂载点,但这非常笨拙-需要定期运行以考虑新目录或已删除目录。因此,基本上我将不得不编写一个错误的自动挂载程序。 一定会有更好的办法。帮我,Serverfault,您是我唯一的希望! 更新1:我想到我可以用来解决部分问题pam_mount,尽管这充其量是不完整的。另外,从文档中还不清楚是否pam_mount可以自动创建目标安装点。如果它要求挂载点先验存在,那么该解决方案将不会比我已经提出的错误的自动挂载器更好。 更新2:如以下答案中所述,VFCF_JAIL在NFS文件系统上进行设置确实允许监狱执行NFS挂载。不幸的是,自动挂载程序继续表现为无益的,并且在监狱中运行时似乎很擅长以某种方式陷入困境,以至于必须重新引导系统才能删除进程条目。

4
LVM快照与文件系统快照
据我所知,LVM可以为卷拍摄快照。还有许多支持快照的文件系统(ZFS,Btrfs,reiserfs等)。 但是,我从未了解LVM快照和文件系统快照之间的区别。如果可以使用LVM拍摄快照,为什么有人花时间在文件系统中实现快照? 编辑:在某些情况下,其中任何一个都是首选的吗?为什么?
32 lvm  zfs  snapshot  btrfs 

8
硬盘上的位腐烂是一个真正的问题吗?该怎么办?
一位朋友正在与我谈论比特腐烂的问题-驱动器上的比特随机翻转,破坏数据。极为罕见,但有足够的时间可能会成为问题,并且无法检测到。 该驱动器不会认为它是坏扇区,而备份只会认为该文件已更改。没有验证完整性的校验和。即使在RAID设置中,也会检测到差异,但无法知道哪个镜像副本正确。 这是一个真正的问题吗?如果是这样,该怎么办?我的朋友推荐使用zfs作为解决方案,但是我无法想象将工作中的文件服务器弄平,使用Solaris和zfs。
32 raid  hard-drive  zfs 

2
为什么所有zpool都命名为“ tank”?
我在网上看到的几乎每个ZFS使用示例(此处都包含几个问题)中,zpool都被称为“ tank”。为什么?名称是否具有某种意义,或者仅仅是原始文档使用了“ tank”,其他所有人也都使用了该名称?如果系统上有多个zpool,将其中一个命名为“ tank”是常见的还是“ tank”仅是单池系统的约定?
31 zfs 

8
有效地从ZFS删除10M +文件
我编写了一个有问题的程序,意外地在/ tmp下创建了大约3000万个文件。(该错误是在几周前引入的,它每秒创建两个子目录。)我可以将/ tmp重命名为/ tmp2,现在需要删除文件。系统是FreeBSD 10,根文件系统是zfs。 同时,镜像中的一个驱动器出现故障,我已将其更换。该驱动器有两个120GB SSD磁盘。 这里的问题是:更换硬盘驱动器并重新装入整个阵列需要不到一个小时的时间。删除文件/ tmp2是另一回事。我编写了另一个程序来删除文件,并且它每秒只能删除30-70个子目录。删除所有文件需要2-4天。 重新同步整个阵列需要一个小时,而从磁盘中删除需要4天,这怎么可能?为什么我的表现这么差?每秒70次删除似乎是非常非常差的性能。 我可以手动删除/ tmp2的inode,但这不会释放空间,对吗? zfs或硬盘驱动器可能有问题吗?

6
硬件RAID的ZFS最佳做法
如果恰好有一些服务器级硬件可供使用,是否建议在基于硬件的RAID1或类似硬件上运行ZFS?是否应该关闭基于硬件的RAID,然后在a mirror或a 上运行ZFS raidz zpool? 关闭硬件RAID功能后,与非硬件RAID控制器相比,基于硬件RAID的SATA2和SAS控制器是否更可能隐藏读写错误? 对于不可定制的服务器,如果存在一种情况,其中硬件RAID控制器实际上是成本中立的(甚至降低了预建服务器产品的成本,因为它的存在会提高托管公司提供补充IPMI的可能性)访问),应该完全避免吗?但是应该追寻吗?

8
写入速度要求:1.1GB / s可能吗?
我们将拥有一台正在运行的机器,该机器在达到最佳性能时,应该能够每小时推送50个(“写磁头”)x 75GB的数据。那是约1100MB / s写入速度的最高性能。要从计算机上获得该数据,它需要两条10GBi线路。我的问题是什么样的服务器+技术可以处理/存储这种数据流? 当前,对于数据存储,我们使用ZFS,尽管写入速度从来都不是问题。(我们甚至没有接近这些速度)ZFS(Linux上的zfs)是否可以选择?我们还需要存储大量数据,“ IT指南”建议总计在50-75 TB之间。因此,除非我们想为我们的长子提供孩子,否则可能不可能全部都是SSD。 根据出色的答复,添加了一些内容: 高峰期间最大为50x75GB /小时,少于24小时(最有可能是<6小时) 我们预计这种情况不会很快发生,很有可能我们将以每小时5-10x75GB的速度运行 这是pre-alpha机器,但是应该满足要求(即使有很多问号在起作用) 我们将使用NFS作为从机器到服务器的连接 布局:生成机->存储(这一个)->(安全团队6)->计算集群 因此读取速度不是必需的,但是从计算群集中使用它会很好(但这是完全可选的) 最有可能是大数据文件(不是很多)

1
ZFS无休止的重新同步
我在Debian上有一个大型(> 100TB)ZFS(FUSE)池,丢失了两个驱动器。当驱动器出现故障时,我用备用磁盘替换了它们,直到可以安排停机并物理上替换了损坏的磁盘。 当我关闭系统并更换驱动器时,该池开始按预期重新进行同步,但是当完成约80%的操作(通常需要大约100个小时)后,它将重新启动。 我不确定是否一次更换两个驱动器会造成争用情况,或者由于池的大小而使resilver花费的时间太长,以至于其他系统进程正在中断它并使它重新启动,但是在此过程中没有明显的迹象。 “ zpool status”的结果或系统日志指出了问题。 此后,我已经修改了如何布置这些池以提高重新同步性能,但是对于使该系统重新投入生产的任何线索或建议均表示赞赏。 zpool status输出(自上次检查以来,错误是新的): pool: pod state: ONLINE status: One or more devices has experienced an error resulting in data corruption. Applications may be affected. action: Restore the file in question if possible. Otherwise restore the entire pool from backup. see: http://www.sun.com/msg/ZFS-8000-8A scrub: resilver …
29 debian  zfs 

2
ZFS数据丢失方案
我正打算建立一个大型的ZFS池(150TB +),我想听听人们关于由于硬件故障而造成的数据丢失情况的经验,特别是区分只有一些数据丢失的实例与整个文件系统的实例(即使在ZFS中也是如此)。 例如:假设由于外部驱动器机箱断电或控制器卡出现故障等原因导致vdev丢失。从我读到的内容来看,池应该进入故障模式,但是如果vdev返回了,池应该恢复吗?或不?或者如果vdev部分损坏,是否会丢失整个池,某些文件等? 如果ZIL设备发生故障会怎样?还是只是几个ZIL之一? 确实,任何由深厚的技术知识支持的轶事或假设方案都值得赞赏! 谢谢! 更新: 由于我们是一家小型企业(9人左右),因此我们以便宜的价格进行此操作,但是我们会生成大量的成像数据。 数据大部分是较小的文件,据我估计,每TB约有500k文件。 数据很重要,但不是超级关键。我们计划使用ZFS池来镜像48TB“实时”数据阵列(使用3年左右),并将其余存储空间用于“归档”数据。 该池将使用NFS共享。 机架应该位于建筑物的备用发电机线上,并且我们有两个APC UPS能够在满负载下为机架供电5分钟左右。

2
透明压缩文件系统与ext4结合使用
我正在尝试使用ext4文件系统测试需要压缩存储的项目,因为我使用的应用程序依赖于ext4功能。 是否有用于ext4透明压缩的生产/稳定解决方案? 我尝试过的 ZFS卷上的Ext4启用了压缩。这实际上产生了不利影响。我尝试创建启用了lz4压缩的ZFS卷,并在/ dev / zvol /上制作了一个ext4文件系统,但是zfs卷显示了实际使用量的两倍,并且压缩似乎没有任何效果。 # du -hs /mnt/test **1.1T** /mnt/test # zfs list NAME USED AVAIL REFER MOUNTPOINT pool 15.2T 2.70G 290K /pool pool/test 15.2T 13.1T **2.14T** - ZFS创建命令 zpool create pool raidz2 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde2 /dev/sdf1 /dev/sdg1 /dev/sdh2 /dev/sdi1 zfs set recordsize=128k pool zfs …

2
如何执行zfs池的增量/连续备份?
zfs池如何连续/增量地异地备份? 我知道send/receiveover ssh是一种方法,但是其中涉及到必须手动管理快照。 我发现了一些工具,但是大多数工具不再受支持。 看起来很有前途的一种工具是https://github.com/jimsalterjrs/sanoid,但是我担心,不为人所知的工具可能会危害大于危害,因为它可能破坏/删除数据。 如何执行连续/增量zfs备份?

2
Linux中的ZFS RAID和LUKS加密
我计划在Linux中为LUKS加密的Z-RAID池设置一组3个2TB 7200rpm驱动器(对于NAS解决方案)。 我对当前问题的理解是,实现此目标的唯一方法是对luksFormat每个物理设备进行组装,然后从未锁定的LUKS容器中组装一个zpool。 我对此有以下担忧: 它不会严重阻碍写入性能吗?在这种设置中,冗余数据被加密了几次,因为LUKS并不“知道” Z-RAID。在LUKS-on-mdadm解决方案中,数据被加密一次,并且仅多次写入磁盘。我的CPU支持Intel AES-NI。 当在设备映射器LUKS容器(而不是物理设备)上运行时,ZFS是否会意识到磁盘故障?重复数据删除和其他ZFS功能如何?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.