Ako si postaviť domáci server, a prečo vlastne?

V tomto článku by som chcel popísať, prečo som sa rozhodol postaviť si domáci , čo ma viedlo k môjmu riešeniu, a samozrejme nebude chýbať podrobný návod, ako na to. Tento článok je teda rozcestník, alebo súhrnný článok odkazujúci na iné články.

Kategória „Expert“ obsahuje zložité návody pre expertov a skúsených užívateľov. Články v nej popisujú inštalovanie, odinštalovanie, používanie operačných systémov alebo ich súčastí, a úpravu užívateľských a systémových nastavení s vplyvom na chod a stabilitu systému.

Naša domácnosť je možno trochu pretechnizovaná, ale z rozhovorov s mojimi priateľmi alebo kolegami z práce som zistil, že sa vlastne od iných až tak nelíšime. Máme pripojenie na internet (rýchlu optiku), wi-fi, televízor, mobily, tablety, domáci PC s tlačiarňou a skenerom, aj nejaký pracovný notebook sa občas pritrafí. Všetky tieto zariadenia som chcel doma prepojiť, aby sme si nemuseli napríklad doma posielať fotku cez e-mail. Na našom veľkom domácom PC som teda vytvoril zdieľaný priečinok, lenže bol prístupný iba vtedy, keď bol počítač zapnutý. Na jeho harddisku sa ale začali kopiť dáta, fotky z dovoleniek, filmy, hudba, pracovné dokumenty, všetko možné. Po niekoľkých rokoch ma napadlo, že by bola škoda (veľká škoda), keby sme o to všetko prišli. Tak som kúpil externý disk. Po nejakej dobe som však zistil, že aj ten sa môže pokaziť (však Adam), tak som kúpil nárazuvzdorný vodotesný externý disk. Nebavilo ma ale stále kopírovať súbory, častokrát som na to zabúdal, a neskôr som už ani nevedel, čo mám a čo nemám zálohované. Vadilo mi tiež, že všetky dáta sú na jednom mieste, a nemôžem ich mať so sebou na cestách.

Potom som sa od kolegu dopočul o čarovnom zariadení NAS (Network Attached Storage). Je to vlastne jednoduchý počítač s ohromným harddiskom (alebo niekoľkými), ktorý slúži ako sieťové úložisko súborov. To by asi dokázalo splniť moje túžby. Lenže tieto NASky majú väčšinou slabšie procesory, zvládali by prekódovanie 4K filmu cez domácu LAN sieť alebo wi-fi? Zistil som, že ak by som chcel zariadenie, ktoré by mi vyhovovalo, musel by som si siahnuť hlboko do vrecka. Tak som sa rozhodol, že si taký postavím sám. Okrem NAS by som ale chcel od toho zariadenia viac. A tak vznikol môj domáci server (home server).

Najprv som si spísal, aké služby by som chcel od svojho domáceho servera:

  1. File server – úložisko súborov, dostupné ako sieťový disk, pre všetky domáce zariadenia (bez ohľadu na operačný systém, pretože doma máme produkty bežiace na Windows, iOS, , a ). Súbory by mali byť uložené bezpečne a zálohované.
  2. server – pustiť si film alebo hudbu (kdekoľvek a kedykoľvek)
  3. Diaľkový prístup na obsluhu servera na diaľku (graficky aj príkazovým riadkom)
  4. VPN server – chcel som mať možnosť pripojiť sa bezpečne do svojej domácej siete, zapnúť na diaľku domáci počítač (wake-on-lan), a obsluhovať ho na diaľku (remote control)
  5. Torrent server – bezpečne a rýchlo sťahovať z internetu software (samozrejme len legálne)
  6. Vlastný cloud – všetky súbory dostupné cez internet online a niektoré aj offline
  7. Zálohovanie fotiek z mobilu – aplikácia Google Fotky mi už čoskoro nebude stačiť a platiť sa mi nechce
  8. Neviem čo ešte, ale určite tam niečo pribudne…napríklad herný server, server pre smart domácnosť, a podobne (takže možnosť ďalšieho rozširovania)

Tak som gúglil a gúglil, a porovnával a zase gúglil. Našiel som toho veľa a porovnanie možností je nad rámec tohto článku. V skratke:

  • mnohí užívatelia sa sťažovali na pomalosť NAS zariadení, pokiaľ ich nerozšírili o dodatočnú RAM a harddisky (NASky však často vyžadujú špeciálne RAM a ani s diskami to nie je žiadna sláva, treba doplniť disk pre cache, a samotné „úložné“ disky pre NAS sú veľmi drahé a pritom ide o klasické rotačné magnetické harddisky. Ak by sme chceli SSD do NAS, ceny sú extrémne).
  • manželky mnohých užívateľov sa sťažovali, že „tá skrinka vykuruje celú komoru“, alebo že „to hučí ako vysávač, nemôžeš to vypnúť?“, alebo „kto zaplatí tú elektrinu?“
  • operačné systémy na komerčných NAS poskytujú obmedzené rozšírenie služieb (väčšinou ide o osekané Linuxové distribúcie), a aj s bezpečnosťou OS to niekedy nie je žiadna sláva
  • mnohí užívatelia skončili pri riešení s oddeleným NAS a serverom so službami, čo mi prišla zbytočná duplikácia
  • občas sa našli bezpečnostné diery pri cloudových službách
  • súborový systém btrfs používaný v niektorých NAS má lepšie alternatívy (napr. zfs)

Hardware

Aby som to skrátil – výsledkom bolo, že som si zakúpil mini počítač Intel NUC 8i7BEH. Má fantastický procesor Intel 8.generácie i7-8559U s PassMark score 12,222, čo umožní bezproblémové prekódovanie a streamovanie filmov po sieti, a samozrejme ďalšie rozširovanie môjho domáceho servera. Najväčšia záťaž je na RAM, a keďže nepotrebujem serverovú ECC pamäť, tak som si dovolil kúpiť maximum, čo tento počítač umožňuje, čiže 32 GB (2×16) Kingstone SO-DIMM DDR4 2400 MT/s s pasívnym chladením.

Intel NUC8i7BEH
Intel NUC8i7BEH

Harddisk pre server som zvolil Corsair SSD M.2 MP510 960GB, kvôli jeho rýchlosti, ale zdá sa mi, že je možno zbytočne veľký. Možno by stačil aj 500 GB alebo aj menší. Budem musieť nájsť preňho nejaké využitie, pretože systém zaberá nejakých 29 GB na systémovom disku s veľkosťou 60 GB (mám dve partície pre dva systémy, takže 2x60GB), a zbytok je prázdny. Ale je super rýchly, systém nabootuje za pár sekúnd.

Rozmýšľal som, ako z externých diskov, ktoré sa mi doma nahromadili, urobiť RAID. Pripojil som dva externé disky pomocou USB káblov do počítača, a po niekoľkých pokusoch sa mi podarilo rozchodiť softwarový RAID (manažovaný cez FreeNAS), ale SMART kontroly našly na jednom z nich chyby, tak som sa rozhodol pre úplne iné riešenie. Za nejakých 45 € som si kúpil Raidsonic ICY BOX IB-RD2253-U31, to je taká pekná hliníková krabička, ktorá slúži ako externé úložisko diskov. Kúpil som dva SSD disky Crucial MX500 2TB (výhodný pomer ceny, spoľahlivosti a rýchlosti), a vložil ich do ICY BOXu, ktorý som nastavil na RAID1 (zrkadlenie), takže keď jeden disk zlyhá, stále mám dáta uložené na druhom. Mám teda hardwarový RAID. Tento ICY BOX sa pomocou špeciálneho kábla pripojí do USB konektoru na zadnej strane (pretože zadné sú USB 3.1 a predné len USB 2.0). A v počítači sa to tvári ako jeden disk. Luxus.

ICY BOX IB-RD2253-U31
Raidsonic ICY BOX IB-RD2253-U31

Tým, že som ten hardware trochu predimenzoval, mám priemerné využitie CPU pri bežnej prevádzke okolo 10%, a RAM okolo 3 GB pre systém a 10 GB vyčlenených pre FreeNAS (ale o tom neskôr). Spotrebu elektriny som nemeral, určite ale nebude nejaká hrozná. V BIOSe sa dá nastaviť tichý chod (fanless), lenže v horúcich letných dňoch pri veľkom vyťažení sa ventilátor aj tak spustí. Našťastie to nebýva často a nie je veľmi hlučný.

Ako lacnejšiu alternatívu som zvažoval Raspberry Pi 4. Možností je však nekonečne veľa, a každému bude vyhovovať niečo iné.

Sieť

Ako Router/switch v jednej osobe používam komerčný produkt od poskytovateľa internetu Huawei HG8245H. Nič extra, ale stačí. Na wi-fi sa doma pripájame s mobilmi a tabletmi, ostatné počítače využívajú LAN. Nemám natiahnutú kabeláž, namiesto toho používam Devolo Power Line Magic 2 LAN (vediem teda ethernetový signál po elektrickej sieti 220 V). Treba si však dať pozor pri pripájaní spotrebičov a predlžovačiek – najprv treba zapojiť Devolo do zásuvky, potom do Devola zasunúť koncovku spotrebiča alebo predlžovačky. Môžu totiž rušiť signál. Takisto je vhodné pripojiť router na vetvu čo najbližšie k spotrebičom, záleží však ako máte spravenú elektrickú sieť. Aj veľké množstvo zásuviek na jednej vetve sa tvári ako rozdvojka, a tým pádom môže dochádzať k rušeniu signálu.

Pozor však na rýchlosť, nedávno som zistil, že mi eth (rýchlosť ethernetu, teda po LAN kábli) ukazuje iba 100 Mb/s! Bolo to spôsobené tým, že som využíval Power line Devolo 550+. Prvý sieťový prvok z routera (čiže Devolo) bol pomalší ako 1000 Mb/s, a router sa teda prepol do režimu 100 Mb/s (pre vysvetlenie – router sa skokovo prepína do režimu buď 100 Mb/s alebo 1000 Mb/s, nič medzitým). Keď som vymenil Devolo 550+ za Magic 2 s rýchlosťou 2400 Mb/s, router sa hneď prepol do režimu gigabitového ethernetu (1000 Mb/s). V praxi dosahujem rýchlosti okolo 300-500 Mb/s, čo mi úplne stačí.

Software

Operačný systém – pred mnohými rokmi som si kúpil laptop s Windows Vista, od tých čias po tejto zlej skúsenosti využívam rôzne disribúcie Linuxu, a v poslednej dobe som si zvykol na Linux Mint. Je to jednoduchý a stabilný operačný systém, s grafickým prostredím nenáročný na zdroje, a odvodený od populárneho OS Linux Ubuntu, čím mám zabezpečené, že preňho budú k dispozícii pravidelné aktualizácie. Pre servery je však všeobecne odporúčaný OS Ubuntu Server, je to však Headless (bezhlavý) OS, čo znamená, že nemá grafické prostredie, obsluhuje sa výlučne cez príkazový riadok, a ja nie som jeho veľký fanúšik. Nie je problém však do plne grafického Linux doinštalovať všetky potrebné pre chod servera.

Virtualbox – najpoužívanejšia platforma pre virtualizáciu operačných systémov. Umožňuje do vášho počítača s operačným systémom napr. Windows 10 nainštalovať napr. operačný systém Ubuntu (alebo naopak) a spustiť ho ako program. Ja využívam na svojom hosťovskom počítači s Linux Mint práve Virtualbox na spustenie OS FreeNAS, čo je operačný systém pre zariadenia NAS. Mám teda na jednom železe dva počítače. Pre FreeNAS som vyčlenil dva procesory a 10 GB RAM. Samotní autori FreeNAS neoporúčajú inštaláciu FreeNAS vo Virtualboxe, pre moje domáce potreby však nevidím žiadne hrozby.

FreeNAS – po novom už známy ako TrueNAS, je operačný systém pre NAS, umožňuje správu RAID diskových polí, kontrolu integrity uložených dát (softwarové chyby), kontrolu diskov (hardwarové chyby), naplánovanie pravidelných kontrol, zapnutie a kontrolu zdieľania dát. Je založený na operačnom systéme FreeBSD, podporuje súborový systém zfs, ktorý je ideálny na bezpečné uloženie dát na harddisk. Viac info o zfs tu. Umožňuje aj inštalovanie modulov na zálohovanie dát (backup), vlastný cloud (NextCloud), mediálny server (Plex, Kodi, Emby), a pod.

X11VNC – program umožňujúci ovládať počítač na diaľku cez grafické prostredie. Na serveri beží program X11VNC server a pomocou VNC klienta na inom počítači, mobile alebo tablete, sa môžem pripojiť na server a obsluhovať počítač na diaľku.

NextCloud – je cloudový systém, ktorý umožňuje manažovať a používať vlastný cloud na vlastných diskoch. Obsahuje tiež množstvo aplikácií podobne ako Google Cloud (zdieľanie súborov, editovanie textu/tabuliek, atď.). Nemusíte teda nikomu platiť, a veľkosť vášho cloudu závisí len od veľkosti vašich diskov. Navyše, od 1.6.2021 firma Google mení stratégiu ohľadom aplikácie Fotky – objem fotiek vo vysokej kvalite, ktoré sa doteraz dali nahrávať neobmedzene, sa bude započítavať do objemu vášho 15GB cloudu (tak ako doteraz objem fotiek v pôvodnej kvalite). Celý tento objem sa rozdeľuje medzi Gmail, Disk a Fotky, a je teda možné, že po niekoľkých rokoch svoj limit naplníte, a ak sa nechcete obmedzovať, budete si musieť zaplatiť za rozšírenie objemu vášho cloudu. Všetky tieto problémy mi vyrieši práve NextCloud, kam budem môcť presunúť celý svoj Google Disk aj zálohovanie fotiek. Celý objem Google cloudu 15 GB mi zostane teda na Gmail, čo je viac než dosť na niekoľko desaťročí. Pokým zase Google niečo nevymyslí. U mňa beží v jail vo FreeNAS (jail je kontajnerový systém na správu predinštalovaných programov, niečo podobné ako Docker).

Docker – je platforma na správu, inštaláciu a spúšťanie aplikácií, ktoré sú oddelené od operačného systému. Aplikácie sú v Dockeri nainštalované v tzv. kontajneroch. Je to vlastne ľahšia forma Virtualboxu. Vo Virtualboxe je však každý operačný systém nainštalovaný úplne, so všetkým čo potrebuje, využíva vlastné knižnice a programy, a delí sa s inými OS len o spoločné železo (ide vlastne o virtualizáciu na úrovni hardwaru). V Dockeri je však operačný systém iba jeden, všetky programy zdieľajú okrem spoločného železa aj niektoré knižnice, sú však bezpečne oddelené od operačného systému v spomínaných kontajneroch (virtualizácia je teda na úrovni softwaru). A tým pádom inštalovanie alebo odinštalovanie nemá vplyv na hosťovský operačný systém. Navyše aplikácie v Dockeri si berú len toľko zo zdrojov systému, koľko potrebujú, takže nie je problém mať spustených niekoľko desiatok kontajnerov, bez toho, aby to nejako výrazne spomalilo hosťovský počítač. Iným príkladom platformy na kontajnerizáciu je kubernets, a rozdiel medzi kontajnermi a virtualizáciou je pekne vysvetlený na stránke kubernets.

Príklady programov v Dockeri:

Portainer – program umožňujúci prehľadne graficky zobraziť nainštalované kontajnery a ich manažment, teda inštalovanie/odstránenie, spustenie alebo zastavenie, zmenu parametrov, pripájanie na siete, a podobne.

Watchtower – pravidelne kontroluje a aktualizuje všetky programy v Dockeri.

Radarr – program na spravovanie databázy filmov. Zobrazuje vaše filmy na disku a automaticky ich pridáva do databázy. Umožňuje aj vyhľadanie ľubovoľného želaného filmu a pridanie do zoznamu. V prípade prepojenia na torrentového klienta sa film automaticky stiahne a pridá do databázy, a tiež automaticky stiahne novšiu alebo kvalitnejšiu verziu filmu (podľa nastavení).

Sonarr – to isté ako Radarr, ale pre seriály.

Headphones – to isté ako Radarr alebo Sonarr, ale pre hudbu.

Bazarr – vyhľadáva a automaticky stiahne titulky do filmov alebo seriálov.

Jackett – torrentový indexer, tzn. umožňuje si zvoliť, na ktorých torrentových zdrojoch sa majú vyhľadávať a sťahovať vaše súbory.

Plex, Emby – platené programy pre domáce mediálne knižnice. Umožňujú prehľadné zobrazenie vašich filmov, hudby alebo obrázkov, a ich spúšťanie alebo prehliadanie.

