From Dev To Production Sam Newman QCon London 2010 Wednesday, 10 - - PowerPoint PPT Presentation

from dev to production
SMART_READER_LITE
LIVE PREVIEW

From Dev To Production Sam Newman QCon London 2010 Wednesday, 10 - - PowerPoint PPT Presentation

From Dev To Production Sam Newman QCon London 2010 Wednesday, 10 March 2010 Wednesday, 10 March 2010 Wednesday, 10 March 2010 Wednesday, 10 March 2010 Wednesday, 10 March 2010 Wednesday, 10 March 2010 Wednesday, 10 March 2010 Wednesday, 10


slide-1
SLIDE 1

From Dev To Production

Sam Newman QCon London 2010

Wednesday, 10 March 2010
slide-2
SLIDE 2 Wednesday, 10 March 2010
slide-3
SLIDE 3 Wednesday, 10 March 2010
slide-4
SLIDE 4 Wednesday, 10 March 2010
slide-5
SLIDE 5 Wednesday, 10 March 2010
slide-6
SLIDE 6 Wednesday, 10 March 2010
slide-7
SLIDE 7 Wednesday, 10 March 2010
slide-8
SLIDE 8 Wednesday, 10 March 2010
slide-9
SLIDE 9

Development Workstation Production

Wednesday, 10 March 2010
slide-10
SLIDE 10

Development Workstation Production

Wednesday, 10 March 2010
slide-11
SLIDE 11

Development Workstation Production

Wednesday, 10 March 2010
slide-12
SLIDE 12 Wednesday, 10 March 2010
slide-13
SLIDE 13

Building

Wednesday, 10 March 2010
slide-14
SLIDE 14

Configuration Building

Wednesday, 10 March 2010
slide-15
SLIDE 15

Configuration Building Deployment

Wednesday, 10 March 2010
slide-16
SLIDE 16

Automated Testing Configuration Building Deployment

Wednesday, 10 March 2010
slide-17
SLIDE 17

Automated Testing Configuration Building Deployment Monitoring

Wednesday, 10 March 2010
slide-18
SLIDE 18

Logging Automated Testing Configuration Building Deployment Monitoring

Wednesday, 10 March 2010
slide-19
SLIDE 19

Logging Automated Testing Configuration Building Deployment Monitoring Disasters!

Wednesday, 10 March 2010
slide-20
SLIDE 20
  • 1. Building
Wednesday, 10 March 2010
slide-21
SLIDE 21

Development Workstation Production

Wednesday, 10 March 2010
slide-22
SLIDE 22

Development Workstation Production CI

Wednesday, 10 March 2010
slide-23
SLIDE 23

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-24
SLIDE 24

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-25
SLIDE 25

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-26
SLIDE 26

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-27
SLIDE 27

Development Workstation Production CI QA

Build Once, Deploy Everywhere

Wednesday, 10 March 2010
slide-28
SLIDE 28

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-29
SLIDE 29

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-30
SLIDE 30

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-31
SLIDE 31

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-32
SLIDE 32

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-33
SLIDE 33

Development Workstation Production CI QA

Don’t Let Your Build & Deployment Process Become a Series Of Silos

Wednesday, 10 March 2010
slide-34
SLIDE 34 Wednesday, 10 March 2010
slide-35
SLIDE 35 Wednesday, 10 March 2010
slide-36
SLIDE 36

http://www.youtube.com/watch?v=jL13eOXmVjY

Wednesday, 10 March 2010
slide-37
SLIDE 37
  • 2. Configuration
Wednesday, 10 March 2010
slide-38
SLIDE 38

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-39
SLIDE 39

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-40
SLIDE 40

Separate Configuration From Binaries

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-41
SLIDE 41

Separate Configuration From Binaries

Development Workstation Production CI QA Configuration Source

Wednesday, 10 March 2010
slide-42
SLIDE 42

Configuration Source Configuration Source

Separate Configuration From Binaries

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-43
SLIDE 43

Expose Your Config

Wednesday, 10 March 2010
slide-44
SLIDE 44 Wednesday, 10 March 2010
slide-45
SLIDE 45

Validate Your Config

Wednesday, 10 March 2010
slide-46
SLIDE 46

Fail Fast If It’s Wrong

Wednesday, 10 March 2010
slide-47
SLIDE 47
  • 3. Deployment
Wednesday, 10 March 2010
slide-48
SLIDE 48

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-49
SLIDE 49

Development Workstation Production CI QA

More Production Like

Wednesday, 10 March 2010
slide-50
SLIDE 50

Development Workstation Production CI QA

More Production Like Faster Feedback

Wednesday, 10 March 2010
slide-51
SLIDE 51

Understand How To Balance Your Environments

Development Workstation Production CI QA

More Production Like Faster Feedback

