Cloud hosting („hostování v cloudu“) je metoda používání online virtuálních serverů, které lze podle přání vytvářet, modifikovat a mazat. Zdroje, jako jsou CPU jádra a paměť, alokuje cloudovým serverům fyzický server, který je hostí, a může být nakonfigurován podle toho, jaký zvolí vývojář operační systém a doprovodný software. Cloud hosting se může použít pro hostování webů, odesílání a ukládání emailů, nebo k distribuci webových aplikací a jiných služeb.

V tomto úvodu projdeme některé ze základních konceptů zahrnutých pod cloud hosting. Především to, jak funguje virtualizace, komponenty ve virtuálním prostředí, a nakonec porovnáme cloud hosting s jinými běžnými metodami hostingu.

Co je vlastně „cloud“?

„Cloud“, (klaud neboli oblak), je běžně používaný termín odkazující se na servery připojené k Internetu, které jsou dostupné veřejnosti buď přes placený pronájem, nebo jako součást softwaru či platformové služby. Služba založená na cloudu může mít mnoho forem. Od web hostingu, hostování přes sdílení souborů, až k distribuci softwaru. Slovem „cloud“ se také může odkazovat na cloud computing, což je metoda používání několika navzájem propojených serverů za účelem sdílení pracovní zátěže (workloadu) nějaké úlohy. Místo aby bylo nutné spouštět složitý proces na jediném výkonném stroji, distribuuje cloud computing úlohu mezi mnoho menších počítačů.

Jiné metody hostování

Cloud hosting je v současné době jedním z mnoha různých typů dostupných hostování pro zákazníky a vývojáře, jsou ale mezi nimi jisté klíčové rozdíly. Weby a aplikace s nízkými rozpočty a malým provozem tradičně používají sdílené hostování, zatímco hostiteli náročnější pracovní zátěže bývají dedikované servery.

Sdílené hostování (shared hosting) je nejběžnější a nejdostupnější způsob, jak zprovoznit malý a jednoduchý web. V této verzi sdílí stovky až tisíce webů společný fond zdrojů, mezi něž patří paměť a CPU. Sdílený hosting mívá tendenci nabízet jen nejzákladnější a neflexibilní možnosti a cenové struktury. Především z důvodu přístupu k softwaru, na kterém je web založen. Ten je vzhledem ke sdílené povaze serveru velmi limitovaný.

O dedikované hostování (dedicated hosting) se jedná tehdy, když se fyzický server prodá nebo pronajme jedinému klientovi. Je flexibilnější než sdílené hostování. Vývojář má plnou kontrolu nad hardwarem serveru, operačním systémem i softwarovou konfigurací. Dedikované servery jsou vhodné pro náročnější aplikace, jako jsou korporační software a komerční služby. Dále mezi něž patří sociální média, online hry a vývojové platformy.

Jak funguje virtualizace?

Prostředí cloud hostingu je rozděleno na dvě hlavní části: virtuální servery, které mohou hostit aplikace a weby, a fyzické „housty“, které spravují virtuální servery. Právě virtualizace stojí za schopnostmi a přednostmi cloud hostingu: právě vztah mezi hostitelem a virtuálním serverem poskytuje flexibilitu a škálovatelnost, které nejsou dostupné prostřednictvím jiných metod hostování.

Virtuální servery

Nejběžnější současnou formou cloud hostingu je použití virtuálního privátního serveru, neboli VPS. VPS je takový virtuální server, který se chová jako opravdový počítač se svým vlastním operačním systémem. Přestože virtuální servery sdílejí zdroje, které jim alokuje hostitel, jejich software je dobře izolovaný. Operace na jednom VPS tedy nemají vliv na ostatní.

Virtuální servery rozmisťuje a spravuje hypervizor fyzického hostitele. Hypervizor nainstaluje na každém virtuálním serveru zvolený operační systém a dovolí uživatelům přidávat nad něj software. Z mnoha praktických důvodů se virtuální server používá stejně jako dedikovaný fyzický server. Přestože výkon může být v některých případech nižší vzhledem k tomu, že virtuální server sdílí na tomtéž hostiteli fyzické hardwarové zdroje s jinými servery.

