Score:3

Linux mdraid resync ความเร็วบนอาร์เรย์ไดรฟ์ 36

ธง id

ฉันมีปัญหาด้านประสิทธิภาพกับ mdraid ฉันมีอาร์เรย์ soft Raid6 ขนาด 18x10TB หนึ่งตัวที่ซิงค์ใหม่ที่ ~ 70MB/s:

เคอร์เนล 5.8.13-1.el8
/dev/md0:
           เวอร์ชัน : 1.2
     เวลาสร้างสรรค์ : จันทร์ 5 ต.ค. 15:11:15 น. 2563
        ระดับการจู่โจม : การจู่โจม 6
        ขนาดอาร์เรย์ : 155136221184 (144.48 TiB 158.86 TB)
     ขนาด Dev ที่ใช้ : 9696013824 (9.03 TiB 9.93 TB)
      อุปกรณ์จู่โจม : 18
     รวมอุปกรณ์ : 18
       การคงอยู่: Superblock นั้นคงอยู่

     บิตแมปเจตนา: ภายใน

       อัพเดทเวลา : พุธ 18 ส.ค. 18:35:42 น. 2021
             สถานะ : สะอาด เสื่อมคุณภาพ ซิงค์ใหม่
    อุปกรณ์ที่ใช้งานอยู่ : 17
   อุปกรณ์การทำงาน : 18
    อุปกรณ์ที่ล้มเหลว : 0
     อุปกรณ์สำรอง : 1

            รูปแบบ : สมมาตรซ้าย
        ขนาดก้อน : 512K

นโยบายความสอดคล้อง: บิตแมป

     สถานะการซิงค์ใหม่: เสร็จสมบูรณ์ 25%

              ชื่อ : large2:0 (โลคัลโฮสต์ large2)
              UUID : bdb63778:b3765982:b257478b:70121351
            เหตุการณ์ : 500678

    หมายเลขหลักรอง RaidDevice สถานะ
      18 8 5 0 แอคทีฟซิงค์ /dev/sda5.dll
       1 8 21 1 การซิงค์ที่ใช้งานอยู่ /dev/sdb5
       2 8 34 2 การซิงค์ที่ใช้งานอยู่ /dev/sdc2
       3 8 50 3 แอคทีฟซิงค์ /dev/sdd2
       4 8 66 4 แอ็คทีฟซิงค์ /dev/sde2
       5 8 82 5 การซิงค์ที่ใช้งานอยู่ /dev/sdf2
       - 0 0 6 ลบออก
       7 8 114 7 การซิงค์ที่ใช้งานอยู่ /dev/sdh2
       8 8 130 8 การซิงค์ที่ใช้งานอยู่ /dev/sdi2
       9 8 146 9 แอคทีฟซิงค์ /dev/sdj2
      10 8 162 10 การซิงค์ที่ใช้งานอยู่ /dev/sdk2.dll
      11 8 178 11 การซิงค์ที่ใช้งานอยู่ /dev/sdl2.dll
      12 8 194 12 การซิงค์ที่ใช้งานอยู่ /dev/sdm2
      13 8 210 13 การซิงค์ที่ใช้งานอยู่ /dev/sdn2
      14 8 226 14 การซิงค์ที่ใช้งานอยู่ /dev/sdo2
      15 8 242 15 การซิงค์ที่ใช้งานอยู่ /dev/sdp2
      16 65 2 16 แอ็คทีฟซิงค์ /dev/sdq2.1
      17 65 18 17 แอคทีฟซิงค์ /dev/sdr2.dll

       6 8 98 - สำรอง /dev/sdg2
md0 : ใช้งาน Raid6 sdg2[6](S) sda5[18] sdr2[17] sdq2[16] sdp2[15] sdo2[14] sdn2[13] sdm2[12] sdl2[11] sdk2[10] sdj2[9 ] sdi2[8] sdh2[7] sdf2[5] sde2[4] sdd2[3] sdc2[2] sdb5[1]
      155136221184 บล็อก super 1.2 ระดับ 6, 512k อัน, อัลกอริทึม 2 [18/17] [UUUUUUU_UUUUUUUUUUUU]
      [=====>...............] resync = 25.0% (2431109212/9696013824) เสร็จสิ้น=1562.2 นาที ความเร็ว=77503K/วินาที
      บิตแมป: 9/73 หน้า [36KB], ก้อน 65536KB

