Развалился RAID-массив: алгоритм действий

Опубликовано: 20 сентября  |  Рубрика: Восстановление данных  |  Автор: мастер «Гизмы»
Развалился RAID-массив: алгоритм действий

Сервер перестал видеть общий диск, сетевое хранилище пишет «Volume crashed», а контроллер в BIOS показывает массив в состоянии Failed или Offline. RAID создавали как раз для того, чтобы такого не случалось, но массивы разваливаются, и довольно регулярно. Опасность этой ситуации в том, что в интерфейсе контроллера или хранилища обычно есть заманчивые кнопки «Rebuild», «Initialize», «Create new array», и одно неверное нажатие способно превратить вполне восстановимую поломку в полную потерю данных. Разберём, почему массивы выходят из строя, каким должен быть порядок действий и какие ошибки встречаются чаще всего.

Коротко о RAID и почему он не резервная копия

RAID объединяет несколько дисков в один логический том. В зависимости от уровня он даёт прирост скорости, защиту от отказа одного или двух дисков, или то и другое. Но RAID защищает только от одной вещи — выхода из строя отдельного диска. От удаления файлов, шифровальщиков, ошибок контроллера, пожара и кражи он не спасает.

УровеньПринципСколько дисков можно потерятьОсобенности восстановления
RAID 0Чередование без избыточностиНи одногоНужны все диски, отказ одного — потеря тома
RAID 1ЗеркалоВсе, кроме одногоПроще всего, каждый диск содержит полную копию
RAID 5Чередование с одной чётностьюОдинВажно определить порядок дисков, размер блока, алгоритм
RAID 6Чередование с двойной чётностьюДваСложнее вычисления, но выше устойчивость
RAID 10Зеркала, объединённые чередованиемПо одному в каждой пареНужно найти живой диск в каждой зеркальной паре

Фраза «у нас RAID, поэтому бэкапы не нужны» — одна из самых дорогих ошибок, с которыми приходится сталкиваться при обслуживании офисной инфраструктуры.

Почему массивы разваливаются

Причины можно разделить на несколько групп:

  • Последовательный отказ дисков. Диски в массиве обычно куплены одновременно, из одной партии, работают в одинаковых условиях и изнашиваются синхронно. Когда один выходит из строя, остальные часто на подходе. Деградировавший RAID 5 может работать месяцами, пока не откажет второй диск.
  • Ошибка при ребилде. Во время перестроения все оставшиеся диски читаются целиком. Если на одном из них есть нечитаемые секторы, о которых никто не знал, ребилд прерывается, и массив уходит в Failed.
  • Отказ контроллера или его батареи кэша, сбой прошивки.
  • Проблемы с питанием. Внезапное отключение без ИБП, особенно при включённом кэшировании записи.
  • Ошибки обслуживания. Заменили не тот диск, перепутали порядок при переносе в новый корпус, обновили прошивку хранилища.
  • Логические повреждения. Сами диски целы, а повреждена файловая система или метаданные массива.

Алгоритм действий при сбое

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

  1. Остановитесь. Не нажимайте никаких кнопок в интерфейсе контроллера или хранилища, пока не поймёте, что произошло. Особенно — Initialize, Create, Rebuild, Force Online, Clear Configuration.
  2. Зафиксируйте состояние. Сделайте снимки экрана с конфигурацией массива, статусами дисков, журналом событий контроллера или хранилища. Запишите, в каком порядке диски стоят в корзинах, пронумеруйте их маркером.
  3. Оцените, есть ли свежие резервные копии. Если есть и они проверены, возможно, проще восстановиться из них и пересобрать массив с нуля.
  4. Если массив в состоянии Degraded и данные доступны — первым делом скопируйте самое важное на отдельный носитель. Только потом думайте о замене диска и ребилде.
  5. Если массив недоступен — выключите систему. Каждое включение, попытка монтирования или фоновая проверка нагружают диски, которые, возможно, тоже на грани.
  6. Обратитесь к специалистам, передав все диски массива, включая «выпавшие», с пометками о порядке и всю собранную информацию.

Ошибки, которые губят массивы

Из года в год в сервис приносят одни и те же сценарии. Перечислим самые разрушительные.

Ребилд на неисправных дисках

Контроллер предлагает заменить выпавший диск и запустить перестроение. Но если один из оставшихся дисков имеет нечитаемые участки, ребилд либо остановится, либо — что хуже — запишет на новый диск «вычисленный» мусор. Прежде чем запускать перестроение, нужно проверить SMART всех дисков массива, а в идеале — сделать их посекторные копии.

Force Online для давно выпавшего диска

Диск выпал из массива несколько недель назад, массив всё это время работал в деградированном режиме, данные менялись. Если принудительно вернуть старый диск в строй, контроллер будет считать его данные актуальными. Результат — рассогласование: часть блоков новая, часть устаревшая, файловая система повреждена.

Пересоздание массива

Некоторые советуют «пересоздать массив с теми же параметрами без инициализации». Теоретически это может сработать, если точно известны порядок дисков, размер блока, алгоритм чётности и смещение данных. На практике достаточно ошибиться в одном параметре — и контроллер начнёт записывать новые метаданные или запустит фоновую инициализацию, затирая данные.

Проверка файловой системы на развалившемся томе

Если массив собран неправильно, chkdsk или fsck «исправит» то, что видит, — то есть окончательно перемешает структуры, пытаясь привести их в порядок.

Перестановка дисков в другие корзины

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

Как восстанавливают данные с RAID

Профессиональное восстановление никогда не начинается с работы на самом массиве. Порядок такой:

  • Диагностика каждого диска отдельно. Физически неисправные диски сначала ремонтируют, как одиночные накопители.
  • Посекторные образы всех дисков. Дальнейшая работа идёт только с копиями, оригиналы остаются нетронутыми.
  • Определение параметров массива. По метаданным контроллера, если они сохранились, или анализом содержимого: порядок дисков, размер блока, направление и тип чётности, смещение начала данных. Специальные программы проверяют гипотезы по структурам файловой системы и известным типам файлов.
  • Виртуальная сборка. Массив собирается программно из образов, при необходимости с исключением наиболее «устаревшего» диска.
  • Восстановление файловой системы и копирование данных на новый носитель.

С сетевыми хранилищами есть своя специфика: многие из них используют программный RAID на базе Linux, поверх которого лежит менеджер томов и файловая система вроде ext4 или Btrfs. Каждый слой может быть повреждён отдельно, и восстановление идёт послойно.

Из практики: в небольшом офисе хранилище на четыре диска в RAID 5 сообщило о сбое одного диска. Системный администратор на аутсорсе заменил его, запустил ребилд, который на середине остановился из-за ошибок второго диска. Затем, пытаясь исправить ситуацию, он пересоздал том через интерфейс хранилища. Данные удалось восстановить, но лишь частично и после долгой работы с образами. Если бы до ребилда сделали копии дисков, восстановление заняло бы несколько дней и было бы полным.

Как снизить риск развала массива

  • делайте резервные копии данных с массива на отдельный носитель или в облако — RAID их не заменяет;
  • настройте уведомления о состоянии дисков на почту: деградация не должна тянуться неделями;
  • при сборке используйте диски из разных партий и предназначенные для работы в массивах;
  • держите на складе запасной диск, чтобы заменить выпавший сразу;
  • для массивов с чётностью регулярно запускайте фоновую проверку целостности — она находит плохие секторы до того, как они сорвут ребилд;
  • подключайте сервер и хранилище через ИБП с корректным завершением работы;
  • на больших дисках отдавайте предпочтение RAID 6 или RAID 10 вместо RAID 5.

Итог

Развалившийся RAID — ситуация, в которой торопливость стоит особенно дорого. Правильный порядок: остановиться, зафиксировать конфигурацию и порядок дисков, скопировать доступные данные, если массив ещё работает, и не запускать ребилд, пересоздание и проверку файловой системы без полной уверенности в состоянии каждого диска. Профессиональное восстановление всегда идёт через образы дисков и виртуальную сборку, не трогая оригиналы.

Если массив на сервере или сетевом хранилище перестал собираться, мастера «Гизмы» в Новосибирске восстановят данные и помогут выстроить надёжную схему хранения. Подробнее — на странице восстановления данных с SSD и RAID, а постоянный контроль состояния офисного оборудования входит в абонентское обслуживание.

Последнее обновление: 20 сентября

Комментарии

Комментариев пока нет. Будьте первым — задайте вопрос мастеру или поделитесь опытом.

Написать комментарий