Linux
RAID10陣列檢查速度慢,而且變慢
我執行一台新的 CentOS 7 機器。Linux 在 2 個 SSD 設置上執行,我還在軟體 RAID10 中設置了 4 個 SAS 驅動器。RAID10 陣列很大,4 個 12TB 驅動器,所以 24TB 可用。
文件系統為:ext4
現在我完成了一些文件複製到它,我正在做一個突襲檢查*(非常第一個)*。
Every 2.0s: cat /proc/mdstat Mon Oct 14 06:28:38 2019 Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [multipath] [faulty] md127 : active raid10 sdf1[3] sdd1[1] sde1[2] sdc1[0] 23437503488 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU] [======>..............] check = 32.6% (7649123136/23437503488) finish=3402.6min speed=77333K/sec bitmap: 0/175 pages [0KB], 65536KB chunk md2 : active raid1 sdb2[1] sda2[0] 20478912 blocks [2/2] [UU] md3 : active raid1 sdb3[1] sda3[0] 447318976 blocks [2/2] [UU] bitmap: 3/4 pages [12KB], 65536KB chunk unused devices: <none>
它開始時的速度約為 250,000K/s,但速度越來越慢,現在約為 75,000K/s
RAID10 陣列中的驅動器目前沒有被其他任何東西使用。
我已經調整了限速設置。
dev.raid.speed_limit_min = 100000 dev.raid.speed_limit_max = 1000000
CPU 使用率大約為 2%,我有大量可用 RAM,並且 RAID 陣列中的 4 個驅動器報告每個驅動器的驅動器使用率約為 25%,因此它們不會因重新同步而受到嚴重推動。
我的問題:
- 我能做些什麼來加快速度?
- 什麼可能導致它變慢?
您的
message
文件完全符合我的預期:磁碟/機箱不斷中止命令並重置。受影響的磁碟似乎總是sdc
,因此它可能是罪魁禍首。解決問題的明顯措施是更換它。但是,我會首先嘗試:
- 重新安裝驅動器和電源/數據線;
- 與另一個磁碟交換
sdc
(以更改 SAS 電纜/電源線)並檢查錯誤是否跟隨驅動器或仍然綁定到相同的插槽/埠;- 可選地,直接從磁碟中讀取 via
dd if=/dev/sdc of=/dev/null bs=1M iflag=direct
以獲得額外的調試數據。如果由於某種原因無法更換驅動器,您可以嘗試通過完全重寫設備來強制重新分配壞塊
dd if=/dev/zero of=/dev/sdc bs=1M oflag=direct
。大警告:這將徹底且不可逆轉地破壞sdc
. 僅當您確實無法更換驅動器時才嘗試。