อุปกรณ์ r/s w/s rkB/s wkB/s rrqm/s wrqm/s %rrqm %wrqm r_await w_await aqu-sz rareq-sz wareq-sz svctm %util
sdg 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sdb 322.00 2.80 77282.40 6.60 16471.00 0.80 98.08 22.22 412.53 126.79 133.40 240.01 2.36 2.53 82.10
sdf 339.40 0.00 77758.40 0.00 16454.40 0.00 97.98 0.00 379.81 0.00 128.91 229.11 0.00 2.39 81.28
sdr 325.00 0.00 77414.40 0.00 16465.20 0.00 98.06 0.00 405.64 0.00 131.83 238.20 0.00 2.40 77.90
เอสดีเอ็ม 329.00 0.00 78477.60 0.00 16465.40 0.00 98.04 0.00 398.25 0.00 131.02 238.53 0.00 2.38 78.36
sdi 328.60 0.00 77084.00 0.00 16460.40 0.00 98.04 0.00 391.20 0.00 128.55 234.58 0.00 2.48 81.64
sdh 335.40 0.00 77753.60 0.00 16456.20 0.00 98.00 0.00 389.88 0.00 130.77 231.82 0.00 2.42 81.14
sdj 326.40 0.00 77700.80 0.00 16464.80 0.00 98.06 0.00 408.07 0.00 133.19 238.05 0.00 2.48 80.90
sde 328.60 0.00 77700.80 0.00 16462.60 0.00 98.04 0.00 398.74 0.00 131.03 236.46 0.00 2.46 80.92
sdn 332.00 0.00 77050.40 0.00 16456.60 0.00 98.02 0.00 382.56 0.00 127.01 232.08 0.00 2.35 78.12
sdl 324.80 0.00 76341.60 0.00 16461.20 0.00 98.07 0.00 385.14 0.00 125.09 235.04 0.00 2.40 78.00
เอสดีพี 326.60 0.00 76789.60 0.00 16461.00 0.00 98.05 0.00 393.01 0.00 128.36 235.12 0.00 2.38 77.76
sdq 325.00 0.00 77281.60 0.00 16464.60 0.00 98.06 0.00 404.60 0.00 131.49 237.79 0.00 2.40 77.94
sdk 331.80 0.00 77685.60 0.00 16459.40 0.00 98.02 0.00 386.56 0.00 128.26 234.13 0.00 2.34 77.48
sda 324.20 2.80 77067.20 6.60 16464.40 0.80 98.07 22.22 426.02 135.93 138.74 237.71 2.36 2.59 84.62
sdd 327.60 0.00 77276.00 0.00 16461.80 0.00 98.05 0.00 401.83 0.00 131.64 235.89 0.00 2.47 81.02
sdc 330.80 0.00 77605.60 0.00 16460.00 0.00 98.03 0.00 396.68 0.00 131.22 234.60 0.00 2.46 81.24
sdo 326.40 0.00 77927.20 0.00 16465.60 0.00 98.06 0.00 402.73 0.00 131.45 238.75 0.00 2.40 78.38
md0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

.

และซอฟต์ Raid6 ขนาด 36x14TB ที่สองซึ่งทำการซิงค์ใหม่ครั้งแรกที่ ~40MB/s:

.

เคอร์เนล 5.13.11-1.el8
           เวอร์ชัน : 1.2
     เวลาสร้าง : อ. 17 ส.ค. 09:37:39 น. 2021
        ระดับการจู่โจม : การจู่โจม 6
        ขนาดอาร์เรย์ : 464838634496 (432.91 TiB 475.99 TB)
     ขนาด Dev ที่ใช้ : 13671724544 (12.73 TiB 14.00 TB)
      อุปกรณ์จู่โจม : 36
     รวมอุปกรณ์ : 36
       การคงอยู่: Superblock นั้นคงอยู่

     บิตแมปเจตนา: ภายใน

       Update Time : พุธ 18 ส.ค. 16:39:11 2021
             สถานะ: ใช้งานอยู่ กำลังซิงค์ใหม่
    อุปกรณ์ที่ใช้งานอยู่ : 36
   อุปกรณ์การทำงาน : 36
    อุปกรณ์ที่ล้มเหลว : 0
     อุปกรณ์สำรอง : 0

            รูปแบบ : สมมาตรซ้าย
        ขนาดก้อน : 512K

