Raksta tulkojums sagatavots īpaŔi kursa studentiem .
InteresÄ attÄ«stÄ«ties Å”ajÄ jomÄ? Skatieties profesionÄlÄ meistarklasÄ , ko vadÄ«ja Jeļena Zujeva ā komandas vadÄ«tÄja uzÅÄmumÄ InBit un izglÄ«tÄ«bas programmas autore OTUS.

Google Cloud Platform (GCP) piedÄvÄ daudzus pakalpojumus, tostarp datorsistÄmas infrastruktÅ«ru, kas ietver Google Compute Engine (GCE), Google Kubernetes Engine (iepriekÅ” ā Container Engine) (GKE), Google App Engine (GAE) un Google Cloud Functions (GCF). Visi Å”ie pakalpojumi ir ar iespaidÄ«giem nosaukumiem, taÄu to funkcijas un unikÄlas Ä«paŔības attiecÄ«bÄ viens pret otru var nebÅ«t acÄ«mredzamas. Å is raksts ir paredzÄts tiem, kuri tikai iepazÄ«stas ar mÄkoÅu konceptiem, Ä«paÅ”i par mÄkoÅpakalpojumiem un GCP.

1. Datoru infrastruktūra
Datoru infrastruktÅ«ru var uzskatÄ«t par daudzlÄ«meÅu abstrakciju par to, ko var nodroÅ”inÄt datorsistÄma. Å Ä« infrastruktÅ«ra virzÄs (virzÄs uz augÅ”u) no Ā«tÄ«rajÄm iekÄrtÄmĀ» (tÄ«ra metÄla), kas attiecas uz fiziskajiem datoru komponentiem, lÄ«dz funkcijÄm (funkcijas), kas ir vismazÄkÄ aprÄÄ·inÄÅ”anas vienÄ«ba. Kas ir svarÄ«gi attiecÄ«bÄ uz Å”o infrastruktÅ«ru, ir tas, ka pakalpojumi tiek apkopoti, pÄrejot uz augÅ”u, piemÄram, sadaļa Ā«lietojumprogrammasĀ» (lietojumprogrammas), kas parÄdÄ«ta attÄlÄ 1 zemÄk, vajadzÄtu ietvert visus pamatkomponentus konteineriem (konteineri), virtuÄlajÄm maŔīnÄm (virtuÄlÄs maŔīnas) un aparatÅ«ru. LÄ«dzÄ«gi, virtuÄlo maŔīnu komponents ir jÄietver aparatÅ«ra iekÅ”Äjai darbÄ«bai.

AttÄls 1: Datoru infrastruktÅ«ra | AttÄls iegÅ«ts no
Å Ä« modeļa, kas redzama attÄlÄ 1, ir pamats mÄkoÅu pakalpojumu sniedzÄju piedÄvÄjumu aprakstīŔanai. TÄdÄjÄdi daži pakalpojumu sniedzÄji var piedÄvÄt tikai, piemÄram, konteinerus un zemÄkas kvalitÄtes pakalpojumus, bet citi ā visu, kas attÄlots attÄlÄ 1.
ā Ja esat pazÄ«stams ar mÄkoÅpakalpojumiem, pÄrejiet uz 3. sadaļu, lai iepazÄ«tos ar GCP ekvivalentu
ā Ja Jums ir nepiecieÅ”ama tikai kopsavilkums par mÄkoÅpakalpojumiem, pÄrejiet uz 2.4. sadaļu
2. MÄkoÅpakalpojumi
MÄkoÅrakstura pasaule ir ļoti dažÄda. MÄkonÄ« pakalpojumi piedÄvÄ daudzus risinÄjumus, pielÄgotus dažÄdÄm klientu prasÄ«bÄm. JÅ«s varÄtu bÅ«t dzirdÄjuÅ”i par tÄdiem terminiem kÄ IaaS, PaaS, SaaS, FaaS, KaaS utt. ar visÄm alfabÄta burtiem, kam seko "aaS". Neskatoties uz dÄ«vaino nosaukumu vienoÅ”anos, tie veido mÄkonÄ« pakalpojumu komplektu. Es varu teikt, ka ir 3 galvenie piedÄvÄjumi "kÄ pakalpojums" (as a Service), kurus mÄkonÄ« pakalpojumu sniedzÄji gandrÄ«z vienmÄr nodroÅ”ina.
Tie ir IaaS, PaaS un SaaS, kas attiecÄ«gi apzÄ«mÄ infrastruktÅ«ru kÄ pakalpojumu (Infrastructure as a Service), platformu kÄ pakalpojumu (Platform as a Service) un programmatÅ«ru kÄ pakalpojumu (Software as a Service). Ir svarÄ«gi vizualizÄt mÄkonÄ« pakalpojumus kÄ pakalpojumu lÄ«meÅus. Tas nozÄ«mÄ, ka, kad jÅ«s paceļaties vai nolaižaties no lÄ«meÅa uz lÄ«meni, jÅ«s, kÄ klients, ŔķÄrsojat dažÄdus pakalpojumu variantus, kas vai nu tiek pievienoti, vai noÅemti no pamata piedÄvÄjuma. VislabÄk to ir skatÄ«t kÄ piramÄ«du, kÄ parÄdÄ«ts 2. attÄlÄ.

