Запустить ZFS RAIDZ zpool с двумя дисками, а затем добавить третий?


13

Допустим, у меня есть два жестких диска по 2 ТБ, и я хочу запустить свой первый ZFS zpool. Можно ли создать RAIDZ только с этими двумя дисками, предоставив мне 2 ТБ полезной памяти (если я правильно понимаю), а затем добавить еще один 2 ТБ жесткого диска, в результате чего общий объем полезной памяти составит 4 ТБ. Я прав, или для начала нужно три HDD?

Причина, по которой я спрашиваю, у меня уже есть один накопитель на 2 ТБ, который я использую, который полон файлов. Я хочу перейти на zpool, но я бы предпочел купить только еще два диска по 2 ТБ, если смогу. Из того, что я понимаю, RAIDZ ведет себя подобно RAID5 (с некоторыми существенными отличиями, я знаю, но с точки зрения емкости). Однако для RAID5 требуется более 3 дисков. Мне было интересно, если RAIDZ имеет такое же требование.

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

Ответы:


13

Метод, который используют некоторые люди, но он не рекомендуется:

  1. Создайте пул с двумя дисками и разреженным файлом (нужного виртуального размера, соответствующего другим дискам), а затем немедленно отключите разреженный файл. Это создаст ухудшенный пул RAID-Z1 с емкостью двух дисков и без избыточности.
  2. Скопируйте данные в поврежденный пул.
  3. Замените отключенный sparse-файл третьим диском и резервным диском.

Количество «устройств», с которыми создается vdev, является постоянным после создания. Следовательно, у вас должно быть три «диска» на момент создания. Этот метод позволяет создать ухудшенный пул RAID-Z1 и впоследствии восстановить отсутствующую избыточность.

Этот метод не рекомендуется, поскольку при копировании и отсутствии 3-го диска нет избыточности / четности. Но это может сработать.


1
Спасибо за этот ответ. Мы не всегда ищем рекомендуемое решение. Иногда мы ищем ЛЮБОЕ решение. Ссылка на то, как сделать то, что вы объясняете, была бы хороша
jsaddwater

К сожалению, я не могу создать разреженный файл объемом 1 ТБ на диске емкостью 250 ГБ, поэтому при создании массива RAIDZ с двумя дисками емкостью 1 ТБ + один файл разреженного размера (10 ГБ) массив становится размером 3x10 ГБ. После удаления разреженного файла я не смог увеличить массив, потому что не мог скопировать данные с третьего диска в небольшой массив размером 3x10 ГБ, и массив не может быть увеличен в поврежденном состоянии. Улов 22.
jsaddwater,

6

К сожалению, на данный момент это невозможно :

Невозможно добавить диск в качестве столбца для RAID-Z, RAID-Z2 или RAID-Z3 vdev. Эта функция зависит от функции перезаписи указателя блока, которая должна быть добавлена ​​в ближайшее время. Однако можно создать новый RAID-Z vdev и добавить его в zpool.

RAID-Z1 может работать только с двумя дисками, но, очевидно, это не очень полезно, если дополнительные диски не могут быть добавлены позже. RAID-Z (как и RAID 5) становится более эффективным с точки зрения полезного пространства хранения, чем больше используется дисков.


4
Вот мы три года спустя, а на странице Википедии все еще написано «скоро будет добавлено» ... :(
Icydog

2
@Icydog очень скоро ;-)
jlliagre

а сейчас? :)
black_puppydog

3

RAID-Z1 можно использовать только с двумя дисками, но это не дает никаких преимуществ по сравнению с зеркалированием - если только два ваших диска не имеют разный размер сектора, поэтому их нельзя зеркально отразить (например, новый диск 4K сектора и более старый 512). байт диск).

Как уже говорилось, добавление устройства в RAID-Z не поддерживается. Если вы хотите добавить диск к существующему RAID-Z, единственный способ - сделать резервную копию ваших данных в другом месте, уничтожить пул и воссоздать его с добавленным дополнительным диском, а затем восстановить ваши данные.


3

Не хватает «репутации», чтобы комментировать, поэтому поместите это как отдельный ответ

RE: предложение Holger G

хотя я согласен, что это НЕ безопасно ... Я обнаружил, что этот поток ищет способ перейти с RAIDZ1 на RAIDZ2 на более позднем этапе, когда можно будет приобрести дополнительный диск.

Таким образом, предложение Holgers прекрасно работает для меня - создайте RAIDZ2 с одним файлом-разработчиком в виде разреженного файла, отключите файловое устройство и на некоторое время подключите RAIDZ1, а затем добавьте реальное устройство в какой-то момент, чтобы удвоить избыточность

