mdadm raid5 재구축

mdadm raid5 재구축

기계의 먼지를 털었고 내가 망친 mdadm raid5를 고치고 싶습니다. 먼저 raid5는 3개의 디스크입니다. 세 개 중 하나가 실패하기 직전에 백업 머신이 추가되었습니다. 예비 디스크가 사용되었으며 장애가 발생한 디스크가 제거되었습니다. 이제 몇 달이 지나면 제대로 설치할 수 없습니다. 포메이션이 깨졌습니다.

원본:

root# mdadm --create --metadata=1.0 --verbose /dev/md127 --chunk=512 --level=5 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1

현재 상황:

$ cat /proc/mdstat 
Personalities : 
md127 : inactive sdb1[1](S) sda1[0](S)
  3677730784 blocks super 1.0

unused devices: <none>  

mdadm -D /dev/md127

sudo mdadm -D /dev/md127
/dev/md127:
    Version : 1.0
 Raid Level : __raid0__
Total Devices : 1
Persistence : Superblock is persistent

      State : inactive

       Name : nas:127  (local to host nas)
       UUID : 71da073c:d1928293:6947fa19:92d8a7bd
     Events : 1

Number   Major   Minor   RaidDevice

   -       8       17        -        /dev/sdb1

각 드라이브의 출력 확인

$ sudo mdadm -E /dev/sd{b,c,e}1
**/dev/sdb1**:
      Magic : a92b4efc
    Version : 1.0
Feature Map : 0x1
 Array UUID : 71da073c:d1928293:6947fa19:92d8a7bd
       Name : nas:127  (local to host nas)
Creation Time : Sun Dec 10 23:26:56 2017
 Raid Level : raid5
Raid Devices : 4

Avail Dev Size : 3677730784 (1753.68 GiB 1883.00 GB)
 Array Size : 5516594688 (5261.03 GiB 5648.99 GB)
Used Dev Size : 3677729792 (1753.68 GiB 1883.00 GB)
Super Offset : 3677730800 sectors
Unused Space : before=0 sectors, after=992 sectors
      State : clean
Device UUID : e1fdc3d2:b0f117a5:11856184:17db9522

Internal Bitmap : -16 sectors from superblock
Update Time : Mon Dec 18 11:48:12 2017
Bad Block Log : 512 entries available at offset -8 sectors
   Checksum : 54a1b1a7 - correct
     Events : **1**

     Layout : left-symmetric
 Chunk Size : 512K

Device Role : Active device 1
Array State : AA.. ('A' == active, '.' == missing, 'R' == replacing)

**/dev/sdc1**:
      Magic : a92b4efc
    Version : 1.0
Feature Map : 0x1
 Array UUID : a1498410:d13b2b4a:63379f8d:c821173f
       Name : fileserver:127
Creation Time : Mon Jan 19 15:35:41 2015
 Raid Level : raid5
Raid Devices : 4

Avail Dev Size : 3677730536 (1753.68 GiB 1883.00 GB)
 Array Size : 5516594688 (5261.03 GiB 5648.99 GB)
Used Dev Size : 3677729792 (1753.68 GiB 1883.00 GB)
Super Offset : 3677730800 sectors
Unused Space : before=0 sectors, after=992 sectors
      State : clean
Device UUID : 472f7a29:679e1f18:87ee0d4c:88b2a62b

Internal Bitmap : -16 sectors from superblock
Update Time : Sun Dec 10 21:09:34 2017
Bad Block Log : 512 entries available at offset -8 sectors
   Checksum : 68dd142f - correct
     Events : **1934728**

     Layout : left-symmetric
 Chunk Size : 512K

Device Role : Active device 1
Array State : AAAA ('A' == active, '.' == missing, 'R' == replacing)

**/dev/sde1**:
      Magic : a92b4efc
    Version : 1.0
Feature Map : 0x1
 Array UUID : 71da073c:d1928293:6947fa19:92d8a7bd
       Name : taknas:127  (local to host taknas)
Creation Time : Sun Dec 10 23:26:56 2017
 Raid Level : raid5
Raid Devices : 4

Avail Dev Size : 3677730784 (1753.68 GiB 1883.00 GB)
 Array Size : 5516594688 (5261.03 GiB 5648.99 GB)
Used Dev Size : 3677729792 (1753.68 GiB 1883.00 GB)
Super Offset : 3677730800 sectors
Unused Space : before=0 sectors, after=992 sectors
      State : clean
Device UUID : ebd3b12c:975c1a0b:4653f1ed:e9788e37

Internal Bitmap : -16 sectors from superblock
Update Time : Mon Dec 18 11:48:12 2017
Bad Block Log : 512 entries available at offset -8 sectors
   Checksum : 931a5e9d - correct
     Events : **1**

     Layout : left-symmetric
 Chunk Size : 512K

Device Role : Active device 0
Array State : AA.. ('A' == active, '.' == missing, 'R' == replacing)

당신의 생각을 소리내어 말해보세요:

raid5가 실패하고 2개의 디스크가 있는 raid0으로 이동하고 sda1이 없는 것 같습니다. 대기 모드에 있습니다.
또한 sdb1 및 sde1에 대한 이벤트 카운터가 재설정됩니다. sdb1이 다른 배열에 있는 것 같습니다. 실패한 디스크가 4개의 디스크로 구성되어 있다고 생각했기 때문에 어레이에서 실패한 디스크를 올바르게 제거하는 것을 잊었을 것입니다.

RAID 배열을 수정하고 데이터를 그대로 유지하려면 여기서 무엇을 해야 할지 잘 모르겠습니다.

답변1

sdb1은 sudo dmesg아마도 raid0 md127의 일부로 어셈블되었을 것입니다. 이상하네요. 확인해 봐야 할 것 같습니다.

그럼에도 불구하고 이 기능 장애 어레이는 현재 sdb1을 점유하고 있으므로 중지해야 합니다.

sudo mdadm --stop /dev/md127

그런 다음 2/3의 올바른 조합으로 조립해 보십시오.

sudo mdadm --assemble /dev/md127 /dev/sdb1 /dev/sde1 --verbose

작동한다면 홀수를 추가하세요.

sudo mdadm /dev/md127 --add /dev/sdc1

관련 정보