FreeBSD - The Power To Serve

2月28日、FreeBSD 9開発版のZFSが最新移植バージョンへアップグレードされた。FreeBSD 9がサポートするZFSプールのバージョンが28、ZFSのファイルシステムバージョンが5に更新されたことになる。それまでFreeBSD 9はZFSプールは15を、ファイルシステムバージョンは4をサポートしていた。プールが15から28へアップグレードされたことでさまざまな機能が利用できるようになっている。特に注目されるポイントは次のとおり。

  • 重複排除機能(Deduplication)の導入
  • トリプルパリティRAID-Zの実現 (RAIDZ3)
  • ZFS diffの導入
  • ミラー化されたZFSストレージプールをそれぞれ新しいプールに分割するzpool(1M) split機能の導入
  • スナップショットユーザホールドの実現
  • zpool(1M) import -Fの導入
  • ZFSプールをリードオンリーでインポートする機能の実現

現在どのバージョンのZFSプールを使っているかはzpool upgradeコマンドで確認できる。

# zfs upgrade
This system is currently running ZFS pool version 28.


The following pools are out of date, and can be upgraded.  After being
upgraded, these pools will no longer be accessible by older software versions.


VER  POOL
---  ------------
15   tank
15   tank2


Use 'zpool upgrade -v' for a list of available versions and their associated
features.
#

現在どのバージョンのZFSファイルシステムを使っているかはzfs upgradeコマンドで確認できる。

# zfs upgrade
This system is currently running ZFS filesystem version 5.


The following filesystems are out of date, and can be upgraded.  After being
upgraded, these filesystems (and any 'zfs send' streams generated from
subsequent snapshots) will no longer be accessible by older software versions.




VER  FILESYSTEM
---  ------------
 4   tank
 4   tank/usr
 4   tank/usr/local
 4   tank/usr/obj
 4   tank/usr/ports
 4   tank/usr/src
 4   tank2
 4   tank2/home
 4   tank2/home/daichi
#

zpool(1M) upgradeコマンドに-aを指定すると、対象となるすべてのプールやファイルシステムを最新版へアップグレードすることができる。

# zpool upgrade -a
This system is currently running ZFS pool version 28.


Successfully upgraded 'tank'


Successfully upgraded 'tank2'
# zpool upgrade
This system is currently running ZFS pool version 28.


All pools are formatted using this version.
#

zfs(1M) upgradeコマンドも同様にアップグレードできる。

# zfs upgrade -a
9 filesystems upgraded
# zfs upgrade   
This system is currently running ZFS filesystem version 5.


All filesystems are formatted with the current version.
#

Oracleが開発を進めているZFSは暗号化機能やzfs(1M) listのパフォーマンスを改善したZFSプールバージョン30や31など、3x系まで進んでいる。Solaris系以外でZFSを取り込んでいるOSとしては、FreeBSD ZFSv28が実質的に実用で使える最新バージョンとなる。ZFSv28では重複排除機能が利用できるため、大規模ストレージにおけるディスク容量効率の改善が期待できる。ZFSは圧縮機能や重複排除機能などを適用することでディスク容量効率がよく、かつ、IO負荷を軽減させることができるとされている。