Làm cách nào để kích hoạt lại mảng MDADM RAID5 của tôi?


22

Tôi vừa mới chuyển nhà có liên quan đến việc tháo dỡ máy chủ của tôi và kết nối lại. Kể từ khi làm như vậy, một trong các mảng MD5M RAID5 của tôi xuất hiện dưới dạng không hoạt động:

root@mserver:/tmp# cat /proc/mdstat 
Personalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10] 
md1 : active raid5 sdc1[1] sdh1[2] sdg1[0]
      3907023872 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]

md0 : inactive sdd1[0](S) sdf1[3](S) sde1[2](S) sdb1[1](S)
      3907039744 blocks

unused devices: <none>

Có vẻ như tôi đã tìm thấy tất cả các đĩa nhưng vì một số lý do không muốn sử dụng chúng.

Vậy các nhãn (S) có ý nghĩa gì và làm thế nào tôi có thể nói với MDADM để bắt đầu sử dụng lại mảng?

[Chỉnh sửa] Tôi vừa thử dừng và lắp ráp mảng với -v:

root@mserver:~# mdadm --stop /dev/md0
mdadm: stopped /dev/md0

root@mserver:~# mdadm --assemble --scan -v
mdadm: /dev/sde1 is identified as a member of /dev/md0, slot 2.
mdadm: /dev/sdf1 is identified as a member of /dev/md0, slot 3.
mdadm: /dev/sdd1 is identified as a member of /dev/md0, slot 0.
mdadm: /dev/sdb1 is identified as a member of /dev/md0, slot 1.
mdadm: added /dev/sdd1 to /dev/md0 as 0 (possibly out of date)
mdadm: added /dev/sdb1 to /dev/md0 as 1 (possibly out of date)
mdadm: added /dev/sdf1 to /dev/md0 as 3 (possibly out of date)
mdadm: added /dev/sde1 to /dev/md0 as 2
mdadm: /dev/md0 assembled from 1 drive - not enough to start the array.

.. và nhập mèo /proc/mdstattrông không khác.

[Edit2] Không chắc chắn nếu nó giúp nhưng đây là kết quả của việc kiểm tra từng đĩa:

root @ mserver: ~ # mdadm --examine / dev / sdb1

/dev/sdb1:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 2f331560:fc85feff:5457a8c1:6e047c67 (local to host mserver)
  Creation Time : Sun Feb  1 20:53:39 2009
     Raid Level : raid5
  Used Dev Size : 976759936 (931.51 GiB 1000.20 GB)
     Array Size : 2930279808 (2794.53 GiB 3000.61 GB)
   Raid Devices : 4
  Total Devices : 4
Preferred Minor : 0

    Update Time : Sat Apr 20 13:22:27 2013
          State : clean
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0
       Checksum : 6c8f71a3 - correct
         Events : 955190

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     1       8       17        1      active sync   /dev/sdb1

   0     0       8      113        0      active sync   /dev/sdh1
   1     1       8       17        1      active sync   /dev/sdb1
   2     2       8       97        2      active sync   /dev/sdg1
   3     3       8       33        3      active sync   /dev/sdc1

root @ mserver: ~ # mdadm --examine / dev / sdd1

/dev/sdd1:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 2f331560:fc85feff:5457a8c1:6e047c67 (local to host mserver)
  Creation Time : Sun Feb  1 20:53:39 2009
     Raid Level : raid5
  Used Dev Size : 976759936 (931.51 GiB 1000.20 GB)
     Array Size : 2930279808 (2794.53 GiB 3000.61 GB)
   Raid Devices : 4
  Total Devices : 2
Preferred Minor : 0

    Update Time : Sat Apr 20 18:37:23 2013
          State : active
 Active Devices : 2
Working Devices : 2
 Failed Devices : 2
  Spare Devices : 0
       Checksum : 6c812869 - correct
         Events : 955205

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     0       8      113        0      active sync   /dev/sdh1

   0     0       8      113        0      active sync   /dev/sdh1
   1     1       0        0        1      faulty removed
   2     2       8       97        2      active sync   /dev/sdg1
   3     3       0        0        3      faulty removed

root @ mserver: ~ # mdadm --examine / dev / sde1

/dev/sde1:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 2f331560:fc85feff:5457a8c1:6e047c67 (local to host mserver)
  Creation Time : Sun Feb  1 20:53:39 2009
     Raid Level : raid5
  Used Dev Size : 976759936 (931.51 GiB 1000.20 GB)
     Array Size : 2930279808 (2794.53 GiB 3000.61 GB)
   Raid Devices : 4
  Total Devices : 2
Preferred Minor : 0

    Update Time : Sun Apr 21 14:00:43 2013
          State : clean
 Active Devices : 1
Working Devices : 1
 Failed Devices : 2
  Spare Devices : 0
       Checksum : 6c90cc70 - correct
         Events : 955219

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     2       8       97        2      active sync   /dev/sdg1

   0     0       0        0        0      removed
   1     1       0        0        1      faulty removed
   2     2       8       97        2      active sync   /dev/sdg1
   3     3       0        0        3      faulty removed

root @ mserver: ~ # mdadm --examine / dev / sdf1

