Cloud computing

Znázornění cloud computingu

Cloud computing je na internetu založený model vývoje a používání počítačových technologií.[1] Lze ho také charakterizovat jako poskytování služeb či programů servery dostupnými z internetu s tím, že uživatelé k nim mohou přistupovat vzdáleně, kupř. pomocí webového prohlížeče nebo klienta elektronické pošty. Za předpokladu, že služba je placená, uživatelé neplatí za vlastní software, ale za jeho užití na měsíční či roční bázi, nebo zaplatí jednorázový poplatek.

Principem u služeb a produktů v cloud computingu je to, že uživateli propůjčují výpočetní výkon serverů. V mnoha případech se tak děje formou specializovaných aplikací, jejichž nabídka se pohybuje od kancelářských aplikací přes systémy pro distribuované výpočty až po operační systémy provozované v prohlížečích (například od roku 2015 nerozvíjený eyeOS[2]).

Charakteristika

Technologie cloud computingu se vyznačuje následujícími atributy:

  • Multitenancy – tento pojem lze volně přeložit jako „více nájmů“. Jedná se o to, že počítačové zdroje jsou sdílené mezi všemi uživateli.
  • Obrovská škálovatelnost a elasticita – umožní uživatelům dle potřeby operativně změnit výpočetní zdroje.
  • Pay as you go – cenový tarif založený na principu „kolik toho uživatel spotřebuje, tolik zaplatí“.
  • Aktuálnost (up-to-date) – poskytovatel garantuje, že všechen software je vždy aktualizovaný; uživatel nemusí do tohoto procesu nijak zasahovat.
  • Přístup přes internet – uživatelé se mohou ke svému softwaru připojit z jakékoli části světa.

Příklady

Většina internetových uživatelů cloudové služby používá, aniž si uvědomuje, že se jedná o zástupce cloud computingu. Jedná-li se o poskytovatele služeb elektronické pošty, lze konstatovat, že poštovní schránky uživatelů jsou v cloudu. Například komunikační služba Telegram slouží jako cloudové úložiště s neomezeným úložištěm.[3][4]

Dalším příkladem specializovaného zapůjčení výpočetního výkonu je veřejný cloud Skypu.[5]

Typy cloudových úložišť

V zásadě existuje dvojí dělení cloud computingu:

  • kritérium toho, jak jsou služby cloudu poskytovány;
  • charakter služby, kterou cloud poskytuje.

Dělení může být i dle modelu nasazení, jak je cloud poskytován.[6]

Veřejný cloud

Veřejný cloud je nejčastějším servisním modelem cloudových služeb a je zároveň modelem, který umožňuje nejjednodušší škálování výpočetního výkonu a dalších zdrojů pro potřebu zákazníka. Jedná se o službu dodavatele cloudových služeb, kdy tento dodavatel vybuduje jedno nebo více datových center, která spadají pod jeho plnou správu a v nich provozuje cloudové služby (v různých modelech – od infrastruktury až po hotové aplikace) přístupné zákazníkům přes internet. Dostupnost služeb zákazníkům je pak určena pomocí SLA. Tyto služby jsou zákazníkům dodávány zadarmo či za poplatek nejčastěji spjatý s objemem využitých služeb – PAYG. Jelikož v jednom prostředí nad jedním hardwarem mohou běžet služby a prostředky více zákazníků, bavíme se o takzvané multitenant architektuře.

Jeden tenant si můžeme představit jako prostředí jednoho zákazníka – například všichni uživatelé řešení cloudového úložiště dat a jejich data a nastavení v rámci jedné firmy. Data těchto uživatelů mohou být poté uložena na stejném hardwaru jako data jiných zákazníků, nicméně jednotliví zákazníci si do dat svých uživatelů navzájem nevidí – právě díky multitenant architektuře. Ta přináší výhody snížení nákladů na službu, ale také jednoduchou škálovatelnost.[7]

Uživatelé vytvářejí, upravují a mažou prostředky a služby přes různá rozhraní. Příkladem je webové rozhraní a API služby Microsoft Azure. Uživatel může nasazovat služby a prostředky pomocí webového rozhraní Azure Portal nebo pomocí skriptovacích jazyků PowerShell či Azure CLI.

Ekonomické principy cloudu vycházejí z předpokladu, že ve veřejném cloudu může zákazník získat nejlevnější výkon.[8] Toto je zapříčiněno tím, že velkoodběratel hardwaru a služeb dokáže stlačit cenu níže než každý jednotlivý uživatel zvlášť. Díky tomu může poskytovat služby za nižší cenu, než které by jednotliví zákazníci mohli dosáhnout sami. Pro porovnání nákladů na běh služeb na místní infrastruktuře se službami veřejného cloudu využívají dodavatelé cloudových služeb výpočet TCO neboli Total Cost of Ownership – výpočet celkových nákladů na vlastnictví.

Příkladem TCO kalkulačky je AWS TCO Calculator[9], který po zadání nároků na infrastrukturu vypočítává TCO jako

𝑇𝐶𝑂 = 𝐴𝐶 + 𝑂𝐶,

kde AC – acquisition costs – jsou předpokládané náklady na akvizice hardwaru a OC – operational costs – jsou předpokládané provozní náklady, plat/mzda a režijní náklady v tříletém horizontu.

Privátní cloud

Oproti veřejnému cloudu se privátní cloud liší tím, že jsou veškeré prostředky tohoto nasazení dedikovány a používány pouze jedním uživatelem/zákazníkem – nad prostředky tedy běží jediný tenant. Hardware i software běží na dedikované privátní síti a zároveň na hardwaru nikdy neběží služby pro jiného zákazníka. Služby privátního cloudu poskytuje buď přímo poskytoval cloudových služeb ze svého hardwaru (za dodržení podmínek výše o plném dedikování tohoto hardwaru jedinému zákazníkovi), nebo přímo na serverech/v datacentru zákazníka. Příkladem privátního cloudu je IBM Cloud Private od společnosti IBM nebo Azure Stack od společnosti Microsoft. V případě společnosti IBM se jedná o platformu, kterou lze nasadit na jakoukoliv vlastní certifikovanou infrastrukturu (ať už postavenou na hardwaru od IBM nebo jiných výrobců), u Microsoftu se však jedná o uzavřené řešení, ve kterém je zákazníkovi dodán již hotový systém včetně hardwaru s nainstalovanou platformou, který jen zákazník připojí ke své síti. V obou případech má pak zákazník k dispozici řešení se stejnými nebo téměř stejnými možnostmi práce (nepočítáme-li případná omezení místní konektivity a omezení vlastní výpočetní síly) a stejnými službami jako ve vlastním veřejném cloudu těchto dodavatelů.

Důvodem nasazení privátního cloudu je často důraz na bezpečnost nebo regulatorní omezení u zákazníka – setkáváme se tak s ním především u finančních a státních institucí. Mezi výhody, které získává uživatel privátního cloudu, patří právě bezpečnost a kontrola nad daty a zároveň jednoduchá škálovatelnost a řízení prostředků. Nevýhodou oproti veřejnému cloudu je pak ztráta flexibility zdánlivě neomezeného množství výpočetního výkonu a případné další náklady na agendu spojenou se správou vlastního hardwaru, rovněž je privátní cloud často spojen s vyššími počátečními náklady.

Hybridní cloud

Hybridní cloud je řešení, které spojuje výhody veřejného a privátního cloudu, případně spojení veřejného cloudu s jinou místní infrastrukturou. K takovémuto nasazení obvykle přistupujeme, pokud chceme zachovat kontrolu nad kritickými nebo citlivými daty a prací nad nimi – takováto data zůstávají na privátním cloudu nebo místních databázích a veřejný cloud slouží k operacím s menším důrazem na bezpečnost – nebo například pro běh legacy aplikací; při přechodu na cloud z místní infrastruktury (tzv. on-premise) – jedná se o stav postupné migrace do veřejného cloudu; nebo veřejný cloud využíváme jako zdroj dodatečné výpočetní síly – běžné operace běží na místní infrastruktuře a při nadstandardním vytížení jsou dynamicky vytvořeny další výpočetní zdroje ve veřejném cloudu. V hybridním nasazení se tedy schází výhoda silné kontroly a bezpečnosti, ale i flexibility.[10]

Multicloud