Также работает для ситуации, когда один диск содержит данные, которые должны быть скопированы в новый рейд, как OP.


RAIDZ2 глупы - единственная ситуация, когда конфигурация может быть полезной, это коррелированный отказ двух дисков. Вместо того чтобы использовать два диска для защиты от этого, защитите себя от таких сбоев, используя диски одинаковой емкости от разных производителей и / или разных моделей.
Михаил Т.

@MikhailT. - Хотя использование разных производителей - хороший совет, ужасный совет - сказать, что RaidZ2 - глупость; восстановление может убить другой диск.
antiduh

Перестройка может привести к гибели другого диска, только если все диски идентичны уже вышедшим из строя и, следовательно, могут иметь коррелированный сбой. И в этом случае наличие двух дисков вам тоже не поможет - скорее всего, они все сразу выйдут из строя. Если ожидаемые отказы дисков независимы , то отказ от нескольких дисков в целях резервирования не дает ощутимого улучшения надежности.
Михаил Т.

0

Просто чтобы немного осветить:

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

Но подумайте об этой другой ситуации:

  1. Один диск вышел из строя
  2. Вы ставите новый и позволяете ему «перестраивать», чтобы быть в безопасности
  3. Пока такое «восстановление» уже сделано (возможно, несколько часов), другой диск выходит из строя

Вы потеряли все !!! Это основная причина терпеть одновременный сбой двух дисков.

Но если вы действительно параноик (как и я), вы будете использовать только Stripping, а не другой уровень RAID.

Я сумасшедший? Нет, конечно ... я не против отказа одного диска и потери всех данных! Я действительно ничего не потеряю только потому, что я действительно параноик.

Моя параноидальная схема:

  • ZFS с чередованием (2x, 3x, 4x ... или 10x дисков), просто чтобы соответствовать максимальной пропускной способности шины (sata III, usb 3.1 gen 2 и т. Д.)
  • И другие аналогичные пять ZFS (без питания, поэтому не могут быть повреждены)

Как использовать все такие ZFS:

  • Имейте только два из них одновременно (только для синхронизации изменений) ... как мастер с пятью рабами

Параноидальная точка зрения:

  • Если один из ZFS выходит из строя ... например, если его ударила буря, сожгли, украли и т.д.

Чтобы синхронизировать некоторые из них ... я должен взять с собой одну ZFS и выполнить синхронизацию в другом физическом месте / стране / и т. Д. ... поэтому я использую одного из рабов Thoose.

Подумайте, когда я говорю о жестких дисках на одном ZFS, на другом ZFS может быть 3,1 Gen2 64 ГБ USB-флешки! Не нужно быть одинакового размера, типа и т. Д.

Действительно параноидальная точка зрения.

Для паств не так уж параноик, и если они могут поддержать потерять все ... есть уровни RaidZ ... я предпочитаю "зеркально отражать" себя.

Еще одно преимущество выполнения «ручной синхронизации» - ваши собственные ошибки:

  • У вас есть гипотетический идеал, никогда не выходящий из строя системой ZFS, но вы решили удалить файл ... через несколько дней после того, как обнаружили, что пропустили файл, который хотели удалить, и удалите тот, который вы не хотели (из-за человеческой ошибки) .. вам не повезло, если у вас нет резервной копии

Итак ... еще раз ... если вам требуется резервное копирование, почему бы не ускорить ZFS на максимуме только с помощью чередования? ... вам все равно нужно будет делать резервное копирование в конце концов.

Ну, ответ может быть:

  • Системный раздел для онлайн-системы a24h

Для разделов данных я не вижу необходимости в уровнях RaidZ по сравнению с тем, чтобы внешний клон USB ZFS был готов к подключению, как только основной ZFS не работает ... просто размонтируйте основную точку ZFS и смонтируйте другую хорошую ZFS на месте ... затем с другой машины заново создайте автономную ZFS, которая была повреждена.

Если у вас есть два компьютера, у вас есть то, что вам нужно, 7x24h всего за несколько секунд (время загрузки) простоя.

Для домашних пользователей, которые хотят, чтобы их фотографии были в безопасности ... используйте более двух ZFS и, по крайней мере, один или два из них никогда не подключались одновременно с остальными. Paranoid? Не за что.

Просто я учусь нелегко, как все может пойти не так!

