web-dev-qa-db-ja.com

小さいZFSボリューム(ZVOL)を保持するためにSSDをオーバープロビジョニングする方法は?

ミラーリング構成でZFSプールを構成する480 GBの「データセンター」SSD(SAMSUNG MZ7LM480HMHQ-00005)のペアがあります。プールの唯一のコンテンツは、仮想マシンのZFSボリューム(ZVOL)です。ただし、ZVOLのサイズは400 GBのみで、各SSDに未使用のスペースが80 GB残ります。

SSDで未使用のスペースを最大限に活用して、フラッシュメモリの消耗を減らすためにSSDを使用できるようにしたいと考えています。これを達成するための最良の方法は何でしょうか?

  1. SSD全体をプールに使用するだけですか?

  2. 各SSDに400 GBのパーティションを作成し、それらをプールに使用して、80 GBをパーティション化しないでおきますか?

  3. SSDのホスト保護領域(HPA)を変更して容量が400 GBしか表示されないようにしてから、(オプション1のように)プールに「縮小」SSDを使用しますか?

それとも、まったく違いがなく、SSDは自動的にすべてのフラッシュセルを有効に利用しますか?

重要な場合:私は、仮想マシンがTRIMコマンドを発行し、それらがホストのZFSに到達し、最後にSSD自体に到達すると想定しています。

3
David Scherfgen

ドライブは消耗品です。

意図したとおりに使用することをお勧めします。
RAIDします。彼らの健康を注意深く監視する。

それとも、まったく違いがなく、SSDは自動的にすべてのフラッシュセルを有効に利用しますか?

これらのデータセンターSSDはすでに過剰プロビジョニングされています。リストした480GB容量に対してはおそらく512GB。ハードウェアはすでにウェアレベリングを考慮しています。

2
ewwhite

3つのアプローチすべてで、許容できる結果が得られます。個人的には、私は1を使用し、プールでautotrim = onを使用しています。私のVMはzvolsによってサポートされており、trim/discardコマンドを理解する準仮想化SCSIドライバーを使用しています。私の推論では、容量の80%を超えるディスクはおそらく埋めないでしょうが、必要に応じてできるようになるのは素晴らしいことです。

オプション2と3でも同様の結果が得られますが、最初にブランクを解除したもの(セキュア消去またはSSDをブロック消去したもの)を想定しています。

Autotrim = onを使用し、容量の80%を超えてSSDを一杯にしない場合、上記の3つのアプローチの間に大きな違いはありません。

1
Gordan Bobic