Solaris 資料一覧
2008/8/21更新
対応バージョン: 10 x86
ZFSストレージプールはRAID-Z、ミラーのほか、単一のデバイスでも構成することができる。
以下、RAID-Zを中心にそれぞれの方式についてストレージプールの作成手順を示す。
プールに含めるデバイスは通常物理デバイス(例:c0t0d0)を使用するが、試験用に通常のファイルを使用することもできる。
ここでは全て通常のファイルを使用することとする。
RAID-Z
RAID-Zはシングルパリティのraidz1、ダブルパリティのraidz2のいずれかが指定できる。
両方とも手順は同じなのでraidz2について説明する。
準備
まずプールを構成するファイルを作成する。
# mkdir /zfs # mkfile 1g /zfs/raidz-1 # mkfile 1g /zfs/raidz-2 # mkfile 1g /zfs/raidz-3
ストレージプール作成
次にストレージプールを作成する。
# zpool create rz2 raidz2 /zfs/raidz-1 /zfs/raidz-2 /zfs/raidz-3
ストレージプールの状態は以下の方法で確認できる。
# zpool list NAME SIZE USED AVAIL CAP HEALTH ALTROOT rz2 2.98G 267K 2.98G 0% ONLINE - # zpool status rz2 pool: rz2 state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM rz2 ONLINE 0 0 0 raidz2 ONLINE 0 0 0 /zfs/raidz-1 ONLINE 0 0 0 /zfs/raidz-2 ONLINE 0 0 0 /zfs/raidz-3 ONLINE 0 0 0
これでストレージプールが/rz2にマウントされファイルシステムとして使用可能になる。
# df -h /rz2 Filesystem size used avail capacity Mounted on rz2 983M 24K 983M 1% /rz2
アンマウントする時は以下のようにする。
# zfs unmount rz2
別プール作成
作成したプールから別のプールを切り出すには以下のようにする。
# zfs create rz2/p1 # df -h -F zfs Filesystem size used avail capacity Mounted on rz2 983M 25K 983M 1% /rz2 rz2/p1 983M 24K 983M 1% /rz2/p1
こうすることで同じストレージプール内に独立したファイルシステムを生成することができる。
マウントポイント変更
マウントポイントをデフォルト以外の場所にしたい場合は以下のようにする。
# mkdir /var/p1 # zfs set mountpoint=/var/p1 rz2/p1 # df -h -F zfs Filesystem size used avail capacity Mounted on rz2 983M 24K 983M 1% /rz2 rz2/p1 983M 24K 983M 1% /var/p1
ストレージプール削除
ストレージプールを削除するには以下のようにする。
# zpool destroy rz2
マウントは自動的に解除されストレージプールが削除される。使用しなくなったファイルは別のプールに割り当てたり他のファイルシステムとして使用したりできる。
なおマウントポイントは自動では削除されないので適宜削除する。
ミラー
ミラーは2つ以上のデバイスの複製を作る構成である。サイズの違うファイルを使用することもできるが、その場合は一番小さいファイルのサイズに揃えられる。
# mkfile 1g /zfs/mirror-1 # mkfile 1g /zfs/mirror-2 # zpool create mi mirror /zfs/mirror-1 /zfs/mirror-2 # zpool list NAME SIZE USED AVAIL CAP HEALTH ALTROOT mi 1016M 88K 1016M 0% ONLINE - # zpool status mi pool: mi state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM mi ONLINE 0 0 0 mirror ONLINE 0 0 0 /zfs/mirror-1 ONLINE 0 0 0 /zfs/mirror-2 ONLINE 0 0 0 # df -h /mi Filesystem size used avail capacity Mounted on mi 984M 24K 984M 1% /mi
単一デバイス
単一デバイスでストレージプールを作る場合、物理デバイスにまたがる冗長性は持てないがZFSの持つ様々な特徴は生かすことができる。
# mkfile 1g /zfs/gen # zpool create gen /zfs/gen # zpool list NAME SIZE USED AVAIL CAP HEALTH ALTROOT gen 1016M 88K 1016M 0% ONLINE - # zpool status gen pool: gen state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM gen ONLINE 0 0 0 /zfs/gen ONLINE 0 0 0 # df -h /gen Filesystem size used avail capacity Mounted on gen 984M 24K 984M 1% /gen