051.3 Lecke 1
Tanúsítvány: |
Open Source Essentials |
---|---|
Verzió: |
1.0 |
Témakör: |
051 Szoftver alapismeretek |
Fejezet: |
051.3 Helyi és felhőalapú számítástechnika |
Lecke: |
1/1 |
Bevezetés
Manapság mindenki a felhőről beszél. A vállalkozások számos cég ajánlatait értékelik ki — köztük olyan nagyvállalatok, mint az Amazon.com és a Microsoft --, hogy lássák, mit tud kínálni a felhő.
A felhőalapú számítástechnika ötlete azonban csak a 2000-es évtized végére nyúlik vissza. A kifejezés pedig annyira homályos, hogy sokan — köztük a Free Software Foundation is, elzárkóznak a használatától.
A felhőalapú számítástechnika gondolata azonban néhány konkrét, hasznos fogalmat testesít meg, és a modern számítástechnika egyik legfontosabb trendje. Ez a lecke azt mutatja be, hogy mi is az a felhő, és magas szinten hogyan működik mind technikailag, mind pénzügyileg. Megvizsgáljuk a felhő előnyeit és kockázatait, eközben pedig megnézzük, hogy miért kapcsolódik ez a téma az open source világhoz.
Helyi és felhőalapú számítástechnika
Ha olyan szervezetben dolgozunk vagy tanulunk, amely néhány számítógépes rendszernél többel rendelkezik, akkor szinte biztosan van adatközpontja (data center): egy külön helyiség, ahol a szervereket tartják, általában klimatizálva és elzárva. Az on-premises (vagy on-premise — helyi) adatközpont egyszerűen egy olyan központ, amelyet a szervezet saját használatra tart fenn.
Az adatközpont helyben történő üzemeltetésének számos alternatívája van. Az általunk “felhőalapú számítástechnikának” nevezett trend előtt évtizedekkel a vállalkozások olyan adatközpontokat hoztak létre, amelyekben az ügyfelek nevében számítógépeket üzemeltettek. Így előfordulhatott, hogy licenceltünk öt szervert a vállalkozástól és különböző specifikációkkal határoztuk meg elvárásainkat a CPU-val, a memóriával és a tárhellyel kapcsolatban, majd feltöltöttük a szoftverünket ezekre a szerverekre. Ez az üzleti modell a távoli tárhelyszolgáltatás (remote hosting).
A távoli tárhelyszolgáltatás számos előnnyel jár. A szervezet hatékonyan kiszervezheti a szerverek megvásárlásával és beállításával kapcsolatos adminisztratív szakértelmet a távoli tárhelyszolgáltató vállalkozásnak, amely tömeges beszerzéseket kaphat. Más szóval, elkerülhetjük a helyben lévő IT-infrastruktúrával járó felelősséget. A távoli tárhelyszolgáltató vállalkozás gondoskodik a fizikai biztonságról, és ettől az aggodalomtól is megszabadítja az ügyfelet. Végül pedig egy új szerver beállítása a tárhelyszolgáltató vállalkozásnál sokkal gyorsabb, mint a szerver megvásárlása, szállítása és beállítása a telephelyen.
A szervezet fenntarthat egy helyben lévő adatközpontot is, miközben több szervert licencelhet a távoli környezetben például a katasztrófák utáni helyreállításhoz, vagy biztosíthat velük extra számítási teljesítményt a nagy igénybevételű időszakokban.
Meg kell jegyeznünk, hogy a távoli számítástechnika esetén feltételezzük, hogy gyors és megbízható hálózattal rendelkezünk. Ezt a kérdést más előnyökkel és gyengeségekkel együtt egy másik szakaszban fogjuk megvizsgálni.
A távoli tárhely minden előnye a felhőalapú számítástechnikára is vonatkozik. A felhőalapú számítástechnika technikailag tér el, mivel nem egy adott fizikai számítógépet kap a szervezet. Ehelyett a felhőszolgáltató minden egyes fizikai rendszeren több rendszert futtat több kliens számára, egy extra szoftverréteg, az úgynevezett virtuális gépek segítségével.
Egy felhőszolgáltatás tehát ugyanúgy üzemeltet egy adatközpontot, mint bármely más szervezet, de saját maga helyett (vagy mellett) más szervezeteket szolgál ki. Az adatközpontban több ezer fizikai számítógépet tárol. Minden egyes fizikai számítógépen egy operációs rendszert (általában hypervisor-nak nevezik) futtat, amely több virtuális gépet támogat. Minden egyes virtuális gép gyorsan létrehozható és törölhető. Minden virtuális gép egy-egy kliens által futtatott operációs rendszert támogat (Felhőalapú számítástechnika).
Hol jön a képbe a szabad szoftver és a nyílt forráskód? Amikor egy vállalkozás rengeteg számítógépet üzemeltet, és menet közben telepít operációs rendszereket, fontos, hogy ne hátráltassa az, hogy foglalkoznia kell a licencekkel. Bár léteznek licencelési modellek a felhőben használt szabadalmaztatott operációs rendszerekhez, ezek bonyolultabbak, mint egy nyílt forráskódú virtuális gép és operációs rendszer egyszerű futtatása. A nyílt forráskódú rendszerek általában ráadásul ingyenesek is.
A felhőalapú számítástechnika kezdetét általában az Amazon.com 2006-os Amazon Web Services (AWS) elindításához kötik. Ma már több tucat felhőszolgáltató cég létezik, köztük olyan nagy gyártók ajánlatai, mint a Microsoft, a Google, az Alibaba és az IBM. Azonban még mindig az AWS nyújtja a legnagyobb kínálatot. A gyártók éles versenyben állnak egymással az új funkciók és szolgáltatások fejlesztésében, mivel mindannyian erősek a költségek és a megbízhatóság terén.
A felhőalapú számítástechnika előnyei a távoli (remote) számítástechnika előnyeire épülnek. A költségek alacsonyabbak, mivel egy fizikai rendszer több kliens számára működtethet több szervert, és folyamatos kihasználtsága lehet. Egy olyan kliens, akinek gyorsan több számítási teljesítményre van szüksége a használat megugrása miatt, másodpercek alatt új rendszereket hozhat létre. A rendszereket automatikusan lehet kezelni egy alkalmazásprogramozási interfészen (API) keresztül. Az előnyöket és a kockázatokat a későbbiekben ismét megvizsgáljuk közelebbről.
Gyakori felhő-üzemeltetési modellek
Mielőtt részleteznénk az üzemeltetési modelleket, érdemes megjegyezni, hogy számos vállalat olyan felhőmodelleket alkalmaz, amelyek teljesen megváltoztatják a programozás és a szolgáltatások kínálatának módját. Ahelyett, hogy évente egyszer vagy kétszer frissítenének minden egyes alkalmazást, a vállalatok gyors frissítéseket tesznek lehetővé. Ezt azért tehetik meg, mert a felhő lehetővé teszi számukra, hogy a virtuális gépeket leállítsák, és szinte azonnal újakat indítsanak az alkalmazás új verziójával. A szervezet emellett gyorsan tud skálázódni, ezért szeretik az alkalmazásokat sok moduláris részre bontani, amelyeket néha mikroszolgáltatásoknak (microservices) neveznek.
Ebben a részben azonban a mindennapi felhőmodellekre összpontosítunk.
A felhő költségmodellje nagyban különbözik a helyi felmerülő költségeitől. A helyi adatközpontokban egyszeri szervervásárlásra van szükség, valamint az áramellátás, a légkondicionálás és az adminisztráció folyamatos költségeire. Ezek megszűnnek, ha egy felhőszolgáltatótól licenceljük a rendszereket, ehelyett azonban fizetnünk kell a felhasználásért. A felhőszolgáltatók a számítógéphasználatot időszakokra osztják, és minden egyes időszak után felszámítják a díjat. Emellett a rendszereiken tárolt adatok mennyisége után is díjat számítanak fel.
Eddig olyan gyártókról beszéltünk, amelyek számítási teljesítményt ajánlanak az ügyfeleknek; ezt nevezzük nyilvános felhőnek (public cloud). De létezhet privát felhő (private cloud) is. Egyes nagy szervezetek saját, helyben lévő adatközpontjaikat felhőként működtetik. Csak a saját részlegeiknek vagy alosztályaiknak nyújtanak szolgáltatásokat, de minden egyes részlegüket úgy kezelik, mintha egy felhőszolgáltató ügyfelei lennének. Az adatközpont nyomon követi, hogy az egyes részlegek mennyi számítási időt, adatot stb. használnak, és a használatért díjat számít fel.
Sok szervezet több felhőszolgáltatást használ különböző okokból, például a gyártói hibák kivédése érdekében, az adatok egy adott földrajzi régióban való tárolása vagy egy adott szolgáltató által kínált speciális funkciók kihasználása érdekében. Emellett gyakori, hogy egy helyben lévő adatközpontot és a felhőben lévő szervereket is fenntartanak, ezt a gyakorlatot nevezik hibrid számítástechnikának (hybrid computing).
A felhőszolgáltatásra feliratkozó kliens kiválaszthatja, hogy mely földrajzi régiókban fusson. Az Amazon például jelenleg az Egyesült Államok nyugati és keleti részén, Európában, valamint a világ minden részén kínál régiókat. Normális esetben a felhasználó a hozzá legközelebbi régiót választja. Sok szervezet azonban több régióban is szeretne működni, mivel nemzetközi jellegű. A szervezeteknek néha egy adott helyen kell adatokat tárolniuk, hogy megfeleljenek az európai általános adatvédelmi rendeletnek (General Data Protection Regulation — GDPR) vagy a kínai személyes adatok védelméről szóló törvénynek (Personal Information Protection Law — PIPL).
Minden régiót általában zónákra vagy elérhetőségi zónákra osztanak. A több zónában történő futtatás ajánlott arra az esetre, ha egy katasztrófa miatt valamelyik zóna leállna.
Bár a felhő arról ismert, hogy a fizikai számítógépeket több kliens között lehet megosztani, egyes gyártók egyetlen számítógépet is tudnak szentelni egy adott ügyfélnek, ha az aggódik a biztonság miatt. Mivel más szervezet nem használja a számítógépet, az ügyfél egy kicsit biztonságosabbnak érzi az érzékeny szolgáltatásainak futtatását és az adatainak a felhőbe való feltöltését. Ez a lehetőség a felhőalapú számítástechnikát közelebb hozza a régimódi távoli tárhelyszolgáltatáshoz.
A felhőszolgáltatások gyakori típusai
Különböző szinteken a felhőalapú számítástechnika nagyon eltérően néz ki, és különböző típusú felhasználóknak szól.
Az Infrastructure as a Service (IaaS, infrastruktúra mint szolgáltatás) az a kategória, amellyel a rendszergazdák általában foglalkoznak. Az IaaS csak a hardvert és a virtuális gépeket támogató szoftvert biztosítja. Az ügyfél rendszergazdáin múlik, hogy a virtuális gépre feltöltsenek egy operációs rendszert és a szükséges alkalmazásokat. A rendszergazda szinte mindent ugyanúgy kezel, mint egy helyben lévő adatközpontban.
A Platform as a Service (PaaS, platform mint szolgáltatás) egy újabb találmány, amelyet főként programozók használnak. Itt a programozó nem foglalkozik az operációs rendszerrel, és nem kell betöltenie a program által használt könyvtárakat. Mindezt a felhőszolgáltató biztosítja. A programozó csak feltölti a függvényeket, amelyek a platformon futnak. Kapcsolódó fogalom a szervermentes (serverless) számítástechnika.
A Software as a Service (SaaS, szoftver mint szolgáltatás) egy felhőrendszerben futó alkalmazás. Minden alkalommal, amikor bejelentkezünk egy közösségi médiaoldalra, megrendelünk egy terméket egy online áruházból, meglátogatunk egy weboldalt, hogy beírjuk az óráinkat egy munkaidő-nyilvántartásba, vagy kitöltünk egy űrlapot egy kormányzati oldalon, SaaS-t használunk. Az alkalmazás nagy része a távoli rendszeren fut, és a mi számítógépünkön csak a böngészőnk által megjelenített weboldal fut.
Az előző kategóriákhoz gyakran hozzáveszik a Database as a Service-t (DaaS, adatbázis mint szolgáltatás). Az adatszolgáltatás, az Amazon S3 valójában az első felhőszolgáltatás volt. A DaaS lehet egyszerűen egy népszerű adatbázis-kiszolgáló, például a MySQL, az Oracle vagy a MongoDB felhőben futó példánya. A nagy felhőszolgáltatók saját adatbázisokat is kínálnak, amelyek csak a saját felhőjükben futnak. Az adatbázist minden esetben úgy olvassuk és írjuk, mintha a saját rendszereinkben lenne.
Egyes vállalatok ezen alapkategóriák egyéb változatait kínálják, mint például a Security as a Service.
A felhőalapú számítástechnika és a helyhez kötött IT-infrastruktúra főbb előnyei és kockázatai
Mielőtt részletesen megvizsgálnánk a felhőalapú számítástechnikát, nézzünk meg egy hasonlatot. Egy helyhez kötött adatközpont üzemeltetése olyan, mintha házat vásárolnánk. Ha a pincét elönti az árvíz, vagy a kazán leáll, találni kell valakit, aki megjavítja. Ezzel szemben a távoli tárhely és a felhőalapú számítástechnika olyan, mintha egy lakást bérelnénk: a bérbeadó felelős a kazán megjavításáért. Ráadásul a felhőben gyorsan hozzáadhatunk és eltávolíthatunk adatterheket, ahogyan a bérelt lakást is gyorsabban elhagyhatjuk, mint a saját tulajdonunkban lévő házat.
Egy lakásban a bérbeadó akár készülékeket és bútorokat is biztosíthat. A mi hasonlatunkban ez olyan, mint a felhőszolgáltatók által kínált számos szolgáltatás, például az adatbázisok és az analitika.
Most megvizsgálhatjuk a felhő használatának előnyeit és kockázatait a saját adatközpont használata mellett vagy helyett.
A felhőbe való átköltözés mellett talán a flexibilitás a legnyomósabb indok. Ha például kereskedők vagyunk, akinek karácsony környékén több szervert kell futtatnia, vagy könyvelők, akik az adószezonban dolgoznak a legtöbbet, akkor felhőre lesz szükségünk, hogy egy pillanat alatt új szervereket indíthassunk be, majd később törölhessük a virtuális gépeket.
A költségek több okból is alacsonyabbak lehetnek a felhő esetén. Egy fizikai szerveren sok más alkalmazással osztozunk, így a számítógépek hatékonyabban kerülnek kihasználásra. Mivel a felhőszolgáltatók nagyok, méretgazdaságosságot érhetnek el a beszerzések, az adminisztráció, a hűtés és más infrastrukturális követelmények terén. Végül pedig az ügyfelek számos adminisztrációs feladattól mentesülnek — bár a rendszeradminisztráció korántsem szűnik meg. Az ügyfeleknek továbbra is szükségük van rendszergazdákra a szoftvereik (a felhőben instances néven ismertek) létrehozásához és feltöltéséhez, a felhasználók engedélyezéséhez és egyéb, az üzleti működéshez kapcsolódó feladatokhoz. A rendszergazdáknak meg kell tanulniuk a szolgáltató API-ját és a szolgáltatás használatának szabályait, és ezt a képzési költséget be kell kalkulálni a tervekbe.
Másrészt viszont óvatosnak kell lennünk, hogy mennyire használjuk a felhőt. Nehéz lehet nyomon követni, hogy mennyi számítógépes energiát használunk, ha gyorsan felpörgetjük a szervereket, különösen, ha automatizáljuk a skálázást. Előfordulhat, hogy a periódus végén kellemetlenül nagy számlát kapunk.
Hatékonyabb-e a felhő szén-dioxid-kibocsátás szempontjából, mint a saját számítógépek üzemeltetése? A kutatások szerint a felhőszolgáltatók sokkal hatékonyabban tudják működtetni a rendszereiket, mint mi. Nekünk azonban egy hálózaton keresztül kell kommunikálnunk ezekkel a rendszerekkel, ami rengeteg áramot igényel az összes hálózati berendezés működtetéséhez, így sajnos a felhő növeli a karbonlábnyomunkat.
A szolgáltatás rendelkezésre állása néha jobb a felhőben. Természetesen, ha a saját, helyben lévő adatközpontunktól függünk, akkor mindenféle problémának ki lehetünk téve, a természeti katasztrófáktól kezdve a rosszindulatú belső szabotőrökig. De természetesen a felhőben lévő adatközpontok is leállnak. Ezért érdemes kihasználni a különböző rendelkezésre állási zónákat, és megosztani a kockázatot. Vannak olyan eszközök, amelyek lehetővé teszik, hogy szolgáltatásainkat egy meghibásodott zónából egy működő zónába helyezzük át.
Ha a felhőszolgáltató által kínált szolgáltatásokat, például egy felhőben lévő adatbázist használunk, akkor az adott szolgáltatásban található hibáknak is ki vagyunk téve. Természetesen a rendszerbe betöltött szoftverben lévő hibák is érinthetnek minket.
A gyártók szolgáltatásainak igénybevételével járó nagyobb kockázat a bezártság. Találhatunk egy automatizált konverziós eszközt, amellyel adatainkat áthelyezhetjük a szolgáltató rendszeréből az új rendszerbe, de egyáltalán nem biztos, hogy az az eszköz tökéletesen végzi majd el a munkát.
Felhő esetén nagyobb lehet a biztonság, mert a szolgáltató munkatársai valószínűleg jobb szakértők, mint a mi biztonsági csapatunk. Másrészt a felhőszolgáltatók nagyok és jól ismertek, ami nyilvánvaló célpontot jelent a támadásokhoz. Emellett egy további szoftver — a virtuális gépeket vezérlő hypervisor — hozzáadása új, potenciális veszélyt jelent. A kutatók találtak már sebezhetőségeket a hypervisorokban.
Bár az ügyfél továbbra is az adatainak jogi tulajdonosa marad, az adatok felhőben történő tárolása elméletileg sebezhetőbbé teszi azokat. Általában az ügyfél titkosítja az adatokat, hogy betörés esetén megvédje azokat. Az adatvédelmi előírások, például a korábban említett GDPR, megkövetelik, hogy az adatokat biztonságosnak ítélt régióban lévő adatközpontban tárolják.
Végső soron a legtöbb biztonsági támadás magas szinten kezdődik, például rosszindulatú szoftvereket tartalmazó e-maileket küldenek egy gyanútlan alkalmazottnak. Nem számít, hogy helyben vagy a felhőben fut-e a rendszerünk. Azonban egy rosszindulatú behatoló, aki átveszi egy alkalmazott fiókját, nem jut sokkal messzebbre, hacsak nem tudja kihasználni a szervereken található sebezhetőségeket; így ismét nem egyértelmű, hogy a felhőben való futtatás nagy különbséget jelent-e, mivel a legtöbb sebezhetőséget inkább a szoftverben, mint a felhőszolgáltatásban találják meg.
Végezetül vegyük figyelembe a sávszélességet és a hálózati költségeket! Az ügyfelei és valószínűleg a munkatársai is olyan szerverekkel kommunikálnak, amelyek akár több száz kilométerre is lehetnek egymástól. Ha a hálózati kapcsolat megbízhatatlan vagy lassú, a felhőalapú szerverek teljesítménye rosszabb lesz, mint helyben lévő adatközpont esetén. Manapság azonban mindenki távmunkásokkal, SaaS-szolgáltatásokkal és más, földrajzilag távol lévő rendszerekkel tart kapcsolatot. A hálózati teljesítménye szinte minden tevékenységet befolyásol, függetlenül attól, hogy a felhőt használjuk-e vagy sem.
Gyakorló feladatok
-
Miért hatékonyabb egy felhőközpontban lévő fizikai számítógép kihasználtsága, mint egy hagyományos, helyben lévő adatközpontban tárolt számítógépé?
-
Mi az a hibrid felhő?
-
A felhőalapú számítástechnika melyik típusa esetén van szükség leggyakrabban a rendszergazda munkájára a kliens oldalán?
-
Hogyan védhetjük meg szolgáltatásunkat a leállástól, ha felhőszolgáltatót használunk?
Gondolkodtató feladatok
-
Hasonlítsuk össze a szerverek felhőben történő futtatása során felmerülő különböző költségeket a helyben történő futtatás költségeivel!
-
Tegyük fel, hogy a Közel-Keleten tevékenykedünk, de sok ügyfelünk van Európában és a Távol-Keleten. Hol helyeznénk el szolgáltatásainkat egy felhőalapú rendszer esetén?
Összefoglalás
Ez a lecke felvázolta, hogyan működik a felhőalapú számítástechnika, és milyen kompromisszumokat jelent a felhő használata a saját adatközpontban, helyben futtatott rendszerekkel szemben. Megtanultuk a különböző üzleti és költségmodelleket, beleértve a nyilvános, a privát és a hibrid felhők közötti különbségeket. Megtanultuk továbbá a felhőszolgáltatások különböző főbb típusait, és azt is, hogy mire használják őket.
Válaszok a gyakorló feladatokra
-
Miért hatékonyabb egy felhőközpontban lévő fizikai számítógép kihasználtsága, mint egy hagyományos, helyben lévő adatközpontban tárolt számítógépé?
A felhőben minden egyes számítógépen több operációs rendszer példánya is futhat, sőt, akár különböző kliensek által feltöltött példányok is futtathatók, ezért a számítógép gyakrabban van használatban.
-
Mi az a hibrid felhő?
A hibrid felhő használja egy felhőszolgáltató adatközpontjait és egy vagy több helyi adatközpontot is.
-
A felhőalapú számítástechnika melyik típusa esetén van szükség leggyakrabban a rendszergazda munkájára a kliens oldalán?
Az Infrastructure as a Service (IaaS) megköveteli, hogy a kliens végezze el a rendszergazdai feladatokat, például az operációs rendszer és az alkalmazások példányainak létrehozását és feltöltését.
-
Hogyan védhetjük meg szolgáltatásunkat a leállástól, ha felhőszolgáltatót használunk?
Válasszunk több zónát minden régióban, ahol a szolgáltatást futtatjuk, mert nagyon valószínűtlen, hogy egyszerre több zóna is meghibásodjon.
Válaszok a gondolkodtató feladatokra
-
Hasonlítsuk össze a szerverek felhőben történő futtatása során felmerülő különböző költségeket a helyben történő futtatás költségeivel!
Felhő esetén a CPU-használatért és az adattárolásért fizetünk a szolgáltató által mért minden egyes időszakra, de nem fizetünk hardverköltséget. Helyi futtatás esetén nekünk kell állni a hardver állandó költségeit, valamint egyéb eszközökét, például a légkondicionáló berendezésekét; továbbá olyan ismétlődő költségeink is vannak, mint az áramellátás és a fizikai karbantartás.
Tegyük fel, hogy a Közel-Keleten tevékenykedünk, de sok ügyfelünk van Európában és a Távol-Keleten. Hol helyeznénk el szolgáltatásainkat egy felhőalapú rendszer esetén?
+ Használjunk egy közel-keleti régiót a saját irodáink és közel-keleti ügyfelek számára! Egy európai régió fontos az általános adatvédelmi rendeletnek (GDPR) való megfelelés érdekében. Szükség lehet egy kínai régióra, hogy megfeleljünk a kínai személyes adatok védelméről szóló törvénynek (PIPL). Mindenesetre a távol-keleti és európai régiók megléte értékes a jobb teljesítmény érdekében, amikor az ottani ügyfelekkel érintkezünk.
+ Az egyes régiókon belül válasszunk több zónát, hogy védelmet nyújtsunk egyetlen zóna meghibásodása ellen!