FreeNASのシステムpoolを拡張する

why?

  • バージョンアップを続けた為か、WebUI で freenas-boot の容量警告(80%以上)が表示されてしまった。
  • 放置しても大丈夫そうな気がするが zabbix もアラートを出すので拡張したい
  • なお、FreeNAS は VM として動いている (Hyper-V)
1
2
2022/03/11 追記
この手順は TrueNAS Scale には適用できません

手順

VM のディスクを拡張

(省略)

この時点で、dmesg に以下のような表示が出るが出力の通り gpart commit da0 しても意味は無い

1
2
3
`(da0:storvsc0:0:0:0): Capacity data has changed
GEOM_PART: da0 was automatically resized.
Use `gpart commit da0` to save changes or `gpart undo da0` to revert them.

zpool を拡張する

zfs はディスク全体を使用しているのであれば zpool online -e [pool] [disk] で拡張した分を認識できるが、freenas-boot はパーティションを zfs pool として使用しているのでパーティションを拡張しないといけない。

パーティション拡張

zfs で使っているのパーティションを確認

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
`root@freenas[~]# zpool status freenas-boot
pool: freenas-boot
state: ONLINE
scan: scrub repaired 0 in 0 days 00:00:13 with 0 errors on Wed Jun 10 03:45:13 2020
config:

NAME STATE READ WRITE CKSUM
freenas-boot ONLINE 0 0 0
da0p2 ONLINE 0 0 0

=> 使っているパーティションは da0p2

root@freenas[~]# gpart show da0
=> 40 20971440 da0 GPT (10G)
40 532480 1 efi (260M)
532520 16220160 2 freebsd-zfs (7.7G)
16752680 4218800 - free - (2.0G)

この表示であれば、拡張する対象は 2 である。この数字を使って拡張する。

gpart resize -i 2 da0

-i の次の 2 がパーティション番号。特にサイズを指定していないので、使えるだけ使う。

1
2
3
4
`root@freenas[~]# gpart show da0
=> 40 20971440 da0 GPT (10G)
40 532480 1 efi (260M)
532520 20438960 2 freebsd-zfs (9.7G)

free が消えて、 freebsd-zfs が 9.7G に拡張された。

拡張した分を zfs に認識させる

1
`zpool online -e freenas-boot da0p2

これだけで OK。念のため確認する。

1
2
3
4
`zfs list
NAME USED AVAIL REFER MOUNTPOINT
freenas-boot 6.00G 3.20G 176K none

AVAIL が増えたことが確認できた。

WebUI のアラートも消えてスッキリした。