Kilka miesięcy temu rozpoczęliśmy nasz konkurs na budowę TrueNAS za 800 dolarów . W skrócie, Brian, Ben i Kevin wzięli 800 dolarów i zbudowali własny system NAS, wykorzystując TrueNAS CORE jako system operacyjny. Dzięki Western Digital chłopaki nie musieli martwić się o pamięć masową – WD zapewniło im wybór dysków SSD i HDD . Chcieliśmy zobaczyć, co nasz zespół potrafi, budując każdy z tych systemów i jak wypadają one w porównaniu ze sobą. Wydali pieniądze, gadali głupoty i przetestowali swoje systemy. Zobaczmy, jak im poszło.
Dla tych, którzy nas nie śledzą, przygotowaliśmy film o naszym małym konkursie, który można obejrzeć tutaj lub na naszej stronie YouTube :
Budżetowe systemy TrueNAS CORE
Budowa Bena Stażysty była prawdopodobnie najbardziej „zrób to sam” ze wszystkich. Udał się do Cincinnati Computer Cooperative and MicroCenter, kupił wszystkie części osobno i złożył je samodzielnie. Wśród jego części znalazły się zasilacz OCZ GSX600, płyta główna ASRock B550, pamięć RAM G.Skill Ripjaws V 64 GB (2 x 32 GB) DDR4-3600, procesor Ryzen 5 3600, karta graficzna Chelsio 111-00603+A0 oraz obudowa Lian Li Liancool 205. Z kilku dodatkowych dolarów, które mu zostały, zamontował paski LED.
Kevin wykorzystał serwer HPE MicroServer Gen10 Plus z procesorem Xeon i pamięcią ECC. Dodał również kartę 100 GbE Mellanox ConnectX-5, aby uzyskać przewagę nad innymi konfiguracjami i ułatwić konfigurację sieci. Podczas gdy inne konfiguracje korzystają z dwuportowej karty sieciowej, Kevin musi skonfigurować tylko jeden interfejs 100 GbE.
Konstrukcja Briana plasuje się gdzieś pomiędzy dwoma poprzednimi. Zaczął od płyty Supermicro M11SDV-8CT-LN4F, która dała mu procesor AMD EPYC 3201 SoC i cztery porty 1 GbE, co znacznie nadwyrężyło budżet. Do pamięci RAM Brain wykorzystał dwa moduły DRAM SK Hynix PC4-2400T-RD1-11 DDR4 ECC 8 GB. Zainstalował również zasilacz Thermaltake 500 W i kartę 10 GbE. Wszystko to zostało umieszczone w obudowie Fractal Design Node 304. Chociaż karta 10 GbE, którą Brian znalazł w fantastycznej cenie, ostatecznie nie rozpoznała oprogramowania TrueNAS ani z nim nie współpracowała, więc musiał wrócić do zapasowej laboratoryjnej karty sieciowej Emulex. Używana pamięć DRAM z Chin również stanowiła problem i musiała zostać wymieniona.
Budżetowy system TrueNAS CORE – wydajność
Przejdźmy do prawdziwego powodu, dla którego wszyscy tu są: który z tych trzech jest najlepszy? Oprócz naszych trzech zestawów DIY, mamy również TrueNAS Mini , który przy okazji rozdajemy. Zestaw iXsystem korzysta z RAIDZ2, ponieważ został dostarczony z pięcioma dyskami twardymi. Platforma iXsystems TrueNAS Mini X+ oferuje najlepsze połączenie rozmiaru obudowy i obsługi dysków. Obsługuje pięć dysków twardych 3.5″, a nawet dwie zatoki 2.5″ na dyski SSD. Dlaczego więc nie przetestować go jako punktu odniesienia? To proste, Mini X+ jest dostrojony pod kątem maksymalnej odporności danych, a nie wydajności. Pozostałe trzy zostały dostrojone tak, aby były najszybsze w tym starciu, choć wiąże się to z pewnym ryzykiem. Jeśli iXsystems chciało pokonać naszych konkurentów, mogło ich zmiażdżyć swoim zestawem.
Kilka słów o konfiguracjach RAID: TrueNAS obsługuje ich kilka, w zależności od wersji. Ponieważ użyliśmy radykalnie różnych wersji, konfiguracje RAID będą się różnić. Wersje Bena i Kevina korzystają z RAIDZ na czterech dyskach SSD, a Briana z Mirror na czterech dyskach HDD.
W tym starciu skupiliśmy się wyłącznie na protokole udostępniania plików SMB. Ciekawostką jest, jak duże znaczenie ma konfiguracja płyty głównej i obudowy. Platforma stacjonarna Bena, która prawdopodobnie wygląda najfajniej, ma tylko dwie zatoki na dyski 3.5″ i jest zdecydowanie największą obudową.
Obudowa Briana obsługuje do sześciu zatok na dyski 3.5″, zwracając uwagę na chłodzenie, ale jego płyta główna ma tylko cztery wbudowane porty SATA. Standardowa konfiguracja HPE Microserver Kevina ma cztery zatoki i cztery porty, ale tak właśnie zaprojektowano platformę.
Pamięć masowa również nieco różni się w zależności od modelu. W konfiguracji Briana były cztery dyski twarde WD Red o pojemności 10 TB, niestety port M.2 NVMe nie działał prawidłowo. Zarówno w konfiguracji Bena, jak i Kevina wykorzystano cztery dyski SSD WD Red o pojemności 4 TB.
W sekcji poświęconej wydajności należy zauważyć, że konfiguracja RAID ma ogromny wpływ na sposób pomiaru wydajności, wykraczający poza sam wybór dysków. RAIDZ będzie miał mniejszy narzut niż RAIDZ2, a Mirror jeszcze mniejszy niż RAIDZ. Należy jednak pamiętać, że konfiguracja RAID musi uwzględniać docelowe zastosowanie, potrzebną pojemność i odporność na awarie. Ostatecznie wyniki te nie mają na celu pokazania, który NAS jest szybszy, ale raczej, jak konfiguracje TrueNAS działają w podobnych konfiguracjach, z których niektóre korzystają z tych samych dysków, w różnych konfiguracjach RAID.
Analiza syntetycznego obciążenia przedsiębiorstwa
Nasz proces testowania współdzielonej pamięci masowej i dysków twardych w przedsiębiorstwie warunkuje każdy dysk do stanu stabilnego przy takim samym obciążeniu, z jakim urządzenie będzie testowane, przy dużym obciążeniu 16 wątków i kolejce oczekujących 16 wątków na wątek, a następnie testuje go w określonych odstępach czasu, wykorzystując wiele profili głębokości wątków/kolejek, aby pokazać wydajność przy lekkim i intensywnym użytkowaniu. Ponieważ rozwiązania NAS bardzo szybko osiągają swój nominalny poziom wydajności, przedstawiamy na wykresie tylko główne sekcje każdego testu.
Wstępne kondycjonowanie i podstawowe testy stanu stacjonarnego:
- Przepustowość (łączna liczba operacji wejścia/wyjścia na sekundę odczytu i zapisu)
- Średnie opóźnienie (średnie opóźnienie odczytu i zapisu)
- Maksymalne opóźnienie (maksymalne opóźnienie odczytu lub zapisu)
- Odchylenie standardowe opóźnienia (uśrednione odchylenie standardowe odczytu i zapisu)
Nasza analiza obciążenia syntetycznego w przedsiębiorstwie obejmuje cztery profile oparte na rzeczywistych zadaniach. Profile te zostały opracowane, aby ułatwić porównywanie z naszymi poprzednimi testami porównawczymi, a także powszechnie publikowanymi wartościami, takimi jak maks. prędkość odczytu i zapisu 4k oraz 8k 70/30, powszechnie stosowana w dyskach korporacyjnych.
- 4K
-
- 100% odczytu lub 100% zapisu
- 100% 4 tys.
- 8K 70/30
- 70% czytania, 30% pisania
- 100% 8 tys.
- 8K (sekwencyjnie)
- 100% odczytu lub 100% zapisu
- 100% 8 tys.
- 128K (sekwencyjnie)
- 100% odczytu lub 100% zapisu
- 100% 128 tys.
Na początek nasz test przepustowości odczytu/zapisu 4K. W odczycie najlepszy wynik uzyskał Ben z wynikiem 14 865 IOPS. Kevin zajął drugie miejsce z wynikiem 11 476 IOPS. Brian zajął trzecie miejsce z wynikiem 595 IOPS. W zapisie Kevin zajął pierwsze miejsce z wynikiem 3,868 IOPS. Ben zajął drugie miejsce z wynikiem 2,517 IOPS. Brian utrzymał się na trzecim miejscu z wynikiem 923 IOPS.
W dużej mierze zależy to od zastosowanego typu RAID-u, chociaż w przypadku mikroserwera Kevina i samodzielnie wykonanej konfiguracji Bena różnica w IOPS zależy od szybkości procesora w obu konfiguracjach.
Następnie mamy średnie opóźnienie 4K. Tutaj widzimy tę samą pozycję, co powyżej. W odczycie Ben wygrywa z 17.2 ms, Kevin zajmuje drugie miejsce z 22.31 ms, a Brian pozostaje daleko w tyle z 429.2 ms. Przechodząc do zapisu, Kevin zajął pierwsze miejsce z 66.21 ms, Ben zajął drugie miejsce z 101.66 ms, a Brian był nieco bliżej z 276.89 ms na trzecim miejscu.
W przypadku maksymalnego opóźnienia 4K nastąpiły pewne zmiany w klasyfikacji. W odczycie Ben zajął pierwsze miejsce z czasem 263.96 ms, Kevin był tuż za nim z czasem 273.44 ms, a Brian był trzeci z czasem 1,091.3 ms. W zapisie Kevin zajął pierwsze miejsce z czasem 1,195 ms, Brian zajął drugie miejsce z czasem 2,092.5 ms, a Ben spadł na trzecie miejsce z czasem 2,431.7 ms.
Nasz ostatni test 4K to odchylenie standardowe. W odczycie Ben zajął pierwsze miejsce z czasem 5.94 ms, Kevin był tuż za nim z czasem 7.11 ms, a Brian był daleko w tyle z czasem 171.75 ms. W zapisie Kevin był na czele z czasem 117.02 ms, Ben nie był daleko w tyle z czasem 201.58 ms, a Brian niewiele mu ustępował z czasem 271.13 ms.
Nasz kolejny test porównawczy mierzy 100% przepustowości sekwencyjnej 8K z obciążeniem 16T16Q w 100% operacji odczytu i 100% operacji zapisu. Konstrukcję Bena zdominował w odczycie z wynikiem 47 699 IOPP, Kevin był tuż za nim z 44 848 IOPS, a Brian osiągnął 29 767 IOPS. W zapisie Ben ponownie zajął pierwsze miejsce z wynikiem 83 866 IOPS, Kevin utrzymał drugie miejsce z 51 020 IOPS, a Brian utrzymał trzecie miejsce z 33 448 IOPS.
W porównaniu ze stałym obciążeniem 16 wątków i 16 kolejek, które wykonaliśmy w teście zapisu 100% 4K, nasze profile mieszanego obciążenia skalują wydajność w szerokim zakresie kombinacji wątków/kolejek. W tych testach intensywność obciążenia rozciąga się od 2 wątków/2 kolejek do 16 wątków/16 kolejek. Typ dysku i konfiguracja RAID odgrywają tu ogromną rolę. Dodanie parzystości w celu obsługi awarii dysków negatywnie wpływa na wydajność. Pod względem przepustowości, Ben rozpoczął z najwyższą wydajnością i osiągnął najwyższy szczyt z 17 317 IOPS, choć jego kompilacja spadła nieco pod koniec. Chociaż kompilacja Briana rozpoczęła się z wyższą wydajnością niż kompilacja Kevina, Kevin zdołał go wyprzedzić i zająć drugie miejsce.
Przy średnim opóźnieniu, wszystkie trzy kompilacje StorageReview rozpoczęły się z opóźnieniem poniżej milisekundy. Choć były dość zbliżone, widać, że kompilacja Bena stopniowo wyprzedzała kompilację Kevina, a kompilacja obu z nich oddalała się od kompilacji Braina. W przypadku Bena opóźnienie wyniosło 15.8 ms, w przypadku Kevina 18.3 ms, a w przypadku Briana 31.2 ms.
Jeśli chodzi o maksymalne opóźnienie, Kevin zaczął najlepiej i on i Ben wymieniali się pierwszymi miejscami. Ostatecznie kompilacja Kevina miała 221 ms, a Bena 285 ms. Brian był daleko w tyle, zajmując trzecie miejsce.
Odchylenie standardowe wyraźnie pokazało, że Ben miał przewagę w całym procesie. Kevin miał około 3 razy większe opóźnienie, a Brian około 4 razy większe.
Ostatnim testem Enterprise Synthetic Workload jest nasz test 128 KB, sekwencyjny test dużych bloków danych, który pokazuje najwyższą sekwencyjną prędkość transferu dla danego urządzenia. W odczycie Kevin zajął pierwsze miejsce z wynikiem 2.32 GB/s, tuż za nim Ben z 1.81 GB/s, a kompilacja Briana musiała chybić celu z wynikiem 734 MB/s. W zapisie Kevin ponownie wygrał z wynikiem 2.77 GB/s, a Ben i Brian byli niemal na równi z wynikami odpowiednio 1.42 GB/s i 1.41 GB/s.
Wybór właściwej konfiguracji dla Twoich potrzeb…
Kto więc wygrał? To naprawdę zależy od tego, na czym najbardziej zależy Twoje wdrożenie. Najszybsza kompilacja pod względem wydajności wejścia/wyjścia miała tylko dwie zatoki dyskowe i konsumencki procesor/pamięć RAM. W przypadku ZFS kluczowe jest, aby komponenty klasy enterprise, takie jak pamięć ECC, wykorzystywały zaawansowany stos integralności danych, więc system ten praktycznie nie nadaje się do wdrożeń poza środowiskiem produkcyjnym.
Następnie przyjrzymy się konstrukcji Briana, która pod względem sprzętowym jest znacznie bliższa oczekiwaniom, m.in. dzięki zwiększeniu liczby kieszeni na dyski w obudowie, ale płyta główna obsługuje tylko cztery dyski twarde. Była też po brzegi wypełniona nadmiarem kabli zasilających. Okazuje się, że zakup używanych kart sieciowych i pamięci DRAM na eBayu okazał się nietrafiony, a ogólna stabilność systemu wyraźnie odbiegała od kategorii „niestabilnych” i/lub „niestabilnych”.
Dla zwolenników samodzielnego montażu, Kevin zdecydował się na gotowy system Microserver. Microserver ma mniejsze wymiary i niższą cenę początkową. Dostępne są również wszystkie komponenty klasy enterprise oraz takie funkcje jak iLo do zarządzania poza pasmem. System ma jednak limit pamięci masowej – ma tylko 4 zatoki i wszystkie obsługują SATA, więc nie ma w nim żadnych superszybkich funkcji. Mimo to, oferuje on najprostszą drogę do samodzielnego zbudowania budżetowego systemu TrueNAS CORE.
Może TrueNAS Mini?
Gdzie w tym wszystkim plasuje się TrueNAS Mini X+ ? Jeśli chodzi o wydajność, to nie. Konkretna wersja, którą mamy, została zaprojektowana z myślą o odporności danych. Mini X+ ma jednak kilka przydatnych funkcji, takich jak wbudowany moduł 10 GbE. Mini + oferuje również bez wątpienia największą pojemność i elastyczność, oferując łącznie 7 zatok na dyski.
Oprócz oceny systemów DIY pod kątem wydajności, konkurs ten przedstawia również ciekawy obraz tego, co można osiągnąć w ramach systemu TrueNAS CORE OS i przy ograniczonym budżecie (pomijając zakup pamięci masowej od WD w ramach tych prac). Zakup gotowego urządzenia jest jednak zawsze najbezpieczniejszym rozwiązaniem dla małych firm, które potrzebują zapewnienia (wsparcia) od dostawców. Najwyraźniej niektóre z naszych projektów nieco ucierpiały na skutek wyboru opcji DIY.
Wartość gotowego systemu jest nie do przecenienia, jeśli chodzi o zastosowania produkcyjne. iXsystems Mini + jest wprawdzie droższy, ale obsługuje 3 dodatkowe dyski niż platformy DIY i nie ma mowy o obsłudze sterowników komponentów. Oczywiście, dostępne jest również wsparcie dla sprzętu i oprogramowania klasy enterprise, czego nie oferowały żadne systemy DIY. Ostatecznie wszystko zależy od Twoich potrzeb. TrueNAS CORE jest na tyle elastyczny, że obsługuje praktycznie każdy sprzęt.
Dzięki iXsystems rozdajemy TrueNAS Mini. Więcej informacji o rejestracji znajdziesz tutaj.
Obejrzyj najważniejsze momenty naszego występu w poniższym filmie.
Zasoby TrueNAS




Amazon