Solaris ZFSは新世代のファイルシステムだ。アプリケーションのOSとしてOpenSolarisを使わない人でもNASあるいはiSCSIストレージを簡単に構築できる。本連載では、Solaris ZFSの基本的なコンセプトやアーキテクチャから、その機能や実用・応用例を解説する
前回は、Solaris ZFS(以下 ZFS)の基礎ということで、ZFSの基本的コンセプトとアーキテクチャを解説しました。今回は引き続きZFSの機能として、機能・特長、コマンド例、実際のシステムでの使用例などを解説したいと思います。
プール作成に関しては前回お話しさせていただいたとおり、ZFSでは物理ストレージを「ストレージプール」(以下プール) で管理します。普段はこのプールにストレージ容量を格納しておき、必要なときにその容量を使用します。
プールでは RAID 0(ストライプ)、RAID 1/1+0(ミラー)に加えて、RAID 5の拡張である RAID-Z(シングルパリティ) と、RAID 6の拡張である RAID-Z2 (ダブルパリティ) を使用できます。
プールを使用したZFSファイルシステムの主な特長としては、以下が挙げられます。
RAID0作成 (tank はプール名)
# zpool create tank c0t0d0 c0t1d0 c0t2d0 c0t3d0
RAID1+0作成 (mirrorの後に指定するドライブが対になる)
# zpool create tank mirror c0t0d0 c0t1d0 mirror c0t2d0 c0t3d0
RAID-Z作成
# zpool create tank raidz c0t0d0 c0t1d0 c0t2d0 c0t3d0
RAID-Z2作成
# zpool create tank raidz2 c0t0d0 c0t1d0 c0t2d0 c0t3d0
ミラー対の追加
# zpool add tank mirror c0t4d0 c0t5d0
ホットスペア追加
# zpool add tank spare c0t4d0
プールのRAIDレベルやステータスを表示
# zpool status
プールの一覧を表示
# zpool list
ZFSでは、「ファイルシステム」をプールから切り出します。個々のファイルシステムでは容量を設定する必要はなく (後述の「プロパティ」によって設定することも可能)、同じプールに属するファイルシステム全体で、そのプールの容量を共有します。すなわち、特に容量を指定しない限りは、ファイルシステムサイズの上限は、プールサイズとなります。
また、ZFSでは、プロパティに基づいてファイルシステムのマウントとマウント解除を自動的に行うことで、/etc/vfstab ファイルの ZFS エントリを管理する必要をなくしました。そしてファイルシステム作成のコマンドと同時にmountもされるため、管理ステップを削減することにも成功しています。デフォルトではファイルシステム名に指定したパスを使って “/”を最初に付けたディレクトリがマウントポイントです。もちろん、マウントポイント変更は簡単にできます。
ファイルシステムの作成(/tank/home にマウントされる)
# zfs create tank/home
マウントポイントの変更 (マウントポイントを /mnt/home に変更する)
# zfs set mountpoint=/mnt/home tank/home
ファイルシステムの一覧を表示
# zfs list
Copyright © ITmedia, Inc. All Rights Reserved.