นโยบายความสอดคล้อง: บิตแมป

     สถานะการซิงค์ใหม่: เสร็จสมบูรณ์ 32%

              ชื่อ : large1:0 (โลคัลโฮสต์ large1)
              UUID : b7cace22:832e570f:eba39768:bb1a1ed6
            เหตุการณ์ : 20709

    หมายเลขหลักรอง RaidDevice สถานะ
       0 8 33 0 แอคทีฟซิงค์ /dev/sdc1
       1 8 49 1 แอคทีฟซิงค์ /dev/sdd1
       2 8 65 2 แอคทีฟซิงค์ /dev/sde1
       3 8 81 3 แอคทีฟซิงค์ /dev/sdf1
       4 8 97 4 การซิงค์ที่ใช้งานอยู่ /dev/sdg1
       5 8 113 5 การซิงค์ที่ใช้งานอยู่ /dev/sdh1
       6 8 129 6 การซิงค์ที่ใช้งานอยู่ /dev/sdi1
       7 8 145 7 แอคทีฟซิงค์ /dev/sdj1
       8 8 161 8 การซิงค์ที่ใช้งานอยู่ /dev/sdk1
       9 8 209 9 การซิงค์ที่ใช้งานอยู่ /dev/sdn1
      10 8 177 10 การซิงค์ที่ใช้งานอยู่ /dev/sdl1.dll
      11 8 225 11 การซิงค์ที่ใช้งานอยู่ /dev/sdo1
      12 8 241 12 การซิงค์ที่ใช้งานอยู่ /dev/sdp1
      13 65 1 13 การซิงค์ที่ใช้งานอยู่ /dev/sdq1
      14 65 17 14 การซิงค์ที่ใช้งานอยู่ /dev/sdr1
      15 8 193 15 การซิงค์ที่ใช้งานอยู่ /dev/sdm1
      16 65 145 16 การซิงค์ที่ใช้งานอยู่ /dev/sdz1
      17 65 161 17 การซิงค์ที่ใช้งานอยู่ /dev/sdaa1
      18 65 33 18 การซิงค์ที่ใช้งานอยู่ /dev/sds1
      19 65 49 19 การซิงค์ที่ใช้งานอยู่ /dev/sdt1
      20 65 65 20 การซิงค์ที่ใช้งานอยู่ /dev/sdu1
      21 65 81 21 การซิงค์ที่ใช้งานอยู่ /dev/sdv1
      22 65 97 22 การซิงค์ที่ใช้งานอยู่ /dev/sdw1
      23 65 113 23 การซิงค์ที่ใช้งานอยู่ /dev/sdx1
      24 65 129 24 การซิงค์ที่ใช้งานอยู่ /dev/sdy1
      25 65 177 25 การซิงค์ที่ใช้งานอยู่ /dev/sdab1
      26 65 193 26 การซิงค์ที่ใช้งานอยู่ /dev/sdac1
      27 65 209 27 การซิงค์ที่ใช้งานอยู่ /dev/sdad1
      28 65 225 28 การซิงค์ที่ใช้งานอยู่ /dev/sdae1
      29 65 241 29 การซิงค์ที่ใช้งานอยู่ /dev/sdaf1
      30 66 1 30 การซิงค์ที่ใช้งานอยู่ /dev/sdag1
      31 66 17 31 การซิงค์ที่ใช้งานอยู่ /dev/sdah1
      32 66 33 32 การซิงค์ที่ใช้งานอยู่ /dev/sdai1
      33 66 49 33 การซิงค์ที่ใช้งานอยู่ /dev/sdaj1
      34 66 65 34 การซิงค์ที่ใช้งานอยู่ /dev/sdak1
      35 66 81 35 การซิงค์ที่ใช้งานอยู่ /dev/sdal1
md0 : ใช้งาน Raid6 sdal1[35] sdak1[34] sdaj1[33] sdah1[31] sdai1[32] sdag1[30] sdaf1[29] sdac1[26] sdae1[28] sdab1[25] sdad1[27] sds1[ 18] sdq1[13] sdz1[16] sdo1[11] sdp1[12] sdx1[23] sdr1[14] sdw1[22] sdn1[9] sdaa1[17] sdv1[21] sdu1[20] sdy1[24] sdt1[19] sdk1[8] sdm1[15] sdl1[10] sdh1[5] sdj1[7] sdf1[3] sdi1[6] sdc1[0] sdg1[4] sde1[2] sdd1[1]
      464838634496 บล็อก super 1.2 ระดับ 6, 512k อัน, อัลกอริทึม 2 [36/36] [UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU]
      [======>..............] resync = 32.4% (4433869056/13671724544) เสร็จสิ้น = 3954.9 นาที ความเร็ว = 38929K/วินาที
      บิตแมป: 70/102 หน้า [280KB], ก้อน 65536KB
อุปกรณ์ r/s w/s rkB/s wkB/s rrqm/s wrqm/s %rrqm %wrqm r_await w_await aqu-sz rareq-sz wareq-sz svctm %util
sdc 9738.60 1.40 38956.00 5.80 0.40 0.40 0.00 22.22 0.20 9.29 1.93 4.00 4.14 0.07 71.82
sdd 9738.20 1.00 38952.80 2.60 0.00 0.00 0.00 0.00 0.89 5.80 8.68 4.00 2.60 0.07 71.60
sde 9738.60 1.40 38956.00 5.80 0.40 0.40 0.00 22.22 0.31 3.71 3.02 4.00 4.14 0.07 70.60
sdf 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.17 3.20 1.69 4.00 2.60 0.07 70.56
sdg 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.85 4.20 8.31 4.00 2.60 0.07 70.72
sdh 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.20 4.00 1.93 4.00 2.60 0.07 70.64
sdi 9738.60 1.00 38954.40 2.60 0.00 0.00 0.00 0.00 0.17 8.20 1.70 4.00 2.60 0.07 70.98
sdj 9714.60 1.00 38954.40 2.60 24.00 0.00 0.25 0.00 0.58 4.00 5.61 4.01 2.60 0.07 70.66
sdk 9677.00 1.00 38953.60 2.60 61.40 0.00 0.63 0.00 1.23 4.40 11.94 4.03 2.60 0.07 70.76
sdl 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.15 5.80 1.44 4.00 2.60 0.07 70.76
เอสดีเอ็ม 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.38 2.80 3.73 4.00 2.60 0.07 70.96
sdo 9705.60 1.00 38953.60 2.60 32.80 0.00 0.34 0.00 0.83 5.80 8.07 4.01 2.60 0.07 70.80
sdp 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.30 4.20 2.91 4.00 2.60 0.07 70.60
sdn 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.34 5.60 3.30 4.00 2.60 0.07 70.76
SDT 9659.80 1.00 38954.40 2.60 78.80 0.00 0.81 0.00 1.00 4.00 9.71 4.03 2.60 0.07 70.44
sds 9640.40 1.00 38954.40 2.60 98.20 0.00 1.01 0.00 1.29 5.60 12.42 4.04 2.60 0.07 70.60
sdq 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.30 4.40 2.92 4.00 2.60 0.07 70.68
sdu 9738.60 1.00 38954.40 2.60 0.00 0.00 0.00 0.00 0.13 4.40 1.31 4.00 2.60 0.07 70.66
sdv 9696.20 1.00 38954.40 2.60 42.40 0.00 0.44 0.00 1.30 4.20 12.57 4.02 2.60 0.07 70.76
sdw 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.94 4.20 9.13 4.00 2.60 0.07 70.70
sdy 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.11 4.40 1.05 4.00 2.60 0.07 70.62
sdr 9730.80 1.00 38953.60 2.60 7.60 0.00 0.08 0.00 1.22 4.20 11.87 4.00 2.60 0.07 70.68
sdx 9718.00 1.00 38954.40 2.60 20.60 0.00 0.21 0.00 0.88 4.20 8.57 4.01 2.60 0.07 70.70
sdaa 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.24 4.20 2.38 4.00 2.60 0.07 70.60
sdz 9738.40 1.00 38953.60 2.60 0.00 0.00 0.00 0.00 0.20 4.20 1.91 4.00 2.60 0.07 70.60
sdab 9633.60 1.00 38953.60 2.60 104.80 0.00 1.08 0.00 1.38 4.20 13.33 4.04 2.60 0.07 70.52
sdac 9639.20 1.00 38954.40 2.60 99.40 0.00 1.02 0.00 1.08 5.60 10.45 4.04 2.60 0.07 70.56
สดาด 9536.20 1.00 38954.40 2.60 202.40 0.00 2.08 0.00 2.73 4.00 26.04 4.08 2.60 0.07 70.36
sdaf 9738.60 1.00 38954.40 2.60 0.00 0.00 0.00 0.00 0.37 4.00 3.63 4.00 2.60 0.07 70.64
sdae 9738.60 1.00 38954.40 2.60 0.00 0.00 0.00 0.00 0.16 5.40 1.61 4.00 2.60 0.07 70.72
sdag 9735.20 1.00 38940.80 2.60 0.00 0.00 0.00 0.00 0.46 5.80 4.48 4.00 2.60 0.07 70.76
sdai 9738.60 1.00 38954.40 2.60 0.00 0.00 0.00 0.00 0.31 4.00 3.01 4.00 2.60 0.07 70.60
sdah 9661.60 1.00 38955.20 2.60 77.00 0.00 0.79 0.00 1.51 4.20 14.57 4.03 2.60 0.07 70.70
sdal 9739.20 1.40 38958.40 5.80 0.40 0.40 0.00 22.22 0.27 4.86 2.65 4.00 4.14 0.07 70.80
sdaj 9738.60 1.00 38954.40 2.60 0.00 0.00 0.00 0.00 0.17 4.40 1.68 4.00 2.60 0.07 70.64
sdak 9738.80 1.00 38955.20 2.60 0.00 0.00 0.00 0.00 0.53 5.40 5.21 4.00 2.60 0.07 70.80

อาร์เรย์ทั้งสองทำงานบนระบบที่มี 32+ คอร์, 64GB RAM+ โดยไม่มีโหลดอื่นๆ

อาร์เรย์ทั้งสองมี stripe_cache_size = 32768

กระบวนการ md0_raid6 ใช้ซีพียู 50-75% ในเซิร์ฟเวอร์ทั้งสอง

แต่ละไดรฟ์ในอาร์เรย์ทั้งสองมีการอ่านตามลำดับ >100MB/s เมื่อทดสอบโดย fio

ฮาร์ดดิสก์ 10TB คืออาร์เรย์ 18 ไดรฟ์คือ: TOSHIBA MG06ACA10TE

