Questions tagged «zfsonlinux»

zfsonlinux提供ZFS文件系统的本机Linux内核端口,以便ZFS可以在Linux上本机运行。它与ZFS-fuse非常不同,后者在用户空间文件系统层的顶部提供ZFS。ZFS On Linux项目托管在zfsonlinux.org上。

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

4
如果RAID5系统在重建期间遇到URE,是否所有数据都会丢失?
我理解有关大型驱动器在重建过程中经历URE可能性增加的论点,但是我不确定这样做的实际含义。此答案表明整个重建失败,但这是否意味着所有数据都无法访问?为什么会这样呢?当然,驱动器上单个扇区中的单个URE最多只会影响与几个文件有关的数据。只是少量损坏几个文件,还是不重建阵列吗? (我在这里对ZFS的RAID5实现特别感兴趣,但是对于任何RAID5实现,逻辑似乎都是相同的。)
23 raid  zfs  zfsonlinux 

7
大型LVM磁盘(8 TB)的哪个文件系统?
我有一台Linux服务器,其中有许多2 TB磁盘,所有这些磁盘当前都在LVM中,因此大约有10 TB的空间。我在ext4分区上使用了所有这些空间,目前大约有8.8 TB的数据。 问题是,我的磁盘上经常出现错误,即使我替换了(也就是说,我用dd将旧磁盘复制到新磁盘,然后将新磁盘放入服务器),一旦出现错误,我经常收到大约100 MB的损坏数据。这使e2fsck每次都变得疯狂,并且通常需要一周的时间才能使ext4文件系统再次恢复正常。 所以问题是:您会建议我在LVM上用作文件系统吗? 还是您会建议我做什么(我真的不需要LVM)? 我的文件系统的配置文件: 许多不同大小的文件夹(某些文件夹总计2 TB,某些文件夹总计100 MB) 几乎200,000个具有不同大小的文件(其中3/4约为10 MB,1/4介于100 MB和4 GB之间;由于ext4分区已完全破坏了几天,我目前无法获得有关文件的更多统计信息) 读很多但是写很少 并且我需要容错(我停止使用mdadm RAID,因为它不喜欢在整个磁盘上出现一个错误,并且有时我的磁盘有故障,我会尽快更换,但这意味着我可能会损坏数据我的文件系统) 主要问题是磁盘故障。我可能会丢失一些文件,但我无法承受同时丢失所有文件的损失。 如果我继续使用ext4,我听说我最好尝试制作更小的文件系统并以某种方式“合并”它们,但是我不知道如何。 我听说btrfs会很好,但是在不复制数据(mkfs.btrfs -d single?)时,如何找到丢失一部分磁盘(或整个磁盘)的方法,我找不到任何线索。 对此问题的任何建议都将受到欢迎,谢谢!

6
为什么在Linux的ZFS上不遵守arc_max设置?
我正在Ubuntu 12.04上从他们的PPA运行ZoL 0.6.2 。它位于具有16GB内存的主机上,旨在使用KVM / Libvirt运行某些VM。一段时间后,ZoL使用了疯狂的内存,在某些VM运行的情况下达到了98%的RAM使用率。这导致新进程拒绝启动“无法分配内存”。我什至无法启动我的所有VM,而在使用ZFS之前,该VM使用了大约40-50%的RAM。 据我了解,在不进行调整的情况下,一旦系统内存不足,ZoL应该立即释放内存。好吧,事实并非如此。因此,我决定将设置设为arc_max1GB。 # echo 1073741824 >> /sys/module/zfs/parameters/zfs_arc_max 尽管如此,它不会释放任何内存。 从下面的ARC统计数据可以看出,它使用的内存比配置的要多(比较c= 7572030912与c_max= 1073741824)。 我在这里做错了什么? # cat /proc/spl/kstat/zfs/arcstats 4 1 0x01 84 4032 43757119584 392054268420115 name type data hits 4 28057644 misses 4 13975282 demand_data_hits 4 19632274 demand_data_misses 4 571809 demand_metadata_hits 4 6333604 demand_metadata_misses 4 289110 prefetch_data_hits 4 …
20 zfsonlinux 

2
清除运行状况良好的池中的永久ZFS错误
我今天擦洗了泳池,擦洗完成后,我发现有一个错误损坏了文件。我不在乎该文件,因此删除了它。不幸的是,错误仍然存​​在(现在由十六进制ID而不是文件名引用),并且我不知道如何清除它。 我应该担心吗?我现在还不是真的摆脱了这个错误吗? 我可以清除错误吗?如果该文件不见了,我真的不希望以后再看到此错误。 作为参考,这是我发出的命令和带有注释的输出: 检查状态 kevin@atlas:~$ sudo zpool status -v pool: zstorage 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: zfsonlinux.org/msg/ZFS-8000-8A scan: scrub …
20 zfs  zfsonlinux 

