web-dev-qa-db-ja.com

ディスクの一部のみを使用するRoot-on-ZFSを備えたFreeBSD10

ここで少し問題があります。私は自分の目的をできるだけ簡潔に説明するように努めます。

2台のIntel DC S3500シリーズ120GBソリッドステートドライブ(および12 x 2TB SASストレージ用ドライブ))を使用して、雇用主用にストレージサーバーをセットアップしています。 。これらのドライブにroot-on-zfsを使用してfreebsd10をインストールしたいのですが、OS用のzfsミラーを作成するために小さな(12GB)パーティションのみを使用します。残りのスペースはZIL/SLOG(24GB)に使用します。 )、およびL2ARCの残りの部分(両方のドライブに残っているすべてのストライプ)。

Freebsd10インストーラーに、OSをインストールするためのミラーとして「ada0p2」と「ada1p2」のみを使用するように指示する方法がわかりません。ドライブ全体を使用するためのオプションしかありません。

さらに、通常どおりインストールしてから、zfs sendとrecvを使用してバックアップし、gpartを使用してパーティションのサイズを変更してから、zrootプールのレプリカストリームを復元しようとしました...これを行うと、システムが起動を拒否します。

この目標を達成するにはどうすればよいですか?これに関する支援をいただければ幸いです。

6
cathode

インストーラーはまだあなたが望むことを実行できるとは思わないので(時間の経過とともに改善されていますが)、インストールイメージを起動して、初​​期メニューからルートシェルを実行することができます。次に、gpartzpool、およびzfsを使用して手動でディスクを構成し、イメージのアーカイブからシステムをインストールできます。

インターネットにはたくさんのガイドがありますが、 Matthew Seaman's が私のニーズに最適だと思います。ブート環境をサポートするミラー化されたroot-on-zfsセットアップについて説明します(ブート環境を管理するために、わずかに変更されたバージョンのsysutils/beadmポートを使用します)。ログデバイスとキャッシュデバイスの構成については説明していませんが、OSを必要に応じてインストールするのに十分な情報が得られるはずです。その後、ログデバイスとキャッシュデバイスを追加できます。

FreeBSD wikiの RootOnZFS ページからリンクされているいくつかの優れたリソースもあります。

どちらのガイドに従うことにした場合でも、個人的な経験から、ボックスを実稼働環境にコミットする前に、ガイドを数回実行して、その感触をつかみ、構成を確実に理解することができます。

4
D_Bye

私はまだ新しいインストーラーを使用していませんが、9.xでmfsbsdを使用して、あなたが説明したとおりに実行しています。

Mfsbsdのzfsinstallには次のオプションがあります。

-z zfs_part_size  : create zfs parition of this size (default: all space left)

mfsbsd は本当にシンプルで、すばやく使用できます。

1
Nicolai

将来の参考のために、私が問題に使用した解決策は次のとおりです。

「ストック」disc1ISOを使用してfreebsd10.0-RELEASEをインストールし、root-on-zfsを選択して、使用したい2つのSSDをターゲットにしました。インストールを完了してから、live-cd環境で起動し、小さなUSBフラッシュドライブを挿入してファイルシステムを作成し、zroot @ freshスナップショットを作成し、zfs send -R zroot@fresh > /path/to/removable/zroot.binを使用してスナップショットのレプリカストリームバックアップを作成しました。念のため、すべてのzrootプール属性のコピーをzpool get all zroot > /path/to/removable/pool.txtで保存しました。これは、zfs send/recvプロセスに含まれていないためです。

次のステップは、zrootをエクスポート(または破棄)して、生きていないようにすることです。これにより、gpartを使用してパーティションを縮小できます。次に、縮小されたパーティションに新しいプールを作成し、/ mntや/ tmpなどのlivecd環境で書き込み可能な場所としてaltrootを指定します。次に、recvレプリカストリームを再作成したzrootプールに戻します:zfs recv -Fdv zroot < /path/to/removable/zroot.bin

私が捨てられていた重要な領域は、プールから起動する方法をzfsに指示するオンラインのすべてのガイドがzpool set bootfs=zroot/bootまたは同様のものを使用することです。ただし、これは起動するのに間違ったデータセットです(存在しません)。 bsdinstall自動root-on-zfsプロセスは、bootfsとしてzroot/ROOT/defaultを作成します。他の設定を複製する必要がある場合は、保存したzrootプール属性のコピーを確認してください。 zpool set bootfs=zroot/ROOT/default zrootを使用して正しいbootfsをマークすると、その後はすべてが肉汁になります。

0
cathode