[Projekt] CML - domácí server pro tenké klienty

Hotové nebo rozdělané projekty - úpravy a modifikace počítačových skříní krok za krokem.
V této sekci se nezapočítají příspěvky.

Moderátor: L4mka

Odpovědět
Maor
Začátečník
Začátečník
Uživatelský avatar
Registrován: 19. bře 2010

[Projekt] CML - domácí server pro tenké klienty

Příspěvek od Maor »

Rozhodl jsem se racionalizovat počet počítačů v domácnosti a rozhodl se pro kompletní centralizaci v jednom serveru.

Cílem je mít jeden server, kde každý uživatel bude mít vlastní VM, na kterou bude přistupovat po LAN nebo i z internetu.
Aktuálně provozuji 4 desktopy a jeden NAS. Celkem nějakých 14jader (Sandy, Llano, Richland), 22GB RAM a 15TB disků které se zbytečně většinu času flákají a HW je celkem nevyužitý. Protože počítače nikdy nejsou zároveň vytížené na maximum bude sdílením HW prostředků mezi uživately na serveru možné dosáhnout redukce nevyužitého HW a zároveň díky sdílení nevyužitých HW prostředků stoupne teoretický maximální výkon, který je uživateli dostupný.

Celé řešení server - klient je ale závislé na SW. Existuje celá řada protokolů pro vzdálený přístup, cílem je najít nejlevnější řešení, které se nejvíce blíží baremetal. Klíčovou podmínkou je tedy HW akcelerace desktopu.

Uvažovaná řešení:
ESXI - těžkopádné a uživatelsky nepřívětivé. Nejasná reálná situace kolem HW akcelerace desktopu a složité licencování.
Zen Desktop - Pravděpodobně HW akcelerace desktopu je možná, ale je to drahé.

Hyper-V + remoteFX - toto jsem zkoušel, lze si vše vyzkoušet celkem jednoduše v rámci trialu. Pro windows power usera uživatelsky velmi přívětivé. Nicméně HW akcelerace pomocí vGPU je dost omezená a pustit si přes to hru je prakticky nemožné. Možností by bylo passthrough GPU přímo do VM. Negativum je drahá a komplikovaná licenční politika.

unRAID + moonlight gamestrem / nomachine NX - unRAID je hezký OS pro NAS, který má zabudovaný KVM s podporou GPU passthrough. Systém je bohužel jen v AJ, ale pro uživatele je velmi přehledný a téměř vše jde nastavit v klikacím GUI. Existuje také velké množství přehledných návodů a člověk se neztrácí v hromadě dezinformační propagandy jako u výše jmenovaných řešení. unRAID má již v základu implementovány patche pro nVidia GPU, tudíž, lze bezproblému nainstalovat drivery do VM a plnohodnotně využívat všechny funkce GPU. Při kombinaci např. ubuntu+KVM je nutné si pohlídat, aby nVidia driver nezjistil, že běží ve virtuálním stroji.
Licenční politika unRAIDu je přehledná a odvíjí se podle počtu HDD v NASu.
gamestrem a klient moonlight je dostupný bezplatně. Streamováním mstsc.exe má uživatel plně HW akcelerovaný desktop s minimálním lagem. Klient moonlight je dostupný pro android, Chrome nebo ARM-linux(Raspberry Pi, Orange Pi, Cube)
nomachine NX je pro základní použití také zdarma. Klient je dostupný pro android, ARM-linux, windows,...


Je zřejmé, že po softwarové stránce se kloním k unRAID + gamestream. Největší nevýhodou je, že každý uživatel s HW akcelerací potřebuje mít na serveru vlastní nVidia GPU. V případě Steam inhome streamingu je možné použít libovolné GPU, ale tam není takový výběr klientských platforem, klient musí být X86 nebo steam link.
Gamestream a klient moonlight mají ale jeden zásadní problém a to zařízení připojená na straně klienta (flash disk,...) Tyto zařízení je nutné forwardovat do VM na serveru. Vzhledem k uvážené nízké četnosti připojování USB zařízení se jeví jako dobré řešení připojit se dočasně pomocí nomachine klienta, který umí forwarding nejběžnějších USB zařízení, ale specialitky jako sériovou linku nezvládne. Na takové požadavky bude nutné zařízení připojit přímo do USB portu na serveru.

