9x7ドライブraidz2(ZFS ZoL 0.8.1)のシーケンシャル速度が遅い
Ubuntu 18.04で、256K以上のリクエストサイズのシーケンシャルな読み取りと書き込み(バックアップ用)を介して構築された大きなZFSプールを実行しています。高いスループットとスペース効率の必要性、およびランダムな小ブロックパフォーマンスの必要性が少ないことを考慮して、ストライプミラーではなくストライプraidz2を使用しました。 ただし、256Kのシーケンシャルリードパフォーマンスは予想よりもはるかに低くなっています(100〜200MBps、ピークは最大600MBps)。zvolがiostatで最大99%のiowaitに達している場合、バッキングデバイスは通常10から40%のiowaitで動作します。これは、バックプレーンまたはCPUであってはならないので、ボトルネックが構成に欠けていることを示唆していますこのシステム、およびシーケンシャルワークロードは、ARCをあまり強く動作させるべきではありません。 私はモジュールパラメータ(以下の現在の構成)でかなり遊んだり、数百の記事を読んだり、OpenZFS githubの問題などを行ったりしました。プリフェッチと集約を調整すると、このパフォーマンスレベルになりました。デフォルトでは、約50MBpsで実行していました。 ZFSがディスクにTINYリクエストを送信していたため、シーケンシャルリード(約16K)。集約とプリフェッチは正常に機能していると思いますが(おそらく)、iostatのディスク読み取りは平均で約64Kです。 NICはLIO iscsiターゲットであり、cxgbitオフロード+ Windows Chelsio iscsiイニシエーターはZFS zvolsの外側で適切に機能し、直接マッピングされたオプタンがNICでほぼフルラインレートを返します(約3.5GBpsの読み取りと書き込み)。 期待しすぎですか?ZFSはパフォーマンスよりも安全性を優先することを知っていますが、7x9 raidz2が単一の9ドライブmdadm raid6よりも優れた順次読み取りを提供することを期待しています。 システムの仕様とログ/構成ファイル: Chassis: Supermicro 6047R-E1R72L HBAs: 3x 2308 IT mode (24x 6Gbps SAS channels to backplanes) CPU: 2x E5-2667v2 (8 cores @ 3.3Ghz base each) RAM: 128GB, 104GB dedicated to ARC HDDs: 65x HGST 10TB HC510 …