+ - 0:00:00
Notes for current slide
Notes for next slide

DevOps je pro všechny

DataScript Morning Talk

1

Michal

Na začátek

  • Dotazy do chatu nebo osobně na konci

  • Prezentace na taborsky.cz/slides

  • Pište na michal@taborsky.cz

  • Twitter @whizz

2

Co mají společného DevOps inženýr a jednorožec?

3

Kořeny DevOps

4

Štíhlá výroba

Toyota

angl. Lean manufacturing, aka Toyota Production System

5
  • vyrábí se jen to zákazník chce

Štíhlá výroba

Toyota

angl. Lean manufacturing, aka Toyota Production System

  • minimalizace plýtvání
5
  • vyrábí se jen to zákazník chce

Štíhlá výroba

Toyota

angl. Lean manufacturing, aka Toyota Production System

  • minimalizace plýtvání
    • nadbytečné zásoby materiálu
5
  • vyrábí se jen to zákazník chce

Paralely s IT vývojem

  • nenasazený vývoj

Štíhlá výroba

Toyota

angl. Lean manufacturing, aka Toyota Production System

  • minimalizace plýtvání
    • nadbytečné zásoby materiálu
    • čekání mezi fázemi
5
  • vyrábí se jen to zákazník chce

Paralely s IT vývojem

  • nenasazený vývoj
  • nadbytečný proces, který nezvyšuje hodnotu

Štíhlá výroba

Toyota

angl. Lean manufacturing, aka Toyota Production System

  • minimalizace plýtvání
    • nadbytečné zásoby materiálu
    • čekání mezi fázemi
    • nadbytečná výroba
5
  • vyrábí se jen to zákazník chce

Paralely s IT vývojem

  • nenasazený vývoj
  • nadbytečný proces, který nezvyšuje hodnotu
  • nadbytečné featury

Štíhlá výroba

Toyota

angl. Lean manufacturing, aka Toyota Production System

  • minimalizace plýtvání
    • nadbytečné zásoby materiálu
    • čekání mezi fázemi
    • nadbytečná výroba
    • kontrola kvality
5
  • vyrábí se jen to zákazník chce

Paralely s IT vývojem

  • nenasazený vývoj
  • nadbytečný proces, který nezvyšuje hodnotu
  • nadbytečné featury
  • manuální testování, schvalování

Štíhlá výroba

Toyota

angl. Lean manufacturing, aka Toyota Production System

  • minimalizace plýtvání
    • nadbytečné zásoby materiálu
    • čekání mezi fázemi
    • nadbytečná výroba
    • kontrola kvality
    • opravy
5
  • vyrábí se jen to zákazník chce

Paralely s IT vývojem

  • nenasazený vývoj
  • nadbytečný proces, který nezvyšuje hodnotu
  • nadbytečné featury
  • manuální testování, schvalování

  • defekty - časová prodleva mezi vývojem nasazením ztěžujes řešení

Štíhlá výroba

Toyota

angl. Lean manufacturing, aka Toyota Production System

  • minimalizace plýtvání
    • nadbytečné zásoby materiálu
    • čekání mezi fázemi
    • nadbytečná výroba
    • kontrola kvality
    • opravy
    • neefektivní pohyby
5
  • vyrábí se jen to zákazník chce

Paralely s IT vývojem

  • nenasazený vývoj
  • nadbytečný proces, který nezvyšuje hodnotu
  • nadbytečné featury
  • manuální testování, schvalování

  • defekty - časová prodleva mezi vývojem nasazením ztěžujes řešení

  • přepínání úkolů

  • čekání na třetí osobu

Štíhlá výroba

Toyota

angl. Lean manufacturing, aka Toyota Production System

  • minimalizace plýtvání
    • nadbytečné zásoby materiálu
    • čekání mezi fázemi
    • nadbytečná výroba
    • kontrola kvality
    • opravy
    • neefektivní pohyby
    • nevyužitá kreativita pracovníků
5
  • vyrábí se jen to zákazník chce

Paralely s IT vývojem

  • nenasazený vývoj
  • nadbytečný proces, který nezvyšuje hodnotu
  • nadbytečné featury
  • manuální testování, schvalování

  • defekty - časová prodleva mezi vývojem nasazením ztěžujes řešení

  • přepínání úkolů

  • čekání na třetí osobu

    • nestandardní a manuální práce, hrdinství

