From 2 days to 2 seconds - the birth of DevOps Dan North - - PowerPoint PPT Presentation

from 2 days to 2 seconds the birth of devops
SMART_READER_LITE
LIVE PREVIEW

From 2 days to 2 seconds - the birth of DevOps Dan North - - PowerPoint PPT Presentation

From 2 days to 2 seconds - the birth of DevOps Dan North @tastapod Once upon a time Once upon a time back in the mists of 2005 Once upon a time back in the mists of 2005 before Continuous Delivery Once upon a time


slide-1
SLIDE 1

From 2½ days to 2½ seconds

  • the birth of DevOps

Dan North @tastapod

slide-2
SLIDE 2

Once upon a time…

slide-3
SLIDE 3

Once upon a time…

back in the mists of 2005

slide-4
SLIDE 4

Once upon a time…

back in the mists of 2005 before Continuous Delivery™

slide-5
SLIDE 5

Once upon a time…

back in the mists of 2005 before Continuous Delivery™ a team was stuck.

slide-6
SLIDE 6

Once upon a time…

back in the mists of 2005 before Continuous Delivery™ a team was stuck. This is their story.

slide-7
SLIDE 7

Life was tough back then

slide-8
SLIDE 8

Life was tough back then

2½ days to deploy a build

slide-9
SLIDE 9

Life was tough back then

2½ days to deploy a build Testers were frustrated!

slide-10
SLIDE 10

Life was tough back then

2½ days to deploy a build Testers were frustrated! Developers were frustrated!

slide-11
SLIDE 11

Life was tough back then

