FreeBSD Daily Topics
2010年4月16日 ZFSにスワップ領域を作成する方法
tips
- ZFS swap
zfs - FreeBSDのスワップは主記憶メモリの2倍のサイズのときに性能を発揮できると言われています。従来のインストール手順であれば,インストール時にスワップ用のパーティションを作成し,スワップ領域として使ってきました。
この方法はいくつかの面で検討すべき部分があります。まず,静的にパーティションを作成することになるため,主記憶メモリを増設したり,または減らした場合に簡単にスワップパーティションのサイズ変更ができないという点です。また,十分なサイズの主記憶メモリがある場合はスワップが使われるケースがないこともあり,使われてないディスク領域を保持し続けるという効率のよくない状況が生まれます。
こうした状況に対する1つの方法として,スワップ領域にZFSを使うという方法があります。ZFSを使うとスワップ領域の作成もリサイズも簡単に実施できます。たとえば主記憶メモリが8GBの場合,次のように16GBのスワップ領域を作成できます。
リスト1 ZFSに16GBのスワップ領域を作成する例
# zfs create -V 16G tank/swap # zfs set org.freebsd:swap=on tank/swap # zfs set checksum=off tank/swap作成したスワップ領域はswapinfo(8)コマンドやzfs(1)コマンドから確認できます。
リスト2 swapinfo(8)でスワップ情報を表示 - 作成したZFSの領域が使われていることがわかる
# swapinfo -h Device 1K-blocks Used Avail Capacity /dev/zvol/tank/swap 16777216 0B 16G 0% #リスト3 zfs(1)でスワップに割り当てたポイントをチェック
# zpool list NAME SIZE USED AVAIL CAP HEALTH ALTROOT tank 213G 62.8G 150G 29% ONLINE - tank2 928G 113G 815G 12% ONLINE - # zfs list | grep swap tank/swap 16G 147G 821M - #ZFSのもたらす柔軟性や高い性能,高度な機能はさまざまな面で利点をもたらしてくれます。2TBを越えないHDDを使うのであれば,従来のsysinstall(8)からのインストールで最小限のサイズのスライスを切ってUFS2+SoftupdateでFreeBSDシステムをインストールし,残りの領域はすべてZFSにあてるという方法が手軽です。ZFSの領域をアプリケーションやホームディレクトリ,スワップ領域として使います。
FreeBSD Daily Topics
- 2010年4月30日 2010Q1報告(OS移植編):FreeBSD/arm,FreeBSD/mips,FreeBSD/ia64
- 2010年4月28日 ≪注目≫UFS2にジャーナル機能登場,Soft-Updates Journaling
- 2010年4月21日 libgmp4からgmpへアップグレードする方法
- 2010年4月20日 FreeBSD 8.1-RELEASEは7月10日ごろ
- 2010年4月19日 FreeBSD GCCを置き換えるLLVM Clang,広くテスト呼びかけ
- 2010年4月16日 ZFSにスワップ領域を作成する方法
- 2010年4月15日 AsiaBSDCon 2010のUstream.tv配信
- 2010年4月14日 【注意】Ports Collectionに影響範囲の大きいコミット,作業継続中
- 2010年4月13日 GEOM IOスケジューラ登場,用途に適したIOスケジューラで性能向上
- 2010年4月12日 NVIDIA Driver 195.36.15,Ports Collectionに登場

