close

DevOps

Gå till navigering Gå till sök

DevOps ( engelsk akronym för utveckling - utveckling - och operationer - operationer -) är en uppsättning metoder som grupperar mjukvaruutveckling ( Dev ) och IT-drift ( Ops ). Dess mål är att påskynda mjukvaruutvecklingens livscykel och tillhandahålla kontinuerlig leverans av hög kvalitet. DevOps är ett komplement till agil mjukvaruutveckling; Detta beror på att många av funktionerna i DevOps kommer från Agile-metoden.

Det huvudsakliga kännetecknet för DevOps-rörelsen är att aktivt förespråka automatisering och övervakning i alla steg av mjukvarukonstruktionen, från integration , testning, driftsättning till driftsättning och infrastrukturhantering . DevOps strävar efter kortare utvecklingscykler, högre distributionsfrekvens, mer effektiva releaser, i nära linje med affärsmålen. [ 1 ]​ [ 2 ]​ [ 3 ]​ [ 4 ]

Definitioner och historik

Image
Illustration som visar DevOps som skärningspunkten mellan utveckling, teknikdrift och kvalitet (QA)

På Agile 2008 Toronto-konferensen introducerade Yhens Wasna och Patrick Debois termen i sitt föredrag om "Agil Infrastructure". [ 5 ] Från och med 2009 har termen DevOps ständigt främjats och tagits till mer allmän användning genom en serie "devopsdays", [ 6 ] som startade i Belgien och nu har spridit sig till Europa även i andra länder. [ 7 ]

Termen DevOps har använts i många olika sammanhang. [ 8 ]

En definition som föreslagits av Bass, Weber och Zhu är:

DevOps är en uppsättning praxis som syftar till att minska tiden mellan att en ändring genomförs i en applikation och att ändringen sätts i normal produktion, samtidigt som den säkerställer hög kvalitet. [ 9 ]

Under det kommande decenniet utvecklades också mer tangentiella DevOps-initiativ som OpsDev, [ 10 ] WinOps, [ 11 ] och BizDevOps. [ 12 ]

DevOps-verktyg

Eftersom DevOps är tänkt att vara ett tvärfunktionellt sätt att arbeta, finns det uppsättningar (eller " verktygskedjor ") med flera verktyg istället för ett enda DevOps-verktyg. [ 13 ] Sådana DevOps-verktyg förväntas passa in i en eller flera av dessa kategorier, vilket återspeglar nyckelaspekter av utvecklings- och leveransprocessen: [ 14 ] ​[ 15 ]

  1. Kod: kodutveckling och granskning, verktyg för källkodshantering, kodsammanslagning
  2. Bygg: Verktyg för kontinuerlig integration , Byggstatus
  3. Test – Löpande testverktyg som ger feedback om affärsrisker
  4. Paket: artefaktförråd , distribution före applikationsdistribution
  5. Release - förändringshantering, releasegodkännanden, releaseautomatisering
  6. Konfigurera - infrastrukturkonfiguration och -hantering, Infrastruktur som kod
  7. Monitor: övervakning av applikationsprestanda, slutanvändarupplevelse

Vissa kategorier är viktigare i en DevOps-verktygskedja än andra; speciellt kontinuerlig integration (t.ex. Jenkins ) och infrastruktur som kod (t.ex. Puppet ). [ 16 ]​ [ 17 ]

Relationer och andra tillvägagångssätt

Agile

Behovet av DevOps uppstod från den växande framgången med agil mjukvaruutveckling, eftersom det ledde till att organisationer ville släppa sin mjukvara snabbare och oftare. När de försökte övervinna den påfrestning som detta lade på deras processer för releasehantering, var de tvungna att anta mönster som automatisering av programutgåvor, verktyg för kontinuerlig integration och kontinuerlig leverans . [ 18 ]

Kontinuerlig leverans

Kontinuerlig leverans och DevOps har gemensamma mål och används ofta tillsammans, men det finns subtila skillnader. [ 19 ]​ [ 20 ]

