ZFS с двумя дисками: имеет ли это смысл? Какая конфигурация самая безопасная?

16

Я нахожусь в процессе планирования файлового сервера для частного использования (небольшие объемы данных различного типа, но в основном фотографии, видео, музыка). Я, вероятно, буду использовать NAS4free / FreeNAS и хочу попробовать ZFS.

Я сосредоточен не на скорости, а на надежности и безопасности данных. Тем не менее, я хочу, чтобы все было «дешево», поэтому я хочу запускать ZFS, отраженную между двумя дисками («рейд 1»). Я куплю потребительскую плату, поэтому нет аппаратного рейд-контроллера. До сих пор я думаю использовать команду ZFS 'mirror' для этой или любой другой соответствующей опции, предоставляемой FreeNAS.

Читая эту тему, я в основном вижу людей, использующих три диска и затем использующих RAIDZ-1, что делает их невосприимчивыми в случае выхода из строя одного диска. Пока я не совсем понимаю, в чем проблема зеркального отображения ZFS только между двумя дисками? Как я могу заметить, когда один диск выходит из строя? Какова стратегия восстановления после отказа? Я просто получаю сообщение о том, что файловая система не пригодна для использования, потому что диск A выходит из строя и что я должен заменить его сейчас ? Я надеюсь, что при использовании двух зеркальных дисков можно получить реальную выгоду, чем при использовании одного.

Учитывая два эквивалентных диска, в каком режиме ZFS вы будете работать?

Ян-Филипп Герке
источник

Ответы:

10

Для двух дисков нужен mirrorрежим. Это заставит диски быть точными изображениями друг друга. Если ZFS пытается прочитать блок данных с диска и не проходит проверку, ZFS автоматически попытается восстановить его. Если ремонт не удастся, он прочитает его с другого диска и пометит неисправный диск как неисправный. Вы должны получить уведомление о сбое диска, но файловая система все еще будет использоваться. Вы получаете некоторые улучшения скорости чтения, но не улучшения скорости записи.Пока у вас есть хотя бы один диск из зеркального набора, у вас есть все ваши данные.

С raidz, вам нужно как минимум три диска. Они функционируют аналогично RAID5, где (эффективно) один диск хранит информацию о восстановлении, а другие - данные. Он может обработать любой сбой диска, если только один диск выходит из строя одновременно .

raidz2и raidz3такие же raidz, за исключением того, что они могут обрабатывать два или три диска, выходящие из строя, соответственно. Тем не менее, они требуют больше дисков для работы и снижения эффективной емкости.

Дарт Андроид
источник
Спасибо за разъяснение. Итак, с RAIDZ, включающим три диска, чистая емкость больше, чем у одного из дисков, да? Будет ли это два размера диска в этом случае?
Ян-Филипп Герке
@ Jan-PhilipGehrcke Да. Предполагая, что все диски имеют одинаковый размер, зеркальный массив имеет тот же размер, что и 1 диск (независимо от того, сколько дисков вы используете), тогда как RAIDZ имеет N-1 дисков полезного пространства. (Три диска дают вам два диска свободного места, пять дисков - четыре диска свободного места и т. Д.).
Дарт Андроид
2
«С raidz вам нужно как минимум три диска». - Не верно для raidz (единый паритет). Согласно документации ZFS: «Для конфигурации RAID-Z с одной четностью вам нужно как минимум два диска, а для конфигурации RAID-Z с двойной четностью - как минимум три диска».
Пулсбо
3

Зеркало ZFS - лучший способ, если у вас есть два одинаковых диска и вы ищете надежность и безопасность данных.

RAIDZ является более дешевым решением, поскольку меньший процент хранилища отводится для защиты данных, но зеркалирование выполняется быстрее.

Об обнаружении и обработке сбоев необходимо следить за пулом ( zpool status), чтобы узнать, присутствуют ли ошибки.

Вы можете регулярно чистить бассейн, чтобы проверить его здоровье ( zpool scrub poolname)

ZFS автоматически исцелит тех, кто может, но в случае сбоя всего диска вам потребуется добавить новый диск в пул, чтобы заменить сломанный. Затем пул автоматически перенастроит новый диск (т.е. скопирует данные со здоровой зеркальной стороны).

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

Обратите внимание, что уровни NAS4Free Raid (0/1/5 и комбинация) отличаются от полос ZFS / mirror / raidz и комбинации. Я бы предложил использовать только последнее, то есть нет смысла создавать пул ZFS на томе, состоящем из программного рейда 1 (зеркало). Вы потеряете многие функции, которые предоставляет ZFS.

jlliagre
источник
Спасибо за ваш вклад. Выглядит как nas4free поддерживает основные возможности ZFS пулы хранения, такие как зеркало: wiki.nas4free.org/...
Жан-Филипп Герке
Надеюсь, это так. Я только предупреждаю вас не использовать вместо этого традиционное зеркалирование: wiki.nas4free.org/…
jlliagre
0

raid0 не является зеркалом, raid1 есть, и вы можете использовать 2 диска для установки raid1, который может переносить один отказавший диск. raid0 не может терпеть любой сбой диска.

Тем не менее, вам нужно как минимум 3 диска для raidz.

johnshen64
источник