# blockdev --report
RO RA SSZ BSZ StartSec ขนาดอุปกรณ์
rw 8192 512 4096 0 10000831348736 /dev/sdg
rw 8192 512 4096 2048 1048576 /dev/sdg1
rw 8192 512 512 4096 10000829234688 /dev/sdg2
rw 8192 512 4096 0 10000831348736 /dev/sdb
rw 8192 512 4096 2048 1048576 /dev/sdb1
rw 8192 512 4096 4096 17179869184 /dev/sdb2
rw 8192 512 4096 33558528 1074790400 /dev/sdb3
rw 8192 512 4096 35657728 53720645632 /dev/sdb4
rw 8192 512 512 140580864 9928853929472 /dev/sdb5
rw 8192 512 4096 0 10000831348736 /dev/sdf
rw 8192 512 4096 2048 1048576 /dev/sdf1
rw 8192 512 512 4096 10000829234688 /dev/sdf2
rw 8192 512 4096 0 10000831348736 /dev/sdr
rw 8192 512 4096 2048 1048576 /dev/sdr1
rw 8192 512 512 4096 10000829234688 /dev/sdr2
rw 8192 512 4096 0 10000831348736 /dev/sdm
rw 8192 512 4096 2048 1048576 /dev/sdm1
rw 8192 512 512 4096 10000829234688 /dev/sdm2
rw 8192 512 4096 0 10000831348736 /dev/sdi
rw 8192 512 4096 2048 1048576 /dev/sdi1
rw 8192 512 512 4096 10000829234688 /dev/sdi2
rw 8192 512 4096 0 10000831348736 /dev/sdh
rw 8192 512 4096 2048 1048576 /dev/sdh1
rw 8192 512 512 4096 10000829234688 /dev/sdh2
rw 8192 512 4096 0 10000831348736 /dev/sdj
rw 8192 512 4096 2048 1048576 /dev/sdj1
rw 8192 512 512 4096 10000829234688 /dev/sdj2
rw 8192 512 4096 0 10000831348736 /dev/sde
rw 8192 512 4096 2048 1048576 /dev/sde1
rw 8192 512 512 4096 10000829234688 /dev/sde2
rw 8192 512 4096 0 10000831348736 /dev/sdn
rw 8192 512 4096 2048 1048576 /dev/sdn1
rw 8192 512 512 4096 10000829234688 /dev/sdn2
rw 8192 512 4096 0 10000831348736 /dev/sdl
rw 8192 512 4096 2048 1048576 /dev/sdl1
rw 8192 512 512 4096 10000829234688 /dev/sdl2
rw 8192 512 4096 0 10000831348736 /dev/sdp
rw 8192 512 4096 2048 1048576 /dev/sdp1
rw 8192 512 512 4096 10000829234688 /dev/sdp2
rw 8192 512 4096 0 10000831348736 /dev/sdq
rw 8192 512 4096 2048 1048576 /dev/sdq1
rw 8192 512 512 4096 10000829234688 /dev/sdq2
rw 8192 512 4096 0 10000831348736 /dev/sdk
rw 8192 512 4096 2048 1048576 /dev/sdk1
rw 8192 512 512 4096 10000829234688 /dev/sdk2
rw 8192 512 4096 0 10000831348736 /dev/sda
rw 8192 512 4096 2048 1048576 /dev/sda1
rw 8192 512 4096 4096 17179869184 /dev/sda2
rw 8192 512 4096 33558528 1074790400 /dev/sda3
rw 8192 512 4096 35657728 53720645632 /dev/sda4
rw 8192 512 512 140580864 9928853929472 /dev/sda5
rw 8192 512 4096 0 10000831348736 /dev/sdd
rw 8192 512 4096 2048 1048576 /dev/sdd1
rw 8192 512 512 4096 10000829234688 /dev/sdd2
rw 8192 512 4096 0 10000831348736 /dev/sdc
rw 8192 512 4096 2048 1048576 /dev/sdc1
rw 8192 512 512 4096 10000829234688 /dev/sdc2
rw 8192 512 4096 0 10000831348736 /dev/sdo
rw 8192 512 4096 2048 1048576 /dev/sdo1
rw 8192 512 512 4096 10000829234688 /dev/sdo2
rw 8192 512 4096 0 1072693248 /dev/md127
rw 8192 512 4096 0 53686042624 /dev/md126
rw 32768 512 4096 0 158859490492416 /dev/md0

ฮาร์ดดิสก์ 14TB ในอาร์เรย์ 36 ไดรฟ์คือ: WDC WUH721414AL5201

