Skip to main content
Key Takeaways

Trend eller tradition?: DevOps är inte längre en banbrytande trend utan ett etablerat sätt att bedriva verksamhet, djupt förankrat i arbetssätten hos både utvecklare och IT-proffs. Detta markerar utvecklingen från en radikal idé till en etablerad metodik.

DevOps-filosofin: DevOps innebär en sammanslagning av utveckling och drift för att påskynda leveransen och förbättra kvaliteten på programvara. Det bygger på en kultur av samarbete och kontinuerlig utveckling, med målet att bryta ner traditionella stuprör.

Teknisk utveckling stöder DevOps: Framväxten av containerisering, molnbaserade ekosystem och infrastruktur som kod (IaC) stärkte DevOps-rörelsen och tillförde större smidighet och effektivitet i processerna för programvaruutveckling och driftsättning.

Säkerheten får en plats vid bordet: Framväxten av DevSecOps integrerar säkerhet i de tidiga faserna av programvaruutvecklingen och understryker förskjutningen mot att prioritera tidig upptäckt av sårbarheter för att minimera risker.

Kultur och verktyg går hand i hand: Även om DevOps drar stor nytta av tekniska framsteg som AI och maskininlärning kretsar dess kärna kring att främja en positiv kultur som prioriterar människor, samarbete och kontinuerliga förbättringar.

När slutar en tekniktrend att vara en trend och blir helt enkelt det normala sättet att bedriva verksamhet?

Vi skulle kunna ägna mycket tid åt att diskutera just denna brytpunkt – det finns inget ”korrekt” svar på frågan. Det räcker att säga att när en ”trend” är inne på sitt andra decennium – vilket är fallet med DevOps-kultur och DevOps-metoder – då är det helt enkelt så saker görs. (Enligt de flesta beskrivningar började DevOps ta sin nuvarande form omkring 2007.)

I vår ultimata guide till DevOps definierade vi begreppet så här: ”DevOps är en uppsättning metoder och filosofier som kombinerar programvaruutveckling (Dev) och IT-drift (Ops), med målet att förkorta systemutvecklingens livscykel och möjliggöra kontinuerlig leverans med hög programvarukvalitet. Det är ett arbetssätt som betonar samarbete, kommunikation och integration mellan utvecklare och IT-specialister.”

Continue Reading for Free

Create a free account to finish this article, plus get ongoing access to timely insights and practical resources.

I de tidiga faserna lät detta konstigt och skrämmande – till och med radikalt – för vissa IT-specialister. Nu är det så etablerat att det har blivit vardag. I CD Foundations rapport Tillståndet för CI/CD uppgav 83 % av utvecklarna att de deltar i DevOps-relaterade aktiviteter. Det är faktiskt inte alla, men det börjar verkligen närma sig.

Med det sagt utvecklas DevOps – som är lika mycket en kultur som en viss uppsättning verktyg eller processer – kontinuerligt till sin natur.

I den här artikeln tittar vi på hur vi kom hit – och hur DevOps fortsätter att utvecklas i dag. Först är det viktigt att förstå varför DevOps finns.

Varför är DevOps viktigt?

DevOps kombinerar begreppen ”utveckling” och ”drift” – två väletablerade teknikområden. Det främsta målet med DevOps är att främja en hög grad av integration mellan dessa två viktiga komponenter i ett IT-system, med huvudsakligt fokus på kontinuerlig leverans och kvalitetstestning av programvara. Traditionellt var dessa funktioner separata och isolerade – vilket orsakade flaskhalsar, leveransförseningar, kvalitetsproblem, skuldbeläggning (när saker går fel), säkerhetsbrister och andra problem.

DevOps – både som begrepp men, ännu viktigare, som kultur och arbetssätt – återspeglar behovet av att programvaruorganisationer bygger och levererar kod snabbare och oftare utan att ge avkall på kvalitet, tillförlitlighet eller säkerhet.