Multicloudové řešení je řešení, které využívá služeb více dodavatelů veřejného cloudu (případně může být kombinováno s hybridním scénářem). Toto uživatelům a zákazníkům přináší výhody jako minimalizace rizik, využívání možností více cloudových vendorů, snížení závislosti na konkrétním dodavateli nebo vytvoření tlaku na nižší cenu (díky kompetitivnímu prostředí)[11]. Mezi nevýhody naopak patří potřeba udržování širších znalostí cloudu jednotlivých dodavatelů, bezpečné a jednotné řízení přístupů a integrace řešení (ačkoliv cloudoví dodavatelé již pracují na jednoduchém provázání a umožnění multicloudové strategie).

Komunitní cloud

Jedná se o model, kdy je infrastruktura cloudu sdílena mezi několika organizacemi, tedy skupinou lidí, kteří ji využívají. Tyto organizace může spojovat bezpečnostní politika, stejný obor zájmu apod.

Distribuční model

Distribuční model vypovídá o tom, co je v rámci služby nabízeno – zda jde o software, hardware či jejich kombinaci.

  • IaaS – infrastruktura jako služba (Infrastructure as a Service) – poskytovatel služeb se zavazuje poskytnout infrastrukturu. Typicky se jedná o virtualizaci. Hlavní výhodou tohoto přístupu je, že o veškeré problémy s hardwarem se stará poskytovatel. Na druhou stranu, vzhledem k tomu, že hardware se bere jako něco, co vlastníme, na co můžeme sáhnout a jsme za to zodpovědní, je někdy nemožné toto akceptovat. IaaS je vhodné pro ty, kteří vlastní software (či jejich licence) a nechtějí se starat o hardware. Příklady IaaS jsou Amazon WS, Rackspace nebo Windows Azure. Zkratka IaaS může znamenat též infrastruktura jako služba (Infrastructure as a service).
  • PaaS – platforma jako služba (Platform as a Service) – poskytovatel garantuje kompletní prostředky pro podporu celého životního cyklu tvorby a poskytování webových aplikací a služeb; to plně na internetu, bez možnosti stažení softwaru. Koncepce zahrnuje různé prostředky pro vývoj aplikací, jako jsou IDE nebo API, ale rovněž např. pro údržbu. Nevýhodou tohoto přístupu je proprietární uzamčení, kdy různí poskytovatelé mohou používat např. různé programovací jazyky. Příklady poskytovatelů PaaS jsou Google App Engine nebo Force.com (Salesforce.com).
  • SaaS – software jako služba (Software as a Service) – aplikace je licencována jako služba pronajímaná uživateli. Uživatelé si tedy kupují přístup k aplikaci, ne aplikaci samotnou. SaaS je ideální pro ty, kteří potřebují jen běžný aplikační software a požadují přístup odkudkoliv a kdykoliv. Příkladem může být sada aplikací Google Apps nebo v logistice známý systém Cargopass.

Výhody využívání cloudu

  • Absence nutnosti nákupu nákladného HW a znalosti principů funkčnosti SW a HW.
  • Efektivní řízení a práce díky dostupnosti dat odkudkoli – růst produktivity práce ve firmách.
  • Jednoduchost uživatelského rozhraní.
  • Principiálně vyšší zabezpečení dat, oproti většiny On-Premise řešení.
  • Možnost okamžitého zvýšení výkonu datového centra.
  • Rychlé přizpůsobení IT zázemí růstu a potřebám uživatele.
  • Snížení ceny na pořizování IT infrastruktury.
  • Minimalizace provozních nákladů.

Nevýhody využívání cloudu

  • Závislost na internetovém připojení.
  • Závislost na poskytovateli – společnosti využívající cloud ztrácí možnost rozhodovat, kterou verzi používat (platí pro víceverzovaný SW). Čím větší společností je poskytovatel, tím hůře se s ním komunikuje a vyjednávají podmínky.
  • Obavy z cloud computingu – cloud je sice již řadu let standardní řešení, ale stále přetrvává nerelevantní obava z uložení dat mimo své prostředí, přestože běžně používáme sociální sítě či přistupujeme na bankovní účet online. Je tedy potřeba se zajímat o zabezpečení dat u daného dodavatele a všeobecné podmínky poskytování služby samotné.
  • Odlišný právní řád poskytovatele a klienta – poskytovatel cloud computingu může být podřízen jiné jurisdikci než jeho klient. Např. společnosti sídlící v USA nebo poskytující službu z USA jsou povinny postoupit data klienta vládě v souladu s PATRIOT Actem, což může kolidovat kupř. s povinností ochrany osobních údajů uloženou poskytovateli zákonem. Zajímejte se, kde jsou vaše data uložena, mimo EU je to již risk.

