1.単独ディスク・スライスからZFSを作成する
---- zfsという名前のファイルシステムを作成(-fは強制)
# zpool create -f zfs c0t0d0s0
---- 状況を確認
# zpool list
NAME SIZE USED AVAIL CAP HEALTH ALTROOT
zfs 4.97G 51.5K 4.97G 0% ONLINE -
単独のディスク・スライスからZFSを作成するのはコマンド1つで終わりである。
/zfs をファイルシステムをしてOSから使用することができる。
2.2つのディスク・スライスからZFSを作成する
---- mirror属性のzmirrorというファイルシステムを作成
# zpool create zmirror mirror c0t0d0s0 c0t0d0s1
---- 状況確認
# zpool list
NAME SIZE USED AVAIL CAP HEALTH ALTROOT
zfs 4.97G 51.5K 4.97G 0% ONLINE -
# sudo zpool status
pool: zmirror
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
zmirror ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t0d0s0 ONLINE 0 0 0
c0t0d0s1 ONLINE 0 0 0
errors: No known data errors
→c0t0d0s0 とc0t0d0s1 のミラーが作成されている
---- とりあえず1GB ファイルを作って見た
# timex mkfile 1g hogehoge
real 1:52.57
user 0.35
sys 17.02
→約2分、CPUは17秒しか働いていないです。
====ミラーじゃないデバイスにattachしてミラーディスクにしてみる
---- zfsという名前のファイルシステム
# zpool create -f zfs c0t0d0s0
# zpool list
NAME SIZE USED AVAIL CAP HEALTH ALTROOT
zfs 4.97G 51.5K 4.97G 0% ONLINE -
---- zfsにc0t0d0s4をattachしてミラーデバイスを作成
# zpool attach zfs c0t0d0s0 c0t0d0s4
---- 確認
# zpool list
NAME SIZE USED AVAIL CAP HEALTH ALTROOT
zfs 4.97G 156K 4.97G 0% ONLINE -
# zpool status
pool: zfs
state: ONLINE
scrub: resilver completed with 0 errors on Thu Jul 12 10:09:08 2007
config:
NAME STATE READ WRITE CKSUM
zfs ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t0d0s0 ONLINE 0 0 0
c0t0d0s4 ONLINE 0 0 0
errors: No known data errors
→ミラーになっている。。。ディスク容量も増えていないし。やったね。
3.上の状況からディスクを追加してみる
ミラーになったZFSにデバイスを追加する。
イメージとしてはRAID0にディスクを追加する感じ。コンカチでは無くてストライピングになっているようです。
----zfsにc0t0d0s1デバイスを追加する
# zpool add -f zfs c0t0d0s1
# zpool list
NAME SIZE USED AVAIL CAP HEALTH ALTROOT
zfs 9.94G 260K 9.94G 0% ONLINE -
→お、倍になった。追加されたようだ。
# zpool status
pool: zfs
state: ONLINE
scrub: resilver completed with 0 errors on Thu Jul 12 10:09:08 2007
config:
NAME STATE READ WRITE CKSUM
zfs ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t0d0s0 ONLINE 0 0 0
c0t0d0s4 ONLINE 0 0 0
c0t0d0s1 ONLINE 0 0 0
errors: No known data errors
→ミラーデバイス(5GB)に1つディスク(5GB)が追加されたような感じです。
---- もう1つ追加
# zpool add zfs c0t0d0s3
# zpool list
NAME SIZE USED AVAIL CAP HEALTH ALTROOT
zfs 14.9G 370K 14.9G 0% ONLINE -
→おー、3倍だー
# zpool status
pool: zfs
state: ONLINE
scrub: resilver completed with 0 errors on Thu Jul 12 10:09:08 2007
config:
NAME STATE READ WRITE CKSUM
zfs ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t0d0s0 ONLINE 0 0 0
c0t0d0s4 ONLINE 0 0 0
c0t0d0s1 ONLINE 0 0 0
c0t0d0s3 ONLINE 0 0 0
errors: No known data errors
---- 今追加したデバイスをミラー化する
c0t0d0s1にc0t0d0s5をattach、c0t0d0s3にc0t0d0s6をattachする
# zpool attach zfs c0t0d0s1 c0t0d0s5
# zpool attach zfs c0t0d0s3 c0t0d0s6
---- 確認
# zpool list
NAME SIZE USED AVAIL CAP HEALTH ALTROOT
zfs 14.9G 492K 14.9G 0% ONLINE -
→容量は変わっていない
# zpool status
pool: zfs
state: ONLINE
scrub: resilver completed with 0 errors on Thu Jul 12 10:18:02 2007
config:
NAME STATE READ WRITE CKSUM
zfs ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t0d0s0 ONLINE 0 0 0
c0t0d0s4 ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t0d0s1 ONLINE 0 0 0
c0t0d0s5 ONLINE 0 0 0
mirror ONLINE 0 0 0
c0t0d0s3 ONLINE 0 0 0
c0t0d0s6 ONLINE 0 0 0
errors: No known data errors
→おー、、、ミラーになっているぜー。
---- ファイル作成してみる
# timex mkfile 1g hogehoge
real 2:00.66
user 0.34
sys 16.37
→約2分、あんまり変わらない
# timex mkfile 2g hogehoge
real 3:55.56
user 0.69
sys 32.71
→約4分、1GB書き込みに約2分程度
==== 実験終了に付き廃棄
# zpool destroy -f zfs
0 件のコメント:
コメントを投稿