Den kraftiga tillväxten för DevOps under det senaste decenniet eller så sammanföll med flera relaterade tekniktrender som möjliggjorde DevOps-metoder och växte fram ur DevOps-principer och DevOps-kultur. Några av de mest anmärkningsvärda faktorerna som ledde fram till denna punkt är:

Containerisering: Vi har sett en ökad användning av Docker och andra verktyg för programvarucontainerisering, vilket har bidragit till att göra applikationer portabla mellan olika plattformar, såsom olika offentliga och privata molnplattformar (inklusive Amazon Web Services, Microsoft Azure och Google Cloud Platform) samt lokal infrastruktur.

Molnbaserat ekosystem: Vi såg en kraftig ökning av applikationsutveckling med molnet som grund, vilket säkerställer skalbarheten hos infrastruktur och tjänster. För att fånga hela det molnbaserade landskapet på en enda plats behöver du en whiteboard stor som en reklamskylt – även i en webbläsare behöver du sannolikt skrolla för att se allt!

Cybersäkerhet: Även om DevOps ursprungligen kan ha fokuserat på en tätare samordning av utvecklings- och driftarbete, tydliggjorde det också behovet av att prioritera säkerhet tidigt i programvaruutvecklingens livscykel (SDLC). DevSecOps växte fram som en framträdande trend, där säkerhet integreras i DevOps-pipelinen i stället för att behandlas som en separat enhet. Detta förbättrade bland annat den tidiga upptäckten av sårbarheter och minimerade riskerna och konsekvenserna i produktion.

Infrastruktur som kod (IaC): DevOps gjorde automatisering till en central del av IT-miljöer, och den trenden var särskilt framträdande på infrastrukturområdet. Infrastrukturhantering hade vanligtvis varit ett mycket manuellt och repetitivt arbete, men introduktionen av infrastruktur som kod (IaC) möjliggjorde effektiva, tillförlitliga och repeterbara mekanismer för att hantera den infrastruktur som programvaruapplikationer körs på.

Kultur: DevOps har aldrig enbart handlat om teknik. I stället syftade det till att prioritera människor och befria dem från onödiga bördor eller problem i arbetet. Som ett resultat bidrog DevOps till ett förnyat fokus på vikten av en sund och icke-toxisk arbetsplatskultur, med betoning på sådant som psykologisk trygghet, skuldfria efteranalyser, gemensamma incitament, kontinuerliga förbättringar och mycket mer.

Artificiell intelligens och maskininlärning: Även om stora språkmodeller (LLM) och generativ AI är oerhört populära just nu är AI/ML definitivt inget nytt. Särskilt maskininlärning har redan använts för sådant som prediktiv analys, feldetektering och processautomatisering i olika DevOps-sammanhang. 

Get regular tech leadership wisdom for delivering better software and systems.

Även om de flesta av mönstren ovan har funnits på plats under ganska lång tid betyder det inte att DevOps har stagnerat. Det verkar vara lika populärt som någonsin – och lika efterfrågat som någonsin ur ett rekryteringsperspektiv. En nylig sökning i hela USA efter tjänster för DevOps-ingenjörer på LinkedIn – en enda jobbtitel bland en mängd potentiellt relevanta roller – resulterade i nästan 5 000 lediga jobb.

I takt med att DevOps har mognat har det fortsatt att utvecklas. Låt oss titta närmare på fem av de mest synliga sätten som DevOps fortsätter att förändras på.

1. Utbredd användning av Kubernetes

När användningen av containrar ökade kraftigt blev det snart uppenbart att DevOps-team behövde ett bättre sätt att hantera allt. Då kom Kubernetes, som blev den ledande standarden inom containerorkestrering och en gemensam plattform (tillgänglig i många distributioner eller varianter) för team som ska hantera sina applikationer och sin infrastruktur.

”Kubernetes och containrar gjorde det möjligt för team att paketera alla nödvändiga miljöer och köra sin kod på en standardiserad plattform, så att driftteamen bara behöver bekymra sig om Kubernetes-plattformens hälsa”, säger Vitor Avancini, teknikchef på AI- och datakonsultföretaget Indicium, till oss.