HW klient. Moonlight a nomachine mohou běžet jak na androidu, tak ARM-linuxu, volba klienta je tudíž poměrně náročná, ptotože je možné volit z bezpočtu Android TV krabiček a klonů raspberry Pi.
Jako ideální by byl TV box s Androidem 8 a podporou project Treble, tudíž by bylo možné jednou za čas aktualizovat Android. Aktuálně jsou na trhu ale jen TV boxy s Androidem 7 a nižším a kvalita ROM není valná. Ideální bude volba TV boxu se SoC Almlogic, s ověřenou podporou distribuce armbian. Takové řešení dává možnost vše nastavit na Androidu a po čase TV box flashnout na armbian, pokud by bylo třeba, ale pro uživatelské pohodlí je možné zůstat na androidu.
Klony Raspberry jsou vesměs dražší než TV boxy po započítání nákladů na šasi, napájecí adaptér a SD kartu, ale lze je použít, pokud jsou kompatibilní s moonlight-embedded.

HW server. Server bude postaven na Ryzenu 2XXX s ECC pamětí 16GB. Ještě nevím, jestli použít X470 nebo X399/X499 platformu, ale pravděpodobně zvítězí nižší cena X470.
Požadavek je, aby jeden uživatel měl plný výkon GTX 1080, ostatním stačí pouze multimediální HW akcelerace, tudíž si vystačí i s GTX 1050 na PCIe x1 lince.
Jelikož zatím není třeba ukládat moc dat, začnu s 2x 4TB WD GOLD a jedním 128GB SSD na cache. unRaid má jeden HDD jako paritní a jeden na data. V budoucnu půjde snadno rozšířit. SSD slouží jako cache pro zápis.
Vzhledem k provozu 24/7 jsem zvolil Seasonic Prime Ultra titanium 1000W , ve své kategorii vychází jako nejúčinější zdroj spolu s 850W verzí. Corsair má účinnost srovnatelnou v rámci 0.1%, tudíž není důvod připlácet za vyšší výkon.
Skříň plánuji The Tower 900 s kompletním vodním okruhem. Budu stavět z PETG trubic.

To asi na úvod stačí.
Přibližný harmonogram:
červen objednání posledních součástek na server a čekání na doručení
červenec stavba serveru
srpen testovací provoz s OrangePi, a android TV boxem
září vyhodnocení beta provozu a kompletní nahrazení desktopů tenkými klienty (Linux/android)
Maor
Začátečník
Začátečník
Uživatelský avatar
Registrován: 19. bře 2010

Re: [Projekt] CML - domácí server pro tenké klienty

Příspěvek od Maor »

Tak jsem se pustil do nákupů a některé navrhované komponenty se změnily, když jsem to naházel do kalkulačky.
Využil jsem výprodejů Ryzenů 1XXX a na cestě je Ryzen 1700 a Asus Prime X370 pro.
Dnes je poslední šance využít cashback: https://promotion.asus.com/cs/cz/get_ca ... _and_ryzen
Výrazná sleva převýšila vyšší provozní náklady vůči nové platformě (cca o 10% horší spotřeba ryzenu 1xxx).

Zároveň jsem objednal TV box Alfawise Z28 pro za 40USD, jelikož na stejném SoC již vyšel jiný TV box s Androidem 8.1 a tahle krabička je docela populární, doufám v port Treble. Případně by měla být v budoucnu podpora i v mainline díky velké podobnosti s ROCK64. Krabička má mít 2GB RAM a 16GB ROM a 5GHz WIFI, tak uvidíme. Armbian na tom rozběhat jde, problém je s ovladači WiFi.

Také vyšel Steam Link pro Android, ale nepodařilo se mi ho otestovat bez steam ovladače, takže tohle řešení RDP zatím není alternativou pro Moonlight.

HDD nakonec bude nějaký low end, protože se k nim dá dokoupit až 3roky záruky navíc, takže hlavní výhoda WD GOLD padá.
L!po
Začátečník
Začátečník
Registrován: 21. říj 2006
Bydliště: Dobrá Voda u Hořic, Jičín
Kontaktovat uživatele:

Re: [Projekt] CML - domácí server pro tenké klienty

Příspěvek od L!po »

RPI 3 B+ nepoužíváš kvůli ceně? (sw podpora etc..) mám s nima ve spojení s RDP(xfreerdp) dobré zkušenosti..
PC: CPU: R7 7800X3D, (NOCTUA NH-D14 + offset mnt ), RAM:2x16GB 6GHz CL30 G.Skill TridentZ5, MB: ROG STRIX X670E-A GAMING WIFI, GPU: Gainward Phoenix RTX 3080Ti, SSD: Samsung 960 PRO 1TB + 970 Evo plus 2TB + 850 EVO 1TB + 2x 860 EVO 500GB, PSU: Seasonic Prime GX-750W, Case: Corsair Obsidian 750D, Dell AW3418DW, Logitech G11 + MX518
Maor
Začátečník
Začátečník
Uživatelský avatar
Registrován: 19. bře 2010

Re: [Projekt] CML - domácí server pro tenké klienty

Příspěvek od Maor »

RPI má poměrně dost záporů a SW to nezachrání:
- napájení přes shit microB konektor
- absence USB 3.1 gen1 (Ten co vymyslel, že se zruší název USB 3.0 by měl jít dělat někam na banánovou plantáž trhat banány)
- absence EMMC
- myslím, že pořád neumí 5GHz wifi ani gigabit ethernet (ale to jsem nestudoval a nevím jak to má ten Rockchip v Z28pro zadrátovaný)
- cena je dost vysoká na to co to (ne)umí
- nemá v základu krabičku

V momentě kdy na tom rozběhám Armbian tak mám SW podporu bezproblémovou. Je teda otázka, co wifi driver, ale v nejhorším půjde vypreparovat nějaká binárka z Androidu, ale protože se s tím nechci babrat, tak jsem rád za předinstalovaný Android.
SS_Rambo
Mírně pokročilý
Mírně pokročilý
Uživatelský avatar
Registrován: 18. pro 2004
Bydliště: Horní Suchá

Re: [Projekt] CML - domácí server pro tenké klienty

Příspěvek od SS_Rambo »

Maor píše:RPI má poměrně dost záporů a SW to nezachrání...
  • Napájecí konektor - ano microUSB je shit, taky ho nemusíš použít a můžeš ho vyvést z toho 40pin headru.
  • Ano B+ má stále "jen" USB 2.0, ale myslím že na běžné použití to je dostatečné.
  • absence eMMC - Tím že nbudeš mít server, tak bych přešel na bootvaní po lan, pak tam nebudeš muset mí u B+ ani strčenou uSD kartu.
  • B+ již 5GHz umí a má 1Gbps síťvku, byť s reálnou propustností 300Mbps.
  • Cena je vyšší, ale zase to "Vynahrazuje" podle mě gigantická komunita.
  • Krabičku v základu nemá, ale ta stojí pakatel...
