LVM /からbtrfsにアクセスするのが遅いです。

LVM /からbtrfsにアクセスするのが遅いです。

私たちのサーバーには次の設定があります。

  • Ubuntu 14.04(以前12.04)
  • 10TB RAID-6システム
  • LVM(1VG、2LV)
  • ext4パーティション(~2TB)
  • Btrfsパーティション(~8TB)

先月の再起動後、システムは非常に遅くなりました。まず、これはRAIDが再同期しているためだと思いました(1つのドライブが追加されず、再びアクティブになりませんでした)。しかし、最終的に完了した後でも(12〜13日)、Btrfsにアクセスする速度は依然として著しく遅かった。 ext4アクセスは大丈夫そうです。

この機能を設定した(今年の夏に去った)、システム管理者はすでにBtrfsマウントでautodefrag、noatimeを使用しています。

Btrfsを再び速くするために何ができますか?

答え1

コメントできません。良い答えでなければ申し訳ありません。ドライブを確認する必要があります。 10Tbの場合、12日のrsync時間は長すぎると思います。 12~24時間程度になるはずです。 smartctlを使用してさまざまなドライブを調べて、エラーが多いことを確認してください。

for i in a b c d e f g h i j k l; do echo $i ; smartctl -x /dev/sd$i | grep occurred | head -1 ; done

これにより、RAIDが遅く動作することがわかりました。 IIRC Btrfsは、ディレクトリルックアップにext4よりも多くのディスクアクセスを必要とし、アクセス速度の違いを説明できます。

答え2

私は3つのレベルのディスクI / O間接参照を積み上げましたが、そのパフォーマンスがなぜそれほど低いのか知りたいですか?

コンピュータサイエンスには、次のような古いことわざがあります。デビッド・ウィーラー:

コンピュータサイエンスのすべての問題は、別の間接層を介して解決することができます。

これは本当ではありません。この方法で解決できない問題が1つあります。システムが遅すぎるということです。 (とにかく、より多くのハードウェアを追加する必要があります。この場合は、より多くのスピンドル、クラスタ、ロードバランシングなどを追加する必要があります。)

BTRFSLVM機能が含まれていますが、すでに積み重ねています。Linux LVM2 レイヤーそして入れてそれハードウェアRAID-6システムの上。ファイルシステム間接レイヤーを1つ以上追加できるように崩壊する抽象化ヒープで仮想マシンをホストする以外に何をしますか?

あなたがアドバイスを求めたので、私のアドバイスは次のとおりです。壊れるこれはレイヤーの一部です。

私の場合は、ハードウェアディスクサブシステムを設定します。JBODその上にBtrfsを直接配置します。

もっと広く言えば、Btrfsは次のことを期待してはいけませんext[234]。リンゴとリンゴを比較するのではありません。 Btrfs はより高いレベルのデータ整合性を提供するので、自然にゆっくりと実行されます。タンスタサッカークラブ

関連情報