Voister förklarar
Vad innebär devops och hur gynnar det verksamheten?
Devops, mikrotjänster, containrar blir allt vanligare i utvecklingssammanhang. Den som inte kan svara direkt på kasten i sin marknad och hänga med i sin digitala miljö löper stor risk att duka under. Voister förklarar hur devops gör din utveckling agilare än någonsin.
Devops är en sammanslagning av orden development och operations och det är precis vad det handlar om: att låta utveckling och drift gå hand i hand. Devops är enkelt förklarat en arbetsmetodik där man i projektgrupper inkluderar så brett det går, det vill säga både utvecklare och driftpersonal. På så vis integrerar man fler perspektiv redan från början av ett utvecklingsprojekt och slipper (förhoppningsvis!) kontroverser när det är dags för verksamheten att ta över produkten. Det blir en form av kontinuerlig utveckling och kontinuerlig implementation.
Så hur hänger det ihop med mikrotjänster?
Förr i tiden, och fortfarande i en del sammanhang, skapade man exempelvis appar i en enda stor kodmassa. Med tiden insåg att man att det blev ohanterligt att hantera den typen av kod eftersom en ändring någonstans kunde påverka resten av koden. Därför började man dela in den i flera delar för att lättare kunna ändra på koden. Mikrotjänster är inget annat än att man delat upp koden i ännu fler och mindre delar som fungerar självständigt vilket gör att du kan göra förändringar utan att behöva ta ner hela applikationen. I och med att kodsnuttarna är mindre och mer lättöverskådliga kan du enkelt göra en kopia du jobbar med för att sedan bara skicka upp den biten när den är uppdaterad. På så vis kan du rulla ut små uppdateringar veckovis eller till och med dagligen utan behöva ta ner hela tjänsten.
Var kommer containrar in i bilden?
Tänk på containrar som ett fordon. De är chassit och motorn som du sedan kan fylla med vad som helst, exempelvis mikrotjänster. Containrar är enkelt förklarat en superoptimerad virtuell maskin som är helt fristående för underliggande lager och bara tar de resurser i anspråk som är absolut nödvändigt för koden att fungera. Det gör att det går oerhört snabbt att skapa, starta och rensa ut när resurserna inte längre behövs. Just eftersom de är oberoende är det lätt att flytta dem och skala upp dem mellan olika plattformar, vilket är perfekt för dig som ibland köper kapacitet på kran vid exempelvis trafiktoppar.
Vilken är då kopplingen till molnet?
Ett extremt agilt designperspektiv där drift är naturligt planerat och implementerat för redan från start, mikrotjänster som snabbt kan designas om utan nertid och containrar som gör tjänsterna plattformsoberoende – allt är som bäddat för att skala upp och ner i volym, det vill säga precis det som är molntjänsternas styrka. Allt du behöver är ett bra manageringssystem och plattform för att hålla koll på alla dina containrar, exempelvis Docker, Kubernetes eller någon lösning från exempelvis AWS (Elastic container service), Microsoft (Azure container service) eller Google (Container engine). Sedan har du ett system som enkelt klarar av att följa en föränderlig marknad med föränderliga behov.
Vem ska använda devops?
Kör du en stor statisk databas med ett väl fungerande system på egna servrar? Då kanske du inte ska bygga om den det första du gör. Om du däremot ska utveckla en cloud native-app som snabbt ska kunna skala upp och ner, och där det är av vikt att det i princip inte finns någon nertid, kan det definitivt vara något för dig. Man behöver inte heller lägga in alla fungerande applikationer i containrar utan det kan vara värt att testa metodiken och tekniken i en kommande app för att vänja sig vid arbetssättet.
Tre företag som gått över till devops
Amazon
När Amazon (handelssajten) bytte till Amazon Web Services gick man samtidigt över till devops och slapp problemen med att i förväg försöka dimensionera sin egen hårdvara för att klara daglig drift men också extra trafiklaster, exempelvis vid julhandeln. Ett år efter flytten skickade man upp ny kod i snitt var tolfte sekund.
Netflix
Vem vill se en film som hackar mitt i? Stabilitet är A och O för filmtjänsterna och därför gick Netflix tidigt över till devops. Där har man byggt in så kallade kaosapor av olika slag som åker runt i systemet och dödar mikrotjänsterna för att stabiliteten ständigt ska vara ett fokus för utvecklarna. Idag lanserar man ny kod tusentals gånger per dag utan att användarna störs.
För att behålla ledartröjan bland sociala medier är Facebook beroende av att ha en fungerande tjänst och att kunna rulla ut regelbundna uppdateringar. För mobilapparna innebär detta varannan vecka medan sajten uppdateras ännu mer regelbundet.
Läs mer om Devops i Voisters intervju med Red Hats tekniska chef Ted Schönbeck här.
Källa: Techbeacon.com
Läs mer om ämnet: