49
PRAGMATISK AUTOMATISERING

Pragmatisk automatisering

Embed Size (px)

Citation preview

Page 1: Pragmatisk automatisering

PRAGMATISK AUTOMATISERING

Page 2: Pragmatisk automatisering

Knut Haugen(38)

Systemutvikler, script kiddie,

devopser, automaton,

kaffedrikker, syklist.

Page 3: Pragmatisk automatisering

TIDLIG 2012

Page 4: Pragmatisk automatisering

~20 applikasjoner i java

Page 5: Pragmatisk automatisering

10-15 deploys /måned

Page 6: Pragmatisk automatisering

Frykt og avsky

Page 7: Pragmatisk automatisering

Treg puppet

Page 8: Pragmatisk automatisering

Manuelle steg

Page 9: Pragmatisk automatisering

SYMPTOMER

Page 10: Pragmatisk automatisering

Treghet

Page 11: Pragmatisk automatisering

Vanskelig å bruke

Page 12: Pragmatisk automatisering

“Forresten, husk å…”

Page 13: Pragmatisk automatisering

Feilende deploys

Page 14: Pragmatisk automatisering

VALUE STREAM MAPPING

Tips #1

Page 15: Pragmatisk automatisering

APP DEPLOYreleas

e

7m 52s

copy

15s

M

commit

40s

M

puppet

9m

M

restart

4m

M

21m 47s

Page 16: Pragmatisk automatisering

«If you don't already know how to manage something by hand, don't try to automate it.»

@KnittyNerd #puppetconf

Page 17: Pragmatisk automatisering

Gjør tilstanden i dag synlig og kjent

Page 18: Pragmatisk automatisering

Ha kontroll på miljøet

Page 19: Pragmatisk automatisering

Finn ut hvor du vil

Page 20: Pragmatisk automatisering

MÅL

Page 21: Pragmatisk automatisering

MER REALISTISK MÅL?

Page 22: Pragmatisk automatisering

VIRKELIGHETEN

Page 23: Pragmatisk automatisering

VÅRE MÅLEnklere og tryggere

deploy

Alle kan gjøre det

Deploye oftere og raskere

(FØRST)

Page 24: Pragmatisk automatisering

VÅRE MÅLBedre kontroll med apper

Raskere infrastrukturendringer

Lettere å jobbe med apper

Page 25: Pragmatisk automatisering

MVPTips #2

Page 26: Pragmatisk automatisering

MVPMinst mulig

automatisering

Test det på brukere

Få feedback

Page 27: Pragmatisk automatisering

Bruke produkt eller lage et selv?

Page 28: Pragmatisk automatisering

KRAV TIL VERKTØYLite dependencies

Mange bør kjenne det

Finnes overalt

Nok features til at du ikke hemmes

Page 29: Pragmatisk automatisering

Bash =

“Alle systemer som virker, har litt bash i seg”

- Simen Graff “gaffa” Jenssen

Page 30: Pragmatisk automatisering

SCRIPT

Tips #3

Page 31: Pragmatisk automatisering

ITERASJONER

Tips #4

Page 32: Pragmatisk automatisering

ITERASJONER1. Små features

2. Test på utviklerne

3. Ta det i bruk

4. GOTO 1.

Page 33: Pragmatisk automatisering

APP DEPLOY

release

7m 52s

deploy

3m30s

11m 22s

Page 34: Pragmatisk automatisering

ETTERPÅ

Page 35: Pragmatisk automatisering

APP DEPLOY

release

2m 15s

deploy

1m 20s

3m 35s

Page 36: Pragmatisk automatisering

RETROSPEKTIV

Tips #5

Page 37: Pragmatisk automatisering

EVOLUSJON

Tips #6

Page 38: Pragmatisk automatisering

EVOLUSJON

Nye script dukker opp i takt med endringer og

behov.

Page 39: Pragmatisk automatisering

Flere stacker

Page 40: Pragmatisk automatisering

UNIFORMITET

Tips #8

Page 41: Pragmatisk automatisering

UNIFORMITETLike muligheter for alle

til å deploye overalt

Enklere å huske

Mindre vedlikehold

Page 42: Pragmatisk automatisering

UNIFORMITETrelease-script

location/status-script

devmiljø-script

Page 43: Pragmatisk automatisering

KONVENSJON OVER KONFIGURASJON

Tips #9

Page 44: Pragmatisk automatisering

2015

Page 45: Pragmatisk automatisering

48 applikasjoner i java

9 ruby

12 nodejs

Page 46: Pragmatisk automatisering

60-200 deploys per uke

Page 47: Pragmatisk automatisering

VEIEN VIDEREAuto-deploy til utvalgte miljøer

Automatisk oppesjekk etter deploy

Docker, med zero downtime containere

Apper melder seg inn i varnish selv

Page 48: Pragmatisk automatisering

TAKK!

Page 49: Pragmatisk automatisering

[email protected]

@knuthaug