5
在Linux上使用ZFS加密
Linux上的ZFS是否已经支持加密?如果没有,有计划吗? 我发现了大量有关ZFS + LUKS的信息,但这绝对没意思:我想要ZFS加密,以便可以使用zfs发送到“不可信”的备份服务器来进行复制。即,zfs发送的片段应该被加密。 如果ZoL不支持加密,除了创建zVols并在其之上使用LUKS + EXT之外,还有其他更优雅的方法吗(失去了许多ZFS的优势)?

1
为什么重新引导会导致ZFS镜像的一侧失效?
我最近才将大容量数据存储池(在Linux 0.6.2上为ZFS,在Debian Wheezy上为ZFS)从单设备vdev配置迁移到双向镜像vdev配置。 先前的池配置为: NAME STATE READ WRITE CKSUM akita ONLINE 0 0 0 ST4000NM0033-Z1Z1A0LQ ONLINE 0 0 0 重装完成后,一切都很好(我在重装完成后启动了清理,只是为了让系统再次遍历所有内容并确保一切正常): pool: akita state: ONLINE scan: scrub repaired 0 in 6h26m with 0 errors on Sat May 17 06:16:06 2014 config: NAME STATE READ WRITE CKSUM akita ONLINE 0 0 0 …
13 linux  zfs  mirror  udev  zfsonlinux 

1
在zfs上强制更新校验和?
最近checksum,我将非重复zfs文件系统之一的属性sha256从on(fletcher4)更改为(fletcher4),以更好地支持发送重复的复制流,如该命令所示zfs send -DR -I _starting-snaphot_ _ending-snapshot_。 但是,zfs联机帮助页中的内容是send -D: 无论数据集的dedup属性如何,都可以使用此标志,但是如果文件系统使用具有dedup功能的校验和(例如sha256),则性能会更好。 zfs联机帮助页还说明了有关该checksum属性的信息: 更改此属性仅影响新写入的数据。 我不想信任fletcher4。折衷之处在于,与SHA256不同,fletcher4不是伪随机哈希函数,因此不能被信任不会发生冲突。因此,仅当与“ verify”选项结合使用时才适用于dedup,该选项可检测并解决哈希冲突。 如何更新文件系统的校验和,最好不对系统进行脱机?
13 zfs  zfsonlinux 

3
ZFS数据集在重新启动后消失
我已经在Centos 7中安装了ZFS(0.6.5),并且还创建了一个zpool,除了我的数据集在重新启动后消失之外,其他所有功能都可以正常工作。 我一直在尝试借助各种在线资源和博客来调试此问题,但无法获得理想的结果。重新启动后,当我发出zfs list命令时,我得到“没有可用的数据集”,并zpool list给出“没有可用的池” 在进行了很多在线研究之后,我可以通过使用zpool import -c cachefile手动导入缓存文件来使其工作,但是我仍然必须在重新启动之前运行zpool set cachefile = / etc / zfs / zpool.cache池,以便稍后在重新启动后将其导入。 这是什么systemctl status zfs-import-cache 看起来像, zfs-import-cache.service - Import ZFS pools by cache file Loaded: loaded (/usr/lib/systemd/system/zfs-import-cache.service; static) Active: inactive (dead) cat /etc/sysconfig/zfs # ZoL userland configuration. # Run `zfs mount -a` during system …

3
为什么Linux上的ZFS无法在AWS i2.8xlarge实例上充分利用8x SSD?
我对ZFS完全陌生,因此首先我想对它做一些简单的基准测试以了解它的行为。我想突破其性能极限,因此我预配了一个Amazon EC2 i2.8xlarge实例(几乎每小时$ 7,时间真是钱!)。该实例具有8个800GB SSD。 我fio对SSD本身进行了测试,并得到以下输出(已修剪): $ sudo fio --name randwrite --ioengine=libaio --iodepth=2 --rw=randwrite --bs=4k --size=400G --numjobs=8 --runtime=300 --group_reporting --direct=1 --filename=/dev/xvdb [trimmed] write: io=67178MB, bw=229299KB/s, iops=57324, runt=300004msec [trimmed] 57K IOPS,可进行4K随机写入。可敬。 然后,我创建了一个跨所有8个的ZFS卷。起初,我有一个raidz1vdev,其中装有所有8个SSD,但是我读到了这对性能不利的原因,所以最终得到了四个mirrorvdev,如下所示: $ sudo zpool create testpool mirror xvdb xvdc mirror xvdd xvde mirror xvdf xvdg mirror xvdh xvdi $ sudo …