# blockdev --report
RO RA SSZ BSZ StartSec ขนาดอุปกรณ์
rw 8192 512 4096 0 480103981056 /dev/sda
rw 8192 512 4096 2048 535822336 /dev/sda1
rw 8192 512 4096 1048576 536870912 /dev/sda2
rw 8192 512 4096 2097152 447569985536 /dev/sda3
rw 8192 512 4096 876257280 31457280000 /dev/sda4
rw 8192 512 4096 0 480103981056 /dev/sdb
rw 8192 512 512 2048 535822336 /dev/sdb1
rw 8192 512 4096 1048576 536870912 /dev/sdb2
rw 8192 512 4096 2097152 447569985536 /dev/sdb3
rw 8192 512 4096 876257280 31457280000 /dev/sdb4
rw 8192 512 512 937698992 2080256 /dev/sdb5
rw 8192 512 4096 0 14000519643136 /dev/sdc
rw 8192 512 512 2048 13999981706752 /dev/sdc1
rw 8192 512 4096 0 14000519643136 /dev/sdd
rw 8192 512 512 2048 13999981706752 /dev/sdd1
rw 8192 512 4096 0 14000519643136 /dev/sde
rw 8192 512 512 2048 13999981706752 /dev/sde1
rw 8192 512 4096 0 14000519643136 /dev/sdf
rw 8192 512 512 2048 13999981706752 /dev/sdf1
rw 8192 512 4096 0 14000519643136 /dev/sdg
rw 8192 512 512 2048 13999981706752 /dev/sdg1
rw 8192 512 4096 0 14000519643136 /dev/sdh
rw 8192 512 512 2048 13999981706752 /dev/sdh1
rw 8192 512 4096 0 14000519643136 /dev/sdi
rw 8192 512 512 2048 13999981706752 /dev/sdi1
rw 8192 512 4096 0 14000519643136 /dev/sdj
rw 8192 512 512 2048 13999981706752 /dev/sdj1
rw 8192 512 4096 0 536281088 /dev/md2
rw 8192 512 4096 0 14000519643136 /dev/sdk
rw 8192 512 512 2048 13999981706752 /dev/sdk1
rw 8192 512 4096 0 14000519643136 /dev/sdl
rw 8192 512 512 2048 13999981706752 /dev/sdl1
rw 8192 512 4096 0 447435767808 /dev/md3
rw 8192 512 4096 0 14000519643136 /dev/sdm
rw 8192 512 512 2048 13999981706752 /dev/sdm1
rw 69632 512 4096 0 475994761723904 /dev/md0
rw 8192 512 4096 0 14000519643136 /dev/sdo
rw 8192 512 512 2048 13999981706752 /dev/sdo1
rw 8192 512 4096 0 14000519643136 /dev/sdp
rw 8192 512 512 2048 13999981706752 /dev/sdp1
rw 8192 512 4096 0 14000519643136 /dev/sdn
rw 8192 512 512 2048 13999981706752 /dev/sdn1
rw 8192 512 4096 0 14000519643136 /dev/sdt
rw 8192 512 512 2048 13999981706752 /dev/sdt1
rw 8192 512 4096 0 14000519643136 /dev/sds
rw 8192 512 512 2048 13999981706752 /dev/sds1
rw 8192 512 4096 0 14000519643136 /dev/sdq
rw 8192 512 512 2048 13999981706752 /dev/sdq1
rw 8192 512 4096 0 14000519643136 /dev/sdu
rw 8192 512 512 2048 13999981706752 /dev/sdu1
rw 8192 512 4096 0 14000519643136 /dev/sdv
rw 8192 512 512 2048 13999981706752 /dev/sdv1
rw 8192 512 4096 0 14000519643136 /dev/sdw
rw 8192 512 512 2048 13999981706752 /dev/sdw1
rw 8192 512 4096 0 14000519643136 /dev/sdy
rw 8192 512 512 2048 13999981706752 /dev/sdy1
rw 8192 512 4096 0 14000519643136 /dev/sdr
rw 8192 512 512 2048 13999981706752 /dev/sdr1
rw 8192 512 4096 0 14000519643136 /dev/sdx
rw 8192 512 512 2048 13999981706752 /dev/sdx1
rw 8192 512 4096 0 14000519643136 /dev/sdaa
rw 8192 512 512 2048 13999981706752 /dev/sdaa1
rw 8192 512 4096 0 14000519643136 /dev/sdz
rw 8192 512 512 2048 13999981706752 /dev/sdz1
rw 8192 512 4096 0 14000519643136 /dev/sdab
rw 8192 512 512 2048 13999981706752 /dev/sdab1
rw 8192 512 4096 0 14000519643136 /dev/sdac
rw 8192 512 512 2048 13999981706752 /dev/sdac1
rw 8192 512 4096 0 14000519643136 /dev/sdad
rw 8192 512 512 2048 13999981706752 /dev/sdad1
rw 8192 512 4096 0 14000519643136 /dev/sdaf
rw 8192 512 512 2048 13999981706752 /dev/sdaf1
rw 8192 512 4096 0 14000519643136 /dev/sdae
rw 8192 512 512 2048 13999981706752 /dev/sdae1
rw 8192 512 4096 0 14000519643136 /dev/sdag
rw 8192 512 512 2048 13999981706752 /dev/sdag1
rw 8192 512 4096 0 14000519643136 /dev/sdai
rw 8192 512 512 2048 13999981706752 /dev/sdai1
rw 8192 512 4096 0 14000519643136 /dev/sdah
rw 8192 512 512 2048 13999981706752 /dev/sdah1
rw 8192 512 4096 0 14000519643136 /dev/sdal
rw 8192 512 512 2048 13999981706752 /dev/sdal1
rw 8192 512 4096 0 14000519643136 /dev/sdaj
rw 8192 512 512 2048 13999981706752 /dev/sdaj1
rw 8192 512 4096 0 14000519643136 /dev/sdak
rw 8192 512 512 2048 13999981706752 /dev/sdak1

ในอาร์เรย์ทั้งสอง sync_speed_min/sync_speed_max ถูกตั้งค่าเป็น 200000

อาร์เรย์ 18drives เชื่อมต่อเป็น JBOD ผ่าน LSI SAS3008 PCI-Express Fusion-MPT SAS-3

อาร์เรย์ 36 ไดรฟ์เชื่อมต่อเป็น JBOD ผ่านคอนโทรลเลอร์สองตัว LSI SAS3008 PCI-Express Fusion-MPT SAS-3

คอนโทรลเลอร์ทั้งหมดอยู่ในสล็อต PCI-E 3.0 x8: LnkSta: ความเร็ว 8GT/s (ตกลง), ความกว้าง x8 (ตกลง)

คำถามของฉันคือ:

  1. เหตุใดอาร์เรย์ที่มี 36 ไดรฟ์จึงมีอัตราการซิงค์ซ้ำที่ช้าลงเกือบสองเท่า
  2. iostat สำหรับอาร์เรย์ที่มี 18 ไดรฟ์แสดง: 322.00 รอบ/วินาที 77282.40 rKB/วินาที 16454.40 ตร.ม./วินาที