Hostitelé

Zdroje alokuje virtuálnímu serveru fyzický server, který ho hostí. Tento hostitel pomocí softwarové vrstvy zvané hypervizor rozmisťuje, spravuje a uděluje zdroje virtuálním serverům, které má pod svou kontrolou. Termín „hypervizor“ se často používá k odkazům na fyzické hostitele, na nichž jsou hypervizory (a jejich virtuální servery) nainstalované.

Hostitel má na starost alokaci paměti, CPU jádra a síťové připojení k nějakému virtuálnímu serveru. Trvalou povinností hypervizoru je plánovat procesy mezi virtuálními a fyzickými CPU jádry, protože stejná fyzická jádra může využívat více virtuálních serverů. Jedním z klíčových rozdílů mezi jednotlivými hypervizory je právě volba metody plánování procesů.

Hypervizory

V současnosti je pro cloudové hostitele k dispozici několik běžných softwarových hypervizorů. Mezi těmito různými virtualizačními metodami jsou sice jisté klíčové rozdíly, všechny však poskytují plnohodnotné nástroje, které daný hostitel potřebuje k rozmisťování, údržování, přesouvání a nakonec k mazání virtuálních serverů.

cloud hypervizor KVM

KVM, zkratka „Kernel-Based Virtual Machine“ je vizualizační infrastruktura vestavěná do kernelu Linuxu. Když se aktivuje, změní kernelový modul stroj Linuxu na hypervizor, což mu umožní hostit virtuální servery. Tato metoda ostře kontrastuje s tím, jak obvykle pracují ostatní hypervizory, protože KVM nepotřebuje vytvářet či emulovat kernelové komponenty, které se používají pro virtuální hosting.

Xen_logo

Jedním z nejběžněji dnes používaných hypervizorů je Xen. Na rozdíl od KVM používá Xen mikrokernel, který poskytuje nástroje potřebné k podpoře virtuálních serverů, aniž by se modifikoval kernel hostitele. Xen podporuje dvě odlišné metody virtualizace: paravirtualizaci, která sice přeskakuje potřebu emulovat hardware, požaduje však speciální modifikace učiněné do operačního systému virtuálních serverů, a vizualizaci s asistencí hardwaru, která pomocí speciálních hardwarových funkcí účinně emuluje virtuální servery. Ty se mohou používat jako nemodifikované operační systémy.

ESXi je hypervizor korporační úrovně, který nabízí VMware. ESXi je jedinečný v tom, že nepožaduje, aby hostitel měl nějaký podkladový operační systém. Na operační systém se odkazuje jako hypervizor „typu 1“ a je nesmírně efektivní díky tomu, že zde není žádný „prostředník“ mezi hardwarem a virtuálními servery. S hypervizory typu 1, mezi něž patří ESXi, se nemusejí na hostitele načítat operační systémy, protože jako operační systém koná sám hypervizor.

mshv-overview

Hyper-V je jedna z neoblíbenějších metod virtualizace serverů Windows a je k dispozici na Windows Server jako systémová služba. Tím se Hyper-V stává běžnou volbou pro vývojáře pracující v prostředí softwaru Windows. Hyper-V je zařazený do Windows Server 2008 a 2012 a je také dostupný jako soběstačný server, mimo existující instalaci Windows Server.

logo-zonercloud

Pokud potřebujete virtuální server na operačním systému Windows, doporučujeme virtuální servery od ZonerCloud. Zde už za cenu 351 Kč s DPH + licence Windows Serveru 2012 získáte výkonný a stabilní virtuální server na špičkových technologiích společnosti Dell.

 

Proč používat cloud hosting?

