TrueNAS – CORE vs SCALE /2024 – czy CORE umarł?

TrueNAS CORE i SCALE – historia

Zaczynając od krótkiego rysu historycznego, za co przepraszam, ale trochę tutaj trzeba. W 2005 roku wystartował projekt FreeNAS jako darmowe oprogramowanie open source. Był rozwijany równolegle z jego wersją Enterprice do września 2020 kiedy to deweloperom z iXSystems znudziło się utrzymywanie dwóch oddzielnych linii produktów. Tak oto w listopadzie 2020 roku wyszła ujednolicona wersja tegoż oprogramowania, do dziś znana jako TrueNAS CORE.

Z różnych przyczyn do których wrócę zaraz, TrueNAS CORE ma ograniczenia, które znacząco utrudniały rozwijanie go w kierunku klastrowania poszczególnych serwerów, w jeden duży, redundantny i skalowalny klaster. Następnym ważnym, a bardzo trudnym do realizacji celem na TrueNAS CORE było rozpoczęcie wsparcia konteneryzacji opartej na Docker. Tak oto powstała gałąź TrueNAS SCALE, również jako darmowe oprogramowanie open source.

Wspomnę tylko, że opcja klastrowania, na chwilę obecną, najdelikatniej mówiąc, stoi pod znakiem zapytania. To dlatego, że Red Hat rozwijający oprogramowanie Gluster FS, na bazie którego jest, czy też było oparte kastrowanie, dosyć niespodziewanie ogłosił, już nie będzie dalej, ani rozwijał oprogramowania, ani nawet łatał błędów. Więc na chwilę obecną funkcjonalność pełnoskalowego kastrowania, mówiąc w prost nie istnieje. Słyszałem od inżynierów iX Systems, że szukają innego rozwiązania. Jednym z proponowanych rozwiązań pośrednich, choć mającym ograniczone zastosowanie, jest użycie oprogramowania Syncthing do synchronizacji w tle. 

TrueNAS CORE i SCALE – co je łączy?

Oba systemy TrueNAS CORE i SCALE to tak naprawdę ładnie opakowane interface graficzny, służący do zarządzania przestrzenią dyskową i udostępniania jej użytkownikom. Świetnie sprawdzają się jako serwery zasobów plikowych czy to jako NFS, SMB czy to iSCSI. To co jest kwintesencją obu systemów, to ZFS który pod spodem zarządza dla nas danymi na dyskach. Dla zainteresowanych, dlaczego ZFS? Zapraszam do materiału „TrueNAS – ZFS dlaczego jest zajefajny ?”.  

Obydwa systemy posiadają zbliżony do siebie w miarę wygodny interface dla użytkownika. Oba są oprogramowaniem open source, co sprawia, że po pierwsze możecie korzystać z nich za darmo, po drugie z racji popularności w sieci będziecie w stanie znaleźć najprawdopodobniej odpowiedzi na potencjalne pytania czy też rozwiązania dla ewentualnych problemów.

Za oboma również stoi ten sam doświadczony zespół developerów tworzących oprogramowanie, które są niemal identyczne jak te wrzucane na oficjalne urządzenia. A te puszki z logo TrueNAS cieszą się również w Polsce zaufaniem małych średnich i dużych firm. Niektóre to naprawdę duże i znane marki. Niestety nie mogę wymieniać nazw,  ponieważ na ogół z różnych przyczyn sobie tego po prostu nie życzą.

TrueNAS CORE i SCALE – co je różni?

Co zatem różni TrueNAS CORE i SCALE tak na prawdę? Podstawowa różnica to system na bazie którego są zbudowane. TrueNAS CORE oparty jest o system FreeBSD. TrueNAS SCALE natomiast jest zbudowany na Debian który to jest jedną z dystrybucji Linux.  

Jaka jest więc różnica zapytacie? co jest świetnym pytaniem. Spiesząc z odpowiedzią na pytanie, które sam sobie przed chwilą zadałem odpowiadam: FreeBSD który to choć sprawdzony stabilny i bezpieczny ma swoje ograniczenia. FreeBSD najdelikatniej mówiąc, nie jest pierwszym wyborem, jeśli chodzi o konteneryzacje Docker, Kubernetes, która jest obecnie w olbrzymim natarciu.  Dodatkowe funkcjonalności takie jak Nextcloud, Plex czy wiele, wiele innych w CORE oparte są na tzw. Jails. Owszem jak się je zna i zautomatyzuje to są to dobre i solidne rozwiązania. Tylko, że w praktyce w nowych wdrożeniach bardzo rzadko już się je stosuje. Aplikacje zaimplementowane w Jail są trudne do przeniesienia między różnymi systemami, nie wspominając już o przenoszeniu między różnymi dystrybucjami. Poza tym można odpalić w nich tylko to co pracuje na identycznej wersji jądra jak jądro systemu gospodarza. To wszystko sprawia, że rozwój technologii Jail jest w zasadzie martwy.

