Чи варто створювати ZFS zpools з цілими дисками або розділами?


14

Я роблю zpools на FreeBSD-машині. Під час створення zpools я спостерігаю ці два випадки:

  1. Якщо я беру raw disksі створюю, zpoolто я можу формувати zpools, і вони прекрасно працюють.

  2. Якщо я форматувати диски , використовуючи gpartв freebsd-zfsформаті , а потім зробити zpool то і вони працюють відмінно.

В чому я плутаюсь, чи є підхід кращим для створення zpools?

Відповіді:


8

Краще використовувати цілі диски з ZFS, коли це можливо.
У вашому випадку використання не потрібно розділяти.


Що ви маєте в виду your use case. Чи можете ви навести якийсь випадок, коли розділення може бути корисним?
шивам

Розмежування не є корисним у ZFS, якщо ви не маєте езотеричної конфігурації або не використовуєте певні рішення SSD або не робите щось дивне із пристроями ZIL та L2ARC . І навіть тоді найкраще просто використовувати цілі пристрої / диски.
ewwhite

Але чому краще використовувати цілі диски?
leetNightshade

1
@leetNightshade Оскільки дискових розділів дисків не багато, коли ви використовуєте ZFS, для яких файлові системи не потребують власних розділів. Більше того, коли ZFS "володіє" диском, він може дозволити кеш запису диска для отримання кращої продуктивності. Дивіться solarisinternals.com/wiki/index.php/…
jlliagre

1
@Grogi Будь-які хороші докази, які підтверджують це?
leetNightshade

5

Використовуйте один фрагмент / розділ, призначений для ZFS на фізичному диску, і залиште деякий простір нерозподіленим. Таким чином, якщо вам буде потрібно колись замінити диск, а заміна на 10 секторів менша, ви все одно зможете це зробити ( http://www.freebsddiary.org/zfs-with-gpart.php ).

Це те, що робить Solaris автоматично, саме це робить FreeNAS ( https://forums.freenas.org/index.php?threads/zfs-on-partified-disks.37079/ ), і ZoL робить це, коли ви даєте йому весь диск - це розділить його ...

Накладні витрати для переведення положення на перегородці в положення фактичного пристрою є незначними. Отже, після того, як розділ буде правильно вирівняний до межі фізичного сектора, немає жодної причини, щоб він поводився інакше, ніж цілий блок пристрою.

Що стосується ZoL, я знаю єдину різницю, що ZoL переключить планувальник дисків, noopколи весь диск буде надано vdev. Ніщо не заважає встановити це вручну.

Однак деякі не хочуть ... Не створюйте більше розділів для ZFS на диску, і якщо ви вирішите ігнорувати поради, наведені вище, ніколи не будуйте з них vdevs в тому ж zpool. Це в основному знищить продуктивність, оскільки ZFS розріже дані між vdevs і послідовні iops перетворяться в кошмар шукань ...


Чи можете ви трохи більше висвітлити поведінку zfs щодо кошмару шукання кошмарів, коли діляться / використовуються фрагменти диска?
satch_boogie

Найпростіший сценарій - ви створюєте пул з двох vdevs, кожен розділ на одному жорсткому диску. Тепер ви хочете написати фрагмент даних досить великий, який охоплює обидва vdevs. Незважаючи на послідовне записування даних, накопичувач повинен шукати між двома окремими місцями, щоб зберегти їх.
Грогі

Чи така поведінка однакова, якщо Pool_A використовує (sda1, sdb1, sdc3) і Pool_B використовує (sda2, sdb2, sdc3)
satch_boogie

Вам не доведеться писати їм одночасно ... Якщо у вас є vdevs в одному басейні, ви нічого не можете зробити ...
Grogi

0

у мене в голові це запитання виникає через сумніви, чи я можу пізно позначити, що на цьому диску ... тож коли ви створюєте пул на цілому диску (так, з опцією -f, якщо потрібно), zpool практично створює таблицю розділів gpt і розділи Solaris, наприклад:

(fdisk -l ...)
...
Disklabel type: gpt
Disk identifier: 4CBE587E-23AF-8E4B-A7F0-B44AD6083171

Device          Start        End    Sectors  Size Type
/dev/sdd1        2048 3907010559 3907008512  1,8T Solaris /usr & Apple ZFS
/dev/sdd9  3907010560 3907026943      16384    8M Solaris reserved 1

тому справді немає необхідності створювати розділи вручну ...


Я не вважаю, що solaris найкраще практикує на freebsd. Наприклад, у випадку дзеркал ви можете замінити диски на більші і збільшити розмір пулу на льоту однією командою або навіть автоматично, якщо вони налаштовані як такі.
cstamas
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.