AttÄls 2: "aaS" piramÄ«da | AttÄls iegÅ«ts no
2.1 InfrastruktÅ«ra kÄ pakalpojums (IaaS)
Tas ir viszemÄkais lÄ«menis, ko var piedÄvÄt mÄkonÄ« pakalpojumu sniedzÄjs, un tas ietver mÄkonÄ« datu apstrÄdes pakalpojumu sniedzÄju, kas piegÄdÄ "pliku" infrastruktÅ«ru, ieskaitot starpprogrammatÅ«ru, tÄ«kla kabeļus, procesorus, grafiskos procesorus, operatÄ«vo atmiÅu, ÄrÄjo uzglabÄÅ”anu, serverus un pamata operÄtÄjsistÄmu attÄlus, piemÄram, Debian Linux, CentOS, Windows u.tml.
Ja jÅ«s pasÅ«tÄt no mÄkonÄ« pakalpojumu sniedzÄja IaaS piedÄvÄjumu, tad tas ir tas, ko jÅ«s varat sagaidÄ«t saÅemt. Jums kÄ klientam paliek Ŕīs daļas salikt kopÄ, lai vadÄ«tu savu biznesu. DarbÄ«bas apjoms, ar kuru jums bÅ«s jÄsaskaras, var atŔķirties no sniedzÄja uz sniedzÄju, bet parasti jÅ«s iegÅ«stat tikai aparatÅ«ru un operÄtÄjsistÄmu, bet pÄrÄjais ir atkarÄ«gs no jums. IaaS piemÄri ir AWS Elastic Compute, Microsoft Azure un GCE.
Dažiem cilvÄkiem var nepatikt fakts, ka viÅiem jÄinstalÄ operÄtÄjsistÄmas attÄli un jÄnodarbojas ar tÄ«klu, slodzes lÄ«dzsvaroÅ”anu vai jÄrÅ«pÄjas par to, kÄds procesors ir vispiemÄrotÄkais viÅu darba slodzei. TieÅ”i Å”eit mÄs virzÄmies augÅ”up pa piramÄ«du uz PaaS.
2.2 Platforma kÄ pakalpojums (PaaS)
PaaS ietver tikai mÄkoÅu pakalpojumu sniedzÄju, kas piedÄvÄ noteiktu platformu, uz kuras lietotÄji var veidot lietotnes. TÄ ir abstrakcija virs IaaS, kas nozÄ«mÄ, ka mÄkoÅu pakalpojumu sniedzÄjs uzÅemas visas detaļas par procesoru, atmiÅas, RAM, uzglabÄÅ”anas, tÄ«klu utt. KÄ parÄdÄ«ts attÄlÄ 2, jÅ«s kÄ klients kontrolÄjat ļoti maz reÄlo platformu, jo mÄkoÅu pakalpojumu sniedzÄjs rÅ«pÄjas par visÄm infrastruktÅ«ras detaļÄm jÅ«su vietÄ. JÅ«s pieprasÄt izvÄlÄto platformu un veidojat tajÄ projektu. PiemÄri PaaS ir Heroku.
Dažiem cilvÄkiem tas var Ŕķist pÄrÄk augsts lÄ«menis, jo viÅi obligÄti nevÄlas veidot projektu uz norÄdÄ«tÄs platformas, bet drÄ«zÄk nepiecieÅ”ams pakalpojumu kopums tieÅ”i no mÄkoÅu pakalpojumu sniedzÄja. Å eit nÄk talkÄ SaaS.
2.3 ProgrammatÅ«ra kÄ pakalpojums (SaaS)
SaaS ir visizplatÄ«tÄkie pakalpojumi, ko sniedz mÄkoÅu pakalpojumu sniedzÄji. Tie ir paredzÄti galapatÄrÄtÄjiem un galvenokÄrt pieejami caur tÄ«mekļa vietnÄm, piemÄram, Gmail, Google Docs, Dropbox utt. AttiecÄ«bÄ uz Google Cloud ir vairÄki piedÄvÄjumi Ärpus viÅu skaitļoÅ”anas steka, kas ir SaaS. Tie ietver Data Studio, Big Query utt.
2.4 Kopsavilkums par mÄkoÅu pakalpojumiem
Komponentes
IaaS
PaaS
SaaS
Ko jÅ«s saÅemat
JÅ«s saÅemat infrastruktÅ«ru un maksÄjat attiecÄ«gi. BrÄ«vÄ«bu izmantot vai instalÄt jebkuru programmatÅ«ru, operÄtÄjsistÄmu vai to kombinÄciju.
Å eit jÅ«s saÅemat to, ko pieprasÄt. ProgrammatÅ«ra, aparatÅ«ra, operÄtÄjsistÄma, tÄ«mekļa vide. JÅ«s saÅemat gatavu platformu un maksÄjat attiecÄ«gi.
Å eit jums nav jÄuztraucas par neko. Jums tiek nodroÅ”inÄts iepriekÅ” instalÄts komplekts, kas pielÄgots jÅ«su prasÄ«bÄm, un jums atliek tikai maksÄt attiecÄ«gi.
VÄrtÄ«ba
Pamatlīmenis skaitļoŔanas
IaaS virsotne
TÄ ir bÅ«tÄ«bÄ pilna pakalpojumu pakete
TehniskÄs grÅ«tÄ«bas
NepiecieÅ”amas tehniskÄs zinÄÅ”anas
Jums ir pamata konfigurÄcija, bet joprojÄm nepiecieÅ”amas jomas zinÄÅ”anas.
Nav nepiecieÅ”ams uztraukties par tehniskÄm detaļÄm. SaaS pakalpojumu sniedzÄjs nodroÅ”ina visu.
Ar ko tiek strÄdÄts
VirtuÄlÄs maŔīnas, uzglabÄÅ”anas, serveri, tÄ«kls, slodzes balansÄtÄji utt.
Izpildes vides (piemÄram, Java runtime), datu bÄzes (piemÄram, MySQL, Oracle), tÄ«mekļa serveri (piemÄram, Tomcat utt.)
Lietojumprogrammas, piemÄram, pasta pakalpojumi (Gmail, Yahoo mail uc.), sociÄlo mediju vietnes (Facebook uc.)
PopularitÄtes grafiks
PopulÄri starp augsti kvalificÄtiem izstrÄdÄtÄjiem, pÄtniekiem, kuriem nepiecieÅ”ama pielÄgoÅ”ana atbilstoÅ”i viÅu prasÄ«bÄm vai pÄtÄ«jumu jomai
VispopulÄrÄkie starp izstrÄdÄtÄjiem, jo viÅi var koncentrÄties uz savu lietojumprogrammu vai skriptu izstrÄdi. ViÅiem nav jÄuztraucas par satiksmes ielÄdi vai servera pÄrvaldÄ«bu utt.
VispopulÄrÄkie starp parastajiem patÄrÄtÄjiem vai uzÅÄmumiem, kuri izmanto programmatÅ«ru, piemÄram, e-pastu, failu apmaiÅas rÄ«kus, sociÄlos tÄ«klus, jo viÅiem nav jÄsatraucas par tehniskajÄm detaļÄm
AttÄls 3: Galveno mÄkoÅu piedÄvÄjumu kopsavilkums | AttÄls nodroÅ”inÄts
3. Google Cloud Platform Computing Package
Apskatot tipiskos mÄkoÅu pakalpojumu sniedzÄju piedÄvÄjumus 2. sadaļÄ, mÄs varam tos salÄ«dzinÄt ar Google Cloud piedÄvÄjumiem.
3.1 Google Compute Engine (GCE) ā IaaS