Teorie omezení

Chain angl. Theory of Constraints

6
  • Každý proces má v danou chvíli jedno nebo pár omezení, které mu brání v tom dosahovat vyššího výkonu.
  • Řetěz silný jako jeho nejslabší článek
  • program evaluation and review technique/critical path method (PERT/CPM)

Teorie omezení

Chain angl. Theory of Constraints

  • Pět kroků:
    1. Najdi aktuální omezení
6
  • Každý proces má v danou chvíli jedno nebo pár omezení, které mu brání v tom dosahovat vyššího výkonu.
  • Řetěz silný jako jeho nejslabší článek
  • program evaluation and review technique/critical path method (PERT/CPM)

Teorie omezení

Chain angl. Theory of Constraints

  • Pět kroků:
    1. Najdi aktuální omezení
    2. Zjisti co ho způsobuje a rozhodni jak to změnit
6
  • Každý proces má v danou chvíli jedno nebo pár omezení, které mu brání v tom dosahovat vyššího výkonu.
  • Řetěz silný jako jeho nejslabší článek
  • program evaluation and review technique/critical path method (PERT/CPM)

Teorie omezení

Chain angl. Theory of Constraints

  • Pět kroků:
    1. Najdi aktuální omezení
    2. Zjisti co ho způsobuje a rozhodni jak to změnit
    3. Vše přizpůsob tomuto rozhodnutí
6
  • Každý proces má v danou chvíli jedno nebo pár omezení, které mu brání v tom dosahovat vyššího výkonu.
  • Řetěz silný jako jeho nejslabší článek
  • program evaluation and review technique/critical path method (PERT/CPM)

Teorie omezení

Chain angl. Theory of Constraints

  • Pět kroků:
    1. Najdi aktuální omezení
    2. Zjisti co ho způsobuje a rozhodni jak to změnit
    3. Vše přizpůsob tomuto rozhodnutí
    4. Odstraň omezení
6
  • Každý proces má v danou chvíli jedno nebo pár omezení, které mu brání v tom dosahovat vyššího výkonu.
  • Řetěz silný jako jeho nejslabší článek
  • program evaluation and review technique/critical path method (PERT/CPM)

Teorie omezení

Chain angl. Theory of Constraints

  • Pět kroků:
    1. Najdi aktuální omezení
    2. Zjisti co ho způsobuje a rozhodni jak to změnit
    3. Vše přizpůsob tomuto rozhodnutí
    4. Odstraň omezení
    5. Jdi na krok 1
6
  • Každý proces má v danou chvíli jedno nebo pár omezení, které mu brání v tom dosahovat vyššího výkonu.
  • Řetěz silný jako jeho nejslabší článek
  • program evaluation and review technique/critical path method (PERT/CPM)

Teorie omezení

Chain angl. Theory of Constraints

  • Pět kroků:
    1. Najdi aktuální omezení
    2. Zjisti co ho způsobuje a rozhodni jak to změnit
    3. Vše přizpůsob tomuto rozhodnutí
    4. Odstraň omezení
    5. Jdi na krok 1
  • Eliyahu M. Goldratt: The Goal (1984)
6
  • Každý proces má v danou chvíli jedno nebo pár omezení, které mu brání v tom dosahovat vyššího výkonu.
  • Řetěz silný jako jeho nejslabší článek
  • program evaluation and review technique/critical path method (PERT/CPM)
7
  • 2001

History

Stručná historie

  • Velocity 2009 - John Allspaw, Paul Hammond: “10 Deploys per Day: Dev and Ops Cooperation at Flickr”
8

History

Stručná historie

  • Velocity 2009 - John Allspaw, Paul Hammond: “10 Deploys per Day: Dev and Ops Cooperation at Flickr”

  • DevOpsDays Gent 2009 - Patrick Debois

8

History

Stručná historie

  • Velocity 2009 - John Allspaw, Paul Hammond: “10 Deploys per Day: Dev and Ops Cooperation at Flickr”

  • DevOpsDays Gent 2009 - Patrick Debois

  • DevOpsDays Mountain View 2010 - Andrew Shafer, Patrick Debois, John Willis

8

 Tři způsoby

9

The Phoenix Project

Hodnotový tok (Value stream)

Klasická výroba

“Sekvence činností v rámci organizace vedoucí k dodání výrobku nebo služby zákazníkovi, obsahující tok materiálu a informací.“

DevOps

“Proces nutný k převedu business hypotézy v technologickou službu, která přinese hodnotu zákazníkovi.“

10
  • Hodnota vzniká pouze když je kód v produkci
  • Musí běžet spolehlivě bez výpadků

Flow

Tok práce

  • zviditelnění práce
11

Flow

Tok práce

  • zviditelnění práceKanban Board
11
  • Tok práce od Dev do Ops
  • Tech práce je neviditelná, narozdíl od výroby
  • Mapujeme celý hodnotový tok
  • Done je v produkci

Flow

Tok práce

  • zviditelnění práce

  • omezení rozpracovanosti (WIP)

12
  • David J. Andersen, author of Kanban book: “Stop starting. Start finishing.”

Flow

Tok práce

  • zviditelnění práce

  • omezení rozpracovanosti (WIP)

  • zmenšení dávek

12
  • David J. Andersen, author of Kanban book: “Stop starting. Start finishing.”
  • velké dávky - (výroba) pokud se objeví problém v dávce, je potřeba ji celou předělat
  • Štíhlá výroba - ideál je dávka velkosti 1
  • Continuous delivery

Flow

Tok práce

  • zviditelnění práce

  • omezení rozpracovanosti (WIP)

  • zmenšení dávek

Dávky

12
  • David J. Andersen, author of Kanban book: “Stop starting. Start finishing.”
  • velké dávky - (výroba) pokud se objeví problém v dávce, je potřeba ji celou předělat
  • Štíhlá výroba - ideál je dávka velkosti 1
  • Continuous delivery

Flow

Tok práce

  • zviditelnění práce

  • omezení rozpracovanosti (WIP)

  • zmenšení dávek

  • snížení předávek

13
  • Automatizace manuálních kroků (CI/CD)
  • Reorganizace týmů
  • Architektura - Microservices

Flow

Tok práce

  • zviditelnění práce

  • omezení rozpracovanosti (WIP)

  • zmenšení dávek

  • snížení předávek

  • kvalita práce

13
  • Automatizace manuálních kroků (CI/CD)
  • Reorganizace týmů
  • Architektura - Microservices
  • Automatické testy
  • Integrace testování do vývoje

Flow

Tok práce

  • zviditelnění práce

  • omezení rozpracovanosti (WIP)

  • zmenšení dávek

  • snížení předávek

  • kvalita práce

  • kontinuální zlepšování a omezení plýtvání

13
  • Automatizace manuálních kroků (CI/CD)
  • Reorganizace týmů
  • Architektura - Microservices
  • Automatické testy
  • Integrace testování do vývoje

Feedback

Zpětná vazba

14
  • První způsob - tok z leva do prava
  • Druhý způsob - rychlý a konstatní feedback z prava do leva
  • Cílem je bezpečnější a odolnější systém

Feedback

Zpětná vazba

  • komplexní systémy
14
  • První způsob - tok z leva do prava
  • Druhý způsob - rychlý a konstatní feedback z prava do leva
  • Cílem je bezpečnější a odolnější systém
  • Nevejde se nikomu do hlavy
  • Stejná akce nemusí mít stejný výsledek

Feedback

Zpětná vazba

  • komplexní systémy

  • monitoring

14
  • První způsob - tok z leva do prava
  • Druhý způsob - rychlý a konstatní feedback z prava do leva
  • Cílem je bezpečnější a odolnější systém
  • Nevejde se nikomu do hlavy
  • Stejná akce nemusí mít stejný výsledek
  • detailní monitoring všeho, viditelný všem
  • constinuous delivery snižuje riziko a zjednodušuje diagnostiku

Feedback

Zpětná vazba

  • komplexní systémy

  • monitoring

  • Andon

14
  • První způsob - tok z leva do prava
  • Druhý způsob - rychlý a konstatní feedback z prava do leva
  • Cílem je bezpečnější a odolnější systém
  • Nevejde se nikomu do hlavy
  • Stejná akce nemusí mít stejný výsledek
  • detailní monitoring všeho, viditelný všem
  • constinuous delivery snižuje riziko a zjednodušuje diagnostiku
  • každý ho může použít, není za to postih
  • když se rychle nepodaří vyřešit, zastaví se linka
  • všichni pracují na odstranění závady

