GCP: A Google Cloud Platform számítási verem elemzése

A cikk fordítása kifejezetten a kurzus hallgatói számára készült "Felhőszolgáltatások".

Érdekel ebbe az irányba fejlődni? Tekintse meg egy szakmai mesterkurzus felvételét "AWS EC2 szolgáltatás", amelyet Egor Zuev - TeamLead az InBitnél és az OTUS oktatási programjának szerzője vezetett.

GCP: A Google Cloud Platform számítási verem elemzése

A Google Cloud Platform (GCP) számos szolgáltatást kínál, különösen a Google Compute Engine-t (GCE), a Google Kubernetes Engine-t (korábban Container Engine) (GKE), a Google App Engine-t (GAE) és a Google Cloud Functions-t (GCF) tartalmazó számítási készletet. . Ezeknek a szolgáltatásoknak mindegyike klassz nevekkel rendelkezik, de nem biztos, hogy teljesen egyértelműek a funkcióikat és azt, hogy mi teszi őket egyedivé egymáshoz képest. Ez a cikk azoknak szól, akik most ismerkednek a felhőalapú koncepciókkal, különösen a felhőszolgáltatásokkal és a GCP-vel.

GCP: A Google Cloud Platform számítási verem elemzése

1. Verem számítása

A számítástechnikai verem felfogható többrétegű absztrakciónak azzal kapcsolatban, amit egy számítógépes rendszer nyújthat. Ez a verem emelkedik (feljebb mozog) "csupasz vasból" (tiszta fém), utalva a számítógép tényleges hardverelemeire, egészen a funkciókig (funkciók), amelyek a legkisebb számítási egységet képviselik. A veremről fontos megjegyezni, hogy a szolgáltatások összesítése a veremben felfelé haladva történik, például az "alkalmazások" szakasz (alkalmazások), amely az alábbi 1. ábrán látható, tartalmaznia kell az összes alapvető tárolóelemet (konténerek), virtuális gépek (virtuális gépek) és vasat. Ugyanígy, a virtuális gépek összetevőnek tartalmaznia kell a hardvert a működéshez.

GCP: A Google Cloud Platform számítási verem elemzése

1. ábra: Verem számítása | A kép forrása: A Google Cloud

Ez az 1. ábrán látható modell szolgál alapul a felhőszolgáltatók ajánlatainak leírásához. Így egyes szolgáltatók csak a verem mentén tudnak például konténereket és alacsonyabb minőségű szolgáltatásokat nyújtani, míg mások mindazt, ami az 1. ábrán látható.

— Ha ismeri a felhőszolgáltatásokat, látogasson el ide 3. szakasza GCP megfelelőjének megtekintéséhez
— Ha csak összefoglalót szeretne kapni a felhőszolgáltatásokról, nyissa meg a 2.4. szakasz

2. Felhőszolgáltatások

A felhőalapú számítástechnika világa nagyon változatos. A felhőszolgáltatók számos szolgáltatást kínálnak, amelyek az ügyfelek különböző igényeihez igazodnak. Talán hallott már olyan kifejezésekről, mint az IaaS, PaaS, SaaS, FaaS, KaaS stb. az ábécé összes betűjét az "aaS"-vel követve. A furcsa elnevezési konvenció ellenére felhőszolgáltatói szolgáltatások halmazát alkotják. Kijelentem, hogy 3 fő „szolgáltatásként” ajánlat létezik, amelyeket a felhőszolgáltatók szinte mindig biztosítanak.

Ezek az IaaS, a PaaS és a SaaS, amelyek az infrastruktúra mint szolgáltatás, a platform mint szolgáltatás és a szoftver mint szolgáltatás rövidítése. Fontos, hogy a felhőszolgáltatásokat a nyújtott szolgáltatások rétegeiként jelenítsük meg. Ez azt jelenti, hogy a szintről a szintre felfelé vagy lefelé haladva Önt, mint ügyfelet, különböző szolgáltatási lehetőségek érintik, amelyek hozzáadódnak vagy kivonják az alapkínálatból. A legjobb, ha piramisként képzeljük el, ahogy az a 2. ábrán látható.
GCP: A Google Cloud Platform számítási verem elemzése

2. ábra: aaS piramis | A kép forrása: Ruby Garázs

2.1 Infrastruktúra mint szolgáltatás (IaaS)

Ez a legalacsonyabb szint, amit egy felhőszolgáltató kínálhat, és magában foglalja a felhőszolgáltatót, amely biztosítja a csupasz fém infrastruktúrát, beleértve a köztes szoftvert, a hálózati kábelezést, a CPU-kat, a GPU-kat, a RAM-ot, a külső tárolót, a szervereket és az alapul szolgáló operációs rendszer képfájlokat, pl. Debian Linux, CentOS, Windows stb.

Ha árajánlatot rendel egy felhő IaaS szolgáltatótól, akkor ezt kell kapnia. Önnek, az ügyfélnek a feladata, hogy összeállítsa ezeket a darabokat vállalkozása működtetéséhez. Az, hogy mivel kell dolgoznia, gyártónként változhat, de általában csak a hardvert és az operációs rendszert kell beszereznie, a többi pedig rajtad múlik. Az IaaS példái az AWS Elastic Compute, a Microsoft Azure és a GCE.

Vannak, akiknek nem tetszik, hogy operációs rendszer-lemezképeket kell telepíteniük, és foglalkozniuk kell a hálózatépítéssel, a terheléselosztással, vagy azon aggódniuk, hogy milyen típusú processzorok ideálisak a munkaterhelésükhöz. Itt haladunk felfelé a piramison a PaaS felé.

2.2 Platform mint szolgáltatás (PaaS)

A PaaS csak olyan felhőszolgáltatót foglal magában, amely egy adott platformot kínál, amelyen a felhasználók alkalmazásokat építhetnek. Ez egy absztrakció az IaaS felett, ami azt jelenti, hogy a felhőszolgáltató gondoskodik a CPU-típusok, a memória, a RAM, a tárhely, a hálózatok stb. minden részletéről. Ahogy a 2. ábrán is látható, Önnek, mint ügyfélnek nincs sok befolyása a tényleges platform felett, mert a felhő a szolgáltató kezeli az összes infrastruktúra-részletet az Ön helyett. Ön kéri a kiválasztott platformot, és erre építi fel a projektet. A PaaS példái a Heroku.

Ez egyesek számára túl magas szint lehet, mivel nem feltétlenül egy meghatározott platformra akarják felépíteni a projektet, hanem közvetlenül a felhőszolgáltatótól kell egy szolgáltatáscsomagra. Itt jön a képbe a SaaS.

2.3 Szoftver, mint szolgáltatás (SaaS)

A SaaS a felhőszolgáltatók által nyújtott leggyakoribb szolgáltatások. A végfelhasználóknak szólnak, és elsősorban olyan webhelyeken keresztül érhetők el, mint a Gmail, a Google Docs, a Dropbox stb. Ami a Google Cloudot illeti, a számítási készletükön kívül számos SaaS-szolgáltatás is létezik. Ide tartozik a Data Studio, a Big Query stb.

2.4 A felhőszolgáltatások összefoglalása

alkotórészei
IaaS
PaaS
SaaS

Mit kapsz
Megszerzi az infrastruktúrát, és ennek megfelelően fizet. Bármely szoftver, operációs rendszer vagy azok összetételének használatának vagy telepítésének szabadsága.
Itt azt kapod, amit kérsz. Szoftver, hardver, operációs rendszer, webes környezet. Kapsz egy használatra kész platformot, és ennek megfelelően fizetsz.
Itt nem kell aggódnia semmiért. Előre telepített csomagot kap, amely az Ön igényei szerint van testreszabva, és Önnek nincs más dolga, mint ennek megfelelően fizetni.

Érték
Alapvető számítástechnika
Top IaaS
Ez lényegében egy teljes szolgáltatáscsomag

Technikai nehézségek
Műszaki ismeretek szükségesek
Megkapta az alapkonfigurációt, de továbbra is szüksége van a domain ismeretekre.
Nem kell a technikai részletekkel bajlódni. A SaaS szolgáltató mindent biztosít.

Mivel működik?
Virtuális gépek, tárolók, szerverek, hálózat, terheléselosztók stb.
Futókörnyezetek (például java futtatókörnyezet), adatbázisok (például mySQL, Oracle), webszerverek (például tomcat stb.)
Alkalmazások, például e-mail szolgáltatások (Gmail, Yahoo mail stb.), közösségi interakciós oldalak (Facebook stb.)

Népszerűségi grafikon
Népszerű a magasan képzett fejlesztők, kutatók körében, akik igényeiknek vagy kutatási területüknek megfelelően testreszabást igényelnek
A legnépszerűbb a fejlesztők körében, mivel alkalmazásaik vagy szkriptjeik fejlesztésére összpontosíthatnak. Nem kell aggódniuk a forgalomterheléstől vagy a szerverkezeléstől stb.
A legnépszerűbb a hétköznapi fogyasztók vagy olyan cégek körében, akik olyan szoftvereket használnak, mint például e-mail, fájlmegosztás, közösségi hálózatok, mivel nem kell aggódniuk a technikai részletek miatt.

3. ábra: A főbb felhőajánlatok összefoglalása | Kép biztosított Amir a Blog Speciában

3. Google Cloud Platform Computing Suite

A 2. szakaszban a tipikus felhőszolgáltatók kínálatát megvizsgálva összehasonlíthatjuk őket a Google Cloud kínálatával.

3.1 Google Compute Engine (GCE) – IaaS

GCP: A Google Cloud Platform számítási verem elemzése

4. ábra: Google Compute Engine (GCE) ikon

A GCE a Google IaaS-ajánlata. A GCE-vel szabadon hozhat létre virtuális gépeket, oszthat ki CPU- és memória-erőforrásokat, választhat a tárolási típust (például SSD vagy HDD), valamint a memória mennyiségét. Szinte olyan, mintha saját számítógépet/munkaállomást épített volna, és a működésének minden részletét kezelte volna.

A GCE-ben 0,3 magos processzorral és 1 GB RAM-mal rendelkező mikropéldányok közül választhat a 96 magos szörnyek között, amelyek több mint 300 GB RAM-mal rendelkeznek. Egyedi méretű virtuális gépeket is létrehozhat a munkaterheléseihez. Az érdeklődők számára ezek a virtuális gépek, amelyeket meg lehet építeni.

Géptípusok | Számítsa ki a motordokumentációt | Google Cloud

3.2. Google Kubernetes Engine (GKE) – (Caas/Kaas)

GCP: A Google Cloud Platform számítási verem elemzése

5. ábra: Google Kubernetes Engine (GKE) ikon

A GKE a GCP egyedülálló számítástechnikai ajánlata, amely a Compute Engine tetején található absztrakció. Általánosabban a GKE a Container as a Service (CaaS) kategóriába sorolható, amelyet néha Kubernetes mint szolgáltatásnak (KaaS) is neveznek, ami lehetővé teszi az ügyfelek számára, hogy egyszerűen futtassák Docker-tárolóikat egy teljesen felügyelt Kubernetes környezetben. Azok számára, akik nem ismerik a konténereket, a konténerek segítenek a szolgáltatások/alkalmazások modularizálásában, így a különböző konténerek különböző szolgáltatásokat tartalmazhatnak, például az egyik konténer a webalkalmazás elülső részét, egy másik pedig a hátulját. A Kubernetes automatizálja, hangszereli, kezeli és telepíti a tárolókat. További információ itt.

Google Kubernetes Engine | Google Cloud

3.3 Google App Engine (GAE) – (PaaS)

GCP: A Google Cloud Platform számítási verem elemzése

6. ábra: Google App Engine (GAE) ikon

Ahogy a 2.2. szakaszban említettük, a PaaS az IaaS felett van, és a GCP esetében a GKE feletti ajánlatnak is tekinthető. A GAE a Google egyéni PaaS-je, és a legjobban úgy jellemzik magukat, hogy "hozd el a kódodat, a többiről mi gondoskodunk".

Ez biztosítja, hogy a GAE-t használó ügyfeleknek ne kelljen a mögöttes hardverrel/középszoftverrel foglalkozniuk, és már rendelkezhetnek egy előre konfigurált platformmal. mindössze annyit kell tenniük, hogy megadják a futtatásához szükséges kódot.

A GAE automatikusan kezeli a méretezést, hogy megfeleljen a terhelésnek és a felhasználói igényeknek, ami azt jelenti, hogy ha virágértékesítő webhelye hirtelen csúcsot ér el a Valentin-nap közeledtével, a GAE kezeli a mögöttes infrastruktúra méretezését, hogy megfeleljen a keresletnek, és gondoskodjon arról, hogy webhelye ne omoljon össze a megnövekedett kereslet miatt. Ez azt jelenti, hogy pontosan azokat az erőforrásokat kell fizetnie, amelyekre az alkalmazásnak abban a pillanatban szüksége van.

