Vad betyder Cloud Native egentligen?

0
326
Nadya C/Shutterstock.com < /figur>

Cloud Native -program använder fördelarna med moderna molninfrastrukturkomponenter för att underlätta snabba skalbara distributioner. En “ molnfödd ” systemet skapas från kombinationen av flera oberoende attribut. Det kommer att ha en hög grad av automatisering och avkoppling av beroende, vilket resulterar i överlägsen motståndskraft mot förändringar på grund av kodreleaser och miljöuppgraderingar.

Mer än bara tekniska egenskaper knyter de flesta kommentatorer också molnet till den implementerande organisationen &# 8217; s arbetsmetoder och tankesätt. Molnfödda organisationer kommer aktivt att omfamna molnet för hela sin stack och ser det som en särskiljande egenskap hos deras erbjudande. Detta står i kontrast till leverantörer som ser molnet bara som ett datacenter som driver deras tjänster.

Varierande definitioner

Som med många vanliga molnord, får du olika svar på vad som är molnmässigt beroende på vem du frågar.

Microsoft säger att termen beskriver system som omfattar snabba förändringar i stor skala , och motståndskraft. ” För VMWare är det en metod för att bygga och köra applikationer som utnyttjar fördelarna med molnberäkningsmodellen. ” Oracle belyser hur molnmotiv bygger på “ distribuerad dator. ”

RedHat är mer specifik och säger att moln-native-appar är en samling små, oberoende och löst kopplade tjänster ” som levererar “ välkänt affärsvärde. ” Den sista delen erkänner att molnet native handlar om mer än programvara. Ett framgångsrikt molnsystem bör leverera konkreta resultat för ditt företag, oavsett om det är ökad kundnöjdhet eller minskad tid att starta.

Annonsering

Cloud Native Computing Foundations stadga definierar konceptet som ett paradigm för löst kopplade system som är motståndskraftiga, hanterbara och observerbara. ” De underlättar “ ändringar med hög inverkan [görs] ofta och förutsägbart med minimal ansträngning. ”

Cloud Native Traits

Det finns ingen enda väg till att bli molnfödd. Terminologin är flexibel och baserad på kvalitativa egenskaper. Molnsystem kommer vanligtvis att baseras på mikrotjänster som distribueras med en containerorkester, med hjälp av automatiserade distributionsflöden för att flytta kod genom pipelinen. Den faktiska implementeringen är upp till varje organisation att bestämma.

Denna modell gör det möjligt att snabbt starta nya förändringar utan att tappa kontrollen. Utvecklare gör ändringar, driver dem till ett förråd och låter deras CI -pipeline distribuera en ny version till produktionen. Automatisering minskar risken för fel och ger utvecklare större möjlighet att koncentrera sig på att skriva ny kod.

Den resulterande hastigheten i utvecklingscykeln ökar den totala produktiviteten och ger fler funktioner till användare på kortare tid. Detta underlättar kundnöjdhet och engagemang och ger en bild av en ständigt utvecklad kodbas där buggar korrigeras strax efter upptäckten.

Cloud native låter inte maskinen göra jobbet ” fastän. En annan grundläggande princip är observerbarhet, tanken på att system ska visa sitt interna tillstånd på ett sätt som är lättillgängligt för driftsteam.

Effektiv övervakning, spårning och loggning ger dig synlighet när problem uppstår . Ett observerbart system visar informationen du behöver för att lösa problem. Du använder din infrastrukturs introspektiva funktioner för att avslöja livscykeln för förfrågningar, från ditt nät till enskilda tjänster och tillbaka igen.

Separation av oro

Ett kritiskt kännetecken för molnsystem är stark avkoppling. Detta går hand i hand med mikrotjänstmodellen. Tjänster måste kunna stå fristående utan hårda beroende av varandra. Detta ökar motståndskraften och gör det lättare att byta ut delar av din stack i framtiden.

Annonsering

Varje funktionell enhet blir sin egen mikrotjänst som kommunicerar med de andra genom tydligt definierade API: er. Det låter dig separera enskilda delar av ditt system, hjälper utvecklare att fokusera på sitt specifika område och låter dig placera starkare skyddsåtgärder kring kritiska tjänster i produktionen. Din autentiseringstjänst kan dra nytta av en större grad av isolering än dina allmänna webbbehållare.

