Presentasjon med slide How can we know when a system is working well
DevOpsDays Oslo 2016 - Bouvet Norge blogmask-mobile

DevOpsDays Oslo 2016

Mathias Lidal 
19. sep. 2016

5.-6. september hadde eg gleden av å delta på den første norske DevOpsDays i Oslo. Her er en oppsummering av høydepunktene fra konferansen.

Hva er devops/devopsdays

DevOpsDays er en serie med konferanser som har sin opprinnelse i Agile Conference i Toronto i 2008 der Patrick Dubois postet et forslag til diskusjon om hvordan unngå konflikter mellom utvikling og drift. I 2009 holdt utviklere fra Flick foredraget "10+ Deploys per Day: Dev and Ops Cooperation at Flickr.", dette ga inspirasjon til at Patrick Dubois arrangerte den første DevOpsDays i Ghent samme året. DevOpsDays har deretter blitt en stor serie arrangementer spredd over hele verden. I 2016 er det planlagt til sammen 40 DevOpsDays, inkludert den første i Norge. Devopsdays er beskrive som en "self-organizing conference for DevOps practitioners.". Hoveddelen av deltagerene var personer som var involvert i utvikling eller drift av store systemer og enten benytter DevOps-prinsipper eller ønsker å ta de i bruk. Konferansen vart holdt over to dager. Formatet var likt begge dager, med keynote etterfulgt av andre foredrag og Ignites (lyntaler) fram til lunsj og OpenSpaces resten av dagen. Alle foredragene ble filmet og ligger på youtube:

Foredrag/Ignites

Første dag startet med en keynote fra Mark Burgess, hvor temaet var "How do you know if IT systems are working well". Det naive svaret er at systemet fungerer bra så lenge brukerene er fornøyde, men Mark forklarte på en god måte hvorfor dette ikke nødvendigvis er tilfellet, med basis i "Promise theory".

Presentasjon av sliden How can we know when a system is working well?

Neste foredrag, "A Devops Journey" var en case-studie i hvordan Frende Forsikring i løpet av seks år gikk fra en tradisjonell utviklingsmodell til å ta i bruk prinsipper fra DevOps, fra releaser hver 3. måned midt på natten til en situasjon der hver commit potensielt kan gå direkte til produksjon.

Etter foredragene var det en seksjon med Ignites, lyntaler på eksakt 5 minutter hver. Hver slide ble vist i 15 sekunder så foredragsholderene måtte berre henge med. Den mest minneverdige og underholdene ble holdt av Kjetil Jørgensen-Dahl, med tittelen "How to kill DevOps (in 5 minutes)". Med inspirasjon fra virkelige prosjekt kom han med 5 sikre måter å skyte ned alle forsøk på å innføre DevOps:

  • Lag mest mulig spesialiserte team og plasser i ulike kontorer eller bygninger (gjerne ulike kontinenter hvis det lar seg gjøre)
  • Lag så mange roller som mulig, for å lage flest mulig flaskehalser og øke sannsynligheten for at minst en person er borte til enhver tid
  • Lag detaljerte prosessbeskrivelser, helst manuelle, og bannlys alle forsøk på automatisering
  • Skap en kultur for mistillit, det er alltid mulig å skylde på "de andre"
  • Saboter alle forsøk på tilbakemeldinger

Dag to startet med en keynote fra Kris Buytaert, en av de som started DevOps-bevegelsen. Tittelen var "Devops is a reorg". Hovedpoenget i talen var hvordan innføring av DevOps ikke primært er et teknisk spørsmål, men et organisatorisk.

Den tradisjonelle inndelingen med adskilte team for drift og utvikling medfører at du har to team som har motstridene mål for arbeidet (og grunnlag for bonusene...).

Utviklerene skal lage og lansere ny funksjonalitet, støtte nye platformer og nye rammeverk, kort sagt levere etter funksjonelle krav. Drift skal levere en stabil, skalerbar platform uten unødvendig nedetid, dvs. de ikke-funksjonelle kravene. Dermed vil en automatisk ha et grunnlag for krangler mellom utviklerene, som vil ha ut nye versjoner, og drift som vil ha systemet mest mulig stabilt.

De viktigste momentene å huske ved innføring av DevOps var:

  • Ikke lag et "DevOps-team" og ansett "DevOps engineers" til å fylle det. Da oppnår du bare å legge til et ekstra team i tillegg til de du har fra før av (utvikling og drift). Istedenfor trenger du å lage team som inneholder alle spesialiteter, og plasser de i samme kontor.
  • Ikke lag en prosjektplan for innføring av DevOps ("vi skal gjennomføre DevOps innen 1. mai...")
  • Endringer vil skje sakte i store organisasjoner, men det er fortsatt mulig å gjennomføre endringene hvis du har tålmodighet og klarer å engasjere rett personer. (20-60-20 regelen. 20% er "early adopters", 60% blir med etter kvart, dei siste 20% vil være motstandere av endringer). Finn og overbevis de første 20%, du trenger de til å gjennomføre langsiktige endringer.

Presentasjon av sliden Enterprise Devops


OpenSpaces

Tiden etter lunsj begge dager var satt av til OpenSpaces, uformelle diskusjoner rundt emner som blir foreslått av deltagerene. Det startet med at folk noterte et tema de ville diskutere, og presenterte det raskt i plenum. Deretter stemte alle over hvilke tema de ville bli med på og de mest populære vart fordelt på seks rom og tre tids-slots. Temaene kunne variere fra de reint tekniske (f.eks. microkernels) til hvordan sette opp monitorering eller hvordan kvitte seg med Operations i det heile tatt (#NoOps)

DevOpsDays var alt i alt en veldig interessant konferanse men er nok mest nyttig for de som allerede er involvert i prosjekter som bruker, eller bør bruke, DevOps prinsipper. Den passer ikke så godt for folk som kun ønsker å komme inn i fagområdet.

Det kan ta litt tid før neste DevOpsDays i Norge men for de som er interessert er det ikke mangel på andre DevOpsDays å delta på ellers i Europa.        

Temaer