Feedback

Zpětná vazba

  • komplexní systémy

  • monitoring

  • Andon

  • kvalita vzniká u zdroje

14
  • První způsob - tok z leva do prava
  • Druhý způsob - rychlý a konstatní feedback z prava do leva
  • Cílem je bezpečnější a odolnější systém
  • Nevejde se nikomu do hlavy
  • Stejná akce nemusí mít stejný výsledek
  • detailní monitoring všeho, viditelný všem
  • constinuous delivery snižuje riziko a zjednodušuje diagnostiku
  • každý ho může použít, není za to postih
  • když se rychle nepodaří vyřešit, zastaví se linka
  • všichni pracují na odstranění závady
  • automatizace menuálních kroků (vytváření zdrojů, cfg management)
  • peer review místo komisí a vytváření rozsáhlé dokumentace

Feedback

Zpětná vazba

  • komplexní systémy

  • monitoring

  • Andon

  • kvalita vzniká u zdroje

  • optimalizace pro následné kroky

14
  • První způsob - tok z leva do prava
  • Druhý způsob - rychlý a konstatní feedback z prava do leva
  • Cílem je bezpečnější a odolnější systém
  • Nevejde se nikomu do hlavy
  • Stejná akce nemusí mít stejný výsledek
  • detailní monitoring všeho, viditelný všem
  • constinuous delivery snižuje riziko a zjednodušuje diagnostiku
  • každý ho může použít, není za to postih
  • když se rychle nepodaří vyřešit, zastaví se linka
  • všichni pracují na odstranění závady
  • automatizace menuálních kroků (vytváření zdrojů, cfg management)
  • peer review místo komisí a vytváření rozsáhlé dokumentace
  • empatie pro kolegy

Learning

Učení a experimentování

15
  • kdo dělá chyby je potrestán, kdo upozorňuje na problémy je “potížista”

Learning

Učení a experimentování

  • vyhrazený čas na vylepšení a učení

  • kaizen blitz

15
  • kdo dělá chyby je potrestán, kdo upozorňuje na problémy je “potížista”

Learning

Učení a experimentování

  • vyhrazený čas na vylepšení a učení

  • kaizen blitz

  • řešení incidentů a “lidská chyba”

15
  • kdo dělá chyby je potrestán, kdo upozorňuje na problémy je “potížista”
  • medicína - potrestání viníka, chyby se nereportují
  • letectví - zkoumání systému
  • veřejné post-mortem
  • 1987: Alcoa 2% z 90000 pracovníků zraněno ročně - za 10 let 95% snížení

Learning

Učení a experimentování

  • vyhrazený čas na vylepšení a učení

  • kaizen blitz

  • řešení incidentů a “lidská chyba”

  • game day

15
  • kdo dělá chyby je potrestán, kdo upozorňuje na problémy je “potížista”
  • medicína - potrestání viníka, chyby se nereportují
  • letectví - zkoumání systému
  • veřejné post-mortem
  • 1987: Alcoa 2% z 90000 pracovníků zraněno ročně - za 10 let 95% snížení
  • Aisin Seiki Global - matrace, při nižší poptávce si hrají s jednou linkou ze dvou a hledají optimalizace

Learning

Učení a experimentování

  • vyhrazený čas na vylepšení a učení

  • kaizen blitz

  • řešení incidentů a “lidská chyba”

  • game day

  • chaos engineering

15
  • kdo dělá chyby je potrestán, kdo upozorňuje na problémy je “potížista”
  • medicína - potrestání viníka, chyby se nereportují
  • letectví - zkoumání systému
  • veřejné post-mortem
  • 1987: Alcoa 2% z 90000 pracovníků zraněno ročně - za 10 let 95% snížení
  • Aisin Seiki Global - matrace, při nižší poptávce si hrají s jednou linkou ze dvou a hledají optimalizace
  • vkládání zpoždění a chybových stavů
  • vypínání komponent

Tři způsoby

1. Tok práce

2. Zpětná vazba

3. Učení a experimentování

16

Jak začít

17
18

Auto devops

19

Jak začít

