1

Я построил установку FreeNAS на маленьком милом HP ProLiant MicroServer.

В отношении хранилища я создал 3-х дисковый пул ZFS с использованием RAIDZ1. Я начал с 3 маленьких дисков, знакомясь с FreeNAS, но в итоге решил заменить его своим домашним NAS.

Поэтому я купил новые диски емкостью 2 ТБ и заменил каждый диск большим по одному, позволяя пулу восстанавливаться после каждой замены.

Исходный пул, созданный через графический интерфейс, использовал ссылки GPTID. zpool status показывает что-то похожее на это:

  pool: vol2
 state: ONLINE
  scan: none requested
config:

        NAME                                          STATE     READ WRITE CKSUM
        vol2                                          ONLINE       0     0     0
          gptid/96857d85-6c2f-11e3-9387-78acc0f794bd  ONLINE       0     0     0

Когда я заменил диски в пуле на zpool replace , вместо этого я использовал имена GEOM (adaN). Честно говоря, мне было намного проще и интуитивно понятнее.

Но кажется, что обращение к дискам с использованием имен GEOM сопряжено с риском перемаркировки ваших дисков после перезагрузки, что может привести к путанице в ZFS и, возможно, к повреждению ваших пулов ZFS в процессе.

Я подумал, что могу "отключить" каждый из дисков и заменить их на zpool replace , используя их GPTID, которые, как я полагаю, потребуют повторного переноса данных, таким образом подвергая мои данные риску, пока это происходит.

Тем не менее, я не могу найти какие-либо GPTID для моих "ada" дисков. ls /dev/gptid просто перечисляет мой четвертый и в настоящее время неиспользуемый диск. glabel list возвращает один и тот же диск /GPTID и различные разделы FreeNAS.

  • Есть ли смысл заменять имена GEOM по ссылкам на GPTID?
  • Почему я не вижу GPTID для новых дисков? Нужно ли что-то делать до того, как будут назначены glabel list вернет их имена?
  • Есть ли более безопасный способ сделать это, который не включает в себя восстановление?

Спасибо!

2 ответа2

1

• Есть ли смысл заменять имена GEOM по ссылкам на GPTID?

Имена GEOM генерируются из слотов контроллера, поэтому, если вы меняете местами разъемы дисков, их имена GEOM также меняются местами. Имена GPTID основаны на серийных номерах дисков и везде одинаковы.

• Почему я не вижу GPTID для новых дисков? Нужно ли что-то делать до того, как будут назначены GPTID, и список глабелей вернет их имена?

Когда диск используется одним идентификатором (GEOM в zpool в вашем случае), другие идентификаторы (включая GPTID) блокируются. Поэтому, когда вы отсоединяете диск от zpool или просто переводите его в автономный режим - в /dev /gptid будет отсутствовать gptid

• Есть ли более безопасный способ сделать это, не связанный с восстановлением?

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

0

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .