今まで btrfs の RAID 5 で3台の HDD を束ねて使っていましたが、容量の不足もあったので3台の HDD を追加し RAID 6 運用に変更した際の忘備録。これがオンラインで出来るのはありがたいです。
もとの状態
konota@storage:/data$ sudo btrfs filesystem show
Label: none uuid: 71cdbe11-5102-448d-9aac-2dda635edf30
Total devices 1 FS bytes used 8.57GiB
devid 1 size 58.09GiB used 11.06GiB path /dev/mapper/ubuntu--vg-ubuntu--lv
Label: '/data' uuid: 27c4fe5d-89ec-4edd-853b-82a13ce4febe
Total devices 3 FS bytes used 3.01TiB
devid 1 size 2.73TiB used 1.54TiB path /dev/sde
devid 2 size 2.73TiB used 1.54TiB path /dev/sdd
devid 3 size 2.73TiB used 1.54TiB path /dev/sdf
新しいHDDを追加して、balance実行時にオプションでdataとmetadataを変換します。追加前に mkfs.btrfs でフォーマットを忘れずに。本来なら直前にbtrfs filesystem show コマンド等で追加状況を確認したほうがいいです。
konota@storage:~$ sudo btrfs device add /dev/sda /data
konota@storage:~$ sudo btrfs device add /dev/sdb /data
konota@storage:~$ sudo btrfs device add /dev/sdc /data
konota@storage:~$ sudo btrfs balance start -dconvert=raid6 -mconvert=raid6 /data
WARNING:
RAID5/6 support has known problems and is strongly discouraged
to be used besides testing or evaluation. It is recommended that
you use one of the other RAID profiles.
The operation will continue in 10 seconds.
Use Ctrl-C to stop.
10 9 8 7 6 5 4 3 2 1
balance処理中は追加されたdeviceのusedが増加するのがわかります。
konota@storage:~$ sudo btrfs filesystem show
[sudo] password for konota:
Label: none uuid: 71cdbe11-5102-448d-9aac-2dda635edf30
Total devices 1 FS bytes used 8.57GiB
devid 1 size 58.09GiB used 11.06GiB path /dev/mapper/ubuntu--vg-ubuntu--lv
Label: '/data' uuid: 27c4fe5d-89ec-4edd-853b-82a13ce4febe
Total devices 6 FS bytes used 3.01TiB
devid 1 size 2.73TiB used 1.54TiB path /dev/sde
devid 2 size 2.73TiB used 1.54TiB path /dev/sdd
devid 3 size 2.73TiB used 1.54TiB path /dev/sdf
devid 4 size 2.73TiB used 17.27GiB path /dev/sda
devid 5 size 2.73TiB used 17.27GiB path /dev/sdb
devid 6 size 2.73TiB used 17.27GiB path /dev/sdc
balance処理中、Celeron G6900ですがtopはこのような状態です。この量の変換で一晩ほどかかりそうです。(現在進行系)
その後無事に変換が完了していることを確認しました。今回の場合、3台追加してRAID6にしたので各デバイスごとのusedは減少しました。
Top comments (0)