Výhodou podle mě u toho RPi B+ ( https://www.raspberrypi.org/products/ra ... el-b-plus/ ) je fakt ta komunita a to že všechny ovládače jsou už připravené.

Edit: pokud bych už teda chtěl něco takového mimi RPi, tak bych se vyhnul armu a šel do nějakých "Intel Atom Mini PC", kdy na Aliexpresu jich je už fura za cenu okolo 100USD. Sám jsme si teď objednal Pipo X8 na tiskový server (Repetier-Server) k 3D tiskárně, kdy mě vyloženě ten integrovaný dotykový 7" display vyhovuje, ale samozřejmne, že existují varianty bez displaye.
Od té doby co jsme si koupil ThikPada tak neznám jinou značku booku...
Maor
Začátečník
Začátečník
Uživatelský avatar
Registrován: 19. bře 2010

Re: [Projekt] CML - domácí server pro tenké klienty

Příspěvek od Maor »

ještě jsem zapomněl, že ten rockchip v Z28pro nebo Rock64 umí 4K výstup na 60Hz, což taky nevím, jestli RPi zvládne.

Z28pro jsem z EU skladu dostal za 40USD. a šlo by to i s levnějším TV boxem, kdybych nepřiplácel za 5GHz WIFI

Jako jo šlo by to udělat na RPi, ale za stejnou cenu mám lepší HW, který by to měl zvládnout stejně dobře. Uvidíme, jaký budou reálný zkušenosti z provozu.
Atomový počítače jsou na to nevhodný, protože gamestream klient pro x86 platformy je podporovanej jen jako addon do chromu a dost dlouho to mělo šílenej lag myši, kterej nikdo neřešil. Klient pro Android má nejaktivnější vývoj. A taky jsou už tak drahý, že to postrádá smysl levnýho tenkýho klienta.
PixleFMixle
Začátečník
Začátečník
Registrován: 11. úno 2018

Re: [Projekt] CML - domácí server pro tenké klienty

Příspěvek od PixleFMixle »

pod to se podepisu... objednaval sem kolegovy jakousi android krabicku za litr a zabusilo to RPi do zeme za pulku ceny "out of the box"... at uz vykonem, tak uzivatelsky znamejsim rozhranim...
Sharp MZ-821 Z-80@6MHz OC Yeah!, 64kB RAM!, 256kB RAMdisk!, 32kB VRAM!, 4 barvy pri 640x400! JapanUberPower!
...mam rad mistni druzici a jeho asijsky kamaradicky...
Maor
Začátečník
Začátečník
Uživatelský avatar
Registrován: 19. bře 2010

Re: [Projekt] CML - domácí server pro tenké klienty

Příspěvek od Maor »

Drobet se mi to protahuje a vůbec jsem nezvládl nic nafotit, ale tak to chodí, když nejsou sponzoři, kteří by požadovali výsledky.

Aktuálně jsem v testovacím režimu, kdy ladím software. Poznatky:
hamachi docker má problém běžet jako gate, takže to nechám běžet ve VM jako prase.
Většina antivirů neběží ve VM na KVM. Avast, AVG = nebootující image. Windows defender a BitDefender fungují.

Windows 7 a passthrough GTX 1070 fakt nejde. Win 7 naběhne jen s legacy SeaBIOSem a GTX1070 zase jen s OVFM(uefi bios). Takže VM běhají na Win 10.

Kvůli zrušení podpory OOT IT87 driveru UNRAID od verze 6.6 neumí číst data ze senzorů desky(ASUS x370f strix). Příště brát Asrock, který osazuje čipy s lepší podporou v linuxu.

Na test, jestli by šlo zvýšit počet pcie zařízení pro VM jsem si objednal tuhle kartu:

Obrázek
Je to PCIe packet switch na bázi ASM1184, z jedné linky PCIe 2.0 udělá čtyři. Je to o dost levnější než co zkouší Linus https://www.onestopsystems.com/pcie-expansionhttps://linustechtips.com/main/topic/98 ... pc-part-2/
Maor
Začátečník
Začátečník
Uživatelský avatar
Registrován: 19. bře 2010

Re: [Projekt] CML - domácí server pro tenké klienty

Příspěvek od Maor »

Tak se mi protáhlo testování. Přidal jsem 1TB NVMe SSD, z plotnových disků šlo celkem rozumně provozovat 2VM, ale na víc systémů už byl hodně cítit limit IOPS (rychlejší odezva taky pomáhá).

Pár dílů co mám připraveno na vodníka. Číňanské fitinky jsou na 12/14mm trubky a 10/13mm hadice.
photo5839387521203678707.jpg
Barrow mě nijak nesponzoruje
Nemáte oprávnění prohlížet přiložené soubory.
Maor
Začátečník
Začátečník
Uživatelský avatar
Registrován: 19. bře 2010

Re: [Projekt] CML - domácí server pro tenké klienty

Příspěvek od Maor »

Dorazila GTX 690. Cílem je zprovoznit v KVM dvě virtuální mašiny, každou s jedním GPU a podporou gamestream. Případně lze na kartě vyměnit pár rezistorů a nainstalovat ovladače pro karty Tesla/Quadro/Grid

Zatím to vypadá dobře, základní deska s kartou normálně spolupracuje, každý čip je ve vlastní IOMMU, ale nepodařilo se mi nainstalovat ovladač ve VM. Nicméně pro první spuštění nebylo nutné aktualizovat bios karty ani nic speciálně nastavovat.
Odpovědět

Zpět na „Projekty“