Medan kontinuerlig leverans är fokuserad på att automatisera processer för mjukvaruleverans , är DevOps också fokuserat på organisatoriska förändringar för att stödja ett rikt samarbete mellan de många funktionerna som är involverade. [ 19 ]

DevOps och kontinuerlig leverans delar en gemensam grund i agila metoder och lätttänkande: små, frekventa förändringar med fokuserat värde för slutkunden. [ 21 ]

ArchOps

ArchOps är en förlängning av DevOps som ökar abstraktionsnivån genom att prioritera programvaruarkitekturartefakter framför källkod för distribution och drift av mjukvarulösningar. [ 22 ] ArchOps slår fast att arkitekturmodeller är förstklassiga enheter inom utveckling, driftsättning och drift av mjukvarulösningar.

DataOps

Den kontinuerliga leveransen och DevOps-applikationen för dataanalys har fått namnet DataOps. DataOps strävar efter att integrera datateknik, dataintegration, datakvalitet, datasäkerhet och datasekretess med verksamheten. [ 23 ]​ Den tillämpar principer för DevOps, agil utveckling och statistisk processkontroll, som används i lean manufacturing, för att förbättra cykeltiden för att extrahera värde från dataanalys. [ 24 ]

DevSecOps

DevSecOps är en förstärkning av DevOps för att tillåta säkerhetspraxis att integreras i DevOps-metoden. Den traditionella modellen för ett centraliserat säkerhetsteam måste anta en federerad modell som tillåter varje leveransteam att överväga de korrekta säkerhetskontrollerna i sina DevOps-praxis.

Mål

DevOps mål omfattar hela leveransprocessen. De inkluderar:

  • Förbättrad distributionsfrekvens;
  • Snabbare utsläpp till produktion;
  • Låg felfrekvens vid generering av nya versioner;
  • Kortare leveranstid mellan versioner;
  • Snabbare implementeringstid (om en ny version har inkonsekvenser).
  • Reaktionshastighet om en distribuerad version misslyckas

Enkla processer blir mer och mer standard och dynamiska, med hjälp av en DevOps-metod. [ 25 ] DevOps syftar till att maximera förutsägbarheten, effektiviteten, säkerheten och underhållsbarheten för operativa processer. Mycket ofta stödjer automatisering eller robotisering av processer detta mål.

DevOps-integration fokuserar på produktleverans, användartestning (UAT), kontinuerlig testning, kvalitetstestning, funktionsutveckling och underhållsutgåvor för att förbättra tillförlitlighet och säkerhet och ge snabbare utvecklings- och distributionscykler. Många av idéerna (och människorna) som är involverade i DevOps kommer från rörelserna för företagssystemhantering och agil mjukvaruutveckling. [ 26 ]

Mikrotjänster

Denna typ av tillvägagångssätt tillåter digitala företag att tillhandahålla hög tillgänglighet och stabilitet till sina applikationer; Detta beror på att alla delar av applikationerna (databas, back-end, front-end, etc.) är oberoende och om en av dem misslyckas betyder det inte att hela informationssystemet har problem. Istället kommer de andra tjänsterna att fortsätta att fungera medan den berörda komponenten återställs. [ 27 ] Skaparna av DevOps kräver mikrotjänster för att optimera sin utveckling, och lämnar monolitiska arkitekturer bakom sig, eftersom tjänstearkitekturen blir modulär och segmenterad för att minimera risker och förbättra sättet applikationer och deras komponenter distribueras.integration med de olika lagren.

Se även