/dev/sdf1:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 2f331560:fc85feff:5457a8c1:6e047c67 (local to host mserver)
  Creation Time : Sun Feb  1 20:53:39 2009
     Raid Level : raid5
  Used Dev Size : 976759936 (931.51 GiB 1000.20 GB)
     Array Size : 2930279808 (2794.53 GiB 3000.61 GB)
   Raid Devices : 4
  Total Devices : 4
Preferred Minor : 0

    Update Time : Sat Apr 20 13:22:27 2013
          State : clean
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0
       Checksum : 6c8f71b7 - correct
         Events : 955190

         Layout : left-symmetric
     Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
this     3       8       33        3      active sync   /dev/sdc1

   0     0       8      113        0      active sync   /dev/sdh1
   1     1       8       17        1      active sync   /dev/sdb1
   2     2       8       97        2      active sync   /dev/sdg1
   3     3       8       33        3      active sync   /dev/sdc1

Tôi có một số lưu ý cho thấy các ổ đĩa ban đầu được lắp ráp như sau:

md0 : active raid5 sdb1[1] sdc1[3] sdh1[0] sdg1[2]
      2930279808 blocks level 5, 64k chunk, algorithm 2 [4/4] [UUUU]

[Chỉnh sửa3]

Nhìn qua các log nó trông giống như sau đây xảy ra (dựa trên Update Timetrong --examinekết quả):

  1. sdb và sdf đã bị loại một thời gian sau 13:22 vào ngày 20
  2. sdd đã bị đánh gục một thời gian sau 18 giờ 37 phút ngày 20
  3. máy chủ đã ngừng hoạt động một lúc sau 14:00 ngày 1

Cho rằng hai đĩa bị hỏng (rõ ràng) đồng thời, tôi nghĩ rằng nó sẽ an toàn một cách hợp lý để giả sử rằng mảng sẽ không được ghi vào sau thời điểm đó (?) Và do đó, nó sẽ tương đối an toàn để buộc nó phải khởi động lại trong đúng thứ tự? Lệnh an toàn nhất để làm điều đó là gì và có cách nào để thực hiện mà không cần viết bất kỳ thay đổi nào không?

Câu trả lời:


28

Các Snhãn có nghĩa là đĩa được coi là "phụ tùng". Bạn nên thử dừng và bắt đầu lại mảng:

  mdadm --stop /dev/md0
  mdadm --assemble --scan

để lắp ráp lại mảng và nếu điều đó không hoạt động, bạn có thể cần cập nhật mdadm.conf, xem ví dụ câu hỏi này để biết chi tiết về cách thực hiện.


Đã thử điều đó (và được thêm vào -vđể xem những gì đang xảy ra) nhưng tất cả các đĩa cần được thêm vào đều nhận được phản hồi dọc theo các dòng sau : mdadm: /dev/sdb1 is busy - skipping.
Jon Lồng

chỉ cần dừng md0 và lắp ráp lại mảng
krizna

đã thử điều đó - vẫn không gặp may (xem bản chỉnh sửa của tôi)
Jon Cage

2
Ok, có vẻ như nó nghĩ rằng RAID không được tắt đúng cách, nếu bạn chắc chắn rằng nó không, hãy thử -Rhoặc -f. Nếu thất bại, quá, tạo lại mảng bằng cách sử dụng mdadm create /dev/md0 --assume-clean <original create options> /dev/sd[dbfe]1. Được cảnh báo: Tất cả các tùy chọn này có thể phá hủy dữ liệu của bạn.
Stefan Seidel

3
Vâng, tôi đã đi cho nó và mdadm --assemble --scan --forcelàm việc. Mảng được sao lưu và chạy và tôi có quyền truy cập vào dữ liệu của mình :)
Jon Cage

9

Câu hỏi này hơi cũ, nhưng câu trả lời có thể giúp ai đó đối mặt với tình huống tương tự. Nhìn vào số lượng sự kiện từ sản lượng mdadm --examine mà bạn đã cung cấp, chúng có vẻ đủ gần (955190 - cho sdb1 và sdf1, 955219 cho sde1 và cho sdd1 bạn đã có 955205). Nếu chúng dưới 40-50, điều này là ổn, và trong trường hợp đó, quá trình hành động được đề xuất là lắp ráp mảng của bạn theo cách thủ công, buộc mdadm phải chấp nhận các ổ đĩa mặc dù có sự khác biệt về số lượng sự kiện:

Dừng mảng:

mdadm --stop /dev/md0

Sau đó thử gắn lại mảng bằng tay:

mdadm --assemble --force /dev/md0 /dev/sdb1 /dev/sdd1 /dev/sde1 /dev/sdf1

Kiểm tra trạng thái của mảng, để kiểm tra xem danh sách / cấu trúc ổ đĩa có ổn không (phần dưới của đầu ra lệnh sẽ hiển thị ổ đĩa nào ở trạng thái nào và ở vị trí nào trong mảng):

mdadm --detail /dev/md0

Nếu cấu trúc ổn, kiểm tra tiến độ xây dựng lại:

cat /proc/mdstat

0

Bạn có thể kích hoạt Raid md0 bằng lệnh bên dưới

mdadm -A /dev/md0

và lệnh này để cập nhật tệp mdadm.conf

mdadm --examine --scan >> /etc/mdadm/mdadm.conf
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.