Možnosti, které nabízí virtualizace, vyhovují dobře prostředí cloud hostingu. Virtuální servery se mohou konfigurovat se širokým rozsahem hardwarových alokací zdrojů. Pokud se v průběhu času mění potřeby, mohou se zdroje přidávat nebo měnit. Někteří cloudoví hostitelé mohou přesouvat virtuální server z jednoho hypervizoru na jiný jen s malým nebo vůbec žádným prostojem, nebo redundantně duplikovat server pro případ poruchy některého uzlu.

Přizpůsobování

Vývojáři často dávají přednost práci v nějakém VPS kvůli kontrole, kterou mají nad virtuálním prostředím. Většina virtuálních serverů provozujících Linux standardně nabízí přístup k účtu root (administrátor) nebo oprávnění sudo, takže vývojáři jsou způsobilí instalovat a modifikovat jakýkoli software podle svých potřeb.

Tato svoboda volby začíná už u operačního systému. Většina hypervizorů je schopna hostovat téměř jakýkoli operační systém, od otevřeného (open source) softwaru jako jsou Linux a BSD (Berkeley Software Distribution neboli Berkeley Unix), až k vlastnickým systémům, mezi něž patří Windows. Vývojáři mohou poté začít instalovat a konfigurovat stavební bloky podle toho, co potřebují ke své práci. Konfigurace cloudového serveru může zahrnovat webový server, databázi, emailovou službu, nebo nějakou aplikaci, která byla vyvinuta a je připravena k distribuci.

Škálovatelnost

Cloudové servery jsou velmi flexibilní, pokud jde o jejich způsobilost škálovat. Škálovací metody se dělí do dvou všeobecných kategorií: horizontální škálování a vertikální škálování. Většina metod hostingu může škálovat buď jedním, nebo druhým způsobem, cloud hosting je jedinečný v tom, že je způsobilý škálovat jak horizontálně, tak i vertikálně. Jde to díky virtuálnímu prostředí, na němž je vybudován cloudový server. Jeho zdroje jsou alokovanou součástí většího fyzického fondu, snadno se dají tyto zdroje přizpůsobit nebo duplikovat virtuální image do jiných hypervizorů.

Horizontální škálování, pro které se také často používá termín „scaling out“, je proces přidávání dalších uzlů do nějakého klastrového systému. Sem může patřit přidávání dalších webových serverů, aby se lépe zvládl provoz, přidávání nových serverů do nějaké oblasti, aby se snížila latence, nebo přidávání dalších databázových workerů, aby se zvýšila rychlost přenosu dat. Okolo účinného horizontálního škálování jsou vystavěné mnohé novější webové utility, mezi něž patří CoreOS, Docker a Couchbase.

K vertikálnímu škálování, neboli „scaling up“, dochází, když se daný server modernizuje dodatečnými zdroji. Může to být rozšíření dostupné paměti, alokace více CPU jader, nebo nějaká jiná modernizace, která zvyšuje kapacitu serveru. Tyto modernizace (upgrady) obvykle připravují půdu pro dodatečné instance softwaru, jako jsou databázové workery, které budou operovat na tomto serveru. Dříve, než se stalo horizontální škálování efektivním co do nákladů, reagovalo se na narůstající nároky volbou metody vertikálního škálování.

S cloud hostingem mohou vývojáři škálovat podle potřeb jejich aplikací — mohou škálovat kvantitativně (scale out) tím, že rozmístí dodatečné VPS uzly, škálovat kvalitativně (scale up) tím, že modernizují existující servery, nebo dělat obojí, pokud dramaticky vzrostou nároky na servery.

Shrnutí

Nyní byste měli mít dostatečnou představu o tom, jak funguje cloud hosting, včetně toho, jaký vztah je mezi hypervizory a virtuálními servery, za které jsou hypervizory zodpovědné, i jak je na tom cloud hosting v porovnání s jinými běžnými metodami hostingu. Na základě těchto informací budete schopni zvolit takový hosting, který se nejlépe hodí pro vaše potřeby.

Napsal:Josh Barnett
Přeložil RNDr. Jan Pokorný
Znění původního článku najdete zde.

Creative Commons License

Žádný příspěvek v diskuzi

Odpovědět