Návody
-
Linux Terminal Server Project - I
Linux Terminal Server Project - I
aneb jak ušetřit peníze za drahý hardware.
Úvod
Možná se vám stalo, že máte doma počítač na kterém pracujete a zároveň
nějaký starší stroj, který už není téměř k ničemu, nemá disk a ani s pamětí
to není nijak slavné. A také se vám možná stalo, že jste na tom slušnějším
počítači potřebovali pracovat a zaráz ještě synek musel psát nějaký referát
do školy. I byl nucen se vrátit k papíru a tužce, abyste mohli vy zatím
živit rodinu.
Jiný případ je podstatně zajímavější. Zařizujete středně velkou kancelář
a vybavujete ji osobními počítači. Každý počítač musí mít relativně slušný
procesor, spoustu paměti a velký disk, aby nakonec nedělal nic jiného než
čekal na sekretářku, která na něm nikdy nespustí nic jiného než textový
procesor. Podobný případ bude počítačové centrum třeba pro knihovnu. Tak
jak to všechno zlevnit?
Řešení obou problémů přichází s Linuxem (či s jakýmkoliv jiným UNIX-like
systémem) a jeho nasazením v roli terminálového serveru. Proboha, co to je?
Zjednodušeně: Investujete peníze do jednoho stroje, který bude mít pouze
trochu více paměti a ostatní stanice budou levné, bezdiskové s nevýkonným
procesorem (prostě ty, co se vám válí ve skříni a nejsou na nic dobré).
Oblast nasazení a nároky
Nasazení tohoto řešení je vhodné především pro menší síť. Předpokládejme
onu zmiňovanou kancelář o dvaceti pracovních stanicích s jedním serverem.
Požadujeme takovou oblast nasazení, která má nízké nároky na zobrazování.
Nepočítejme tedy s tím, že na každé stanici poběží film. Ani pro DTP studio
by to nebylo vhodné řešení. Budeme tedy předpokládat aplikace nepůsobící
velkou zátěž pro zobrazování (textové editory, běžné kancelářské
aplikace,browsery, poštovní klienti).
Druhým požadavkem bude počítačová síť. V tomto případě si vystačíme i s
10Mb Ethernetem. Jako vhodný model pro tuto nízkopropustnou síť se jeví
100Mb připojení serveru ke switchi a odsud dále 10Mb linky. Zkoušet
propojení 10Mbpouze s huby nemá valný smysl. Velice rychle dochází k
zahlcení sítě. Musíme si uvědomit, že po síti projde opravdu každé klepnutí
klávesy a každé zobrazení okna na monitoru klienta.
Kromě síťových karet pak potřebujeme u každé stanice 64 MB paměti. Je to
hodnota získaná empiricky. U stanic s menší velikostí je občas potřeba
zaswapovat a naproti tomu větší paměť je většinou zbytečná. Jako spodní
hranici doporučuji 32 Mb paměti. A proč stačí tak málo paměti? Na každé
stanici poběží pouze linuxové jádro a X server. Všechny ostatní aplikace
poběží na serveru. Jako procesor stačí bez potíží libovolné pentium.
Nároky na procesor a disky serveru není možné tak lehce stanovit. Velmi
se liší podle požadovaného využití. Zmínit se můžeme o paměti.
Předpokládejme, že každý uživatel bude mít spuštěný X server, Phoenix a
OpenOffice.org. Díky mechanismu sdílení paměťových stránek dojdeme k tomu,
že valná většina kódu bude opravdu sdílená a pro každého uživatele budeme
potřebovat zhruba 50 MB paměti. Při dvaceti uživatelích to bude dělat 1 GB
+ sdílené prostředky. Řekněme, že tedy 1.5 GB by mělo pro náš případ
stačit. Upozorňuji, že toto jejen ukázkový příklad a hodnoty jsou opravdu
pouze přibližné. Pro správné zvolení velikosti paměti je třeba udělat
analýzu předpokládaného provozu a z ní vycházet.
Spíše omezenou oblastí použití bude nasazení TS v první zmiňované
situaci - domácí síť. V případě spojení pouze dvou počítačů dokonce
ušetříme na síťových kartách - propojíme je paralelním kabelem. Jeho
rychlejší variantu podporovanou linuxovým jádrem si předvedeme
později.
Výhody
- Cena - Z výše uvedeného rozpisu vidíme, že celkové náklady na počítače
se výrazně sníží (jedna stanice nás v současné době přijde do 2000
Kč).
- Údržba - Z nutnosti udržovat každý počítač zvlášť, případně nějaké
hybridní možnosti (část aplikací na serveru a část na stanicích) se
stane starost o jediný počítač - server.
Nevýhody
- Částečné omezení použití - lze řešit lokálním spouštěním některých
aplikací. Nicméně nelze doporučit pro multimediální studio (ono to by to
snad ani nikoho nenapadlo).
- Snížená bezpečnost - Na serveru se budou muset povolit některé služby,
které by měly být raději zakázány (např NFS, TFTP). Je tedy vhodné mít
funkční firewall a dodržovat základní bezpečnostní návyky (ale to snad také
i bez bezdiskových stanic)
Proč LTSP?
Linux Terminal Server Project je sada
programů, které zjednodušují přípravu a údržbu terminálového serveru na
maximální možnou míru. V současné době se jedná o nejpropracovanější a
nejsnadněji použitelný balík tohoto typu. Ostatně na stránkách projektu
uvidíte spoustu firem a dokonce i nějakou školu. Všichni uvedení si prý
nemohou LTSP vynachválit. Já jsem s tímto projektem také velmi spokojen.
Za dva roky jsem nenarazil na větší problém. Navíc je vše opravdu lehce
ovladatelné. A co nám tento produkt nabízí?
- Přístup k serveru pomocí telnetu. Toto je nejjednodušší varianta. Na
každé stanici se zprovozní systém a na několika konzolích se otevře
telnetové spojení k serveru. Toto použití sice asi nebude příliš časté,
nicméně najdou se i dnes místa, kde si s konzolí vystačíme. Výhodou je
především nižší paměťová náročnost pro server. Menším kladem zůstává
použití ještě staršího hardware. Vystačíme si s procesory 386 a zhruba 8 MB
paměti.
- X server. Tato volba nám umožní plné využití možností serveru.
Můžeme spouštět libovolné aplikace a stanice se chová jako plnohodnotný
osobní počítač.
- Spouštění lokálních aplikací. Můžeme volit i onu hybridní formu
stanice s diskem. Pak můžeme pouštět jak aplikace na serveru, tak aplikace
na terminálu. Jaké jsou výhody? Snižujeme tak zátěž serveru. Můžeme také
spouštět graficky náročné aplikace (přehrávání videa), protože není
potřeba přenášet všechna data po síti. Lépe se také ovládá například
lokální zvuková karta. Bohužel tak zvyšujeme nároky na stanici a dostáváme
se tak k hranici, kdy bude výhodnější použít plnohodnotnou pracovní
stanici.
- Lokální tisk. LTSP nabízí také jednoduchý způsob, jak zprovoznit
tiskárnu připojenou k terminálu.
Pro ty, kteří chtějí věci porozumět opravdu do hloubky, doporučuji celý
terminálový server rozchodit ručně (také jsem tím prošel). Ovšem pro tu
zbývající většinu, která potřebuje, aby systém fungoval za co nejmenších
duševních investic je zde LTSP.
Takže tu první skupinu odkazuji například na Thinclient-HOWTO
a vy ostatní vydržte do příště, kdy se společně pustíme do instalace LTSP
pěkně krok po kroku.
Diskuse k tomuto článku
Terminalovy pristup je super a LSTP zvlast, ale jeste do nedavna byl problem s Flashem v mozille, ktery vzdy mozillu bezpecne shodil. Nyni by to mela resit posledni verze flashe a mozilly.
Z toho je videt, ze ne vsechny aplikace musi chodit korektne zvlaste ty spatne napsane jako je flash.
Pre par dnami som doriesil podobny problem - vykonny server a 10 starych masin. Nepouzil som nic z LTSP. Vsetko som riesil sam.
Ale nepodarilo sa mi celkom dobre vyriesit problem s disketovymi mechanikami.
Popis situacie:
Stare masiny: Debian 2.2 (3.0) + XFree 3.3.6 (4.1)
Server: Redhat 7.3 (Athlon XP 2G,1G RAM) - nieje velmi zatazeny.
Je to urcene pre pocitacovo nijak nevzdelanych ludi.
Moje riesenie spociva v tom, ze na kazdej masine je supermount + samba a na serveri je adresar s disketou smbmountnuty. NFS nechce fungovat a predsa ta samba sa mi nezda celkom idealne riesenie. nbd a enbd je takisto na disketove mechaniky nepouzitelne (mam odkusane, povodny zamer bol enbd na kazdej masine a supermount na serveri)
A este dodavam, ze tie stare masiny su 486,16MB RAM, 100MB disk (nebootujem zo siete), 10MBit siet a slape to dobre, ovela lepsie ako s 95-kami 
Nevie sa spamatat, ked vitiahnete disketu. Supermount na klientskej strane to zvlada uplne super.
V systému LTSP řeší problém připojení disket a výměnných zařízení daemon floppyd. Na stránkách LTSP.org je na to HOWTO - http://www.ltsp.org/documentation/floppyd.html.
Jistě existují i jiná řešení.
Vaše řešení není čistý bezdisk, ale hlavní výhodu terminálového řešení zachovává. Systém LTSP umožňuje velmi variantní způsob realizace - od bootování ze sítě až po instalaci zobrazovacího aparátu (systém a X server) na klientském počítači. Máte-li hodně paměti, můžete některé aplikace používat i lokálně (dokonce např. Netscape) nebo pomocí clusterového řešení na (Open)MOSIX posilovat výkon serveru (vyžaduje propustnější síť).
Jinak pokud byste hledali ucelenou distribuci Linuxu s integrací LTSP a nemáte averzi vůči RedHatu, zkuste se podívat na www.k12ltsp.org. Tato distribuce je primárně zaměřená na školství, ale je jistě použitelná i jinde. Systém K12LTSP také používáme v rámci našeho projektu Linux do škol. Otázkám LTSP se také docela dost věnujeme na našem webu Anti-Indoš (např. můj - pravda, poněkud starší - článek o počítačových učebnách na LTSP).
U nas vo firme pouzivame linuxove terminaly vybudovane za pouzitia projektu PXES
momentalne bezia 3, celkovo bude 8 terminalov, prevazne P-120 + 32MB RAM . Skusenosti aleukazuju, ze bude asi potrebny upgrade na 64, pretoze 16 MB zabera RAM disk.
Vyhoda PXES klienta je ta, ze nepotrebuje NFS, ale bootuje pomocou PXE protokolu a initrd kernelu a cely system sa umiestni na RAM disk. Na stranke projektu je aj odkaz, ako spojazdnit pouzivanie lokalnych mechanik, zatial som to neodskusal (lezim doma chory). Nevyhoda - potrebna sietova karta podporujuca PXE bootovanie. Mne sa najviac osvedcil Intel EtherExpres 100 (ti to maju priamo v cipsete) alebo karty zalozene na cipe Realtek 8139, tie vo vacsine pripadov obsahuju paticu pre BootROM, na stranke realteku sa da stiahnut PXE boot ROM image do EEPROM.
Instalacia je velmi jednoducha, staci pozorne citat dokumentaciu, keby mal niekto problemy, nech sa kludne ozve
Inak ked to dokonim, urcite o tom napisem detailnejsi clanok aj s navodom, ako zahrnut vlastny kernel a podprou pre cestina a slovencinu
U nas ve firme jsme nasadili X-terminaly na asi 12 strojich + server s AMD na cc.1700MHz. Jelikoz hlavni skladový soft bezi pod VFP, museli jsme system doplnit o Netraverse NSEE (Win4lin) server, pod kterým na na dalku bezi W98. (Licence jsme nakoupili pred asi 5 lety a jinak bychom je museli vyhodit). Ve Win98 na Linuxu bezi pak VFP skladový software. Tyto windows pristupuji na tiskarny nabízené linuxem pomoci samby. Zbytek je cisty linux: Mozilla, open office, kmail, kaorganizer, SIM atd...
Se serverem SUSE 8.0 (AMD 1700Mhz,80GB Raid, 1GB Ram + 100MB ethernet)se bezné "srotové" stanice s P75 + 64 MB pameti chovaji, jako by mel kazdy uzivatel PC sam pro sebe výkonné PC.
Pri 10 uzivatelich, kazdy ma spustene vlastni W98 v linuxovem okne + dalsi programy, je dlouhodoba zatez systemu asi tak neco mezi 0.7 - 1.4.
Usetrili jsme desitky tisic korun a administrace je naprosta pohoda.. Zadny problemy s viry a vsichni jsou happy...
Vrele doporucuji !!!
Chtel bych jen trochu opravit uvadene naroky na HW.
Zcela bezpecne X-terminal chodi na 486/DX2/66/16MB + root pres NFS.Samozrejme to predpoklada maly WM KDE1.0 Fvwm atp. S 8 MB to chodi take, ale obcas dojde pamet.Jinak na 10Mb siti jsme to provozovali cca 4 roky pro 6 lidi a celkem bez problemu.
Spis mi prijde, ze zalezi na rychlosti X-teminalu je to proste distribuovany system .Dulezite je pustit je Xserver a ne nejakou spoustu nesmyslu.
Souhlasim, ze pri vhodne zvolenem programovem vybaveni postaci i slabsi hardware. Na druhou stranu ony vyssi pozadavky zaruci rozumnou funkcnost sytemu po dlouhou dobu s temer libovolnymi aplikacemi. Diky za zminku. Chtel jsem popsat pro uzivatele co nejjednodussi system, ted nekde u KDE 3.
Nezkousel nekdo rozchodit neco podobneho pres VNC? VNC je jeste mene narocny na klientske strane (prenase ji se zjednodusene receno jen bitmapy, narozdil od X, kde se na klientske strane nepriklad pracuje s fonty....) a navic je mnohem mene narocny na sit.
Klienti existuji uplne pro vsechno, treba i pro DOS (tam sem mel problemy s ceskou klavesnici...), mam pocit ze 386/4M by mela stacit 
Problem je ze clovek musi pro kazdeho klienta na centralnim pocitaci spustit Xvnc server, a bylo by asi potreba mnozstvim skriptu a obezlicek docilit vzdaleneho prihlasovani vice uzivatelu. V {x,g,k}dm je toto vse jiz hotove.
Nezkousel nekdo VNC takto nasadit?
Zkoušel jste někdo postavit multiuživatelský stroj na Linuxu ? Hardwarově by to snad nebyl takový problém - další grafické karty se dají přidat do PCI a další klávesnice a myši lze připojit přes USB. Jádro OS je multiuživatelské od začátku. Proces init by se dal snad spustit ve více instancích - pro každou trojici grafika-klávesnice-myš, XWin a desktop taky.
Využití přinejmenším stejné jako u terminálového serveru. Setkal jste se někdo s něčím takovým ?
Mam pocit, ze tak nekdy v kvetnu/cervnu nekdo psal v lkml presne to, o cem mluvite. Dalsi grafika + USB mys a USB klavesnice. A mel jsem pocit, ze se to tomu cloveku nakonec podarilo rozjet. Ja uz se na to chystam dlouho, jen mi chybi USB klavesnice...
Tutoriál:
http://www.linuxplanet.com/linuxplanet/tutorials/3100/1/
|