Vývoj aplikací pro cloud

Mezi hlavní výhody cloudu by měly patřit vysoká škálovatelnost a spolehlivost. K tomu je ale zapotřebí, aby tyto vlastnosti podporovaly i samotné aplikace provozované v cloudu, kupř. pokud se aplikace zhroutí, musí být možné uživatele přesměrovat na její jinou instanci, a to samozřejmě beze ztráty rozpracovaných dat. Při vývoji aplikací pro cloud je tedy nutno oddělovat proces zpracování dat a jejich ukládání. Data musí být za daných podmínek dostupná jakékoli jiné instanci aplikace v cloudu.

Při vývoji je rovněž třeba mít se na pozoru před vznikem rigidního úzkého hrdla, které může zásadním způsobem překážet škálovatelnosti aplikace, dále brát v potaz platební podmínky poskytovatele a v neposlední řadě optimalizovat aplikaci tak, aby její provoz byl rentabilní.

Kritika

Jedním z kritiků tohoto konceptu je i Richard Stallman, zakladatel projektu GNU. Poukazuje především na nebezpečí ztráty soukromí uživatelů a nárůstu moci společností, u kterých by data uživatelů byla ukládána.[12]

Odkazy

Reference

  1. Archivovaná kopie. www.wallstreetandtech.com [online]. [cit. 2009-03-13]. Dostupné v archivu pořízeném dne 2009-02-24. 
  2. eyeOS | Escritorio Virtual Web - Virtualización en HTML5. www.eyeos.com [online]. [cit. 2022-05-13]. Dostupné v archivu pořízeném z originálu dne 2023-02-13. 
  3. Telegram Privacy Policy. Telegram [online]. [cit. 2022-05-13]. Dostupné online. 
  4. Telegram Cloud Storage Review (2022) - FREE Unlimited cloud storage? - Kripesh Adwani [online]. [cit. 2022-05-13]. Dostupné online. (anglicky) 
  5. GOUNDAR, Sam. Understanding Cloud Computing. Březen 2012. vyd. Wellington: [s.n.], 2012. 
  6. PRECLÍK, Vratislav: Průmysl 4.0 a jeho základní koncept, in Strojař: časopis Masarykovy akademie práce, leden – červen 2019, roč.XXVIII. , dvojčíslo 1, 2 . ISSN 1213-0591, registrace Ministerstva kultury ČR E13559, str. 1 - 11
  7. Cloud Learn Hub | IBM. www.ibm.com [online]. [cit. 2022-01-13]. Dostupné online. 
  8. Armbrust, M., Fox, A., Griffith, R., Joseph, A. D., Katz, R. et al. Above the Clouds: A Berkeley View of Cloud Computing. Technická zpráva UCB/EECS-2009-28. University of California at Berkeley, 2009.
  9. AWS Pricing Calculator. calculator.aws [online]. [cit. 2022-01-13]. Dostupné online. 
  10. ARYOTEJO, G., KRISTIYANTO, D.Y. and MUFADHOL, 2018. Hybrid cloud: Bridging of private and public cloud computing, Journal of Physics: Conference Series 2018.
  11. Gupta, L. Management And Security Of Multi-Cloud Applications. Washington, 2019. Disertační práce. Washington University in St. Louis.
  12. http://www.zive.cz/Clanky/Cloud-computing-slibna-budoucnost-nebo-marketing/sc-3-a-144443/default.aspx

Literatura

  • Reese, G. (2009). Cloud Application Architectures. O'Reilly.
  • Rittinghouse, J. W., & Ransome, J. F. (2010). Cloud Computing – Implementation, Management and Security. CRC Press
  • HRUBAN, Vladimír. Vizuální kontrola počtu volných parkovacích míst s využitím cloudových služeb. Brno, 2020. Bakalářská práce. Vysoké učení technické v Brně, Fakulta informačních technologií. 2020-07-09. Vedoucí práce Špaňhel Jakub. Dostupné z: https://www.fit.vut.cz/study/thesis/23069/

Externí odkazy

Média použitá na této stránce

Cloud computing.svg
Autor: Sam Johnston, Licence: CC BY-SA 3.0
Diagram showing overview of cloud computing, with typical types of applications supported by that computing model.