Jellyfin – je vlastne ako Emby, ale úplne zadarmo. Server beží na Dockeri, a na smart TV, tablete alebo mobile si v aplikácii Jellyfin môžete prezerať mediálny obsah. Aplikácie sú k dispozícii pre OS Android aj pre iOS.

qBittorent – jedoduchý a prehľadný torrent klient pre sťahovanie dát.

Zálohovanie a obnovenie v prípade katastrofy

USB kľúče s operačnými systémami – mám jeden USB kľúč s OS Linux Mint, keby skolaboval OS na serveri. Pomocou USB rýchlo nainštalujem OS a po obnovení záloh mám približne za 1 hodinu všetko naspäť. Na druhom USB kľúči mám nainštalovaný OS FreeNAS – keby mi celý domáci server skolaboval do takej miery, že by som ho už ani nezapol, zoberiem hocijaký počítač, nabootujem z USB, pripojím do neho ICY BOX s diskami a mám všetky dáta dostupné.

Grsync – pomocou tejto aplikácie ručne zálohujem (kopírujem) dáta na externý USB disk. Prvá záloha trvá dlho, lebo treba skopírovať všetky súbory; ďalšie zálohy sú rýchlejšie, lebo Grsync ukladá iba dáta, ktoré sa zmenili (software využíva proces rsync). Disk pripájam k serveru iba vtedy, keď zálohujem, inak je v šuflíku. Súbory sú čitateľné, použiteľné v akomkoľvek počítači.

Back in Time – aplikácia na pravidelnú zálohu. K serveru mám trvalo pripojený externý USB disk, nastavený na vykonávanie zálohy raz za týždeň. Program využíva proces rsync, takže súbory sú čitateľné, použiteľné v akomkoľvek počítači.

Záver

Takto vyzerá dnes môj domáci server:

Domáci server
Domáci server – komplet

Vďaka svojim malým rozmerom sa vojde do obývačky do TV stolíka, do skrine, alebo do komory. Nevyžaruje veľa tepla, ventilátor nehučí, všetko je na pasívnom chladení, stačí len elektrická zásuvka pre zdroj a Devolo pre pripojenie na LAN.

Existuje množstvo riešení tohto problému. Na stavbu servera sa dá napríklad použiť aj starý laptop alebo netbook, ktorý leží nepoužitý niekde v šuplíku. Fantázii sa medze nekladú.

Môj návod nie je úplne dokonalý, ani si to nekladie za cieľ. Chcel som vám len ukázať, ako sa dá pomocou jednoduchých riešení vyriešiť množstvo problémov, s ktorými sa pasujú mnohí z nás. Nepovažujem sa za experta v oblasti IT, rád sa ale učím a rád zdieľam svoje skúsenosti s inými. Dúfam, že vám aj tento návod pomohol. Sám som na začiatku nevedel, kde začať, takže verím, že týmto článkom pomôžem všetkým začiatočníkom, ktorí na tom boli ako ja pred niekoľkými mesiacmi.

V nasledujúcich článkoch sa budem venovať jednotlivo všetkým krokom vedúcim k postaveniu takéhoto domáceho servera. Keďže svet je dynamický a neustále sa mení a rozvíja, budem sa aj ja snažiť pravidelne aktualizovať tento post, aj svoje nasledujúce. Ak by ste mali nejaké komentáre alebo nápady, sem s nimi.

Kliknite pre hodnotenie
[Celkom: 2 Priemer: 5]

5 thoughts on “Ako si postaviť domáci server, a prečo vlastne?

  • 11. apríla 2021 at 22:51
    Permalink

    “ V praxi dosahujem rýchlosti okolo 300-500 MB/s, čo mi úplne stačí.“

    Vážne? MB/s?

    Reply
    • 12. apríla 2021 at 15:44
      Permalink

      Hups, pardon, už som to opravil. Vďaka za upozornenie!

      Reply
  • 12. apríla 2021 at 15:51
    Permalink

    V pohode… Ja som tiez postavil NAS a potom som patral po rychlostiach lebo je v tom guláš tie MB/s a Mb/s …

    Reply
  • 12. apríla 2021 at 15:53
    Permalink

    A este by ma zaujímalo kolko to vsetko stalo 😉

    Reply

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *