web-dev-qa-db-ja.com

btrfs RAID10を使用して予想よりも多くの利用可能なスペースがありますか?

次のコマンドを使用して、Ubuntu14.04ボックスにbtrfsRAID10アレイを初めて作成しました。

mkfs.btrfs -d raid10 -m raid10 /dev/sda /dev/sdb /dev/sdc /dev/sdd

私の4台のハードドライブはそれぞれ2TBドライブです。 RAID10では、合計で約3.6TBの使用可能スペースが見込めると予想していました。それでも、何らかの理由で、合計で7.3TBが使用可能になっています(以下の/dev/sdaを参照)。

Filesystem      Size  Used Avail Use% Mounted on
/dev/sde1        42G  1.7G   38G   5% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
udev            7.8G   12K  7.8G   1% /dev
tmpfs           1.6G  1.2M  1.6G   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            7.9G     0  7.9G   0% /run/shm
none            100M     0  100M   0% /run/user
/dev/sda        7.3T   13G  7.3T   1% /mnt/tmp

これは予期しない動作ですか?

その他の情報:

bofh@stronghold:~$ Sudo btrfs fi show
Label: none  uuid: a3a65325-0184-46d8-bef7-7ed066c9e320
    Total devices 4 FS bytes used 29.14GiB
    devid    1 size 1.82TiB used 16.03GiB path /dev/sda
    devid    2 size 1.82TiB used 16.01GiB path /dev/sdb
    devid    3 size 1.82TiB used 16.01GiB path /dev/sdc
    devid    4 size 1.82TiB used 16.01GiB path /dev/sdd

使用しているRAIDタイプを一覧表示しようとすると、「RAID10」と「シングル」の両方が表示されます。

bofh@stronghold:~$ Sudo btrfs fi df /mnt/tmp
Data, RAID10: total=52.00GiB, used=48.77GiB
Data, single: total=8.00MiB, used=0.00
System, RAID10: total=16.00MiB, used=16.00KiB
System, single: total=4.00MiB, used=0.00
Metadata, RAID10: total=2.00GiB, used=64.12MiB
Metadata, single: total=8.00MiB, used=0.00

もう1つのかなり奇妙なことは、btrfsデバイススキャンが結果をスローしないことです。

bofh@stronghold:~$ Sudo btrfs device scan
Scanning for Btrfs filesystems
bofh@stronghold:~$ 

新しくインストールしてdist-upgradeを実行したUbuntu14.04サーバーを使用しています。

アドバイスをいただければ幸いです。

1
feicipet

合計で7.3TBの使用可能が見られます

そのとおりです。

簡単に言うと、ミラーコピーを配置するために使用できるrawスペースが表示されているので、半分に分割して、期待した3.6TBを取得します。

ディスクの空き容量の計算は、btrfsと混同されることで有名です。公式のbtrfs FAQは、btrfsの 空き領域の計算が難しい理由 について質問があります。

Btrfsファイルシステムには、さまざまなRAIDレベルのファイルのチャンクを含めることができます。ミラーコピーのないファイル(「single」または「raid0」)とミラーリングされている他のファイル(「raid1」)を作成できます。

あなたは実際に今あなたのファイルシステムにこれを持っています。

使用しているRAIDタイプを一覧表示しようとすると、「RAID10」と「シングル」の両方が表示されます。

これは、ファイルシステム内の少量のデータがミラーリングされていない(「単一」)ことを示しています。これを修正するには、btrfsバランスを実行する必要があります。私はすることをお勧めします:

btrfs balance start -dconvert = raid1、profiles = single -mconvert = raid1、profiles = single -sconvert = raid1、profiles = single --force/mnt/tmp

これにより、ファイルデータ、メタデータ、およびシステムデータ(d、m、s)の両方について、シングルコピーデータがミラーリングに変換されます。 「profiles」パラメータは、現在シングルコピーであるデータにのみ影響を与えるようにします。

1
Grunthos