私は経験的に単一のプロセスによるシーケンシャルリードを主に提供するraid1 mdadmアレイの場合、基本的に最初のディスクが常に選択されることを観察しました。これも確認されましたこのコードオンラインで接続しています。この問題。
デモ効果は下の図に表示されますiostat
。
iostat -h | grep -E "sda|sdb"
5.95 3.9M 5.9k 0.0k **2.8T** 4.2G 0.0k sda <-- preferred
0.38 12.1k 5.9k 0.0k 8.6G 4.2G 0.0k sdb
これを変更し、どのディスクを優先すべきかを決定する非破壊的な方法があるかどうか疑問に思います。
物理ディスクの順序を変更しましたが、最初のディスクですそれでも優先権があります。その過程で期待通りに変更されRaidDevice
ましたがNumber
、私が達成しようとする目標には何の役にも立ちませんでした。さらに、古いものはsda
変わりsdb
、その逆も同様でしたが、mdadm --detail
彼らは変わりませんでした。
設定に関するいくつかの情報は次のとおりです。
$ mdadm -V
mdadm - v3.4 - 28th January 2016
切り替える前に不均衡を読む:
iostat -h | grep -E "sda|sdb"
5.95 3.9M 5.9k 0.0k 2.8T 4.2G 0.0k sda <-- preferred
0.38 12.1k 5.9k 0.0k 8.6G 4.2G 0.0k sdb
変換後の不均衡を読む:
$ iostat -h | grep -E "sda|sdb"
11.60 427.9k 99.5k 0.0k 252.4M 58.7M 0.0k sda
120.68 105.5M 99.5k 0.0k 62.2G 58.7M 0.0k sdb <-- still preferred
移行前のアレイの詳細:
cat /proc/mdstat
md2 : active raid1 sdb3[0] sda3[2]
13667560448 blocks super 1.2 [2/2] [UU]
mdadm --detail /dev/md2
/dev/md2:
Version : 1.2
Raid Level : raid1
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
UUID : ddb468d7:8c866278:6f56b7eb:0a911253
Number Major Minor RaidDevice State
0 8 3 0 active sync /dev/sda3
2 8 19 1 active sync /dev/sdb3
切り替え後のアレイの詳細:
cat /proc/mdstat
md2 : active raid1 sda3[0] sdb3[2]
13667560448 blocks super 1.2 [2/2] [UU]
mdadm --detail /dev/md2
/dev/md2:
Version : 1.2
Raid Level : raid1
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
UUID : ddb468d7:8c866278:6f56b7eb:0a911253
Number Major Minor RaidDevice State
0 8 19 0 active sync /dev/sdb3
2 8 3 1 active sync /dev/sda3 <- this partition name didn't get changed