Общий процесс отказа
ZFS — не первый компонент в системе, который узнает о сбое диска для восстановление деградировавший ZFS zpool. Когда диск выходит из строя, становится недоступным или имеет функциональную проблему, происходит следующий общий порядок событий:
- Неисправный диск обнаруживается и регистрируется FMA.
- Диск удаляется операционной системой.
- ZFS видит измененное состояние и реагирует, выдавая ошибку устройства.
В файловой системе ZFS, являющейся сочетанием файловой системы и диспетчера томов, могут возникать сбои различных типов. В начале этой главы описываются различные типы сбоя, а затем рассматривается их идентификация в работающей системе. В завершение приводятся инструкции по устранению сбоев. В ZFS могут возникать ошибки трех основных типов:
- Отсутствие устройств в пуле устройств хранения данных ZFS
- Повреждение устройств в пуле устройств хранения данных ZFS
- Повреждение данных ZFS
Следует отметить, что в одном пуле могут возникать все три типа ошибок, поэтому полная процедура восстановления включает в себя поиск и исправление всех ошибок поочередно.
Отсутствие устройств в пуле устройств хранения данных ZFS
Если устройство полностью удалено из системы, ZFS обнаруживает, что открыть устройство невозможно, и переводит его в состояние UNAVAIL. В зависимости от уровня репликации данных пула, в некоторых случаях это может привести к недоступности всего пула. При удалении одного диска в зеркальном устройстве или устройстве RAID-Z пул остается доступным. При удалении всех компонентов зеркала и нескольких устройств в составе RAID-Z или удалении устройства верхнего уровня с одним диском пул переводится в состояние FAULTED. До повторного присоединения устройства доступных данных нет.
Повреждение устройств в пуле устройств хранения данных ZFS
Термин «повреждение» охватывает широкий спектр возможных ошибок. Ниже приведены следующие примеры ошибок:
- временные ошибки ввода/вывода вследствие неисправности диска или контроллера;
- повреждение данных на диске вследствие воздействия космических лучей;
- ошибки драйвера, приводящие к передаче данных в неправильное местоположение или из него;
- непреднамеренная перезапись части пространства физического устройства другим пользователем.
В некоторых случаях эти ошибки являются временными, например, случайная ошибка ввода/вывода при возникновении проблем в контроллере. В других случаях повреждения носят постоянный характер, например, повреждение данных на диске. Тем не менее, постоянный характер повреждения не обязательно указывает на то, что эта ошибка снова возникнет в будущем. Так, если администратор случайно перезаписывает часть диска, сбой оборудования не фиксируется и замена устройства не требуется.
Повреждение данных ZFS
Повреждение данных происходит в том случае, если одна или несколько ошибок устройств (указывающих на отсутствие или повреждение устройств) влияют на виртуальное устройство верхнего уровня. Например, на одной стороне зеркала может возникать большое количество ошибок, но это не приведет к повреждению данных. Однако в случае возникновения ошибки на другой стороне зеркала в том же расположении данные будут повреждены.
Повреждение данных всегда носит постоянный характер и требует специальной процедуры устранения сбоев. Даже при исправлении или замене основных устройств исходные данные утрачиваются окончательно. Чаще всего в этом случае необходимо восстановление данных на основе резервных копий. Ошибки в данных регистрируются по мере их возникновения, и для их обработки используется программа очистки диска. При удалении поврежденного блока в ходе следующей очистки фиксируется отсутствие повреждений, и вся информация об ошибке удаляется из системы.
Восстановление деградировавший ZFS zpool
ZFS, ZFS zpool, Восстановление ZFS zpool, Повреждение данных ZFS, хранения данных ZFS