Avkopplingstjänster gör dem mer skalbara så att ditt system är bättre rustat för att svara på förändringar i användarnas efterfrågan. Om mediatäckning ökar antalet användarregistreringar kan du snabbt lägga till fler instanser av din back-up för registreringstjänster för att hantera den extra trafiken. Ett konventionellt tillvägagångssätt med en monolitisk app på en virtuell dator eller bare metal-server kunde inte anpassa sig på detta sätt.

Affärsfördelarna

Att bli molnfödd har ofta betydande effekter på organisationen som helhet. Förbättrad skalbarhet kan sänka kostnaderna, öka tjänstens drifttid och hålla infrastrukturen ett steg före användarna. Allt leder till en mer konkurrenskraftig plattform som är tillräckligt smidig för att svara på marknadsförändringar.

Äldre system kanske inte har några etablerade förfaranden för distribution, istället förlitar sig på en periodisk sammanställning av de senaste förändringarna i produktionen. Detta gör det omöjligt att reagera på kundfrågor. I ett molnsystem kan du reagera på biljetter när de kommer in. Koden skickas vanligtvis direkt efter en sammanslagning, så att du kan göra förbättringar på några minuter istället för dagar.

Cloud native system kan också vara mer attraktiva för utvecklare, vilket gör det lättare att anställa topptalanger. Att använda teknik som Docker och Kubernetes i produktion visar ett engagemang för moderna arbetsflöden som gör den dagliga utvecklingen mindre krävande. Möjligheten att komma åt högutbildade ingenjörer resulterar vanligtvis i bättre produkter som byggts på kortare tid, vilket skapar en självbärande cykel som startar en uppgång i organisationens tillväxt.

Cloud Native och DevOps

Molnsystem är ofta resultatet av goda DevOps -metoder. Medan DevOps beskriver samspelet mellan utvecklings- och driftsteam, fokuserar molnmässigt på resultatet av den interaktionen och dess inverkan på den bredare verksamheten.

Annonsering

DevOps -cykeln håller en snäv slinga mellan planering, byggande , testa, släppa och övervaka. Det ökar utvecklingshastigheten genom att tydligt definiera händelseförloppet i en ny funktioner livscykel. Att respektera DevOps principer ökar sannolikheten för att ett system kommer att vara en effektiv molnmedborgare.

De två har en tendens att uppstå från varandra. Om du medvetet praktiserar ett av villkoren, rider du förmodligen redan på fördelarna med det andra. Cloud native system distribueras automatiskt på en vanlig kadens; effektiv användning av DevOps-verktyg som CI/CD-pipelines är det logiska sättet att implementera snabba utvecklingsflöden.

What About “ Cloud Enabled? &# 8221;

Du kan stöta på system som beskrivs som “ molnaktiverade ” i stället för molnet native. Denna term avser vanligtvis applikationer som övergår från traditionella utvecklings- och distributionsmodeller till molnalternativ.

Ett molnaktiverat system körs med molninfrastruktur men är kanske inte helt frikopplat och modulärt. Om du har en gammal monolit är det vanligtvis relativt enkelt att packa den som en Docker -behållare och starta den i molnet. Detta ger några omedelbara fördelar, inklusive möjligheten till automatiska distributioner och en viss skalbarhet.

Applikationsskiktet är dock fortfarande en monolit. En refaktoreringsperiod kommer att behövas för att dela stapeln i frikopplade mikrotjänster som kan skalas var för sig. En containeriserad monolit kan inte erbjuda samma grad av motståndskraft som ett system som har designats och byggts för molnet.

Annonsering

Molnaktivering av ett system är det första steget i att göra det till en infödd molnmedborgare. Det kan följas av ett “ molnbaserat ” tillvägagångssätt, där applikationen övervägande körs i molnet med en hög grad av separering av tjänster. Det kan fortfarande finnas några obligatoriska band mellan komponenter eller länkar tillbaka till äldre infrastruktur. Arkitekturen kan kallas “ cloud native ” när dessa har eliminerats.

Sammanfattning

Ett molnbaserat system är ett system som använder allt molnet kan erbjuda för att påskynda utveckling, automatisera distributioner och öka motståndskraften och observerbarhet. Det är resultatet av en organisatorisk investering i moderna verktyg och metoder, som gör det möjligt för team att skicka kod snabbare och ge ytterligare värde till verksamheten.

Att bli molnfödd händer inte över en natt. Beroende på systemets storlek kan det vara acceptabelt att sikta på ett “ molnaktiverat ” eller “ molnbaserad ” närma sig först. Genom att gradvis utveckla din arkitektur kan du plocka låghängande frukt och övervaka effekterna av individuella förändringar, vilket ger dig inblick i om dina ansträngningar lönar sig.