Просто чтобы уточнить ... что случилось ...

  1. Я нормально использовал ПК
  2. Данные становились неудачными
  3. Я вынул HDD и поместил те, которые были в порядке
  4. Данные о них также были повреждены менее чем за десять секунд
  5. Я потерял все свои данные (не полностью, так как я был немного параноиком и у меня была резервная копия на DVD-носителе)

Проблема была на самом деле в контроллере (встроенном в материнскую плату), а не в дисках ... он изменял данные об операциях чтения / записи.

С тех пор ... мои данные больше не находятся на внутренних дисках sata ... только на внешних корпусах USB 3.1 Gen 2, которые я могу подключать и отключать (каждый диск в своем собственном корпусе) ... и когда происходит сбой ... я проверяю все перед подключением к этому ПК что-нибудь с реальными данными ... ОЗУ, процессор, USB-порт и т. д. ... с фиктивным корпусом USB для тестирования шаблонов ... если это нормально ... тогда я проверяю отказавший диск ... если он работает в другом корпусе или нет, на другом ПК или нет, и т. д. ... чтобы действительно знать, кто является причиной сбоя ... действительно параноик, я знаю!

Но учиться на собственном опыте:

  • Никогда не доверяйте тому, что сбой диска вызван тем, что диск сам ... тестирует его ... это может быть контроллер, кабели, блок питания и т. Д.
  • Или, что еще хуже, это может быть ОЗУ

Говоря об оперативной памяти, у меня был не такой старый ПК (64-битный процессор на базе BIOS), который, если (подумайте о трех одинаковых модулях оперативной памяти, назовите их A, B и C):

  • я положил A на ПК работает отлично (независимо от того, какой из четырех слотов)
  • я положил B ​​на ПК работает отлично (независимо от того, какой из четырех слотов)
  • Я поставил C на ПК, он отлично работает (но только на одном из четырех слотов, на другом дереве это вызывает много сбоев, BSOD и т. д.)
  • Я ставлю A & B, это вызывает много сбоев, BSOD и т. д.
  • я установил A & C на ПК, он отлично работает (независимо от того, какой из четырех слотов)
  • я поставил B & C на ПК, он отлично работает (независимо от того, какой из четырех слотов)
  • я ставлю A & B & C на ПК, это вызывает много сбоев, BSOD и т. д.

Если я тестирую такие модули на другом ПК, все они работают отлично, без проблем, без дефектов и т. Д.

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

О, да, все той же марки, вида и т. Д. ... идентичные ... единственный способ отличить их - наклейка, которую я на них наклеил! И да, купленные в то же время, они вышли на закрытый пластиковый корпус того же производства.

Иногда сбой ZFS может быть вызван ОЗУ ... тогда независимо от того, сколько у вас уровней RaidZ ... вы можете потерять все.

О, почти забыли ... используйте ECC-память, иначе ZFS нельзя доверять! И не используйте никакие жесткие диски с внутренним кешем, RAID-массивом для интернета и т. Д., Если он не предназначен для выполнения записи в отправленном порядке (или выполнения всех из них при отключении питания).

Я использую только жесткие диски с достаточной внутренней энергией для записи всего своего кеша на планшеты после внезапного отключения питания!

Все эти моменты / слабости позвольте мне сделать один вывод:

  • Лучше всего ускорить процесс и создавать свои собственные резервные копии
  • Иметь около 100% копий в автономном режиме и без питания
  • Имейте что-нибудь готовое, чтобы получить власть и заменить неисправную часть

Именно поэтому у меня есть> 2 ПК с> 10 USB HDD (5 копий ZFS * 3 жестких диска на каждом в разобранном виде) ... я получил лучшее из ... безопасного и скоростного! Но я получаю худшую часть ... нужно периодически синхронизировать их все ... но безопасность данных - самая важная часть! также я не хочу много ждать таких синхронизаций (иначе, чередование приходит в работу).

И если полоса 3 * HDD выйдет из строя ... я могу проверить, какой из них вышел из строя из трех, в течение нескольких часов / дней / недель ... пока у меня есть другая ZFS-копия On-Line и работает ... после убедитесь, что другой два в порядке, я покупаю новый (возможно, через 30-45 дней) и воссоздаю такие 3 * жесткие диски ZFS и помещаю на них данные, чтобы снова получить эту пятую копию.

Совсем не дешево! Но, конечно, не в качестве цены на центр обработки данных ... и без счета за электроэнергию (большинство жестких дисков без питания, только 3 или 6 одновременно).

Надеюсь, кто-то найдет эту идею полезной (я использую ее ежедневно).

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.