mdadm으로 구축된 RAID 5는 성능 저하 모드로 부팅됩니다. 이게 정상인가요?

mdadm으로 구축된 RAID 5는 성능 저하 모드로 부팅됩니다. 이게 정상인가요?

CentOS 7 설치(10x1TB)에 새 드라이브 세트를 설정하고 있는데 빌드 프로세스 중에 뭔가 짜증나는 현상이 보입니다.

어레이를 구축하려고 하면 즉시 인식되지만 오류 상태(성능 저하, 디스크 1개 누락)를 나타냅니다.

전체 빌드 명령은 다음과 같습니다.

mdadm --create /dev/md1 --level=5 --raid-devices=9 /dev/sde1 /dev/sdg1 /dev/sdc1 /dev/sdd1 /dev/sdf1 /dev/sdl1 /dev/sdj1 /dev/sdi1 /dev/sdm1 --spare-devices=1 /dev/sdk1

그러나 그런 다음 예비 드라이브 없이 동일한 작업을 시도했습니다.

mdadm --create /dev/md1 --level=5 --raid-devices=9 /dev/sde1 /dev/sdg1 /dev/sdc1 /dev/sdd1 /dev/sdf1 /dev/sdl1 /dev/sdj1 /dev/sdi1 /dev/sdm1

다음은 3개 드라이브 어레이 변형입니다.

mdadm --create /dev/md1 --level=5 --raid-devices=3 /dev/sdj1 /dev/sdi1 /dev/sdm1

mdadm --create /dev/md1 --level=5 --raid-devices=3 /dev/sde1 /dev/sdg1 /dev/sdc1

모든 경우에 새 어레이는 예상되는 사용 가능한 크기(변형의 경우 8TB 및 2TB)로 초기화됩니다. 재구축 중에도 어레이를 사용할 수 있으며 파일을 읽고 쓸 수 있습니다.

이상하게도 예비 드라이브로 구축할 때 예비 드라이브는 많은 읽기/쓰기 활동을 보여줍니다. 이는 이 드라이브가 어떻게든 구축에 관여하고 있음을 의미합니다.

기본적으로 이게 정상인가요? 정상이 아니라면 제가 뭘 잘못하고 있는 걸까요?

편집하다:

이는 다음의 출력입니다.mdadm --detail /dev/md1

/dev/md1:
        Version : 1.2
  Creation Time : Sun Jan  4 00:00:22 2015
     Raid Level : raid5
     Array Size : 7813042176 (7451.10 GiB 8000.56 GB)
  Used Dev Size : 976630272 (931.39 GiB 1000.07 GB)
   Raid Devices : 9
  Total Devices : 10
    Persistence : Superblock is persistent

    Update Time : Sun Jan  4 00:05:33 2015
          State : clean, degraded, recovering 
 Active Devices : 8
Working Devices : 10
 Failed Devices : 0
  Spare Devices : 2

         Layout : left-symmetric
     Chunk Size : 512K

 Rebuild Status : 0% complete

           Name : localhost.localdomain:1  (local to host localhost.localdomain)
           UUID : f2d4f470:9d5022bf:a397b5a0:45b94d28
         Events : 72

    Number   Major   Minor   RaidDevice State
       0       8       65        0      active sync   /dev/sde1
       1       8       97        1      active sync   /dev/sdg1
       2       8       33        2      active sync   /dev/sdc1
       3       8       49        3      active sync   /dev/sdd1
       4       8       81        4      active sync   /dev/sdf1
       5       8      177        5      active sync   /dev/sdl1
       6       8      145        6      active sync   /dev/sdj1
       7       8      129        7      active sync   /dev/sdi1
      10       8      193        8      spare rebuilding   /dev/sdm1

       9       8      161        -      spare   /dev/sdk1

답변1

예, 이는 정상입니다. 배열을 처음 생성할 때 패리티 블록을 계산하고 작성해야 합니다. 이것이 바로 여러분이 보고 있는 것입니다. 드라이브가 0으로 채워져 있다는 것을 알고 있는 경우 스위치를 사용하여 초기 재동기화를 건너뛸 --assume-clean수 있습니다. mdadm드라이브가 실제로 0으로 채워지지 않은 경우 올바른 패리티를 계산하지 않았기 때문에 어레이에 대한 향후 패리티 검사에서 많은 오류가 보고됩니다.

또한 참고로, 두 번째 드라이브가 재구축되기 전에 오류가 발생할 가능성이 높아지므로 raid5를 사용하여 이러한 대규모 어레이를 생성하는 것은 권장되지 않습니다. 대신 raid6을 사용할 수도 있습니다.

관련 정보