Kubernetes erbjuder robust infrastruktur för automatisering, nätverk och lagring för molnbaserade arbetsbelastningar. Det är också det som gjorde ett av containeriseringens ursprungliga löften – möjligheten att flytta arbetsbelastningar mellan miljöer utan att i praktiken bygga om dem – mer realistiskt: ”Det gjorde det enklare för driftteamet att kopiera och klistra in många miljöer, eftersom man inte behöver olika miljöer för olika applikationsstackar.”

Det bidrar till att förklara varför ungefär två tredjedelar av organisationerna kör Kubernetes i produktion, enligt Cloud Native Computing Foundations undersökning från 2023, medan ytterligare 18 procent aktivt utvärderar det för produktionsanvändning.

DevOps-verktyg som kan hjälpa: Kubernetes (den ursprungliga distributionen med öppen källkod), samt ett stort utbud av kommersiella och hanterade programvaror för containerhantering.

2. Automatisering finns överallt inom DevOps

Kubernetes är det främsta exemplet på en bredare trend som slog rot under DevOps tidigare dagar: Automatisera allt. 

Det som började som ett meme närmar sig verkligheten, i den bemärkelsen att automatisering verkar finnas överallt i DevOps-, CI/CD- och GitOps-pipelines – från säkerhetsskanningar och QA-granskningar till bygg- och distributionsuppgifter, policytillämpning och mycket mer. Det märks också på det svindlande utbudet av automatiseringsverktyg. Vissa av dem – nämligen verktyg med låg eller ingen kod – kräver inte ens programmeringskunskaper.

”Det kan bli rörigt med all den frihet [DevOps] ger teamen, så verktyg för [automatisering]kan spela en viktig roll för att hålla saker organiserade och styrda”, säger Avancini och påpekar att IaC-verktyg som Terraform fortsätter att spela en betydande roll här.

DevOps-verktyg som kan hjälpa: Terraform, Ansible

Prioritering är en mycket vanlig utmaning, där företag ofta skjuter upp kritiska molnuppgifter som databasoptimering och infrastrukturutveckling till senare kvartal eller till och med till följande år. DevOps-team vill gärna ta itu med dessa problem, men när de väl sätter sig ner gör den enorma mängden uppgifter det ofta svårt att avgöra vilka problem som har störst värde och bör prioriteras.

 

Det är faktiskt därför Zesty utökade sin plattform med handlingsbara insikter som hjälper företag att prioritera och effektivt genomföra de mest värdefulla åtgärderna först. För att kunna prioritera dessa uppgifter effektivt behöver företag tydliga insikter i de tidsmässiga och ekonomiska investeringar som krävs. Plattformar som automatiserar dessa processer är ovärderliga, eftersom de möjliggör bättre beslutsfattande och resursfördelning. DevOps har blivit allt mer medvetet om det värde som plattformar tillför genom automatisering, insyn och handlingsbara rekommendationer.

aviram levy

3. Mikroservicearkitektur finns överallt också

Mikroservicearkitektur – som i grunden innebär att större applikationer delas upp i mindre, fristående komponenter som körs oberoende av varandra men ändå arbetar tillsammans för att bilda det större systemet – är inget nytt. Under många år var tillvägagångssättet dock inte alltid realistiskt för många organisationer.

I dag använder tre fjärdedelar (74 %) av företagen mikroserviceteknik, enligt Gartner, och nästan alla andra (23 %) planerar att göra det inom en snar framtid.

”Mikroserviceteknik gav team möjlighet att välja sina egna verktygsstackar, vilket tidigare krävde att centrala driftteam tillhandahöll olika test- och distributionsmiljöer för utvecklingsteamen”, säger Avancini.

Här kan man hamna i en diskussion om hönan och ägget, eftersom mikroservicearkitektur passar naturligt för containrar och Kubernetes – så mognaden hos den förstnämnda bidrog sannolikt till införandet av den sistnämnda, liksom den allmänna mognaden hos molnbaserad teknik och utveckling. (Helt nya eller ”helt nya”-applikationer som byggs i dag utvecklas oftare för molnbaserade miljöer, där mikroserviceteknik är ett framträdande arkitekturalternativ.)