AttÄls 4: Google Compute Engine (GCE) ikona
GCE ir Google IaaS piedÄvÄjums. Ar GCE jÅ«s varat brÄ«vi izveidot virtuÄlÄs maŔīnas, sadalÄ«t procesora un atmiÅas resursus, izvÄlÄties krÄtuves veidu, piemÄram, SSD vai HDD, kÄ arÄ« atmiÅas apjomu. Tas ir gandrÄ«z tÄpat kÄ izveidot savu datoru/darba staciju un rÅ«pÄties par visÄm tÄ darbÄ«bas detaļÄm.
GCE jÅ«s varat izvÄlÄties no mikro instancÄm ar 0,3 kodolu procesoriem un 1 GB RAM lÄ«dz 96 kodolu āmonstriemā ar vairÄk nekÄ 300 GB RAM. JÅ«s arÄ« varat izveidot nestandarta lieluma virtuÄlÄs maŔīnas savÄm darba slodzÄm. Tie, kas ir ieinteresÄti ā tie ir virtuÄlie datori, kurus jÅ«s varat salikt.
3.2 Google Kubernetes Engine (GKE) ā (CaaS / KaaS)

AttÄls 5: Google Kubernetes Engine (GKE) ikona
GKE ā unikÄls skaitļoÅ”anas risinÄjums no GCP, kas ir abstrahÄts no Compute Engine. PlaÅ”ÄkÄ nozÄ«mÄ GKE var klasificÄt kÄ "Konteinera kÄ pakalpojuma" (CaaS), dažkÄrt sauktu arÄ« par "Kubernetes kÄ pakalpojumu" (KaaS), kas ļauj klientiem viegli palaist savus Docker konteinerus pilnÄ«bÄ pÄrvaldÄ«tÄ Kubernetes vidÄ. Lai arÄ« tie, kas nav iepazinuÅ”ies ar konteineriem, konteineri palÄ«dz modulÄri veidot pakalpojumus / lietojumprogrammas, tÄpÄc dažÄdi konteineri var saturÄt dažÄdus pakalpojumus, piemÄram, viens konteiners var mitinÄt jÅ«su tÄ«mekļa lietojumprogrammas saskarni, bet cits var saturÄt tÄs servera daļu. Kubernetes veic automatizÄciju, koordinÄciju, pÄrvaldÄ«bu un jÅ«su konteineru izvietoÅ”anu. VairÄk informÄcijas Å”eit.
3.3 Google App Engine (GAE) ā (PaaS)

