zvolはブロックサイズに応じて余りに多くのスペースを占めます。

zvolはブロックサイズに応じて余りに多くのスペースを占めます。

今日、奇妙な問題を発見しましたzvolがあるにもかかわらず、ZFSではスペースが不足していると主張しているため、zvolを作成できません。以前は十分なスペース。

ブロックサイズによって、zvolは予想スペースの150%以上を占めることがわかりました。たとえば、上記の質問で説明した状況で512バイトのブロックサイズを使用すると、空き容量が842 GBであるにもかかわらず、560 GB以下のzvolを生成できます。ただし、デフォルトのブロックサイズ(8kB)を使用すると、問題なく810 GBのzvolを生成できます。

別の質問に答えてくれた有用な人は自分の測定で私の結果を検証し、512バイトブロックサイズを使用するとサイズが50%増加するという事実も発見しました。

これがなぜ起こるのか、なんとか直すことができるのか知りたいです。

背景:

一般的に、私はブロックサイズにあまり気にしません。しかし、著者は特にzvolがVMストレージとして使用されている場合、zvolに基本ディスクと同じブロックサイズを提供することを推奨する記事を2つ以上読みました。残念ながら、私はソースの1つだけを覚えていますが、少なくとも著者がベンチマークを介して自分の主張を(とにかく)証明したソースです。これは次のとおりです(「データセット」セクションを参照)。

https://martin.heiland.io/2018/02/23/zfs-tuning/

zvolのブロックサイズを物理ディスクのセクタサイズと同じにすることが意味がない場合は、これが答えに明示的に言及されていても大丈夫です。 :-)

個人的には、私はそれが正しいかどうかを判断するためにソースコードを読む必要があるか、私たち自身のベンチマークを実行する必要があると思います(システムに十分なスペースがないため、現時点では不可能です...)。 zvolブロックサイズが次のようになると想像することもできます。VMゲストファイルシステムのクラスタサイズ(これは問題のVMとVMがNTFSを使用している場合、私が使用した他の一部のVMの場合です。)

関連情報