4

Я хочу создать zfs raidz2 с 4 дисками. Я знаю, что это "потратит" не менее 50% пространства, но я стремлюсь к высокой устойчивости к сбоям диска. Использование 5 дисков для raidz2 не рекомендуется, а 6 дисков для меня дорого и не нужно. У меня будет 3 ТБ (или, может быть, 4 ТБ) диска, все из которых имеют секторы 4 КБ с эмуляцией 512 байт.

Я прочитал много вещей о zfs и raidz2, и я начинаю путаться.

Должен ли я разбить диски? Я читал, что это хорошая идея - создать разделы, чтобы ОС знала, что диск не пустой. Разделение также может помочь выровнять по секторам 4k.

GPT или MBR? Насколько я понял, GPT необходим для дисков объемом 3 ТБ (и больше).

Как мне создать раздел? Это даст мне правильно выровненные разделы? sudo parted --align optimal /dev/sdX mklabel gpt mkpart primary 1 0% 3TB

Дополнительный вопрос: насколько большим будет раздел, созданный mkpart primary 1 0% 3TB? Это будет 3*10^12 - 4096 byte?

Я намерен не использовать полный размер диска, а ограничиться 3 ТБ, чтобы иметь возможность заменить неисправный диск другой моделью.

Нужно ли ashift=12 если я выровнял разделы? Это бесполезно? Это как-то вредит мне?

Как насчет полосы? Мне нужно изменить это? Что если я использую 5 дисков вместо 4 дисков?

Есть что-нибудь еще, что я должен рассмотреть?

2 ответа2

2

Вам необходимо установить ashift вручную, если ваш диск сообщает о неправильных значениях, что имеет место для всех дисков в течение переходного периода (4K внутри, 512 логически) - более ранние диски сообщают правильные 512, более поздние диски сообщают правильные 4k. Конечно, вы всегда можете указать его, он просто перезаписывает то, что сам диск будет сообщать / предлагать системе.

Если вы не уверены, вы также можете создать пул, записать используемый размер, затем уничтожить его, установить ashift на всех дисках равным 12, создать его снова и сравнить размеры. Если они равны, ваши диски честны по поводу их содержимого.

Разбиение дисков необходимо только в том случае, если ваши диски не распознаются правильно или если вы хотите иметь размеры меньше возможных размеров.

1

ZFS в Linux будет автоматически разбивать диски. Раньше этого не делали. Это будет выглядеть так:

Disk /dev/sdb: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 2E55AB8A-8B22-494E-A971-B6D639BA14B1

Device          Start        End    Sectors   Size Type
/dev/sdb1        2048 1953507327 1953505280 931.5G Solaris /usr & Apple ZFS
/dev/sdb9  1953507328 1953523711      16384     8M Solaris reserved 1

Кроме того, он, вероятно, будет автоматически использовать правильное значение ashift . У моего SSD 13, у вышеупомянутого HDD 12, как и ожидалось.

Просто сделайте следующее:

zpool create tank raidz2 sda sdb sdc sdd

Затем проверьте с помощью zdb что ashift выглядит правильно.

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