Mikroservicearkitektur har också gått hand i hand med serverlös databehandling (eller serverlös arkitektur). De är separata men ofta relaterade företeelser – ett enkelt sätt att skilja dem åt är att mikroserviceteknik är ett arkitekturellt tillvägagångssätt för programvarudesign, medan serverlös databehandling är ett arkitekturellt tillvägagångssätt för hur programvaran faktiskt körs.

DevOps-verktyg som kan hjälpa: Prometheus, Compass, AWS Fargate

4. Plattformsutveckling är det nya DevOps (nåja)

Okej, rubriken är något överdriven – plattformsutveckling och DevOps är olika områden, men deras relation fortsätter att växa. Ett anekdotiskt bevis är att Puppets långvariga rapport DevOps-läget hade undertiteln ”Plattformsutvecklingens utveckling” i 2024 års upplaga.

Plattformsutveckling handlar om att bygga interna plattformar – med stort fokus på självbetjäning – för att ge utvecklare och andra tekniker allt de behöver för att bygga applikationer och tjänster. Precis som inom DevOps ligger stort fokus på infrastruktursautomatisering, standardiserade verktygskedjor och arbetsflöden och så vidare. Att tillhandahålla en utvecklings- eller testmiljö bör till exempel inte kräva att man skickar en begäran till ett helt separat team för infrastrukturhantering.

”[E]n stor trend är plattformsutveckling, som kommer att tillhandahålla verktygen och metoderna så att utvecklingsteam inte bara kan utveckla utan även testa, övervaka och återställa applikationer” på ett enhetligt och konsekvent sätt, säger Avancini, utan att regelbundet behöva be driftansvariga om den infrastruktur och de tjänster som krävs.

Avancini påpekar att DevOps också generellt rör sig mot centraliserade processer – vilket först kan verka kontraintuitivt med tanke på den organiska utvecklingen av många DevOps-kulturer. Men plattformsutveckling kan betraktas ur detta perspektiv: DevOps innebär inte anarki. Utvecklare och andra IT-specialister behöver fortfarande verktyg, infrastruktur och – ja – skyddsräcken.

I det här sammanhanget stöter man ibland också på termerna intern utvecklarplattform (IDP) och integrerad utvecklingsmiljö (IDE).

DevOps-verktyg som kan hjälpa: Kubernetes, Humanitec

5. AI kommer att spela en allt större roll inom DevOps

Nya AI-tillämpningar – senast representerade av den nya kategorin LLM-baserade generativa AI-tillämpningar som på senare tid har fångat mycket uppmärksamhet – kommer sannolikt också att hitta in i DevOps-processer och verktygskedjor. Det finns till och med ett begrepp för denna kombination: AIOps.

Det kanske enklaste sättet att tänka på var AI kommer att vara användbart är ur det bredare perspektivet automatisering: Om något kan automatiseras, eller om mänsklig intelligens och arbetsinsats på något sätt kan utnyttjas, kan AI spela en roll – och kommer sannolikt att göra det.

”AI-assistans kommer att spela en viktig roll inom DevOps, främst när det gäller stöd vid kodgranskning, kodkvalitet och säkerhetsanalys samt att automatiskt beskriva alla effekter som ny kod kan få när den distribueras”, säger Avancini.

Det finns faktiskt en lång lista över möjliga användningsområden, varav många fortfarande håller på att ta form. Räkna med att utvecklarnas produktivitet och säkerhetsautomatisering kommer att vara två av de större fokusområdena inom den närmaste framtiden.

DevOps-verktyg som kan hjälpa till: GitHub Copilot 

Slutsatsen

DevOps-kulturen och DevOps-metoderna har bestått tidens test – men det betyder inte att de är statiska. Vilka är de senaste DevOps-trenderna i din organisation? Vart ser du att DevOps är på väg under de kommande åren? Prenumerera på The CTO Clubs nyhetsbrev för fler branschnyheter och diskussioner!