Czy powinienem tworzyć Zpool ZFS z całymi dyskami lub partycjami?


14

Robię Zpool na maszynie FreeBSD. Podczas tworzenia zpool obserwuję te dwa przypadki:

  1. Jeśli wezmę raw disksi zpoolstworzę, będę mógł tworzyć zpool i one działają doskonale.

  2. Gdybym formatować dyski używając gpartw freebsd-zfsformacie, a następnie dokonać zpool następnie również pracują idealnie.

To, co mnie pomyliło, to które podejście jest lepsze do tworzenia zpool?

Odpowiedzi:


8

Jeśli to możliwe, lepiej używać całych dysków w ZFS.
W przypadku użycia nie trzeba partycjonować.


Co masz na myśli your use case. Czy możesz podać przypadek, w którym partycjonowanie może być przydatne?
shivams

Partycjonowanie nie jest przydatne w ZFS, chyba że masz ezoteryczną konfigurację lub używasz pewnych rozwiązań SSD lub robisz coś dziwnego z urządzeniami ZIL i L2ARC . I nawet wtedy najlepiej jest korzystać z całych urządzeń / dysków.
ewwhite

Ale dlaczego lepiej korzystać z całych dysków?
leetNightshade

1
@leetNightshade Ponieważ nie ma wiele punktów partycjonowania dysków podczas korzystania z ZFS, z którymi systemy plików nie potrzebują własnych partycji. Ponadto, gdy ZFS „posiada” dysk, może włączyć pamięć podręczną zapisu, aby uzyskać lepszą wydajność. Zobacz solarisinternals.com/wiki/index.php/…
jlliagre,

1
@Grogi Jakieś dobre dowody na poparcie tego?
leetNightshade

5

Użyj jednego wycinka / partycji dedykowanego dla ZFS na fizyczny dysk i pozostaw trochę miejsca niepodzielonego na partycje. W ten sposób, jeśli kiedykolwiek będziesz musiał wymienić dysk, a wymiana jest o 10 sektorów mniejsza, nadal będziesz w stanie to zrobić ( http://www.freebsddiary.org/zfs-with-gpart.php ).

To właśnie robi Solaris automatycznie, to robi FreeNAS ( https://forums.freenas.org/index.php?threads/zfs-on-partitioned-disks.37079/ ) i to jest ZoL, gdy dajesz mu cały dysk - podzieli to ...

Narzut na przeniesienie pozycji na partycji do pozycji na faktycznym urządzeniu jest znikomy. Kiedy więc partycja zostanie poprawnie wyrównana do granicy sektora fizycznego, nie ma powodu, aby zachowywała się inaczej niż całe urządzenie blokowe.

W przypadku ZoL jedyną różnicą, o której wiem, jest to, że ZoL przełączy harmonogram dysku, noopgdy cały dysk zostanie przekazany vdev. Nic nie stoi na przeszkodzie, aby ustawić go ręcznie.

Niektóre jednak nie ... Nie twórz więcej partycji dla ZFS na dysk i jeśli zdecydujesz się zignorować powyższe porady, nigdy nie twórz z nich vdevów w tym samym Zpool. To w zasadzie zabije wydajność, ponieważ ZFS podzieli dane między vdevs, a sekwencyjne iopsy zamieniają się w koszmar poszukiwania ...


Czy możesz rzucić nieco więcej światła na zachowanie ZFs dotyczące poszukiwania koszmaru z dzielonymi / używanymi wycinkami dysku?
satch_boogie

Najprostszy scenariusz - budujesz pulę z dwóch dysków wirtualnych, z których każda jest partycją na tym samym dysku twardym. Teraz chcesz napisać fragment danych wystarczająco duży, który obejmuje oba vdevs. Pomimo sekwencyjnego zapisywania danych, dysk musi szukać pomiędzy dwoma oddzielnymi lokalizacjami, aby je zapisać.
Grogi,

Czy to zachowanie jest takie samo, jeśli Pool_A używa (sda1, sdb1, sdc3), a Pool_B używa (sda2, sdb2, sdc3)
satch_boogie 19.08.18

Nie musisz pisać do nich jednocześnie ... Jeśli masz vdevs w jednej puli, nie możesz nic zrobić ...
Grogi,

0

w mojej głowie to pytanie powstaje z powodu wątpliwości, czy późno mogę wyznaczyć, co jest na tym dysku ... więc kiedy tworzysz pulę na całym dysku (tak, z opcją -f, jeśli to konieczne), zpool praktycznie tworzy tablicę partycji gpt i partycje Solaris, takie jak to:

(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

więc naprawdę nie ma potrzeby ręcznego tworzenia partycji ...


Nie zastanawiam się, co solaris robi najlepiej na freebsd. Na przykład w przypadku serwerów lustrzanych można zamieniać dyski na większe i zwiększać rozmiar puli w locie za pomocą jednego polecenia, a nawet automatycznie, jeśli zostanie skonfigurowany jako taki.
cstamas
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.