Wednesday, 10 March 2010
slide-52
SLIDE 52

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-53
SLIDE 53

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-54
SLIDE 54

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-55
SLIDE 55

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-56
SLIDE 56

Use The Same Deployment Mechanism Everywhere

Development Workstation Production CI QA

Wednesday, 10 March 2010
slide-57
SLIDE 57
  • 4. Automated Testing
Wednesday, 10 March 2010
slide-58
SLIDE 58

http://www.flickr.com/photos/eole/380316678/

Automated Tests Can Help You Go Fast

Wednesday, 10 March 2010
slide-59
SLIDE 59

Treat Your Build Like A Safety Net, Not A Trampoline

http://www.flickr.com/photos/lintmachine/2937337584/

Wednesday, 10 March 2010
slide-60
SLIDE 60
  • 5. Monitoring
Wednesday, 10 March 2010
slide-61
SLIDE 61

http://www.youtube.com/watch?v=7yr7odFUARg

Wednesday, 10 March 2010
slide-62
SLIDE 62

http://www.flickr.com/photos/jmtimages/2288684716/

Wednesday, 10 March 2010
slide-63
SLIDE 63

Work Out What The 3am Guy Needs To Know

http://www.flickr.com/photos/kromanfromcrs/293944959/

Wednesday, 10 March 2010
slide-64
SLIDE 64 Wednesday, 10 March 2010
slide-65
SLIDE 65 Wednesday, 10 March 2010
slide-66
SLIDE 66 Wednesday, 10 March 2010
slide-67
SLIDE 67 Wednesday, 10 March 2010
slide-68
SLIDE 68

Hook Your App Up To Existing Monitoring Systems

http://www.flickr.com/photos/poper/71846409/

Wednesday, 10 March 2010
slide-69
SLIDE 69

Mail Server App Server Reporting DB SMS Gateway VPN Coffee Machine Mobile Site

0 : 1

Datacentre Disribution

Most Recent Incidents

  • RESOLVED: Network Outage in

DC1

  • RESOLVED: Coffee Machine out of

25 50 75 100 11am 12pm 1pm 2pm 3pm 4pm 5pm 6pm Requests Per Second Requests Per Second

Wednesday, 10 March 2010
slide-70
SLIDE 70
  • 6. Logging
Wednesday, 10 March 2010
slide-71
SLIDE 71

http://www.flickr.com/photos/loty/326761635/

Logging Is A User Interface

Wednesday, 10 March 2010
slide-72
SLIDE 72

http://www.flickr.com/photos/hmtreasury/3943512929/

Agree On A Logging Policy

Wednesday, 10 March 2010
slide-73
SLIDE 73

http://www.flickr.com/photos/ollesvensson/3451663493/

Allow Reconfiguration Of Logging On The Fly

Wednesday, 10 March 2010
slide-74
SLIDE 74
  • 7. Disasters
Wednesday, 10 March 2010
slide-75
SLIDE 75

Sh*t Happens

http://www.flickr.com/photos/cheesy42/4157090921/

Wednesday, 10 March 2010
slide-76
SLIDE 76

http://www.flickr.com/photos/ryangarrett/1187523445/

Wednesday, 10 March 2010
slide-77
SLIDE 77

http://www.flickr.com/photos/poper/71846409/

Work together on root cause analysis

Wednesday, 10 March 2010
slide-78
SLIDE 78

“Regardless of what we discover, we understand and truly believe that everyone did the best job they could, given what they knew at the time, their skills and abilities, the resources available, and the situation at hand.”

  • Retrospective Prime Directive
Wednesday, 10 March 2010
slide-79
SLIDE 79

http://www.flickr.com/photos/ideaconstructor/2964797754/

...and there are lots of ways to say ‘Sorry’

Wednesday, 10 March 2010
slide-80
SLIDE 80

http://www.flickr.com/photos/ljb/16086495/

Wednesday, 10 March 2010
slide-81
SLIDE 81

http://www.flickr.com/photos/quintanaroo/489358037/

Wednesday, 10 March 2010
slide-82
SLIDE 82

http://www.flickr.com/photos/aubreyarenas/3758605660/

Wednesday, 10 March 2010
slide-83
SLIDE 83

Finally...

Wednesday, 10 March 2010
slide-84
SLIDE 84

http://www.flickr.com/photos/ul_marga/1937709206/

Wednesday, 10 March 2010
slide-85
SLIDE 85

http://www.flickr.com/photos/furyksx/3149654560/

Wednesday, 10 March 2010
slide-86
SLIDE 86

The Result?

Wednesday, 10 March 2010
slide-87
SLIDE 87

http://code.flickr.com/

Wednesday, 10 March 2010
slide-88
SLIDE 88

http://www.flickr.com/photos/ogil/1507585665/

Wednesday, 10 March 2010