ZFSのHDDを交換してプールの容量を増やす

RAID-Zを構成してるHDDが古くなってきたので、容量アップも兼ねて交換した。増税だしな!(HDDを買ったのは増税前)

とりあえずプールの構成。

[hoge@Freyja ~]$ zpool status zdata3
  pool: zdata3
 state: ONLINE
  scan: resilvered 1.03T in 8h34m with 0 errors on Thu Apr 10 22:57:30 2014
config:

	NAME         STATE     READ WRITE CKSUM
	zdata3       ONLINE       0     0     0
	  raidz1-0   ONLINE       0     0     0
	    ada2p1   ONLINE       0     0     0
	    ada1p1   ONLINE       0     0     0
	    ada0p1   ONLINE       0     0     0
	  raidz1-1   ONLINE       0     0     0
	    ada8     ONLINE       0     0     0
	    ada12    ONLINE       0     0     0
	    ada9     ONLINE       0     0     0
	logs
	  ada5       ONLINE       0     0     0

errors: No known data errors

raidz1-1の方が対象のHDD群。2TBx3本を3TBに交換する。

ZFSはディスクを丸ごと追加&交換が出来るが、それやるとOS起動時に「GPTテーブルがおかしいぜ」と警告ログが出て精神的によろしくないので、パーティションは切っとくのが吉。上記プールではうっかり丸ごと追加してしまってる状態。

交換自体は以下のコマンドをHDD数分叩くだけ。

zpool replace 対象プール 交換元HDD 交換先HDD

SATAの空きポートがなかったため、物理的にHDDを入れ替えといてリビルドという感じで行った。リビルド時間は容量に比例し、うちの環境だと10時間弱といった所。デグレ状態で長時間HDDをブン回す事になるので、これまたあまりよろしくはない。

HDDを交換しただけでは容量は拡張されないので、zpool online -eでZFSにストレージの容量を全部使うように指示する。

[hoge@Freyja ~]$ zpool list
NAME     SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
zdata3  13.6T  10.4T  3.17T    76%  1.00x  ONLINE  -
[hoge@Freyja ~]$ sudo zpool online -e zdata3 ada8p1
[hoge@Freyja ~]$ zpool list
NAME     SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
zdata3  16.3T  10.4T  5.89T    63%  1.00x  ONLINE  -

交換したHDDの1つにコマンド発行するだけで大丈夫っぽい。




  • blog/2014/2014-04-11.txt
  • 最終更新: 2015-01-06 11:51
  • (外部編集)