Portál AbcLinuxu, 3. května 2025 00:07
Tohle vypadá jako zajímavý projekt, všechna čest. Já už domácí server provozuju pár let, je na něm Jabber, mail (ESMTP+IMAP), pár webů web a spousta dalších služeb, samozřejmě taky kolem IPSec a IPv6. Ale nikdy jsem neměl odvahu spustit nějakou zcela veřejnou službu.
Když jsem si spočítal, kolik by mě stálo zařídit si zcela legální živnost a umístit server do vhodného housingu, aby měl konkurenceschopnou konektivitu, tento nápad jsem v podstatě vzdal. Dostal jsem se do začarovaného kruhu, kdy jsem uvažoval asi takto: Zaplatím tolik a tolik jako počáteční investici a pak potřebuju N klientů, aby to pokrylo poplatky a vrátilo (třeba za rok) investici. Dobře, ale abych mohl mít N klientů, potřeboval bych jiný hardware. Ten by stál... A to byl kámen úrazu, protože pohled na ceníky větších komerčních hostingů byl celkem zdrcující. V podatatě mi z toho vyšlo, že ani s nulovým osobním ziskem bych jim nedokázal rozumně konkurovat. Zkrátka jsem neměl ten správný nápad, tím to bude.
Důvod, proč jsem začal o veřejném poskytování služeb uvažovat, byl podobný tomu, o kterém se píše v blobpostu. Známí mi říkali „poslyš, ty máš nějaký ten server, no a já mám zase {autodílnu, hostpodu, prodejnu, ...}, které by se hodil web, mail, ...“. Potud to bylo fine. Jenže jejich představy byly naprosto nerealizovatelné. Já jsem si to představoval tak, že na serveru připravím UNIXový účet, postarám se lidem o doménu, DNS+DNSSEC, mailové schránky, účet v PostgreSQL atd., nainstaluju tam třeba Drupal a pak (maximálně, v případě zájmu) najmu či zprostředkuju nějaké středoškoláky, kteří by v tom Drupalu za 100 Kč/h něco naklikali a další údržbu toho webu by si pak už s klientem dojednávali víceméně samostatně. Jenže zájemce o web se začal většinou ošívat, když slyšel o nějakém předem připraveném řešení, a začal popisovat svoji představu úplně nového webu. To byly divoké sny! Škoda mluvit.
Nuže dobře, povídám tomu největšímu snílkovi, nějaká základní verze takového webu se dá udělat například za jeden člověkorok práce. Když ho chcete mít za měsíc, je na to potřeba s rozumnou rezervou tak 15 lidí. (V praxi určitě víc než 15, ale na tom nesejde.) Když budu chtít jít do (cenového) extrému, najal bych pár lidí z prvního ročníku, ale výsledkem bude naprosto nerozšiřitelný a neudržovatelný projekt, který se tak tak drží na nohou. Při rozumné kvalitě by tohle řešení vyšlo na [sedmimísté číslo] Kč.
Řečeno jednou větou: Nikdo si nenechal vysvětlit, že hosting (strojový čas) a tvorba webů (lidský čas) jsou dvě úplně odlišné věci, které jsou za úplně jinou cenu.
Zdůraznil jsem, že ty velké hostingy přece každému dají nanejvýš nějaké FTP a ani omylem nebudou za cenu hostingu ještě tvořit web. Pochopitelně, odpověď byla ve stylu „My víme. Vždyť proto u nich nejsme...“ Asi trpím nedostatkem fantazie, ale vymyslet podnikání, které by neprodělalo všechny mé úspory za první rok provozu a které by mělo někdy šanci začít vydělávat, se mi za této situace vymyslet nepodařilo.
Přijde mi, že drobné české firmy, na které by takové služby byly zaměřené, jsou pořád ještě příliš zvyklé na dobu, kdy jim patnáctiletý guru od sousedů za stovku nainstaloval pár kradených programů a tím byla oblast IT vyřešena.
Tohle je poprvé, kdy slyším o úspěšném provozu malého komerčního hostingu. Určitě to chce spoustu odvahy a trpělivosti. K takovému úspěchu upřímně gratuluju.
Co je tohle za výkřik do tmy? Představte si, pane chytrý, že někdo zkrátka nemá ani důvod, ani prostředky na to, aby měl deset dedikovaných serverů, každý pro jedem protokol. Proto běží několik HTTP serverů, XMPP, IMAP, ESMTP, DHCP, DNS, NTP, VNC, PostgreSQL, TFTP a spousta dalších věcí na jednom stroji. Je na tom něco špatně? Linux je na tento druh nasazení skvěle připravený a nevidím nejmenší důvod, proč na současném stavu něco měnit.
Ten hardware neumožňuje virtualizaci. I kdyby ano, rozhodně bych ji nepoužil k rozdělení těch služeb do několika VM. Vzhledem k tomu, že se spolehlivostí jsem naprosto spokojen a stroj spravuju sám, nemám nejmenší důvod nějak striktně dělit odpovědnost a hardwarové prostředky na menší části. Správa a instalace VM je práce navíc, za kterou bych nezískal žádnou výhodu. To mě neláká.
IPv6 adres je samozřejmě libovolně. IPv4 adresa může být klidně jedna. Kdybych měl jeden VM na jeden protokol, je to asi triviální záznam v tabulce mangle (PREROUTING). Kdybych měl celou farmu VM třeba pro HTTP, i pro tohle je podpora přímo v kernelu Linux (virtuální servery, load balancing, ...).
Ale fakt nic z toho nechci. I kdyby to ten hardware uměl, není pro to nejmenší důvod. Nebo ano? To bych tedy rád věděl, jaký asi... (Že je virtualizace in, to mezi důvody nepočítám.)
Ale fakt nic z toho nechci. I kdyby to ten hardware uměl, není pro to nejmenší důvod. Nebo ano? To bych tedy rád věděl, jaký asi...Pokud si všechno spravuješ sám a máš důvěru v to, že je všechno bezpečné, tak asi není důvod.
Ano, spravuju si to všechno sám. Ne, nemám důvěru, že je to všechno bezpečné. Je to jen obyčejný software vytvořený sice možná neobyčejnými, ale i přesto omylnými lidmi.
Virtualizace je teď prostě in, to je mi jasné. Občas mám ale pocit, že se z toho stává spíš náboženství. Cíl je jasný: nechci, aby buffer overrun v jednom démonovi umožnil udělat z celého serveru a jeho služeb trosky.
První linie ochrany je správné nastavení a důsledná kontrola rolí, účtů, skupin, ACL a kvót. Tedy s jakými právy který démon běží a co přesně smí.
Další úroveň je chroot, případně různé obdoby tohoto řešení, zóny v OpenSolarisu a podobně. Tam už je izolace naprosto dostačující.
Pokud správně nastavím chroot a stanovím paměťové i diskové kvóty, mám totéž jako virtualizaci, ale s nesrovnatelně menším overheadem, ať už jde o využití paměti nebo o síťovou komunikaci. Virtuální stroj může být stejně efektivní jako ten fyzický, když jde o Folding@Home, ale jakákoliv intenzivní komunikace po síti už znamená overhead, nemluvě o správě paměti.
Nejvetsi problem je cas anebo zaplaceni toho, aby nekdo neco vyrobil [cena lidske prace].To máš za to, že ještě neoutsourcuješ do Indie, Číny, Ruska,... :)
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.