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

Если два элемента тома RAID 1 имеют несовместимые биты, как с этим справляется большинство контроллеров RAID?

Я использую VROC для CPU RAID с некоторыми накопителями NVMe. У меня есть массив RAID 1, который, похоже, имеет проблемы. Вместо того, чтобы утомлять вас подробностями, у меня есть более общий вопрос.

Как VROC (или контроллер RAID 1 в целом) справляется с ситуацией, когда диски имеют несовместимые биты? Невозможно узнать, какой из них правильный, потому что нет бита четности.

Как с этим справляется большинство RAID-контроллеров?

Контроллеры RAID никогда не считывают данные с обоих зеркальных дисков для сравнения данных. Итак, ответ таков: вы получите несогласованное чтение, которое вы должны обнаружить и обработать на уровне файловой системы. Современные файловые системы, такие как ZFS, BtrFS и даже мертвые ReFS, имеют опции для хеширования как метаданных, так и фактических данных.

Классические реализации RAID1 делают не проверьте оба зеркала для сравнения, ни во время нормальной работы, ни при чистке. Например, Linux MDRAID почти всегда считывает данные из первой ветви зеркала, в то время как некоторые аппаратные контроллеры используют циклический подход.

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

Зеркала BTRFS и ZFS - это совсем другое дело: используя контрольную сумму данных, они могут немедленно идентифицировать (и исправлять) плохие / поврежденные данные.