我最近通过添加两个驱动器扩展了我的存储池“zstorage”。它在 RAID-Z 中有 3 个 3TB 驱动器,我还在 RAID-Z 中添加了两个 1.5TB 驱动器(我理解这实际上与镜像相同)。我知道这不是最有效的设置,但这些是我拥有的驱动器。我预计,通过奇偶校验,我应该可以使用第一组中的 6TB 和第二组中的 1.5TB,总共 7.5TB。
添加后,一切看起来都很好,从下面的命令中,您可以看到 zpool list 列出的空间现在更多了,驱动器也按照我预期的那样显示在 zpool status 中。但是,可用的磁盘空间量并没有增加,如下所示。
知道为什么我没有获得更多磁盘空间吗?添加两个 1.5TB 驱动器似乎没有给我带来任何好处。
kevin@atlas:~$ sudo zpool 列表
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
zstorage 10.8T 7.79T 3.05T 71% 1.00x ONLINE -
kevin@atlas:~$ sudo zfs list -t all
NAME USED AVAIL REFER MOUNTPOINT
zstorage 5.19T 1.48T 5.19T /zstorage
kevin@atlas:~$ sudo zpool status -v
pool: zstorage
state: ONLINE
scan: scrub in progress since Sat Apr 5 10:49:13 2014
317G scanned out of 7.79T at 262M/s, 8h18m to go
1.50M repaired, 3.97% done
config:
NAME STATE READ WRITE CKSUM
zstorage ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
ata-WDC_WD30EZRX-00DC0B0_WD-WCC1T1735698 ONLINE 0 0 0 (repairing)
ata-WDC_WD30EZRX-00DC0B0_WD-WMC1T0506289 ONLINE 0 0 0
ata-WDC_WD30EZRX-00MMMB0_WD-WCAWZ2711600 ONLINE 0 0 0
raidz1-1 ONLINE 0 0 0
ata-WDC_WD15EADS-00P8B0_WD-WMAVU0454800 ONLINE 0 0 0
ata-WDC_WD15EADS-00P8B0_WD-WMAVU0524642 ONLINE 0 0 0
errors: No known data errors
kevin@atlas:~$ df -h /zstorage/
Filesystem Size Used Avail Use% Mounted on
zstorage 6.7T 5.2T 1.5T 78% /zstorage
答案1
一切运行正常。你遇到了TB
对比TiB
困惑。
总结
- 12TB 原始 == 10.8TiB 原始(这是 列出的
zpool list
) - 7.5TB 可用 == 6.8TiB 可用(这是 列出的
zfs list
)
你有:
- 3×3TB 硬盘
- 2×1.5TB硬盘
总共产生 12TB 的原始存储空间。
○ → units 12TB TiB
* 10.913936
/ 0.091625969
这大致相当于您在 zpool list 中获得的空间:
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
zstorage 10.8T 7.79T 3.05T 71% 1.00x ONLINE -
至于可用:
- 6TB(raidz1-0)
- 1.5TB(raidz1-1)
以 TiB 为单位:
○ → units 7.5TB TiB
* 6.8212103
/ 0.14660155
你有:
NAME USED AVAIL REFER MOUNTPOINT
zstorage 5.19T 1.48T 5.19T /zstorage
zstorage 文件系统已使用 5.19TiB,可用 1.48TiB(总计 6.67TiB)。对我来说足够接近 6.82TiB(会有一些开销)。
答案2
您应该检查您的 zpool 是否设置了自动扩展属性。
$ zpool get autoexpand zstorage
如果该属性设置为关闭,则应将其设置为打开,以使池自动扩展以填充可用空间。
$ zpool set autoexpand=off zstorage
为了清楚起见,我将附上手册页的相关部分。
autoexpand=on | off
Controls automatic pool expansion when the underlying
LUN is grown. If set to on, the pool will be resized
according to the size of the expanded device. If the
device is part of a mirror or raidz then all devices
within that mirror/raidz group must be expanded before
the new space is made available to the pool. The default
behavior is off. This property can also be referred to
by its shortened column name, expand.
我相信你也可以使用
$ zpool online -e zstorage
指示池手动扩展,但我自己没有使用过该命令。我不确定是否需要先将池脱机(我认为这是不必要的)。
zpool online [-e] pool device...
Brings the specified physical device online.
This command is not applicable to spares or cache dev-
ices.
-e
Expand the device to use all available space. If the
device is part of a mirror or raidz then all devices
must be expanded before the new space will become
available to the pool.