2½ days to deploy a build Testers were frustrated! Developers were frustrated! We were bottlenecked at testing :(

slide-12
SLIDE 12

Life was tough back then

2½ days to deploy a build Testers were frustrated! Developers were frustrated! We were bottlenecked at testing :( actually bottlenecked at deployment!

slide-13
SLIDE 13

The causes were

  • bvious
slide-14
SLIDE 14

The causes were

  • bvious

“snowflake” environments

slide-15
SLIDE 15

The causes were

  • bvious

“snowflake” environments too many moving parts

slide-16
SLIDE 16

The causes were

  • bvious

“snowflake” environments too many moving parts multiple teams

slide-17
SLIDE 17

The causes were

  • bvious

“snowflake” environments too many moving parts multiple teams contention for resources

slide-18
SLIDE 18

Where do we start?

slide-19
SLIDE 19

Where do we start?

"Elevate the constraint"

slide-20
SLIDE 20

Where do we start?

"Elevate the constraint" Engage Operations as customer

slide-21
SLIDE 21

Where do we start?

"Elevate the constraint" Engage Operations as customer Understand the manual steps

slide-22
SLIDE 22

Where do we start?

"Elevate the constraint" Engage Operations as customer Understand the manual steps Identify where time is being sunk

slide-23
SLIDE 23

Where do we start?

"Elevate the constraint" Engage Operations as customer Understand the manual steps Identify where time is being sunk Focus on the outcome, not the steps

slide-24
SLIDE 24

Idea: Treat the container as code

slide-25
SLIDE 25

Idea: Treat the container as code

WebLogic is just XML

slide-26
SLIDE 26

Idea: Treat the container as code

WebLogic is just XML so create templates

slide-27
SLIDE 27

Idea: Treat the container as code

WebLogic is just XML so create templates and version-control them!

slide-28
SLIDE 28

Idea: Treat deployment as code

slide-29
SLIDE 29

Idea: Treat deployment as code

Instrument the UI tools

slide-30
SLIDE 30

Idea: Treat deployment as code

Instrument the UI tools Learn the command-line tools

slide-31
SLIDE 31

Idea: Build the app as a single entity

slide-32
SLIDE 32

Idea: Build the app as a single entity

Single Deployable Artefact

slide-33
SLIDE 33

Idea: Make all the servers look the same

slide-34
SLIDE 34

Idea: Make all the servers look the same

Same OS

slide-35
SLIDE 35

Idea: Make all the servers look the same

Same OS Same packages

slide-36
SLIDE 36

Idea: Make all the servers look the same

Same OS Same packages Same versions

slide-37
SLIDE 37

Idea: Make all the servers look the same

Same OS Same packages Same versions Same(ish) settings

slide-38
SLIDE 38

Idea: Automate the entire deployment

slide-39
SLIDE 39

Idea: Automate the entire deployment

Conan the Deployer!

slide-40
SLIDE 40

Conan the Deployer

slide-41
SLIDE 41

Conan the Deployer

  • Create a new container instance
slide-42
SLIDE 42

Conan the Deployer

  • Create a new container instance
  • Generate container config
slide-43
SLIDE 43

Conan the Deployer

  • Create a new container instance
  • Generate container config
  • Deploy container config
slide-44
SLIDE 44

Conan the Deployer

  • Create a new container instance
  • Generate container config
  • Deploy container config
  • Bring up the master node
slide-45
SLIDE 45

Conan the Deployer

  • Create a new container instance
  • Generate container config
  • Deploy container config
  • Bring up the master node
  • Deploy the app into the node
slide-46
SLIDE 46

Conan the Deployer

  • Create a new container instance
  • Generate container config
  • Deploy container config
  • Bring up the master node
  • Deploy the app into the node
  • Bring up the app
slide-47
SLIDE 47

Conan the Deployer

  • Create a new container instance
  • Generate container config
  • Deploy container config
  • Bring up the master node
  • Deploy the app into the node
  • Bring up the app
  • Smoke test the environment
slide-48
SLIDE 48

This was the big breakthrough

slide-49
SLIDE 49

This was the big breakthrough

Any build into any environment

slide-50
SLIDE 50

This was the big breakthrough

Any build into any environment 2½ days down to 25 minutes!

slide-51
SLIDE 51

This was the big breakthrough

Any build into any environment 2½ days down to 25 minutes! Deterministically.

slide-52
SLIDE 52

Then optimise…

slide-53
SLIDE 53

Then optimise…

Blue-Green Deployments

slide-54
SLIDE 54

Then optimise…

Blue-Green Deployments Create self-serve deployments

slide-55
SLIDE 55

Then optimise…

Blue-Green Deployments Create self-serve deployments Sub-second cutover, during office hours!

slide-56
SLIDE 56

What did we learn?

slide-57
SLIDE 57

What did we learn?

Focus on the outcome

slide-58
SLIDE 58

What did we learn?

Focus on the outcome Focus on the current bottleneck

slide-59
SLIDE 59

What did we learn?

Focus on the outcome Focus on the current bottleneck You don't "have an investment" in hardware

slide-60
SLIDE 60

What did we learn?

Focus on the outcome Focus on the current bottleneck You don't "have an investment" in hardware DevOps requires collaboration

slide-61
SLIDE 61

Epilogue

slide-62
SLIDE 62

Epilogue

Sam Newman develops DbDeploy

slide-63
SLIDE 63

Epilogue

Sam Newman develops DbDeploy Jez Humble and Chris Read (and me :) describe the Build Production Line

slide-64
SLIDE 64

Epilogue

Sam Newman develops DbDeploy Jez Humble and Chris Read (and me :) describe the Build Production Line Chris Read co-creates DevOps Days

slide-65
SLIDE 65

Epilogue

Sam Newman develops DbDeploy Jez Humble and Chris Read (and me :) describe the Build Production Line Chris Read co-creates DevOps Days Julian Simpson becomes the Build Doctor

slide-66
SLIDE 66

Epilogue

Sam Newman develops DbDeploy Jez Humble and Chris Read (and me :) describe the Build Production Line Chris Read co-creates DevOps Days Julian Simpson becomes the Build Doctor Jez Humble and Dave Farley write “Continuous Delivery” and win Jolt Award

slide-67
SLIDE 67

Whither DevOps?

slide-68
SLIDE 68

Whither DevOps?

Commoditise All the Things!

slide-69
SLIDE 69

Whither DevOps?

Commoditise All the Things! Cloud All the Things!

slide-70
SLIDE 70

Whither DevOps?

Commoditise All the Things! Cloud All the Things! Hug a SysAdmin today

slide-71
SLIDE 71

Whither DevOps?

Commoditise All the Things! Cloud All the Things! Hug a SysAdmin today And remember: A “build team” is still an anti-pattern!

slide-72
SLIDE 72

Thanks for listening

@tastapod dan@dannorth.net http:/ /dannorth.net

  • Don’

t forget to vote!