ZFSを使用してホームFreeBSDファイルサーバーを構築しています。
これは、3GBのRAMを備えたAMD X2 3200+です。PCI Express Gig-Eを備えています。ブートドライブは古い400GBで、4つの750GB Seagteドライブがあります(念のため、ファームウェアのバージョンが異なるドライブ)。
ZFSからのブートは良かった(インストールが簡単になる)が、ZFSOnRoot命令を使用してZFSでルート/ OSドライブをセットアップした(すべてのパーティションがZFSの場合、ブート時にfsckを実行する必要はない) UFSファイルシステムをチェックします)。これが必要な理由は、必要に応じて、すべてのパーティション(/ var、/ usr、/ tmpなど)をさまざまなオプション(/ usr / objのnoatimeやasyncなど)でセットアップして、カーネルを高速化できるためです。コンパイル)、しかしそれらはすべて共通のプールからスペースを共有します。次に、データドライブをセットアップし、各ユーザーに独自のパーティションを(異なる見積もりと設定で)与えることができます。その後、スナップショットを作成できます(ZFSでは低コストです)。
My home server has a df that looks like:
/dev/ad0s1a 1.9G 744M 1.1G 41% /
devfs 1.0K 1.0K 0B 100% /dev
dozer/data 1.8T 62G 1.7T 3% /data
dozer/home 1.7T 9.6G 1.7T 1% /home
dozer/home/walterp 1.9T 220G 1.7T 11% /home/walterp
tank/tmp 352G 128K 352G 0% /tmp
tank/usr 356G 4.4G 352G 1% /usr
tank/var 354G 2.2G 352G 1% /var
パフォーマンスの面では、ファイルのコピーは非常に高速です。私が注意することの1つは、3〜4 GBのFreeBSD AMD64システムでZFSを使用していて、それがうまく機能していることですが、私の読書から、2 GBまたはそれ以上のi386システムで実行するのが心配です。少ないメモリ。
マザーボードのSATAポートが足りなくなったので、新しいドライブを追加しようとしませんでした。初期設定はシンプルで、RAIDZを作成するコマンドと、秒単位でフォーマットされた/ homeを作成するコマンド(IIRC)でした。私はまだ古いバージョンのZFS(v6)を使用しているため、いくつかの制限があります(同じサイズのドライブは必要ありませんが、Droboとは異なり、3つの750GBドライブと1TBドライブがある場合、最終結果は4つの750GBドライブがあるかのようになります)。
RAIDZでZFSを使用した大きな理由の1つは、エンドツーエンドのチェックサムでした。CERNは、R / Wテストを数週間にわたって実行中に200以上の未修正の読み取りエラーが見つかった場合に行ったテストを文書化した文書を発行しました(小売ドライブのECCは12TBの読み取りごとに1回失敗すると予想されます)。サーバー上のデータを修正したいのですが。停電(スペースヒーターをUPSに差し込んでUPSに過負荷をかけた)が原因でハードクラッシュが発生しましたが、システムが復旧できると、ZFSは標準のfsckの問題なしにすばやく復旧しました。
CUPSをSambaに追加してプリントサーバーを取得できるので、気に入っています。DNSキャッシュを追加し、他のソフトウェアを好きなように追加できます(自宅のデスクトップにSNMP監視を追加して、帯域幅の使用状況を測定することを考えています)。私がシステムに費やしたものについては、安価なNASボックスを購入できると確信していますが、64ビットのローカルUNIXボックスを操作することはできません。もしFreeBSDが好きなら、私はそれでいいと思います。Linuxを好む場合は、Linuxソリューションをお勧めします。管理を行いたくない場合は、スタンドアロンNASボックスを使用します。
次のハードウェアアップグレードでは、ハードウェアをアップグレードしてから、ZFS v13がインストールされている現在のバージョンのFreeBSDをインストールする予定です。ZILログに使用できるバッテリーでバックアップされたRAMディスクがあるため、V13はクールです(これにより、書き込みが悲鳴を上げます)。また、SSDを使用してファイルサーバーを高速化することもできます(新しいSunファイルサーバーの仕様は優れており、SSDを使用してシステムを非常に高速にするZFSシステムからそれらを取得します)。
編集:(まだコメントを残すことはできません)。私はほとんどhttp://www.ish.com.au/solutions/articles/freebsdzfsの指示に従いました。これらの指示が書かれてから7.Xに存在する1つの大きな変更は、7.2が出たことで、2 GB以上ある場合は、/ boot / loader.confに次の3行を追加する必要はありません。
vm.kmem_size_max="1024M"
vm.kmem_size="1024M"
vfs.zfs.arc_max="100M"
また、ミラーを作成する方法、およびシステムをリカバリモードに戻す方法(ZFSでマウント)についても説明します。彼の指示を1〜2回試した後、SunのZFS管理マニュアルhttp://opensolaris.org/os/community/zfs/docs/zfsadmin.pdfを使用して、ZFS について理解を深めました。データストアを作成するために、変更されたバージョンのコマンドを使用してZFSプールを作成しました。これはFreeBSDなので、小さな変更を加える必要がありました。
zpool create dozer raidz /dev/ad4 /dev/ad6 /dev/ad8 /dev/ad10
dmesg | grep 'ata。* master'を実行してad4-ad10が見つかった場合、これはビッグデータパーティションに使用されるシステム上のSATAハードドライブの名前です。私のマザーボードでは、最初の3つのataポート(ad0-3)に4つのPATAポートがあり、各SATAポートがマスターであるため、古い番号はありません。
ファイルシステムを作成するには、次のようにしました。
zfs create dozer/data
zfs set mountpoint=/data dozer/tank
共有のデフォルトのマウントポイントをオフにしたため、2番目のコマンドが必要です。