2
为什么ZFS比ext4和btrfs慢得多?
问题 我最近安装了一个新磁盘,并在其上创建了一个zpool: /# zpool create morez /dev/sdb 使用一段时间后,我注意到它非常慢: /morez# fio --name rw --rw rw --size 10G read: IOPS=19.6k, BW=76.6MiB/s (80.3MB/s)(5120MiB/66834msec) write: IOPS=19.6k, BW=76.6MiB/s (80.3MB/s)(5120MiB/66834msec) 该测试与我的实际用例非常相似。我正在从磁盘读取适量(〜10k)的图像(每个〜2 MiB)。当磁盘几乎为空时,它们一次全部写入,因此我不希望它们碎片化。 为了进行比较,我测试了ext4: /# gdisk /dev/sdb ... /# mkfs.ext4 -f /dev/sdb1 && mount /dev/sdb1 /mnt && cd /mnt /mnt# fio --name rw --rw rw --size 10G …

1
为什么`zfs list`和`zpool list`报告我的raidz2池大小非常不同?
我有一个带有8个zpool的ZFS服务器。每个池是10 + 2 RAIDZ配置中的12个6TB磁盘。因此,每个池的原始存储空间为12 * 6 = 72 TB,可用空间为10 * 6 = 60 TB。但是,当我使用zfs listvs.进行查询时,看到了不同的结果zpool list,如下所示: # zfs list NAME USED AVAIL REFER MOUNTPOINT intp1 631K 48.0T 219K /intp1 intp2 631K 48.0T 219K /intp2 intp3 631K 48.0T 219K /intp3 jbodp4 631K 48.0T 219K /jbodp4 # zpool list NAME SIZE ALLOC …
11 zfs  zfsonlinux 

2
为什么我的ZFS池没有在Linux上使用ZFS扩展?
我在Linux 2.6.32-431.11.2.el6.x86_64内核下有一个ZFS zpool,它具有单个vdev。vdev是一个SAN设备。我扩展了SAN的大小,尽管zpool autoexpand设置为on,即使在重新引导计算机,导出/导入池并使用之后zpool online -e,我也无法扩展该池。我确信vdev更大,因为fdisk它表明它已从215GiB增加到250 GiB。这是我所做的示例: [root@timestandstill ~]# zpool list NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT dfbackup 214G 207G 7.49G 96% 1.00x ONLINE - [root@timestandstill ~]# zpool import -d /dev/disk/by-id/ pool: dfbackup id: 12129781223864362535 state: ONLINE action: The pool can be imported using its name or numeric …
10 linux  zfs  zfsonlinux 

1
9x7驱动器raidz2(ZFS ZoL 0.8.1)上的慢速顺序速度
我正在运行一个大型ZFS池,该池针对256K +请求大小的序列化读写,通过Ubuntu(04.04)上的iSCSI(用于备份)进行。考虑到对高吞吐量和空间效率的需求,以及对随机小块性能的需求减少,我选择了条带化raidz2而不是条带化镜像。 但是,256K顺序读取性能远远低于我的预期(100-200MBps,峰值高达600MBps)。当zvol在iostat中的iowait达到约99%时,后备设备的iowait通常在10%到40%的iowait之间运行,这对我来说是瓶颈,在配置中我缺少这个东西,因为它不应该是背板或CPU此系统以及顺序的工作负载不应使ARC太费劲。 我已经使用了很多模块参数(下面的当前配置),阅读了数百篇文章,有关OpenZFS github的问题,等等。调整预取和聚合使我达到了这种性能水平-默认情况下,我的运行速度约为50MBps ZFS向磁盘发送TINY请求时(约16K),顺序读取。通过聚合和预取工作正常(我认为),磁盘读取会更高,在iostat中平均约为64K。 NIC是具有cxgbit卸载功能的LIO iscsi目标+ Windows Chelsio iscsi启动器在ZFS zvols之外可以很好地工作,通过直接映射的optane返回NIC上几乎全线速(读写3.5GBps)。 我期望太多了吗?我知道ZFS优先考虑安全性而不是性能,但是我希望7x9 raidz2比单个9驱动器mdadm raid6提供更好的顺序读取。 系统规格和日志/配置文件: Chassis: Supermicro 6047R-E1R72L HBAs: 3x 2308 IT mode (24x 6Gbps SAS channels to backplanes) CPU: 2x E5-2667v2 (8 cores @ 3.3Ghz base each) RAM: 128GB, 104GB dedicated to ARC HDDs: 65x HGST 10TB HC510 …

2
ZFS校验和错误,何时更换驱动器?
我是ZFS的新手,我有一个带有8个驱动器的简单镜像存储池设置。运行几周后,一个驱动器似乎产生很多错误,因此我更换了它。 再过几周,现在我看到池周围到处都是小错误(请参见zpool status下面的输出)。我应该为此担心吗?如何确定错误是否表明需要更换驱动器? # zpool status pool: storage state: ONLINE status: One or more devices has experienced an unrecoverable error. An attempt was made to correct the error. Applications are unaffected. action: Determine if the device needs to be replaced, and clear the errors using 'zpool clear' or replace the …

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.