Ремонт RAID массива (Adaptec ASR-3405)

Написал admin . Опубликовано в Storage просмотров 805

Так себеПойдетХорошоПонравилосьОтличный пост (No Ratings Yet)
Загрузка...

Случилась авария на массиве raid6. В связи с эти решил написать, как продиагностировать или по крайней мере определить, что же с массивом не так. Для этого воспользуемся чудной адаптековской утилиткой — arcconf

# arcconf


| UCLI | Adaptec uniform command line interface
| UCLI | Version 5.30 (B17509)
| UCLI | (C) Adaptec 2003-2008
| UCLI | All Rights Reserved


COPYBACK | toggles controller copy back mode
CREATE | creates a logical device
DATASCRUB | toggles the controller background consistency check mode
DELETE | deletes one or more logical devices
FAILOVER | toggles the controller autotomatic failover mode
GETCONFIG | prints controller information
GETLOGS | gets controller log information
GETSTATUS | displays the status of running tasks
GETVERSION | prints version information for all controllers
IDENTIFY | blinks LEDS on device(s) connected to a controller
KEY | installs a Feature Key onto a controller
MODIFY | performs RAID Level Migration or Online Capacity Expansion
RESCAN | checks for new or removed drives
ROMUPDATE | updates controller firmware
SETALARM | controls the controller alarm, if present
SETCONFIG | restores the default configuration
SETCACHE | adjusts physical or logical device cache mode
SETNAME | renames a logical device given its logical device number
SETPRIORITY | changes specific or global task priority
SETSTATE | manually sets the state of a physical or logical device
TASK | performs a task such as build/verify on a physical or logical device

Для начала смотрим что драйвер контроллера нам скажет по поводу конфигурации массива, все ли секменты массива в порядке, сколько их и прочую информацию.

arcconf getconfig 1

Если все сегменты в порядке судя по конфигу, то стоит визуально посмотреть как себя ведут винты в массиве. В моем случае один из винтов лихорадочно моргал, в то время как остальные винты практически спали. При все при этом, обратиться к разделу на этом массиве было практически невозможно — ls любой каталог раздела длился порядка 30-40 секунд. Значит что-то здесь не то.

Продолжим собирать информацию, прежде чем что-то делать — тут торопидза не нада.

Вытянем логи с контролера. Они не очень информативные, но хоть что-то.

arcconf getlogs 1 DEVICE
arcconf getlogs 1 DEAD
arcconf getlogs 1 EVENT

Дату в логах можно перевести в удобоваримый вид к примеру так

perl -e 'print scalar(localtime(1234883784))'

Вычисляем какой из сегментов (винтов) массива косячит и пробуем сделаеть ему verify.

arcconf start 1 device verify

Посмотреть статус проверки можно так

arcconf getstatus 1

Если с ним что-то не так, то проверка это покажет.

Начинаем лечить наш массив. Есть два метода.
1. Починить из системы в режиме онлайн (если карзинки поддерживают хотсвоп)
2. Чинить из биоса контроллера

Второй метод описывать не буду, т.к. он сильно зависит от версии контроллера. Поэтому делаем так. Вытягиваем сбойный диск (систему не останавливаем, при чем еще раз оговорюсь, что у меня массив с избыточным резервированием, raid6), система продолжает работать в частично разрушенном состоянии. Это можно увидеть, если запросить конфиг контроллера еще раз.
И так, все хорошо — массив работает без нашего диска. Теперь стоит на его место вставить точно такой же, новый винт. Ставим. После чего запускаем рескан дисков, чтобы контроллер обнаружил новый диск и включил его в наш массив.

arcconf rescan

После сканирования дисков, массив должен обнаружить новый диск и включить ребилд нашего массива. Это состояние опять же стоит посмотреть

arcconf getstatus 1

Если идет ребилд массива, значит все в порядке и по его завершению, мы получим новый винт в строю массива.

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

Похожие статьи:

Метки: , , , , , , , ,

Trackback from your site.

Leave a comment