แต่ iostat สำหรับอาร์เรย์ที่มี 36 ไดรฟ์แสดง: 9738.60 รอบ/วินาที 38956.00 rKB/วินาที 0 rrqm/วินาที

เหตุใดอาร์เรย์ที่สองจึงไม่ทำการผสาน io

  1. มีอะไรที่ฉันสามารถลองเพิ่มความเร็ว resync ในอาร์เรย์ที่สองได้หรือไม่

อัปเดต

ฉันสามารถเพิ่มความเร็วอาร์เรย์ 18drive จาก 70MB/s เป็น 180MB/s โดยเพิ่มจำนวนเธรดใน mdraid:

เสียงสะท้อน 8 > /sys/block/md0/md/group_thread_cnt

สิ่งที่น่าสนใจยิ่งกว่า - การทำแบบเดียวกันบนอาร์เรย์ 36drive ส่งผลให้ประสิทธิภาพลดลงจาก 40MB/s เป็น 30MB/s

อัพเดท 2

เพิ่งสังเกตเห็นว่า rareq-sz จาก iostat บนอาร์เรย์ไดรฟ์ 36 มีขนาดเพียง 4KB ดูเหมือนว่า IO ทั้งหมดที่ส่งไปยังดิสก์จะมีขนาดเพียง 4KB เท่านั้น นี่มันแปลกจริงๆ เหตุใด md Raid จึงทำการซิงค์ใหม่เป็นชิ้นขนาด 4KB สำหรับอาร์เรย์นี้

อัพเดท 3

ฉันได้ทำการวิจัยเพิ่มเติมเล็กน้อยเกี่ยวกับเซิร์ฟเวอร์ไดรฟ์ NVMe 24 ตัวและพบว่า คอขวดของความเร็วการซิงค์ซ้ำนั้นส่งผลต่อ RAID6 ที่มีไดรฟ์ >16 ตัว:

# mdadm --create --verbose /dev/md0 --level=6 --raid-devices=16
/dev/nvme1n1 /dev/nvme2n1 /dev/nvme3n1 /dev/nvme4n1 /dev/nvme5n1
/dev/nvme6n1 /dev/nvme7n1 /dev/nvme8n1 /dev/nvme9n1 /dev/nvme10n1
/dev/nvme11n1 /dev/nvme12n1 /dev/nvme13n1 /dev/nvme14n1 /dev/nvme15n1
/dev/nvme16n1
# iostat -dx 5
อุปกรณ์ r/s w/s rkB/s wkB/s rrqm/s wrqm/s
%rrqm %wrqm r_await w_await aqu-sz rareq-sz wareq-sz svctm %ยูทิลิตี
nvme0n1 0.00 0.00 0.00 0.00 0.00 0.00
0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
nvme1n1 342.60 0.40 161311.20 0.90 39996.60 0.00
99.15 0.00 2.88 0.00 0.99 470.84 2.25 2.51 86.04
nvme4n1 342.60 0.40 161311.20 0.90 39996.60 0.00
99.15 0.00 2.89 0.00 0.99 470.84 2.25 2.51 86.06
nvme5n1 342.60 0.40 161311.20 0.90 39996.60 0.00
99.15 0.00 2.89 0.00 0.99 470.84 2.25 2.51 86.14
nvme10n1 342.60 0.40 161311.20 0.90 39996.60 0.00
99.15 0.00 2.90 0.00 0.99 470.84 2.25 2.51 86.20

อย่างที่คุณเห็น มี 342 iops กับ ~470 rareq-sz แต่เมื่อฉัน สร้าง RAID6 ด้วย 17 ไดรฟ์ขึ้นไป:

# mdadm --create --verbose /dev/md0 --level=6 --raid-devices=17
/dev/nvme1n1 /dev/nvme2n1 /dev/nvme3n1 /dev/nvme4n1 /dev/nvme5n1
/dev/nvme6n1 /dev/nvme7n1 /dev/nvme8n1 /dev/nvme9n1 /dev/nvme10n1
/dev/nvme11n1 /dev/nvme12n1 /dev/nvme13n1 /dev/nvme14n1 /dev/nvme15n1
/dev/nvme16n1 /dev/nvme17n1
# iostat -dx 5
อุปกรณ์ r/s w/s rkB/s wkB/s rrqm/s wrqm/s
%rrqm %wrqm r_await w_await aqu-sz rareq-sz wareq-sz svctm %ยูทิลิตี
nvme0n1 0.00 0.00 0.00 0.00 0.00 0.00
0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
nvme1n1 21484.20 0.40 85936.80 0.90 0.00 0.00
0.00 0.00 0.04 0.00 0.82 4.00 2.25 0.05 99.16
nvme4n1 21484.00 0.40 85936.00 0.90 0.00 0.00
0.00 0.00 0.03 0.00 0.74 4.00 2.25 0.05 99.16
nvme5n1 21484.00 0.40 85936.00 0.90 0.00 0.00
0.00 0.00 0.04 0.00 0.84 4.00 2.25 0.05 99.16

rareq-sz ลดลงเหลือ 4, iops เพิ่มเป็น 21483 และความเร็วการซิงค์ใหม่ลดลงเหลือ 85MB/s

