web-dev-qa-db-ja.com

低で最適化されたZFS RAM環境の実現可能性?

私は現在ファイルサーバーをセットアップしており、実際にデータドライブをセットアップするようになりました。システムには4つのドライブ(1つのOSディスク、3つのデータディスク)があります。 OSディスクはext4としてフォーマットされており、ZFSプールに追加されません(ZFSを実行することを選択した場合)。私の主な関心事は、データの整合性とデータ損失の最小リスクです(BIOSではドライブキャッシュが無効になっています)。このZFSは、Linuxの安定バージョン(正しい?)があり、ハードドライブが同じサイズである必要がないデータの複製、プーリング、およびraidzをサポートしているため、最適な候補のようです。

しかし、ここに私の問題があります。サーバーにはRAMの2GBしかありません。これは近い将来アップグレードできません。現実的には、他のすべてのサービスをインストールした後、実際にZFSにアクセスできるのは1.5のみです。最大約10クライアントいつでもそれを使用します(平均して4のようです)これは安全と見なすには低すぎますか?

ZFSが低い状況でクラッシュする可能性があることを理解しているRAM=状況で、それを使用してプールを取得します。スワップがこの問題を軽減するのに役立つかどうかという矛盾する意見を聞きました(20 GBのスワップ専用ドライブがあります) 。ZFSでRAM=を少しでも使用してデータの損失を経験した人はいますか?それを防ぐためにどのような最適化を行いましたか?

上記を念頭に置いて、ACKサイズを減らして少し削減しても、ZFSを引き続き実行することは可能ですか、それともリスクが高すぎますか?

システム仕様:2GB RAM 20GBスワップドライブOS、Debian 7、最小インストール、FTP付き、およびXBMC、DNLA(RAM要件)ストレージサーバーおよび他のデバイスへの音楽メディアストリーミングに使用されます。

10
Thomas E

あなたは、データの整合性とデータ損失の最小リスクを主要な懸念事項として述べています。 2GiBのメモリのみでZFSを実行することは危険であり、お勧めできません。少なすぎるRAMはパフォーマンスを低下させ、過去にはマウントできない多数のプールの原因でした。 FreeNASプロジェクト は、RAM最低でも。

さらに、データの損失が懸念されるため、ECC RAMを使用する必要があります。お使いのボックスはRAM)の2GiBのみをサポートできるため、ZFSには適さない、本当に古いボックスだと思います。

あなたの質問に答えるには:

[…]データの複製をサポート

経験則として、少なくとも32GiBがない場合は重複排除を忘れてください。プールサイズによっては、大幅に多くのRAMが必要になる場合があります。第二に、重複排除+ RAMのコストが少数の追加ディスクよりも安価である場合、計算を行います。多くの場合、より多くのディスクがより安価な代替手段です。

これは安全と見なすには低すぎますか?

はい、それは低すぎます。

私が理解していることから、ZFSは低いRAM=状況でクラッシュし、それを使用してプールを取得できます。

これは事実であり、多くの人々はRAMが少ないためにプールを失っています。

スワップがこの問題を軽減するのに役立つかどうかの矛盾する意見を聞いた

スワップを忘れてください。ZFSボックスではスワップを使用しないでください。

編集:冒険的な気分で、時々のパニックやデータ損失のリスクを気にしない場合は、以下をお読みください ZFSチューニングガイド =および上記の設定を調整します。ここでは、768MiBのメモリのシステムの設定例を示します。

vm.kmem_size="330M"
vm.kmem_size_max="330M"
vfs.zfs.arc_max="40M"
vfs.zfs.vdev.cache.size="5M"

それ以外の場合は、メモリのストリップに100ドルを投資して、安定したパフォーマンスの高いシステムをお楽しみください。

5
Marco

高メモリ圧力システム(linux)では、メモリをアップグレードする必要があります。スワッピングがIO(カーネルハングタスク))をロックして、再起動しないと使用できないバグ( リンク )がまだあります。vm.swappiness= Xはzfsには影響しないので、弧を特定の数に制限すると少しは役に立ちます。

0
satch_boogie