20
  • Courtney Kissler, Nordstrom 2011
  • Byli optimalizování na náklady - outsourcing
  • 97% úspěšnost v odhadech
  • Mobilní appka

    • vytvoření separátního týmu
    • odpoutání od firemní kadence releasů
    • integrace testování a operations
    • kontinuální plánování, jeden backlog
    • zdvojnásobili dodadné featury, chyby na polovinu
  • Value stream mapping

  • Transformační tým
  • Linkedin 2011 - InVersion, 2 měsíce

Tools

Nástroje

  • cloud
  • kontejnery
  • lambda funkce
  • configuration management
  • infrastructure as code
  • continuous integration
  • monitoring, alerting
  • microservices architektura
21

Legal

DevOps vs. legislativa

“Nemůžeme použít DevOps přístup, protože SOX nám nařizuje, že vývojáři nesmí mít přístup do produkce a administrátoři nesmí mít přístup ke kódu.”

22

SOX ve skutečnosti říká, že se nesmí nic nasadit do produkce bez nezávislého reviews

Legal

Tradiční přístup

  • Vytvoří se release team
  • Vývojáři dokončují práci ve fázi “připraveno pro nasazení”
  • Release team vytváří softwarové artefakty (balíčky)
  • Operations balíček nainstalují

Výsledek

  • Nasazuje se jednou za kvartál
  • Pokaždé je to stejně prů… švih
23

Základní problém: release team nedostatečně rozumí změnám (protože nemluví se zákazníkem)

Legal

DevOps přístup

  • Proces nasazení je plně automatický
  • Bez zásahu obsluhy
  • Součást pipeline i povinný review krok
  • Vše je auditované

Výsledek

  • Nasazuje se kdykoliv je to potřeba
24

Mistake

Časté chyby

25

Mistake

Časté chyby

  • Soustředění hlavně na nástroje
25
  • bez změny organizace a kultury to nejde

Mistake

Časté chyby

  • Soustředění hlavně na nástroje

  • Zaměření na rychlost

25
  • bez změny organizace a kultury to nejde
  • cílem je spíše agilita, eliminace plýtvání

Mistake

Časté chyby

  • Soustředění hlavně na nástroje

  • Zaměření na rychlost

  • Potlačení kontinuálního zlepšování

25
  • bez změny organizace a kultury to nejde
  • cílem je spíše agilita, eliminace plýtvání

Mistake

Časté chyby

  • Soustředění hlavně na nástroje

  • Zaměření na rychlost

  • Potlačení kontinuálního zlepšování

  • Nedostatek upřímnosti a sebereflexe

25
  • bez změny organizace a kultury to nejde
  • cílem je spíše agilita, eliminace plýtvání
    1. den 50%, 2. 90%, 3. 99%, 4. už jen poslední chybka
  • odteď už to pojede a doženeme to

Mistake

Časté chyby

  • Soustředění hlavně na nástroje

  • Zaměření na rychlost

  • Potlačení kontinuálního zlepšování

  • Nedostatek upřímnosti a sebereflexe

  • Předpoklad, že změna je snadná

25
  • bez změny organizace a kultury to nejde
  • cílem je spíše agilita, eliminace plýtvání
    1. den 50%, 2. 90%, 3. 99%, 4. už jen poslední chybka
  • odteď už to pojede a doženeme to

Co mají společného DevOps inženýr a jednorožec?

26

Phoenix Project

 Zdroje

  • Velocity 2009: Allspaw, Hammond: 10+ deploys per day
  • 2019 Accelerate State of DevOps Report

Knihy

  • The Phoenix Project
  • DevOps Handbook
  • The Goal
  • The Mythical Man-Month
27

Kontakt a prezentace

  • taborsky.cz/slides nebo jděte přímo přes QR kód.

Kurz “DevOps - od teorie k praxi“

  • 2.–3. března
  • 27.–28. dubna

Kontakt

  • michal@taborsky.cz
  • @whizz
28

Michal

Na začátek

  • Dotazy do chatu nebo osobně na konci

  • Prezentace na taborsky.cz/slides

  • Pište na michal@taborsky.cz

  • Twitter @whizz

2
Paused

Help

Keyboard shortcuts

↑, ←, Pg Up, k Go to previous slide
↓, →, Pg Dn, Space, j Go to next slide
Home Go to first slide
End Go to last slide
Number + Return Go to specific slide
b / m / f Toggle blackout / mirrored / fullscreen mode
c Clone slideshow
p Toggle presenter mode
t Restart the presentation timer
?, h Toggle this help
Esc Back to slideshow