我正在使用 FreeNAS 构建 ZFS 数据服务器。我有足够的硬盘空间 (4x2TB) 使用几年,但如果以后我想扩展它,我可以再建一个 4xHD 池吗?对于第二卷,我需要单独的数据集还是可以扩展现有的数据集?
我有一个 6 磁盘 ZFS raidz1 池,最近发生了需要更换磁盘的故障。通常没问题,但这次我的服务器硬件在我可以进行更换之前就死了(但据我所知,在驱动器故障之后并且与驱动器故障无关)。
我能够从朋友那里得到另一台机器来重建系统,但是在移动我的驱动器的过程中,我不得不交换他们的电缆,直到我得到正确的配置,剩下的 5 个好的磁盘被视为在线。此过程似乎为 pool/raidz 生成了一些校验和错误。
我现在设置了剩余的 5 个驱动器,并安装了一个良好的驱动器,并准备好取代死掉的驱动器。但是,由于我的池状态是FAULTED我无法进行替换。
root@zfs:~# zpool replace tank 1298243857915644462 /dev/sdb
cannot open 'tank': pool is unavailable
Run Code Online (Sandbox Code Playgroud)
有没有办法从这个错误中恢复?我认为让 6 个驱动器中的 5 个在线就足以重建正确的数据,但现在似乎还不够。
这是我的池的状态日志:
root@zfs:~# zpool status tank
pool: tank
state: FAULTED
status: One or more devices could not be used because the label is missing or invalid.
There are insufficient replicas for the pool to continue functioning.
action: Destroy and re-create the pool from a backup source.
see: http://zfsonlinux.org/msg/ZFS-8000-5E …Run Code Online (Sandbox Code Playgroud) 我将要从 FreeBSD 构建一个 ZFS 文件服务器。我最近了解到,一旦它成为池的一部分,我就无法扩展 RAIDZ udev。这是一个问题,因为我是家庭用户,并且可能每年最多增加一个磁盘。
但是,如果我针对整个池设置了副本 = 3 并且只是将单个驱动器放入单独的池中会怎样?我在某处读到过,如果可能,副本将尝试跨驱动器分发。那里有保证吗?我真的只想以低廉的价格防止位腐烂和驱动器故障。速度不是问题,因为它会通过 1Gb 网络和大多数 720p 播客流。
是否可以保证我的数据免受单个驱动器故障的影响?有没有我没有考虑的事情?任何和所有输入表示赞赏。
我在 7 个磁盘的 4 个阵列中拥有 28 个 2TB 磁盘 (56T) 的池。由于它是 raidz1 (~RAID5),我希望每个阵列中的奇偶校验使用 1 个磁盘,因此生成的卷应该是 2TB*4*(7-1)=48TB,对吗?
现在,我在我的系统上看到的:
$ zpool list volume
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
volume 50.5T 308K 50.5T 0% 1.00x ONLINE -
$ zfs list volume
NAME USED AVAIL REFER MOUNTPOINT
volume 2.00T 40.3T 75.8K /volume
$ df -h /volume
Filesystem Size Used Available Capacity Mounted on
volume 42T 75K 40T 1% /volume
Run Code Online (Sandbox Code Playgroud)
所以,只有42T而不是48T。缺少的 6TB 在哪里?50.5T这个数字从何而来?
我将构建一个 freenas 服务器,想确定我可以用如此神奇和先进的 zfs 做什么。
如果我在 RAIDZ 中有 5 * 3TB 磁盘(总共 12TB 存储),现在我正在尝试向这个现有阵列添加另外 2 * 3TB 磁盘。
问:
我刚买了 6 个新的 2TB 驱动器,并将它们添加到我的 FreeNAS 盒中。我之前只处理过 RAID1,每个设置都符合我的预期。
但是,对于 6*2TB 驱动器,我想最大化可用空间,所以我选择了 raidz。但我似乎缺少空间。在raidz 建成后,我有8.6TB 可用。也许我在数学上做错了,但是 (N-1) x S(min)(其中 N=6 和 S(min)=2TB)应该导致 10TB。(我知道这更像是 9.something)
raidz 是否真的消耗了超过 1 个驱动器的空间?或者他们可能是另一个问题?(所有驱动器都经过独立验证,可用空间为 2TB)
关于 FreeNAS 上的 ZFS RAIDZ,什么是“热备份”?
我希望这意味着一个额外的附加磁盘可以自动接管 RAID 中的故障磁盘......?
如果是这样,我该如何设置?
我正在查看 FreeBSD 系统上的 ZFS 卷,但我不知道它配置为什么 RAIDZ 级别。如何使用 ZFS 命令行或其他方式查找?
我已经尝试过“zpool status”,并得到了这个:
TANK ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
gptid/19481bef-c121-11e3-bd5b-0cc47a005e96 ONLINE 0 0 0
gptid/1a09563a-c121-11e3-bd5b-0cc47a005e96 ONLINE 0 0 0
gptid/1ac63968-c121-11e3-bd5b-0cc47a005e96 ONLINE 0 0 0
gptid/1b884b06-c121-11e3-bd5b-0cc47a005e96 ONLINE 0 0 0
gptid/1c4697ff-c121-11e3-bd5b-0cc47a005e96 ONLINE 0 0 0
Run Code Online (Sandbox Code Playgroud)
看起来甚至接近我正在寻找的东西是“raidz1-0”,但我认为这只是一个编号方案,而不是实际的raid级别。
这是我在 zpool 中更换了几次磁盘后的一台 Solaris 10 服务器
pool: volume
state: ONLINE
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scan: resilver in progress since Wed Jul 6 11:43:51 2016
207M scanned out of 36.7T at 1.48M/s, (scan is slow, no estimated time)
207M scanned out of 36.7T at 1.48M/s, 7235h37m to go
13.5M resilvered, 0.00% done
config:
NAME STATE READ WRITE CKSUM …Run Code Online (Sandbox Code Playgroud) 我有 3 个 4TB 驱动器用于 ZRAID1 配置(单奇偶校验驱动器)
运行后
zpool create data zraid1 sdb sdc sdd
Run Code Online (Sandbox Code Playgroud)
我有一个大小为 10.9T 的卷,这是我期望的条带配置,而不是 RAID5 配置。zpool status 声称它是 raidz1-0 配置(0 有意义,这是这台计算机上唯一的池)。
为什么我的尺寸不是7.2T?
弄清楚:zpool list显示池的总数,而不是最终的卷大小。df -h正确显示为 7.2T。