Tutaj, cały na biało wjeżdża Debian, który jest jedną z popularniejszych dystrybucji Linux. Właśnie na nim oparto TrueNAS SCALE. W Debian nie ma problemów w konteneryzacją opartą na Docker.  W SCALE aplikacje oparte są właśnie na Docker. Zarówno sam Debian jak i technologia konteneryzacji oparta na Docker jest bardzo dynamicznie rozwijana. Sprawia to, że aplikacje w SCALE w odróżnieniu od CORE trochę rozwijają się „same”. Ilość możliwych do wdrożenia aplikacji rośnie bardzo dynamicznie, ponieważ nie trzeba ich adaptować i utrzymywać jako Jail, tylko wystarczy wykorzystać istniejące obrazy całych kontenerów wykorzystując Docker. Dodatkowo wysiłek aktualizacji wszystkich aplikacji w praktyce w odróżnieniu od Jail jest przerzucony opiekunów aplikacji czy też opiekunów samych wykorzystanych obrazów Docker bo aktualizowane są całe kontenery.

W wyniku różnicy w dynamice rozwoju FreeBSD i Debiana czyli TrueNAS CORE i SCALE powstaje jeszcze jedna ważna różnica. Chodzi o driver do urządzeń. Jeśli na rynek wchodzi jakiś nowy model karty sieciowej, płyty głównej czy czegokolwiek, to w praktyce dużo szybciej będzie on obsługiwany przed Debian niż przez FreeBSD. Często ze względu na skale wykorzystania będzie bardziej dopracowany. W przypadkach rzadszych wersji urządzeń, FreeBSD może się nigdy obsługi takich urządzeń nie doczekać.  Stąd właśnie „kapryśność” TrueNAS CORE odnośnie na przykład kart sieciowych. Dla niewtajemniczonych, to jak szukacie kart sieciowych to CORE to niech to będzie cokolwiek na chipset Intel i powinno być dobrze. Inaczej bywa różnie. Czasem na jakimś składanym sprzęcie jest tak, że są problemy z driver i ciężko powiedzieć co i jak? Po upgrade do SCALE często wszystko działa jak należy. 

Z raczej już niszowych tematów a propos TrueNAS CORE i generalnie storage, to multipath. To funkcjonalność dostępna w dyskach klasy SAS, które są droższe ale również występuje w dyskach NearLine SAS, które już są niewiele droższe on dobrych dysków do NAS. Pozwala na podłączenie jednego dysku dwoma redundantnymi kablami a nawet dwoma różnymi kontrolerami. Potrafi nam on zapewnić naprawdę wysoki poziom redundancji. Choć żeby być dokładnym to w CORE istnieje wsparcie dla multipath, jednak już nie jest rozwijane w wersji open source. Niestety pełne wsparcie tak wysokiej niezawodności jaką daje multipath już występuje tylko w wersji Entrprise do kompletu z oryginalnymi pudełkami TrueNAS. 

Z nowości w TrueNAS SCALE w marcu 2024 we wczesnej wersji testowej „nightly”  wyląduje, napisana zupełnie od nowa funkcjonalność deduplikacji. Można ściągnąć i testować. Nowa wersja nazwana po prostu „fast dedup”.  Podobno jest znaczenie efektywniejsza między innymi pod kontem zasobożernosci. Zobaczymy, sprawdzimy.  

Na chwilę obecną czyli marzec 2024 w TrueNAS SCALE. jest problem z elastyczną adaptacją pamięci RAM dla ARC cache. Nie jest to problem samego TrueNAS tylko wspomnianego wcześniej Debian na którym jest oparty. W efekcie ARC cache zajmuje maksymalnie połowę RAM co może sprawiać, że drugą połowę mamy niewykorzystaną. Tak można to modyfikować ręczenie ale to na inna dyskusję . 

