Programmering

Veiledning for Google Cloud: Kom i gang med Google Cloud

Når folk tenker på ordet Google, tenker de på søk og den enorme beregningsinfrastrukturen som konverterer ordene dine til en liste over nettsteder som sannsynligvis har akkurat det du ønsker å finne. Det tok Google år å ansette ingeniørene, designe de egendefinerte datamaskinene og lage den enorme samlingen av maskinvare som svarer på spørsmål på nettet. Nå kan den være din med bare noen få tastetrykk og klikk.

Google leier ut mye av den kompetansen og infrastrukturen til andre nettselskaper. Hvis du vil bygge et smart nettsted eller en tjeneste, er Google klar til å belaste deg for å kjøre den på den enorme samlingen av maskiner. Alt du trenger å gjøre er å begynne å fylle ut noen nettskjemaer, og snart har du en stor samling servere klare til å skalere og håndtere oppgavene dine.

For å få en rask guide til å komme i gang, og for å navigere gjennom de mange valgene underveis, bare følg meg.

Trinn 1: Sett opp kontoen din

Dette er den enkle delen. Hvis du har en Google-konto, er du klar. Du kan logge på cloud.google.com og gå rett til konsollen og dashbordet. Det vil ikke være mye å se her når du begynner, men snart begynner du å se detaljer om hva ditt enorme databehandlingsimperium gjør. Det vil si belastningen på serverforekomster du har opprettet, dataene som strømmer gjennom nettverket og bruken av APIer. Du kan forsikre deg selv om at alt går som det skal med et blikk.

Trinn 2: Identifiser behovet ditt for struktur

Det er to måter å bruke Googles infrastruktur på: deres måte og din egen måte. Hvis du vil utnytte alt det geniale fra Googles utviklingsteam, kan du velge verktøyene som gir deg mye håndhold. Google App Engine, for eksempel, lar deg bygge en sofistikert webapplikasjon med bare noen få hundre linjer med kode, alt ved å stole på Googles kuraterte samling av interne og åpen kildekoderammer. App Engine er en rask måte å spinne opp noe raskt.

Hvis du allerede har din egen kode, eller hvis du er bekymret for å være låst inn i Googles måte, kan du leie maskiner med det andre ved hjelp av Google Compute Engine. Alt du gjør er å velge en av de største Linux- eller Windows-distribusjonene, og noen sekunder senere får du et root-passord, tilgang til en kommandolinje og ingen begrensninger.

Det er alternativer som ligger i mellom. Du kan tilpasse App Engine med noe av din egen kode hvis du vil, eller du kan velge noen av de forhåndsbygde bildene for Compute Engine som allerede inneholder alle nødvendige filer for populære applikasjoner som WordPress eller Node.js. Og så er det enda flere alternativer som ligger et sted mellom disse.

Du vil sannsynligvis ende opp med en blanding av støtte, kanskje bruke en fullt strukturert App Engine-app for en del og litt tilpasset kode som kjøres på råvaremaskinvare for en annen. Det er viktigere at du bestemmer hvor mye du vil gjøre selv, og hvor mye du er åpen for å bygge på Googles verktøy.

Relatert video: Hva er den skyinnfødte tilnærmingen?

I denne 60 sekunders videoen kan du lære hvordan den skyinnfødte tilnærmingen endrer måten bedrifter strukturerer teknologiene sine på, fra Craig McLuckie, grunnlegger og administrerende direktør i Heptio, og en av oppfinnerne av open source-systemet Kubernetes.

Trinn 3: Vurder ikke-tradisjonelle tilnærminger

Ikke alle trenger å bygge webapplikasjoner på samme måte. Google tilbyr så mange alternativer som ofte kan gi gode resultater uten å skrive tradisjonell kode. En smart idé blander for eksempel en Chrome-utvidelse med brukerens Google Drive-konto for lagring. Den eneste koden kjører på klienten, og Google håndterer all infrastrukturen. Du bør tenke deg om to ganger for å sikre at søknaden din ikke kan løses med en enklere tilnærming.

Trinn 4: Velg en maskin

Det er nesten en feil å tenke på dette som å velge noe fysisk som en håndgripelig "maskin". Du velger egentlig bare hvor mye CPU-kraft, minne og diskplass du tror du trenger. Compute Engine tilbyr dusinvis av "maskiner" i standard størrelse, eller du kan velge dine egne kombinasjoner.

Hvis du leter etter mer enn én maskin for å håndtere tyngre belastning, vil du sannsynligvis lage en Kubernetes-klynge med Google Kubernetes Engine. Google utviklet verktøyet for å gjøre det enklere å kjøre containere på tvers av flere maskiner. Når belastningen øker, vil Kubernetes snurre opp flere forekomster, og når belastningen minker, vil den spinne dem ned.

Du kan også velge å ikke velge ved å velge en mer automatisert bane som Google Cloud Functions. Google håndterer beslutningene om maskinstørrelse for deg og fakturerer deg etter arbeidsenheten som appen din gjør. Du betaler for hver kundes klikk med brøkdeler av en cent i stedet for å skrive en sjekk for måneden.

Det er verdt å merke seg at Google har automatisert andre aspekter av prosessen ved å tilby rabatter på vedvarende bruk som starter etter at maskinen din er brukt i en viss prosentandel av en måned. Andre skyselskaper krever at du forplikter deg til store biter av tid for å få rabatt. Googles rabatter vises automatisk når maskinen din kjører i en varig periode.

Trinn 5: Sett opp referanser for koden din

En av de største utfordringene er å finne riktig størrelse for maskinen din, og Google tilbyr så mange alternativer at det kan være skremmende. Jeg har funnet betydelige forskjeller i ytelse som det er vanskelig å forutse. Ved å doble antall virtuelle CPU-er, reduseres sjelden behandlingstiden halvparten. Hvis du legger til mer RAM, kan du øke hastigheten på maskinen din dramatisk - til du allerede har lagt til nok til å holde dataene dine trygt.

Den eneste løsningen er å måle programvaren din med forskjellige konfigurasjoner. Et av de beste alternativene for Google Compute Engine er måten du kan mikse og matche mengden RAM, CPU og diskplass. Du er ikke begrenset til forhåndsdefinerte kombinasjoner. Så begynn å eksperimentere i begynnelsen, og husk å prøve igjen noen få måneder i tilfelle belastningen har skiftet og ytelsen din er annerledes.

Trinn 6: Velg et datalagringsalternativ

Google Cloud tilbyr minst fem forskjellige alternativer for å holde dataene dine trygge, og deretter kan du alltid implementere din egen datalagringsmodell ved hjelp av sine rå vedvarende disker. Det første spørsmålet er om du vil bruke strukturen til en relasjonsdatabase som er bygget for å svare på SQL, eller om du vil ha mer ustrukturert frihet til NoSQL og objektlagring.

For SQL har Google pakket sin egen API rundt MySQL og Postgres. Google Cloud SQL automatiserer sikkerhetskopier, replikering, oppdateringer og oppdateringer. Du skriver koden som kobles til disse populære open source-alternativene. Google Cloud Spanner leverer også relasjonsstruktur, men på svært høye servicenivåer. Google gir det dristige løftet om "99,999% tilgjengelighets-SLA, ingen planlagt nedetid og sikkerhet på bedriftsnivå." (Se anmeldelse.)

Hvis du er mer interessert i mindre strukturerte dokumentmodeller fra NoSQL, er det flere alternativer, inkludert Cloud Storage, Cloud Bigtable og Cloud Datastore.

Og det er viktig å sjekke ut Firebase, en sofistikert database som gjør mye mer enn bare å lagre informasjonen. Den samler mye av infrastrukturen du trenger for å autentisere brukere, synkronisere dataene med klienter, servere filer, sende varsler og holde et øye med hva appen din og brukerne gjør.

Alle disse alternativene faktureres etter mengden data du legger i dem. Jo mer du lagrer, jo mer betaler du.

Trinn 7: Bla gjennom Google API-er

Det er nesten skummelt hvor mange APIer som er tilgjengelige for Google Cloud. Selvfølgelig er de fleste av dem tilgjengelige for alle datamaskiner på Internett, men det er vanskelig å ikke tro (eller bare forestille seg) at de bare fungerer bedre i Googles sky.

Mange av disse API-ene kan spare deg for mye tid på programmering. Google Maps leverer for eksempel detaljerte kart fra hele verden for webapplikasjonen din. Forebygging av datatap vil skyte gjennom dokumentene dine og flagge (eller til og med redigere) sensitiv informasjon som personnummer. Det er dusinvis av alternativer, og alle regner med hvor ofte og hvor mye du bruker dem. Mange har gratis nivåer av tjenester for mindre applikasjoner og nye kunder.

Trinn 8: Sjekk ut dataanalyseringsverktøyene

Google har utvidet dramatisk antall dataanalyse- og maskinlæringsverktøy ved å bruke all intern forskning. Du kan ta alle dataene du lagrer, og deretter bruke Googles Big Data- eller Cloud AI-verktøy for å finne mønstre og signaler.

Mange av disse verktøyene er gode for å analysere alle dataene som er samlet inn fra applikasjonen din. Hvis du selger varer, kan du se etter sammenhenger mellom kundene og varene de velger, slik at du kan gjøre en bedre jobb med å forutse kundenes behov. Hvis en del av landet elsker en farge, vil algoritmene hjelpe deg med å oppdage dette - og mindre åpenbare forbindelser også.

Disse verktøyene krever ikke at du bruker App Engine eller Compute Engine for å samle informasjonen. Du kan laste opp data fra andre systemer.

Trinn 9: Velg regioner og soner

For mange grunnleggende jobber er det ingen grunn til å bekymre seg mye for den faktiske plasseringen til datamaskinen som gjør jobben. Det kalles skyen, ikke sant? Metaforen antyder at vi ikke trenger å bry oss nøyaktig hvor magien skjer.

Noen jobber krever imidlertid oppmerksomhet av juridiske eller praktiske årsaker. Google har datasentre på alle kontinenter unntatt Antarktis og Afrika. Hvert kontinent er delt inn i "regioner" og hver region er delt inn i "soner." Hvis du vil være sikker på at livet vil fortsette når problemer rammer, bør du leie maskiner i separate soner. Hvis du vil være enda sikrere, bør du kjøre applikasjonene dine i flere regioner.

De enkelte produktene og verktøyene fungerer generelt overalt, men det er noen hull. App Engine er for eksempel bare tilgjengelig i tre av de fire amerikanske regionene. Andre produkter som Cloud Storage gir deg muligheten til en eller flere regioner.

Trinn 10: Begynn å kode

Slutt å lese og kom deg ut av redaktøren. Hvis du skal bruke App Engine, vil det ikke ta lang tid å få noe i gang. Hvis du leier råvare, har du tilgang på rotnivå til distroen du velger om noen få minutter. Det tar bare noen få sekunder å slå på en enorm mengde databehandlingskraft. Hva du gjør med denne kraften er opp til deg.

$config[zx-auto] not found$config[zx-overlay] not found