A GAE a Kuberneteset vagy annak natív verzióját használja mindezek kezelésére, így nem kell aggódnia miatta. A GAE azoknak a vállalatoknak a legalkalmasabb, amelyek nem érdeklődnek a mögöttes infrastruktúra iránt, és csak azzal törődnek, hogy alkalmazásuk a lehető legjobb módon elérhető legyen.

Véleményem szerint a GAE a legjobb kiindulópont, ha fejlesztő vagy, akinek van egy nagyszerű ötlete, de nem akar a szerverek beállításával, a terheléselosztással és minden egyéb időigényes devops/SRE munkával foglalkozni. . Idővel kipróbálhatod a GKE-t és a GCE-t, de ez csak az én véleményem.

Jogi nyilatkozat: Az AppEngine-t webes alkalmazásokhoz használják, nem mobilalkalmazásokhoz.

Információért: App Engine – Hozzon létre méretezhető webes és mobil háttérprogramokat bármilyen nyelven | Google Cloud

3.4 Google Cloud Functions – (FaaS)

GCP: A Google Cloud Platform számítási verem elemzése

7. ábra: Google Cloud Functions (GCF) ikon

Remélhetőleg észrevett egy tendenciát, ha megnézi a korábbi ajánlatokat. Minél magasabbra mászik a GCP számítási megoldások létráján, annál kevésbé kell aggódnia a mögöttes technológia miatt. Ez a piramis a lehető legkisebb számítási egységgel, egy függvénnyel végződik, ahogy az 1. részben látható.

A GCF egy viszonylag új GCP-ajánlat, amely még béta állapotban van (az írás idején). A felhőfunkciók lehetővé teszik, hogy a fejlesztő által írt bizonyos funkciókat egy esemény aktiválja.

Eseményvezéreltek, és a „szerver nélküli” divatszó középpontjában állnak, ami azt jelenti, hogy nem ismerik a szervereket. A felhőfunkciók nagyon egyszerűek, és sokféle felhasználási területük van, amelyek eseménygondolkodást igényelnek. Például minden alkalommal, amikor egy új felhasználó regisztrál, egy felhő funkció aktiválható, hogy figyelmeztesse a fejlesztőket.

Egy gyárban, ha egy bizonyos érzékelő elér egy bizonyos értéket, akkor kiválthat egy felhő funkciót, amely valamilyen információfeldolgozást végez, vagy értesíti a karbantartókat stb.

Felhőfunkciók – Eseményvezérelt szerver számítástechnika | Google Cloud

Következtetés

Ebben a cikkben beszéltünk a különböző felhőajánlatokról, például az IaaS-ről, a PaaS-ről stb., és arról, hogy a Google számítási verem hogyan valósítja meg ezeket a különböző rétegeket. Láttuk, hogy az egyik szolgáltatási kategóriából a másikba való áttéréskor az absztrakciós rétegek, mint például a Paas IaaS, kevesebb ismeretet igényelnek a mögöttesről.

Egy vállalkozás számára ez kritikus rugalmasságot biztosít, amely nemcsak a működési céljait, hanem más kulcsfontosságú területeket is kielégít, mint például a biztonság és a költségek. Összefoglalni:

Compute Engine - lehetővé teszi saját virtuális gép létrehozását bizonyos hardver erőforrások, például RAM, processzor, memória lefoglalásával. Ez is meglehetősen praktikus és alacsony szintű.

Kubernetes motor egy lépés a Compute Engine-hez képest, és lehetővé teszi a Kubernetes és a konténerek használatát az alkalmazás kezeléséhez, így szükség szerint bővítheti azt.

App Engine egy lépés a Kubernetes Engine-hez képest, amely lehetővé teszi, hogy csak a kódjára összpontosítson, miközben a Google gondoskodik az összes mögöttes platformkövetelményről.

Felhőfunkciók a számítási piramis csúcsa, amely lehetővé teszi egy egyszerű függvény írását, amely futtatásakor a teljes mögöttes infrastruktúrát felhasználja az eredmény kiszámításához és visszaadásához.

Спасибо за внимание!

Twitter: @martinomburajr

Forrás: will.com

Hozzászólás