Są też różnice o osiągach między CORE a SCALE. To też nie jest tak, że któryś jest szybszy tylko to zależy od konkretnego przypadku. Ale po pierwsze różnice nie są jakieś duże a po drugie to się też zmienia wraz z postępującymi pracami nad SCALE.

Kiedy wybrać TrueNAS CORE?

Kiedy zatem rozważyć TrueNAS CORE? Na chwilkę obecną jest to dobrze sprawdzony, solidny kawał oprogramowania. Co prawda inżynierowie z TrueNAS zapewniają, że projekt będzie cały czas wspierany. to wygląda na to, że nie wylądują w nim już żadne znaczące aktualizacje czy funkcjonalności. Zapewne będą wychodziły poprawki bezpieczeństwa czy poprawki błędów.
Jeżeli potrzebujesz, żeby NAS był NASem. po prostu trzymać tam dane w sposób niezawodny, przetestowany, korzystać z zalet ZFS, redundancji, replikacji, optymalizacji wydajności. Jeśli nie potrzebujesz jakiegoś fikuśnego sprzętu, to TrueNAS CORE może być dla Ciebie.
Poza tym jeśli masz istniejące działające wdrożenie CORE a nie potrzebujesz nowych funkcjonalności to chyba warto zostawić skoro działa dobrze.

Kiedy wybrać SCALE?

TrueNAS SCALE jest z nami od ponad trzech lat. Na początku miał trochę różnych problemów. Były to miedzy innymi problemy z interface graficznym który choć podobny do CORE to został napisany od nowa. Obsługa danych pod spodem czyli sam ZFS działa bez większych problemów. Muszę przyznać, że przez ten czas z aktualizacji na aktualizacje coś się zmieniało, dodawano nowe funkcjonalności, było widać jak dynamicznie trwają prace nad SCALE. Obecnie wydaje się już dużo bardziej dojrzały.
Kiedy zatem wybrać TrueNAS SCALE? Jeśli planujesz korzystać do dodatkowych funkcjonalności na przykład w postaci aplikacji. Na chwile obecną są już dziesiątki aplikacji natywnie wspieranych przez TrueNAS. Nawet jeśli nie ma tam Twojej aplikacji zawsze można zainstalować dowolny obraz dokera i odpalić. Jeśli planujesz korzystać z nowych ulepszeń, funkcjonalności jak na przykład „fast dedup”. Czy innych nadchodzących w przyszłości. Również jeśli będziesz miał problem z kompatybilnością sprzętu. Tak mogły by być powody, żeby wybrać właśnie SCALE

Kiedy wybrać Truenas enterprise?

Jaka jest zatem przyszłość CORE czy faktycznie już nie żyje? Wygląda na to, że będziemy spychani z czasem do wersji SCALE. Nic dziwnego, ponieważ problematyczne jest utrzymywanie oprogramowania w dwóch wersjach. CORE przez brak nowych funkcjonalności będzie z czasem coraz bardziej odstawał i z czasem będzie pewnie odstawiany.
Jako potwierdzenie warto też wspomnieć, że upgrade z CORE do SCALE to kwestia przysłowiowego „klik”. W drugą stronę już nie jest tak łatwo.
Jednak na chwilę obecną nie wygląda na to, żeby CORE miał przestać dostawać aktualizacje bezpieczeństwa, to dobre wieści. Dalej więc możemy spokojnie z niego korzystać przez najbliższe lata.

Przyszłość CORE

Jaka jest zatem przyszłość CORE czy faktycznie już nie żyje? Wygląda na to, że będziemy spychani z czasem do wersji SCALE. Nic dziwnego ponieważ problematyczne jest utrzymywanie oprogramowania w dwóch wersjach. CORE przez brak nowych funkcjonalności będzie z czasem coraz bardziej odstawał i z czasem będzie pewnie odstawiany.
Jako potwierdzenie warto też wspomnieć, że upgrade z CORE do SCALE to kwestia przysłowiowego klik. W drugą stronę już nie jest tak łatwo.
Jednak na chwilę obecną nie wygląda na to, żeby CORE miał przestać dostawać aktualizacje bezpieczeństwa, to dobre wieści. Dalej więc możemy spokojnie z niego korzystać przez najbliższe lata.

Podsumowanie

Tak w skrócie starałem się podzielić z Wami trochę własną wiedzą, trochę informacjami z wewnątrz iX Systems a trochę domysłami, żeby przestawić aktualną sytuację w sprawie różnicy między TrueNAS CORE i SCALE. No i przyszłości CORE .