Referenser

  1. ^ Loukides, Mike (7 juni 2012). "Vad är DevOps?" . O'Reilly Radar (på amerikansk engelska) . Hämtad 2 november 2017 . 
  2. ^ "The Rise of DevOps" . www.somic.org (på amerikansk engelska) . Hämtad 2 november 2017 . 
  3. ^ "DevOps Culture (Del 1) - IT-revolution" . IT-revolution (på amerikansk engelska) . 1 maj 2012 . Hämtad 2 november 2017 . 
  4. ^ "DevOps blandar dev, ops, agile, moln, öppen källkod och affärer — 451 CAOS Theory" . blogs.the451group.com . Arkiverad från originalet den 14 september 2015 . Hämtad 2 november 2017 . 
  5. Debois, Patrick. "Agil 2008 Toronto: Presentation av agil infrastruktur och drift" . www.jedi.be. _ Hämtad 3 november 2017 . 
  6. ^ "Devopsdays Ghent 2009" . www.devopsdays.org . Hämtad 3 november 2017 . 
  7. ^ "DevOpsDays" . www.devopsdays.org (på amerikansk engelska) . Hämtad 3 november 2017 . 
  8. "Överraskning! Bred överenskommelse om definitionen av DevOps - DevOps.com» . DevOps.com (på amerikansk engelska) . 13 maj 2015 . Hämtad 3 november 2017 . 
  9. Felaktiga "Bokkällor" med självhänvisning ( hjälp ) . Wikipedia (på engelska) . Hämtad 3 november 2017 . |url=  
  10. "DevOps Must Also Mean OpsDev - DevOps.com" . DevOps.com (på amerikansk engelska) . 27 oktober 2015 . Hämtad 3 november 2017 . 
  11. Weinberger, Matt. "Microsofts studie visar att alla vill ha DevOps men kultur är en utmaning . " Computerworld (på engelska) . Hämtad 3 november 2017 . 
  12. ^ "Varför DevOps inte fungerar för företagsapplikationer - DZone DevOps" . dzone.com (på engelska) . Hämtad 3 november 2017 . 
  13. Gartners marknadstrender: DevOps – inte en marknad, utan verktygscentrerad filosofi som stödjer en kontinuerlig leveransvärdekedja (rapport). Gartner. 18 februari 2015.
  14. dev2ops. "Integrera DevOps-verktyg i en Service Delivery Platform (VIDEO) - dev2ops" . dev2ops (på amerikansk engelska) . Arkiverad från originalet den 8 februari 2014 . Hämtad 3 november 2017 . 
  15. ^ "Utforska HELA DevOps-verktygskedjan för (moln)team" . InfoQ . Hämtad 3 november 2017 . 
  16. "DevOps Stack on a Shoestring Budget - DevOps.com" . DevOps.com (på amerikansk engelska) . 5 februari 2016. Arkiverad från originalet 27 maj 2016 . Hämtad 3 november 2017 . 
  17. "Stärkare DevOps-kultur med docka och lösdrivare" . Puppet (på engelska) . Arkiverad från originalet den 29 januari 2016 . Hämtad 3 november 2017 . 
  18. Bästa praxis för ändring, konfiguration och releasehantering (rapport). Gartner. 14 juli 2010.
  19. a b Felaktiga "Bokkällor" med självhänvisning ( hjälp ) . Wikipedia (på engelska) . Hämtad 3 november 2017 . |url=  
  20. "Förhållandet mellan utvecklare och kontinuerlig leverans: En konversation med Jez Humble Of ThoughtWorks" . Forrester (på amerikansk engelska) . 9 september 2011 . Hämtad 3 november 2017 . 
  21. "Vi behöver mer smidig IT nu!" . Dr Dobbs . Hämtad 3 november 2017 . 
  22. Castellanos, Camilo; Correal, Dario (15 september 2018). "Utföra arkitektoniska modeller för Big Data Analytics" . Lecture Notes in Computer Science 11048 : 364-371. doi : 10.1007/978-3-030-00761-4_24 . 
  23. "Från DevOps till DataOps, av Andy Palmer - Tamr Inc." . Tamr Inc. (på amerikansk engelska) . 7 maj 2015 . Hämtad 3 november 2017 . 
  24. DataKitchen (15 mars 2017). "Hur man blir en stigande stjärna med dataanalys" . data-ops . Hämtad 3 november 2017 . 
  25. ^ "Ny relik: Vad är DevOps - förklarat" . New Relic (på engelska) . Hämtad 3 november 2017 . 
  26. ^ "Agil infrastruktur" . InfoQ . Hämtad 3 november 2017 . 
  27. «Hur du förklarar DevOps-fördelarna för din chef (2018-utgåvan) | Clickittech» . www.clickittech.com (på amerikansk engelska) . Hämtad 9 augusti 2018 . 

Externa länkar