AttÄls 6: Google App Engine (GAE) ikona
KÄ minÄts 2.2 nodaļÄ, PaaS ir augstÄks par IaaS, un GCP gadÄ«jumÄ to var uzskatÄ«t par piedÄvÄjumu virs GKE. GAE ir specializÄts Google PaaS, un kÄ viÅi paÅ”i vislabÄk apraksta sevi ā "pÄrvadÄjiet savu kodu, bet mÄs parÅ«pÄsimies par visu pÄrÄjo."
Tas nodroÅ”ina, ka klientiem, kuri izmanto GAE, nav jÄtiek galÄ ar pamatiekÄrtu / vidusposma programmatÅ«ru, un viÅiem var bÅ«t iepriekÅ” konfigurÄta platforma, kas ir gatava darbam; viss, kas viÅiem jÄdara, ir sniegt kodu, kas nepiecieÅ”ams tÄ palaiÅ”anai.
GAE automÄtiski apstrÄdÄ mÄrogoÅ”anu, lai apmierinÄtu slodzi un pieprasÄ«jumu no lietotÄjiem, kas nozÄ«mÄ, ka, ja jÅ«su ziedu pÄrdoÅ”anas vietne pÄkÅ”Åi sasniedz augstumu, jo tuvojas ValentÄ«na diena, GAE tiks galÄ ar mÄrogoÅ”anu pamatinfrastruktÅ«rÄ, lai apmierinÄtu pieprasÄ«jumu un nodroÅ”inÄtu, ka jÅ«su tÄ«mekļa vietne neizkrÄ«t pie paaugstinÄta pieprasÄ«juma. Tas nozÄ«mÄ, ka jÅ«s maksÄjat tieÅ”i par tiem resursiem, kas nepiecieÅ”ami jÅ«su lietojumprogrammai Å”obrÄ«d.
GAE izmanto Kubernetes vai tÄ iebÅ«vÄto versiju, lai ar visu to tiktu galÄ, lai jums par to nebÅ«tu jÄrÅ«pÄjas. GAE vislabÄk der kompÄnijÄm, kuru interese nav pamatinfrastruktÅ«ra un kas rÅ«pÄjas tikai par to, lai viÅu lietojumprogramma bÅ«tu pieejama vislabÄkajÄ veidÄ.
ManuprÄt, GAE ir labÄkÄ vieta, kur uzsÄkt, ja esat izstrÄdÄtÄjs ar lielisku ideju, bet nevÄlaties nodarboties ar rutÄ«nu serveru iestatīŔanÄ, slodzes sadalīŔanÄ un visÄm citÄm darbietilpÄ«gÄm devops/SRE aktivitÄtÄm. Laika gaitÄ jÅ«s varÄtu izmÄÄ£inÄt GKE un GCE, bet tÄ ir tikai mana domÄm.
Atskaite: AppEngine tiek izmantots tÄ«mekļa lietojumprogrammÄm, nevis mobilajÄm lietotnÄm.
IepazīŔanai:
3.4 Google Cloud Functions ā (FaaS)

