TrueNAS ZFS RAID-Z - Expanding pool

แชร์
ฝัง
  • เผยแพร่เมื่อ 7 พ.ย. 2024

ความคิดเห็น • 19

  • @demanuDJ
    @demanuDJ ปีที่แล้ว +1

    Świetny materiał! Mam parę tematów nad którymi się zastanawiam w temacie TrueNAS
    1. Sprzęt pod TrueNAS do homelab. To jest rzecz która męczy straszliwie. Cały czas zastanawiam się jaki sprzęt konkretnie wybrać pod własny Truenas. Rzeczy które mnie interesują jako warunki wyboru sprzętu pod budowę maszyny:
    - Sprzęt który będzie obsługiwał takie rzeczy jak: dobrze będzie znosił kompresję i dekompresję danych zarówno LZ4 jak i ZStd. Również obsługa ECC jest bardzo ważna. Dodatkowo możliwość rozszerzania truenas o kolejne dyski, czyli spora ilość linii PCI-E do podpinania kontrolerów dysków. Jak na razie najbardziej sensownym rozwiązaniem które obsługuje wszystko wymienione pod TrueNAS jest to które ostatnio w swoim filmie ZMASLO czyli sprzęt ryzen 3200g ale rozważałem też 3600 oraz oczywiście pamięci ECC oraz odpowiednia płyta główna.
    - Energooszczędność, tutaj z tym Ryzenem nie jest źle bo wcale tak dużo prądu nie pobiera ale próbowałem znaleźć jakieś platformy np pod Intel Atom (chyba LearnLinuxTV miał TrueNAS na jakimś modelu Atoma który obsługiwał ECC)
    - Cena, bo tu wiadomo że możemy kupić sprzęt enterprise i wydać od cholery kasy ale nie będzie on ani oszczędny ani cichy ani tani.
    2. To co wspomniałeś już w filmie czyli jak skonfigurować vdev pod konkretne zastosowanie. Ostatnio oglądałem wywiad z developerem TrueNAS który mówił np żeby nie stosować RaidZ pod VMki tylko użyć Stripe-Mirror oraz dodatkowego SLOG na SDD a nawet dodanie L2ARC jak budżet pozwoli. RaidZ1 albo 2 nadają się bardziej pod pliki nie wymagające tak dużej ilości I/O np przechowywania danych jak np dokumenty, filmy, zdjęcia itp. Jakbyś mógł rozwinąć temat to byłoby bardzo fajnie.
    3. Rozwinięcie tematu zarządzania klastrami kubernetes na TrueNAS Scale.

    • @Eonea
      @Eonea  ปีที่แล้ว +1

      Poruszyłeś sporo tematów. Dzięki.
      Niedługo materiał o leyout dysków w raid z . Kiedy i jakiego użyć tak jak piszesz kiedy stripe kiedy mirror kiedy raid Z3 .
      Jakie zalety jakie wady i kiedy zaleca się jaka konfigurację.
      W zasadzie w każdym odcinku staram się dawać tipy odnośnie optymalnego doboru sprzętu w danym temacie ale może faktycznie już czas na materiał zbierający do kupy info a sprzęcie na homelab.
      Apropos klasterów kubernetes to właśnie trochę problem, że nie ma tam za bardzo klastrowania. Przynajmniej nie natywnie. Zwróć uwagę że to. Je jest czysty kubernetes tylko zlepek kilku narzędzi jak docker i k3s.

    • @Piotr_T
      @Piotr_T ปีที่แล้ว +2

      Ja mam i5-13500, 32GB ramu ddr4 i to śmiga na Gigabyte b760 ds3h aż ddr4. Z 3 dyskami pobiera około 33W w idlu, a z 9 pobiera 43-44W. Płyta ma 5 PCIe i 2 sloty nvme.
      Co do wirtualek, to jak masz 2 czy 3 wirtualki, to nie bardzo trzeba się przejmować IOPSami, a jak potrzebujesz mieć dużo wirtualek, to niestety musisz zainwestować w ssd. Niektóre płyty główne posiadają opcje konfiguracji PCIe x16 w trybie x4x4x4x4 czyli pozwalają podłączyć w jednym slocie aż 4 urządzenia z 4 liniami ( są takie karty 4xnvme na PCIe, ale trzeba się przypatrzeć, bo nie wszystkie są dobre).

  • @KamilPrzesy-ge6tk
    @KamilPrzesy-ge6tk 9 หลายเดือนก่อน +1

    Super fajnie wyjaśnione. A jezeli chodzi o stripe oraz mirror? Np. mam jeden dysk na ktorym trzymam aplikacje i chce dodac drugi i stworzyc z tego mirror. Albo mam mirror z 2 dysków, ale dodam 3 i tworze raid. Czy takie opcje są możliwe? I tak jak w przypadku raid czy w mirror tez moge dyski podmienic na tej samej zasadzie?
    Pozdrawiam i leci kciuk oraz sub :)

    • @Eonea
      @Eonea  9 หลายเดือนก่อน +1

      vDev w ZFS nie może zmieniać struktury. Nie zmienisz ilości dysków lub ich konfiguracji w danym vDev.
      Jak już vDev jest w stripe czy RAIDZ1/2/3 to dany vDev już taki pozostanie.
      Poza podmianką dysków na większe jak w tym materiale możesz tylko dodać do pool następny vDev w tej samej konfiguracji i najlepiej tej samej wielkości.
      Stety/Niestety jedyna sensowną opcją zmiany layout vDev w pool jest stworzenie do od nowa.
      Dobra trochę uprościłem/skłamałem mówiąc, że nie da się zmienić ilości dysków w vDev. Już dłuższy czas temu trwały prace i już chyba zostało to zaimplementowane do ZFS. Teoretycznie da się dokładać dyski do RAIDZ zwiększając w ten sposób pojemność vDev ale to jest działanie na linii poleceń, nie wspierane przez TrueNAS. Ostatecznie zwiększa się zużycie RAM. Zdecydowanie jest to rozwiązanie nieoptymalne. Słowem bardziej traktował bym to jako ciekawostkę niż produkcyjne rozwiązanie.

  • @astral1453
    @astral1453 2 หลายเดือนก่อน

    Muszę dopytać by dobrze zrozumieć: w truenas scale mam pool złożony z 4 identycznych dysków, spiętych jako jeden vdev, raidz-2. Planuję dodać kolejne 4 identyczne, rozumiem więc że wg procesu z filmu truenas rozszerzy pool tworząc drugi vdev z nowymi pustymi dyskami. Teraz dwa pytania:
    1. Czy po tej operacji cały pool zostanie idealnym raidz-2 tj. wciąż tylko dwa dyski z łącznie ośmiu będą na sumy kontrolne/naprawcze a pozostałe 6 stanie się przestrzenią użytkową? Czytając różne źródła trochę zgłupiałem momentami myśląc że nowy vdev będzie na wzór istniejącego dodając także dwa dyski na sumy czyli łącznie 4 co trochę nam straci miejsca.
    2. Czy w trakcie tej operacji truenas od razu rozrzuca stare dane pomiędzy wszystkie dyski by było po równo pod względem zajętego miejsca czy będzie działo się to z czasem wraz z tym jak będziemy dorzucać danych (a wtedy rozumiem w jakiś sposób te nowe puste dostaną priorytet do zapisu by zrównać procent zapełnienia do starych)?

    • @Eonea
      @Eonea  2 หลายเดือนก่อน +1

      Ad1.
      Przy rozszerzaniu poola o nowe vdev muszą one być o identycznych schemacie RAID i najlepiej identycznej wielkości. Jeśli Twój pool składał się z vdev w RAZDZ2 tzw WIDE-4 to jak piszesz dwa z jego czterech dysków przechowują dane. Więc jeśli dokładasz drugi taki sam vdev to łącznie będziesz miał cztery dyski z danymi i cztery z sumami kontrolnymi.
      Żeby w tej sytuacji mieć sześć dysków na dane i dwa na sumy kontrolne trzeba by poszerzyć vdev z RAIDZ2 WIDE-4 na RAZIDZ2 WIDE-8 to inna operacja. OpenZFS wspiera taką operacje ale wyłącznie z linii komend i nie jest ona wpierana przynajmniej na chwilę obecną z GUI TrueNAS.
      Ad2.
      Przy dołożeniu vdev dokładasz tylko nowe, wolne miejsce. Żadne rozkładanie danych czy coś podobnego się nie odbywa.
      ZFS podczas zapisu balansuje między vdev proporcjonalnie do wolnej przestrzeni na danym vdev w stosunku do całej wolnej przestrzeni na pool. Z czasem obciążenie powinno się balansować. Jeśli zależało by Ci na przyspieszeniu procesu to wystarczy te dane zapisać jeszcze raz, na przykład przez przeniesienie na inny pool i z powrotem. Wtedy ZFS podzieli mniej więcej po równo między vdev.

  • @AdrianuX1985
    @AdrianuX1985 ปีที่แล้ว +1

    +1

  • @KamilKulisFloyd
    @KamilKulisFloyd ปีที่แล้ว +1

    Czy mam rozumieć że to co sobie wymyśliłem tzn.:
    Dodałem vDev dysk SSDM2 w Singlu dla aplikacji w Docker.
    Następnie dodałem HDD do vDev2 8x20GB w raid-z1 (tzn. jeden dysk może paść).
    Jest kiepskim rozwiązaniem ponieważ jeśli dysk M2 padnie to wszystko pójdzie w kosmos, ponieważ Pool będzie wykorzystywał każde miejsce do zapisów z wszystkich vDevów?

    • @Eonea
      @Eonea  ปีที่แล้ว +1

      Tak to raczej nie dobry pomysł.
      Jeżeli oba vDev dodałeś do jednego pool jako vDev data to tak jak mówisz padnie M2 pada wszystko.
      Albo stwórz osobny pool na dyski HDD i drugi z M2 na aplikację.
      Albo podstawowy pool na HDD i M2 jako L2ARC. Zależy od sytuacji.
      Oba będą oznaczać de facto stworzenie pool on nowa bo nie da się odjąć vDev data z pool.

    • @KamilKulisFloyd
      @KamilKulisFloyd ปีที่แล้ว

      Dziękuję za odpowiedź. A można stworzyć dwa Poole? Jeden VDev na Aplikacje w jednym Pool? A drugi na dane w drugim Pool?@@Eonea

    • @Eonea
      @Eonea  ปีที่แล้ว

      O tym myślałem pisząc, żeby stworzyć osobny pool na dyski HDD i drugi na M2 na aplikacje.
      Słowem tak to dobra opcja :)

    • @KamilKulisFloyd
      @KamilKulisFloyd ปีที่แล้ว +1

      Dziękuję!@@Eonea

  • @KamilKulisFloyd
    @KamilKulisFloyd ปีที่แล้ว

    Czy da się rozszerzyć Vdeva, tak by nie tworzyć nowego? Np. mam 8 dysków a chce dodać jeszcze dwa do raidz1, w istniejącym już vDev?

    • @Eonea
      @Eonea  ปีที่แล้ว

      Teoretycznie zfs to umożliwia od niedawna ale puki co nie wspiera tego natywnie TrueNAS. Dodatkowo tracimy na stałe ram i przestrzeń dyskową potrzebna to "obsługi" tego rozszerzonego pool.
      W praktyce nie wskazane.

    • @KamilKulisFloyd
      @KamilKulisFloyd ปีที่แล้ว

      Dziękuję w takim razie wstrzymam się do czasu zakupu jeszcze 2 dodatkowych dysków.@@Eonea

  • @podszorstek7494
    @podszorstek7494 ปีที่แล้ว

    @Eonea: dodawanie kolejnego vDev do aktualnej puli w SCALE => ok.
    A w CORE? Nie znalazłem takiej opcji (albo słabo szukam..)

    • @Eonea
      @Eonea  ปีที่แล้ว +1

      Spróbuj tak:
      Storage > Pools >
      - trzy kropki na prawym skraju - dodanie vDev wewnątrz vDev
      - trybik po u góry po prawej - dodanie vDev do pool

    • @podszorstek7494
      @podszorstek7494 ปีที่แล้ว +1

      @@Eonea Dzięki wielkie.
      Słabo szukałem. =>storage =>pools=> przez koło zębate, a potem jak w scale.
      Jeszcze te "wiezienia" opanować, żeby nie wracało do ustawień fabrycznych i będzie wszystko.