After Hours: SRE & Chaos Engineering – gjør robust utvikling til en lek!

Onsdag 24. mars arrangerte vi digital After Hours! Tema for kvelden var Site Reliability Engineering (SRE) og Chaos Engineering – to populære teknikker for å øke påliteligheten til systemene vi bygger. Tenker du på å implementere DevOps i praksis, er dette teknikker det er nyttige å kjenne til.

Kvelden startet med en introduksjon til tema av Morten Forfang og foredrag med Casey Rosenthal – tidligere Engineering Manager for Chaos Engineering hos Netflix. Deretter hadde vi to spor med workshop og foredrag. Track 1: Chaos Engineering-workshop med Bjørn Einar Bjartnes fra NRK. Og track 2: erfaringer med SRE hos Elvia av vår egen Øystein Thuen, og lavterskel SRE-prat med Øystein Thuen og våre sjefsingeniører Rustam Mehmandarov og Michael Gfeller. Les mer om workshopen og de ulike foredragene nedenfor.

Faglig program

Introduksjon og felles foredrag

Kl. 17.00 – 17.15
Velkomst og introduksjon til kveldens tema – SRE og Chaos Engineering
Velkomst og introduksjon til kveldens tema. Hva mener vi med Site Reliability Engineering (SRE) og Chaos Engineering? Og hva betyr det?

Portrettbilde av Morten Forfang


Morten Forfang er fagdirektør i Computas AS og forvalter for firmaet nye løsninger innen sky, maskinlæring, iot og big data. Han har en Ph.D. i kunstig intelligens og har jobbet med utvikling av IT-løsninger for det offentlige og private i over to tiår.


Kl. 17.15 – 18.00
Chaos Engineering to Continuous Verification
Almost five years ago I published a manifesto of sorts at https://principlesofchaos.org to define a new discipline in software engineering called Chaos Engineering. It wasn’t about creating chaos, but rather identifying the chaos inherent in a complex system. The other practices that commonly address availability (incident management, alerting, monitoring, disaster recovery, etc) are all reactive: they focus on time to detect, and time to remediate. Chaos Engineering on the other hand is proactive: finding systemic vulnerabilities before they affect customers. Now that Chaos Engineering has high adoption at big tech companies and non-digital native orgs alike, we can look at how the practice is maturing. Our knowledge of systemic properties of complex systems is improving and leading us into a new era of Continuous Verification.

Casey Rosenthal is CEO and cofounder of Verica; formerly the Engineering Manager of the Chaos Engineering Team at Netflix. He has experience with distributed systems, artificial intelligence, translating novel algorithms and academia into working models, and selling a vision of the possible to clients and colleagues alike. His super‐power is transforming misaligned teams into high performance teams, and his personal mission is to help people see that something different, something better, is possible. For fun, he models human behavior using personality profiles in Ruby, Erlang, Elixir, and Prolog.

Track 1: Chaos Engineering

Kl. 18.00 – 20.00
Workshop: Robustifisering av web-tjenester for å håndtere tregheter og feil
(NB! Maks 30 deltakere)
Brukeres tålmodighet med løsninger som ikke virker reduseres i takt med at kvaliteten på nett-tjenester øker. Dagens trender med å flytte tjenester til skyen og å bygge stadig mindre og mer nettverksintense tjenester gjør det stadig mer krevende for oss utviklere å innfri disse forventningene. I denne workshopen vil du lære hvordan du kan simulere tregheter og feil i webapplikasjonen din og å lage strategier for å håndtere disse. Vi eksperimenterer med hvordan endring av innstillinger forandrer oppførselen til en webapplikasjon under last og hvilke kompromisser vi blir tvunget til å inngå.

Av forkunnskaper kreves ikke erfaring med .NET, men du bør ha noe erfaring med å lage tjenester på nett for å få fullt utbytte av workshopen. Vi kommer til å bruke k6 for å lastteste et .NET Core Web API. For robusthetsstrategier vil vi bruke Polly, og vi vil bruke Simmy for feilinjisering. Dette er rød/grønn testing, men for ytelse og robusthet. Du vil lære om SLI (Service Level Indicators), SlO (Service level objectives) og om hvordan du kan formulere slike krav.

Før workshopen må du sette opp utviklingsmiljøet. Dette oppsettet virker på Windows/Mac/Linux med VS Code og Docker. Du kan finne instruksjoner for hvordan du setter det opp her: https://github.com/bjartwolf/bounded-disturbances. Hvis du kommer til punktet «Run and watch web API» og kan kjøre «Intro» k6-testen er du klar. Hvis du skulle få problemer som ikke er forklart i README filen, ta kontakt med meg på bjartnes@gmail.com så ser vi om vi finner ut av det.

Workshopen er tidligere holdt både i inn og utland, blant annet internt i NRK og på DotNext-konferansen. Til høsten blir det en 2-dagers utgave på NDC som går dypere og grundigere inn i problemstillingene.

Bjørn Einar Bjartnes har tidligere jobbet i Computas, men er i dag .NET utvikler i NRK TV, NRKs strømmetjeneste (tv.nrk.no). De siste årene i NRK har han hatt rollen som arkitekt og hatt en spesiell interesse for domenedrevet design og hvordan det henger sammen med å bygge robuste tjenester.

Track 2: Site Reliability Engineering (SRE)

Kl. 18.00 – 18.45
SRE hos Elvia
Elvia har hundrevis av tjenester. Skrevet i mange språk, av mange utviklere. Hvordan overvåker man dette? Og gjør det på en måte som skalerer til mange hundre flere tjenester? Hos Elvia har vi gått for SRE-metodikken fra Google. Vi har standardisert på Prometheus og Grafana og vi har laget et system som enkelt oppretter dashboard og alarmer for alle tjenester. I dette foredraget snakker jeg litt om hva SRE betyr, og mest om hvordan vi bruker det hos Elvia. Det blir også demo av snasne autogenererte dashboard i Grafana.

Øystein Thuen er senior konsulent i Computas med spisskompetanse innenfor DevOps, sikkerhet, drift og overvåkning. Til daglig jobber han som tech lead på plattform-teamet til Elvia. Øystein har kompetanse på en rekke teknologier, produkter, rammeverk og verktøy. Han har spesielt mye erfaring med Kubernetes, Terraform og Azure.


Kl. 18.45 – 19.30
Lavterskel SRE-prat
Vil du vite hva SRE står får eller hvordan kan hverdagen se ut for en som jobber med det? Bli med oss på en lavterskel prat med Rustam Mehmandarov, Øystein Thuen og Michael Gfeller, hvor dere også får mulighet til å stille spørsmål og kommentarer. Dette blir gøy!

Portrettbilde av Rustam Mehmandarov

Rustam Mehmandarov

Chief Engineer

Rustam er sjefsingeniør i Computas. I tillegg er han Java Champion, Google Developer Expert for sky samt jobber med forskning.

Portrettbilde av Michael Gfeller

Michael Gfeller

Chief Engineer

Michael er sjefsingeniør i Computas. Han er spesielt interessert i DevOps og relaterte temaer som en helhetlig moderne tilnærming til programvareutvikling, infrastruktur og modernisering av eksisterende løsninger.