AttÄls 7: Google Cloud Functions (GCF) ikona
Ceru, ka esat pamanÄ«jis tendenci, analizÄjot iepriekÅ”ÄjÄs piedÄvÄjumus. Jo augstÄk atrodaties GCP skaitļoÅ”anas risinÄjumu hierarhijÄ, jo mazÄk jums jÄkoncentrÄjas uz pamattehnoloÄ£ijÄm. Å Ä« piramÄ«da beidzas ar mazÄko iespÄjamo skaitļoÅ”anas vienÄ«bu ā funkciju, kÄ norÄdÄ«ts 1. sadaļÄ.
GCF ir salÄ«dzinoÅ”i jauns GCP piedÄvÄjums, kas vÄl joprojÄm atrodas beta testÄÅ”anas fÄzÄ (rakstīŔanas brÄ«dÄ«). MÄkonÄ« funkcijas ļauj noteiktÄm izstrÄdÄtÄja uzrakstÄ«tÄm funkcijÄm tikt izpildÄ«tÄm pÄc jebkura notikuma.
Tie tiek pÄrvaldÄ«ti ar notikumiem un ir pamatÄ modÄ ienÄkuÅ”ajai frÄzei ābezserveruā, tas ir, viÅi neizzina serverus. MÄkonÄ« funkcijas ir ļoti vienkÄrÅ”as un ir daudz dažÄdu pielietojumu, kas prasa notikumu domÄÅ”anu. PiemÄram, katru reizi, kad tiek reÄ£istrÄts jauns lietotÄjs, var tikt aktivizÄta mÄkonÄ« funkcija, lai brÄ«dinÄtu izstrÄdÄtÄjus.
RažotnÄ, kad noteikts sensors sasniedz noteiktu vÄrtÄ«bu, tas var uzsÄkt mÄkonÄ« funkciju, kas veic noteiktu informÄcijas apstrÄdi vai informÄ apkalpojoÅ”o personÄlu utt.
SecinÄjums
Å ajÄ rakstÄ mÄs runÄjÄm par dažÄdiem mÄkoÅa piedÄvÄjumiem, piemÄram, IaaS, PaaS utt., un to, kÄ Google skaitļoÅ”anas steks Ä«steno Å”os dažÄdos lÄ«meÅus. MÄs redzÄjÄm, ka abstrakcijas lÄ«meÅi, pÄrejot no vienas pakalpojumu kategorijas uz citu, piemÄram, no IaaS uz PaaS, prasa mazÄk zinÄÅ”anu par pamatÄ esoÅ”o.
UzÅÄmÄjam tas nodroÅ”ina kritiski svarÄ«gu elastÄ«bu, kas ne tikai atbilst tÄ operatÄ«vajiem mÄrÄ·iem, bet arÄ« apmierina citas galvenÄs jomas, piemÄram, droŔību un izmaksas. Kopsavilkums:
Compute Engine ā ļauj jums izveidot savu virtuÄlo maŔīnu, pieŔķirot noteiktus aparatÅ«ras resursus, piemÄram, RAM, procesoru un atmiÅu. Tas ir arÄ« pietiekami praktisks un zema lÄ«meÅa.
Kubernetes Engine ā tas ir solis augstÄk salÄ«dzinÄjumÄ ar Compute Engine, kas ļauj jums izmantot Kubernetes un konteinerus jÅ«su lietojuma pÄrvaldīŔanai, ļaujot to nepiecieÅ”amÄ«bas gadÄ«jumÄ paplaÅ”inÄt.
App Engine ā tas ir solis augstÄk salÄ«dzinÄjumÄ ar Kubernetes Engine, ļaujot jums koncentrÄties tikai uz savu kodu, kamÄr Google nodroÅ”ina visus pamatplatformas prasÄ«bas.
Cloud-Functions ā tas ir augstÄkais aprÄÄ·inu piramÄ«das lÄ«menis, ļaujot uzrakstÄ«t vienkÄrÅ”u funkciju, kas, kad tÄ tiek aktivizÄta, izmanto visu pamatinfrastruktÅ«ru aprÄÄ·inu veikÅ”anai un rezultÄta atgrieÅ”anai.
Paldies par uzmanību!
Twitter:
Avots: habr.com