ทำไมมันเป็นเช่นนั้น?

ใครช่วยบอกฉันทีว่าส่วนไหนของ mdraid รหัสเคอร์เนลรับผิดชอบข้อจำกัดนี้ ?

djdomi avatar
za flag
สวัสดี ตรวจสอบ `sysctl dev.raid.speed_limit_min` และ `sysctl dev.raid.speed_limit_max` และสำหรับการสร้างใหม่ `mdadm --grow --bitmap=internal /dev/md0` และเปลี่ยนกลับ `mdadm --grow -- บิตแมป=ไม่มี /dev/md0`
forke avatar
id flag
@djdomi sync_speed_min/sync_speed_max ถูกตั้งค่าเป็น 200,000 อาร์เรย์ทั้งสองมีบิตแมปภายในที่ทำงานอยู่
Michael Hampton avatar
cz flag
ฮาร์ดไดรฟ์คืออะไร?
forke avatar
id flag
@MichaelHampton 10TB hdds คือ 18 ไดรฟ์อาร์เรย์คือ: TOSHIBA MG06ACA10TE, ฮาร์ดดิสก์ 14TB ในอาร์เรย์ 36 ไดรฟ์คือ: WDC WUH721414AL5201
djdomi avatar
za flag
หืม คุณช่วยเพิ่ม ´blockdev âreport` ได้โปรด
forke avatar
id flag
@djdomi เพิ่ม ฉันเห็นว่าขนาดบล็อกสำหรับอุปกรณ์คือ 4096 แต่ขนาดบล็อกสำหรับพาร์ติชันการโจมตีคือ 512 สิ่งนี้จะส่งผลต่อประสิทธิภาพการทำงานได้หรือไม่ การกำหนดค่าทั้งสองมีค่าเหมือนกัน StartSec ยังแตกต่างกัน - ครั้งแรกมี 4096 และครั้งที่สองมี 2048
djdomi avatar
za flag
โปรดแสดงการจู่โจมแบบเต็ม ฉันแนะนำให้ใช้รายงานโดยไม่ต้องใช้ไดรฟ์ใดๆ
Michael Hampton avatar
cz flag
ใช่ ไดรฟ์ควรเขียนเร็วกว่านั้น คุณอาจถึงขีด จำกัด เธรดของ CPU ดังที่คุณกล่าวว่า: "กระบวนการ md0_raid6 กำลังใช้ cpu 50-75% ในทั้งสองเซิร์ฟเวอร์" ฉันไม่แน่ใจว่าคุณจะจัดการกับสิ่งนั้นอย่างไร
forke avatar
id flag
@MichaelHampton เป็นซีพียู 50-75% ในคอร์เดียว การใช้งาน CPU ของระบบทั้งหมดอยู่ที่ประมาณ 2%
forke avatar
id flag
@djdomi เพิ่มรายงาน blockdev ฉบับเต็ม
Michael Hampton avatar
cz flag
ถูกต้อง. ปัญหาคือฉันไม่คิดว่ามันจะใช้มากกว่าหนึ่งเธรด
djdomi avatar
za flag
เป็นไปได้ไหมที่จะปรับแต่งการจู่โจมเพื่อให้อ่านส่วนหัวได้มากขึ้นด้วย `blockdev âsetra 65536 /dev/sdX` และเปลี่ยนกลับเมื่อเสร็จสิ้น แต่อย่าลืมว่าอาจใช้ ram มาก
forke avatar
id flag
@djdomi การตั้งค่า readahead สำหรับดิสก์ทั้งหมดเป็น 65536 จะไม่เปลี่ยนความเร็วการซิงค์ซ้ำแต่อย่างใด
forke avatar
id flag
@MichaelHampton ฉันสามารถเปลี่ยนเธรดได้โดยเปลี่ยน group_thread_cnt เป็น 8 มันเพิ่มความเร็ว 18 ไดรฟ์อาร์เรย์จาก 70MB/s เป็น 180MB/s แต่เหมือนกันสำหรับ 36 ไดรฟ์อาร์เรย์ส่งผลให้ประสิทธิภาพการทำงานลดลงจาก 40MB/s เป็น 30MB/s
djdomi avatar
za flag
@forke yeh มันเป็นแค่ความคิดทั่วไป มันอาจจะดีขึ้น แต่ก็สามารถทำสิ่งที่ตรงกันข้ามได้เช่นกัน บางที `--bitmap-chunk`อาจเพิ่มเป็น 128mb หรือมากกว่านั้นก็อาจช่วยได้
Score:3
ธง id

พบคำตอบกับผู้พัฒนาเคอร์เนล Linux mdraid มันเป็นข้อผิดพลาดในเคอร์เนลลินุกซ์

Song Liu ยืนยันว่าปัญหาเกิดจากตรรกะ blk_plug และให้แพตช์สำหรับสิ่งนี้ รายละเอียดเพิ่มเติมที่นี่:

https://lore.kernel.org/linux-raid/CAPhsuW7R=8XyU5wU1-NT-Eo=Hir7gV_b7+_MB+bUFx3bEecbDw@mail.gmail.com/

https://lore.kernel.org/linux-raid/[email protected]/T/#t

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา