GCP: Google Cloud Platform Computing Stacki jaotus

Artikli tõlge koostati spetsiaalselt kursuse üliõpilastele "Pilveteenused".

Kas olete huvitatud selles suunas arenemisest? Vaata professionaalse meistriklassi salvestust "AWS EC2 teenus", mille viis läbi Egor Zuev - TeamLead InBitis ja õppeprogrammi autor OTUSes.

GCP: Google Cloud Platform Computing Stacki jaotus

Google Cloud Platform (GCP) pakub paljusid teenuseid, eriti andmetöötluspakki, mis sisaldab Google Compute Engine'i (GCE), Google Kubernetes Engine'i (endine Container Engine) (GKE), Google App Engine'i (GAE) ja Google'i pilvefunktsioone (GCF) . Kõigil neil teenustel on lahedad nimed, kuid nende funktsioonide ja selle poolest, mis muudab need üksteise jaoks ainulaadseks, ei pruugi need olla täiesti ilmsed. See artikkel on mõeldud neile, kes pole pilvekontseptsioonidega, eriti pilveteenuste ja GCP-ga uued.

GCP: Google Cloud Platform Computing Stacki jaotus

1. Arvutage virn

Arvutuspinku võib pidada kihiliseks abstraktsiooniks selle üle, mida arvutisüsteem suudab pakkuda. See virn tõuseb (liigub üles) "paljast rauast" (paljas metall), viidates arvuti tegelikele riistvarakomponentidele kuni funktsioonideni (funktsioonid), mis esindavad väikseimat arvutusühikut. Oluline on virna puhul märkida, et teenused koondatakse, kui liigute virnas ülespoole, näiteks jaotis "rakendused" (apps), mis on näidatud alloleval joonisel 1, peaks sisaldama kõiki konteineri põhikomponente (konteinerid), virtuaalsed masinad (virtuaalsed masinad) ja rauda. Samamoodi peab virtuaalmasinate komponent töötamiseks sisaldama riistvara.

GCP: Google Cloud Platform Computing Stacki jaotus

Joonis 1: Viru arvutamine | Pilt pärineb Google Cloud

See joonisel 1 näidatud mudel on pilveteenuse pakkujate pakkumiste kirjeldamise aluseks. Seega saavad mõned pakkujad pakkuda ainult näiteks konteinereid ja madalama kvaliteediga teenuseid kogu virna ulatuses, teised aga kõike, mis on näidatud joonisel 1.

— Kui olete pilveteenustega tuttav, minge aadressile 3. jaguet näha GCP ekvivalenti
— Kui soovite ainult pilveteenuste kokkuvõtet, minge aadressile 2.4. jagu

2. Pilveteenused

Pilvandmetöötluse maailm on väga mitmekesine. Pilveteenuse pakkujad pakuvad erinevaid teenuseid, mis on kohandatud erinevate klientide vajadustele. Võib-olla olete kuulnud sellistest terminitest nagu IaaS, PaaS, SaaS, FaaS, KaaS jne. kõigi tähestiku tähtedega, millele järgneb "aaS". Vaatamata kummalisele nimetamistavale moodustavad need pilveteenuse pakkuja teenuste komplekti. Väidan, et pilveteenuse pakkujad pakuvad peaaegu alati 3 peamist teenusena pakkumist.

Need on IaaS, PaaS ja SaaS, mis tähistavad vastavalt Infrastructure as a Service, Platform as a Service ja Software as a Service. Oluline on visualiseerida pilveteenuseid pakutavate teenuste kihtidena. See tähendab, et kui liigute tasemelt teisele üles või alla, läbivad teid kui klienti erinevad teenusevalikud, mis lisatakse põhipakkumisele või lahutatakse sellest. Parim on pidada seda püramiidiks, nagu on näidatud joonisel 2.
GCP: Google Cloud Platform Computing Stacki jaotus

Joonis 2: aaS püramiid | Pilt pärineb Ruby Garaaž

2.1 Infrastruktuur kui teenus (IaaS)

See on madalaim tasand, mida pilveteenuse pakkuja saab pakkuda ja hõlmab pilveteenuse pakkujat, kes tarnib metallist infrastruktuuri, sealhulgas vahevara, võrgukaablid, protsessorid, GPU-d, RAM, välismälu, serverid ja aluseks olevad operatsioonisüsteemi pildid, nt Debian Linux, CentOS, Windows , jne.

Kui tellite pakkumise pilve IaaS-i pakkujalt, peaksite seda ootama. Teie, klient, peate need osad oma ettevõtte juhtimiseks kokku panema. Töötamise ulatus võib müüjati erineda, kuid üldiselt saate lihtsalt riistvara ja OS-i ning ülejäänu on teie otsustada. IaaS-i näited on AWS Elastic Compute, Microsoft Azure ja GCE.

Mõnele inimesele ei pruugi meeldida, et nad peavad installima OS-i kujutisi ja tegelema võrgu loomise, koormuse tasakaalustamisega või muretsema selle pärast, mis tüüpi protsessor on nende töökoormuse jaoks ideaalne. Siin liigume mööda püramiidi üles PaaS-i poole.

2.2 Platvorm kui teenus (PaaS)

PaaS hõlmab ainult pilveteenuse pakkujat, kes pakub konkreetset platvormi, millele kasutajad saavad rakendusi luua. See on IaaS-i abstraktsioon, mis tähendab, et pilveteenuse pakkuja hoolitseb kõigi protsessoritüüpide, mälu, RAM-i, salvestusruumi, võrkude jms üksikasjade eest. Nagu on näidatud joonisel 2, on teil kliendina tegeliku platvormi üle vähe kontrolli, kuna pilve haldab teenusepakkuja teie eest kõiki infrastruktuuri üksikasju. Taotled valitud platvormi ja ehitad sellele projekti. PaaS-i näited on Heroku.

Mõne jaoks võib see olla liiga kõrge tase, kuna nad ei soovi tingimata projekti kindlale platvormile ehitada, vaid vajavad pigem teenuste komplekti otse pilveteenuse pakkujalt. Siin tuleb mängu SaaS.

2.3 Tarkvara kui teenus (SaaS)

SaaS esindab pilveteenuse pakkujate kõige levinumaid teenuseid. Need on suunatud lõppkasutajatele ja on juurdepääsetavad peamiselt selliste veebisaitide kaudu nagu Gmail, Google Docs, Dropbox jne. Mis puudutab Google Cloudi, siis on väljaspool nende andmetöötluspakki mitu SaaS-i pakkumist. Nende hulka kuuluvad Data Studio, Big Query jne.

2.4 Pilveteenuste kokkuvõte

Komponendid
IaaS
PaaS
SaaS

Mida sa saad
Saate infrastruktuuri ja maksate vastavalt. Vabadus kasutada või installida mis tahes tarkvara, OS-i või nende koostist.
Siit saate seda, mida küsite. Tarkvara, riistvara, OS, veebikeskkond. Saate kasutusvalmis platvormi ja maksate vastavalt.
Siin ei pea te millegi pärast muretsema. Teile pakutakse vastavalt teie vajadustele kohandatud eelinstallitud pakett ja peate ainult vastavalt maksma.

Väärtus
Põhiline andmetöötlus
Top IaaS
See on sisuliselt täielik teenuste pakett

Tehnilised raskused
Vajalikud tehnilised teadmised
Teile antakse põhikonfiguratsioon, kuid vajate endiselt domeeniteadmisi.
Pole vaja vaeva näha tehniliste detailidega. SaaS-i pakkuja pakub kõike.

Millega see töötab?
Virtuaalmasinad, salvestusruumid, serverid, võrk, koormuse tasakaalustajad jne.
Käituskeskkonnad (nt Java käitusaeg), andmebaasid (nt mySQL, Oracle), veebiserverid (nt tomcat jne)
Rakendused, nagu meiliteenused (Gmail, Yahoo post jne), suhtlussaidid (Facebook jne)

