Назад | Перейти на главную страницу

Как восстановить после сбоя raid 5 2-х дисков с tw_cli?

У меня аппаратный рейд 5 из 12 дисков, 2 из них умерли, и данные больше не доступны. Мне сказали, что даже если 2 диска вышли из строя, некоторые данные можно восстановить. Мой хостинг-провайдер заменил неисправные диски на новые (вначале они заменили исправный диск на новый, но теперь все на месте).

Я использую tw_cli и думаю, что теперь мне нужно «перестроить» в массив, но я боюсь ошибиться. Я не нашел пошагового руководства для такого случая с tw_cli.

Не могли бы вы посоветовать, что нужно делать сейчас и какие именно команды с tw_cli?

#tw_cli /c0/u0 show

Unit     UnitType  Status         %Cmpl  Port  Stripe  Size(GB)  Blocks
-----------------------------------------------------------------------
u0       RAID-5    INOPERABLE     -      -     256K    20489     42968510464 
u0-0     DISK      DEGRADED       -      -     -       1862.63   3906228224  
u0-1     DISK      OK             -      p1    -       1862.63   3906228224  
u0-2     DISK      OK             -      p2    -       1862.63   3906228224  
u0-3     DISK      OK             -      p3    -       1862.63   3906228224  
u0-4     DISK      OK             -      p4    -       1862.63   3906228224  
u0-5     DISK      OK             -      p5    -       1862.63   3906228224  
u0-6     DISK      OK             -      p6    -       1862.63   3906228224  
u0-7     DISK      OK             -      p7    -       1862.63   3906228224  
u0-8     DISK      OK             -      p8    -       1862.63   3906228224  
u0-9     DISK      OK             -      p9    -       1862.63   3906228224  
u0-10    DISK      OK             -      p10   -       1862.63   3906228224  
u0-11    DISK      DEGRADED       -      -     -       1862.63   3906228224  

ОС: CentOS

ОБНОВЛЕНИЕ: как предложил @Overmind, я снова вставил диски, он сказал восстановление, теперь он говорит о неработоспособности, но 11 дисков из 12 в порядке !!

Я заменил неисправный диск (p0) на новый и попытался восстановить, но это не удалось, потому что устройство занято. есть идеи, что мне делать?

tw_cli /c0/u0 start rebuild disk=0
Sending rebuild start request to /c0/u0 on 1 disk(s) [0] ... Failed.

(0x0B:0x0033): Unit busy

Я попытался размонтировать папку на этом массиве рейдов, но это не помогло. В руководстве я прочитал, что мне следует пометить диск как запасной, поэтому я сделал это, но боюсь, что получил плохие результаты, мне действительно нужна ваша помощь.

tw_cli /c0 add type=spare disk=0
Creating new unit on controller /c0 ...  Done. The new unit is /c0/u1.

# tw_cli /c0 show

Unit  UnitType  Status         %Cmpl  Stripe  Size(GB)  Cache  AVerify  IgnECC
------------------------------------------------------------------------------
u0    RAID-5    INOPERABLE     -      256K    20489     OFF    ON       OFF      
u1    SPARE     OK             -      -       1863.01   -      OFF      -        

Port   Status           Unit   Size        Blocks        Serial
---------------------------------------------------------------
p0     OK               u1     1.82 TB     3907029168    9WM0XF4D      
p1     OK               u0     1.82 TB     3907029168    53SB7TLAS     
p2     OK               u0     1.82 TB     3907029168    53SDBSXAS     
p3     OK               u0     1.82 TB     3907029168    53SB7UJAS     
p4     OK               u0     1.82 TB     3907029168    53SB7SGAS     
p5     OK               u0     1.82 TB     3907029168    53SB8BPAS     
p6     OK               u0     1.82 TB     3907029168    53VDW0PGS     
p7     OK               u0     1.82 TB     3907029168    53SDAHTAS     
p8     OK               u0     1.82 TB     3907029168    53SB7U3AS     
p9     OK               u0     1.82 TB     3907029168    53SB7UBAS     
p10    OK               u0     1.82 TB     3907029168    53VE7D5AS     
p11    OK               u0     1.82 TB     3907029168    43N2SNDGS     

Name  OnlineState  BBUReady  Status    Volt     Temp     Hours  LastCapTest
---------------------------------------------------------------------------
bbu   On           Yes       OK        OK       OK       0      xx-xxx-xxxx  

Контроллеры 3Ware хороши - в этом нет сомнений. Но, как отмечалось выше, RAID 5 с большим количеством дисков - настоящая проблема. Если диски полностью мертвы и ушли, я бы сказал, что у вас нет возможности восстановления, кроме использования такого инструмента для восстановления данных:

https://www.runtime.org/raid.htm

Я пробовал восстанавливать данные для клиентов (очень давно), и это в лучшем случае смехотворно занимает много времени. Даже при использовании соответствующих инструментов при отсутствии двух дисков некоторые данные теряются безвозвратно. Если хотя бы один из двух дисков можно восстановить, возможно, вам повезло. Это позволило бы реконструировать, и, насколько я помню, у 3Ware это неплохо получается.

Учитывая все обстоятельства, я не хочу соглашаться с предыдущими плакатами, но с отсутствием двух дисков (и с заменой этого хорошего диска) я бы сказал, что ваши шансы довольно малы.

Учитывая относительно низкие цены на диски в наши дни (без SSD), в следующий раз выберите как минимум RAID 6 с горячим резервом. Лучшим вариантом является RAID 10 с горячим резервом (-ами), так как он обеспечивает (до) 50% отказоустойчивости и большую скорость.

Они потерпели неудачу в одно и то же время? Что значит "диски умерли"? Они механически терминированы или на них есть только порча?

В любом случае, у вас отказал двойной диск на RAID 5. Это означает, что ваши данные пропали. Массив не может быть восстановлен.

При таком количестве дисков было логично иметь RAID6, чтобы он защищал от сбоев двух дисков одновременно.

Единственный способ сохранить массив - это заменить первый отказавший диск и восстановить массив до второго сбоя.

Если один из них все еще относительно исправен, вы можете повторно вставить его в RAID и попробовать перестроить оттуда (/ c0 / u0 start rebuild disk = p), и в случае успеха заменить его после этого и запустить вторую перестройку.

Если исходные диски не сломаны механически, но их вернули (оба) и запустите / c0 u1 remove / c0 u11 remove, а затем / c0 повторно просканируйте. Это могло бы повторно добавить по крайней мере один из них в RAID, если бы он был достаточно жив.

Обратите внимание, что обозначения c0 / u0 / p зависят от версии CLI и конфигурации системы.