Populaarsuse graafik
Populaarne kõrgelt kvalifitseeritud arendajate, teadlaste seas, kes vajavad kohandamist vastavalt oma vajadustele või uurimisvaldkonnale
Kõige populaarsem arendajate seas, kuna nad saavad keskenduda oma rakenduste või skriptide arendamisele. Nad ei pea muretsema liikluskoormuse ega serverihalduse jms pärast.
Kõige populaarsem tavatarbijate või ettevõtete seas, kes kasutavad tarkvara nagu e-post, failide jagamine, sotsiaalvõrgustikud, kuna nad ei pea muretsema tehniliste detailide pärast

Joonis 3: Peamiste pilvepakkumiste kokkuvõte | Pilt on antud Amir Blog Specias

3. Google Cloud Platform Computing Suite

Vaadates 2. jaotises toodud tüüpilisi pilveteenuse pakkujate pakkumisi, saame neid võrrelda Google Cloudi pakkumistega.

3.1 Google Compute Engine (GCE) – IaaS

GCP: Google Cloud Platform Computing Stacki jaotus

Joonis 4: Google Compute Engine (GCE) ikoon

GCE on Google'i IaaS-i pakkumine. GCE abil saate vabalt luua virtuaalmasinaid, eraldada protsessori- ja mäluressursse, valida salvestustüübi (nt SSD või HDD) ja mälumahtu. See on peaaegu nii, nagu oleksite ehitanud oma arvuti/tööjaama ja käsitlenud kõiki selle toimimise üksikasju.

GCE-s saate valida 0,3-tuumaliste protsessorite ja 1 GB muutmäluga mikroeksemplaride vahel kuni 96-tuumaliste koletiste vahel, millel on üle 300 GB muutmälu. Samuti saate oma töökoormuste jaoks luua kohandatud suurusega virtuaalmasinaid. Huvilistele on need virtuaalsed masinad, mida saate ehitada.

Masinatüübid | Mootori dokumentatsiooni arvutamine | Google Cloud

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

GCP: Google Cloud Platform Computing Stacki jaotus

Joonis 5: Google Kubernetes Engine (GKE) ikoon

GKE on ainulaadne GCP andmetöötluse pakkumine, mis on Compute Engine'i abstraktsioon. Üldisemalt võib GKE liigitada konteineri teenusena (CaaS), mida mõnikord nimetatakse Kubernetes kui teenuseks (KaaS), mis võimaldab klientidel hõlpsasti käitada oma Dockeri konteinereid täielikult hallatavas Kubernetese keskkonnas. Kes konteineritega kursis ei ole, siis konteinerid aitavad teenuseid/rakendusi moduleerida, nii et erinevad konteinerid võivad sisaldada erinevaid teenuseid, näiteks võib üks konteiner majutada sinu veebirakenduse esiosa ja teine ​​selle tagaosa. Kubernetes automatiseerib, korraldab, haldab ja juurutab teie konteinereid. Rohkem infot siit.

Google Kubernetes Engine | Google Cloud

3.3 Google App Engine (GAE) – (PaaS)

GCP: Google Cloud Platform Computing Stacki jaotus

Joonis 6: Google App Engine (GAE) ikoon

Nagu jaotises 2.2 mainitud, asub PaaS IaaS-ist kõrgemal ja GCP puhul võib seda pidada ka GKE-st kõrgemaks pakkumiseks. GAE on Google'i kohandatud PaaS ja see, kuidas nad ennast kõige paremini kirjeldavad, on "tooke oma kood ja me hoolitseme ülejäänu eest".

See tagab, et GAE-d kasutavad kliendid ei pea tegelema aluseks oleva riist-/vahevaraga ning neil on juba eelkonfigureeritud platvorm kasutusvalmis; kõik nad peavad andma selle käivitamiseks vajaliku koodi.

GAE tegeleb skaleerimisega automaatselt, et rahuldada kasutajate koormust ja nõudlust, mis tähendab, et kui teie lillemüügi veebisait saavutab ootamatult tipptaseme, sest lähenemas on sõbrapäev, tegeleb GAE aluseks oleva infrastruktuuri skaleerimisega, et vastata nõudlusele ja tagada, et teie veebisait ei jookse kokku suurenenud nõudluse tõttu. . See tähendab, et maksate täpselt nende ressursside eest, mida teie taotlus sel hetkel nõuab.

GAE kasutab selle kõigega toimetulekuks Kubernetest või selle algversiooni, nii et te ei peaks selle pärast muretsema. GAE sobib kõige paremini ettevõtetele, kes ei ole aluseks olevast infrastruktuurist huvitatud ja hoolivad ainult selle eest, et nende rakendus oleks parimal võimalikul viisil juurdepääsetav.

Minu arvates on GAE parim koht alustamiseks, kui olete arendaja, kellel on suurepärane idee, kuid ei taha tegeleda serverite seadistamise, koormuse tasakaalustamise ja kogu muu aeganõudva devops/SRE tööga. . Aja jooksul võite proovida GKE-d ja GCE-d, kuid see on ainult minu arvamus.

Vastutusest loobumine: AppEngine'i kasutatakse veebirakenduste, mitte mobiilirakenduste jaoks.

Teabe saamiseks: App Engine – looge skaleeritavaid veebi- ja mobiilitaustaprogramme mis tahes keeles | Google Cloud

3.4 Google'i pilvefunktsioonid – (FaaS)

GCP: Google Cloud Platform Computing Stacki jaotus

Joonis 7: Google'i pilvefunktsioonide (GCF) ikoon

Loodetavasti olete varasemaid pakkumisi vaadates suundumust märganud. Mida kõrgemale GCP arvutuslahenduste redelil ronite, seda vähem peate muretsema aluseks oleva tehnoloogia pärast. See püramiid lõpeb väikseima võimaliku arvutusühikuga, funktsiooniga, nagu on näidatud jaotises 1.

GCF on suhteliselt uus GCP pakkumine, mis on veel beetaversioonis (selle kirjutamise ajal). Pilvefunktsioonid võimaldavad sündmuse poolt käivitada teatud arendaja kirjutatud funktsioone.

Need on sündmustepõhised ja on moesõna "serverita" keskmes, mis tähendab, et nad ei tunne servereid. Pilvefunktsioonid on väga lihtsad ja neil on palju erinevaid kasutusviise, mis nõuavad sündmuste mõtlemist. Näiteks iga kord, kui uus kasutaja registreerub, saab arendajate hoiatamiseks käivitada pilvefunktsiooni.

Tehases, kui teatud andur saavutab teatud väärtuse, võib see käivitada pilvefunktsiooni, mis teeb mingi infotöötluse või teavitab mõnda hoolduspersonali vms.

Pilvefunktsioonid – sündmustepõhine serveriandmetöötlus | Google Cloud

Järeldus

Selles artiklis rääkisime erinevatest pilvepakkumistest, nagu IaaS, PaaS jne, ja sellest, kuidas Google'i andmetöötluspinn neid erinevaid kihte rakendab. Oleme näinud, et ühest teenusekategooriast teise üleminekul nõuavad abstraktsioonikihid, näiteks IaaS Paasis, vähem teadmisi aluseks olevast.

Ettevõtte jaoks pakub see kriitilist paindlikkust, mis ei vasta mitte ainult selle tegevuse eesmärkidele, vaid ka muudele olulistele valdkondadele, nagu turvalisus ja kulud. Kokku võtma:

Arvuta Mootor - võimaldab teil luua oma virtuaalse masina, eraldades teatud riistvararessursse, näiteks RAM, protsessor, mälu. See on ka üsna praktiline ja madala tasemega.

Kubernetes mootor on Compute Engine'ist samm edasi ja võimaldab teil oma rakenduse haldamiseks kasutada Kubernetesi ja konteinereid, võimaldades teil seda vastavalt vajadusele suurendada.

Rakenduse mootor on samm edasi võrreldes Kubernetes Engine'iga, mis võimaldab teil keskenduda ainult oma koodile, samal ajal kui Google hoolitseb kõigi aluseks olevate platvorminõuete eest.

Pilvefunktsioonid on arvutuspüramiidi tipp, mis võimaldab teil kirjutada lihtsa funktsiooni, mis käivitamisel kasutab tulemuse arvutamiseks ja tagastamiseks kogu aluseks olevat infrastruktuuri.

Tänan teid tähelepanu eest!

Twitter: @martinomburajr

Allikas: www.habr.com

Lisa kommentaar