EMERGENT PATTERNS IN 
DevOps 
YOUR TO-DO LIST
EMERGENT PATTERNS IN 
DevOps 
YOUR TO-DO LIST
MR MIYAGI’s 
DevOps 
DOJO
GEORGE MIRANDA 
@gmiranda23
TRAINING 
!
TRAINING 
PROFESSIONAL SERVICES
TRAINING 
PROFESSIONAL SERVICES 
EVANGELISM
BUT FIRST…
BUT FIRST… 
CONTINUOUS DELIVERY
BUT FIRST… 
CONTINUOUS DELIVERY 
… BECAUSE DEVOPS!!!
HISTORY OF THE WORLD* 
( PART ONE) 
* ABBREVIATED
@patrickdebois
@patrickdebois
@patrickdebois
@patrickdebois 
#devops
THAT WAS THEN…
…THIS IS NOW
…THIS IS NOW
DevOps at its core: 
• Practitioner Driven 
• Practitioners discussing/sharing/evolving: 
• State of IT 
• How to do it better 
• Working together 
• Humane Systems 
• Open Practices 
Fundamentally rooted in the idea that our 
business needs to deliver software faster, safer, 
and more reliably into the hands of users.
DevOps at its core: 
• Practitioner Driven 
• Practitioners discussing/sharing/evolving: 
• State of IT 
• How to do it better 
• Working together 
• Humane Systems 
• Open Practices 
Fundamentally rooted in the idea that our 
business needs to deliver software faster, safer, 
and more reliably into the hands of users.
L E T ’ S TALK ABOUT…
“IF THERE'S ANYTHING ALL 
HORSES HATE, IT'S HEARING 
STORIES ABOUT UNICORNS.” 
– CHRIS LITTLE 
MARKETING, BMC
BUT… 
ENTERPRISE
BOTH OF THESE ARE: 
• MADE OF WATER MOLECULES 
• 1/5000TH DEUTERIUM 
• CHANGING PHASES SEVERAL TIMES 
• SHAPED BY TEMPERATURE 
• FORMED BY PRESSURE 
• RELIANT ON PRESENCE OF DUST 
• SUBJECT TO NUCLEATION
95 % SIMILAR 
! 
(TOTALLY SCIENTIFIC NUMBER)
“UNICORNS ARE HORSES 
WITH BETTER P.R.” 
– JEZ HUMBLE 
<———— WROTE THE BOOK
L E T ’ S TALK ABOUT CONSULTING…
EVERYONE ONLY EVER 
TALKS ABOUT THE 
KNOCKOUT PUNCH
EVERYTHING I E V E R 
NEEDED TO KNOW ABOUT 
DEV O P S , I L EARNED 
FROM MR. MIYAGI
A POP-CULTURE PRIMER IN 
SIXTY SECONDS OR LESS… 
* FOR THOSE BORN AFTER 
DINOSAURS ROAMED THE PLANET
COOL NEW KID IN TOWN
COOL NEW KID IN TOWN
GETS INTO TROUBLE
WITH KARATE BULLIES
A LOT OF TROUBLE
MIYAGI SAVES DANIEL
THEY MAKE A PACT
CHORES??? WTF?!?
INSTINCTIVE DEFENSE
BECOMES A CHAMPION
SEE?
MR MIYAGI’s 
DevOps 
DOJO
PRE-REQUISITES
DANIEL PLAYED SOCCER
DANIEL RODE HIS BIKE
TOOK KARATE AT THE “Y”
“ F I R S T L EARN STAND, 
THEN LEARN F L Y . 
NATURE RULE, 
DANIEL-SAN , N O T MINE”
You must be this tall 
• Use artifact repositories 
• If no internet access: host your own universe 
• End-to-end, granular, accurate map of the 
problem domain 
• Thorough domain expertise to build/deploy/ 
manage the *entire* stack 
• Network access to managed infrastructure 
• Local Admin rights on workstations 
• Basic scripting, working with CLIs or APIs 
• Dedicated resources (no context-switching)
DO NOT PASS GO 
DO NOT COLLECT $200
MR MIYAGI’s 
DevOps 
DOJO
WAX ON , WAX OFF
Convergent Infrastructure 
• Proper use of Configuration 
Management frameworks 
• Practice on the whole stack 
• Converge on a regular interval 
• Persistent changes must be 
captured in configuration code 
• Out-of-band change will be lost 
• Infrastructure as Code 
• Use it, don’t disable it
PAINT THE F ENCE
Local Development 
• Bring Production to your 
developers 
• This just in: Ops are developers 
too! 
• Disposable Dev Environments 
• Vagrant 
• Mad crazy providers! 
• Test on a reasonable facsimile of 
Production
PAINT THE HOUSE
Collaborative SCM 
• Open repositories 
• Fork anyone’s code 
• Contribute back to anyone’s code 
• Curate contributions to your own 
code 
• Comment, fix, improve submissions 
• Share commit rights 
• Encourage a culture of openness
“YOU CAN’T DIRECTLY CHANGE 
CULTURE. BUT YOU CAN 
CHANGE BEHAVIOR, AND 
BEHAVIOR BECOMES CULTURE” 
– LLOYD TAYLOR 
VP INFRASTRUCTURE, NGMOCO
“… SOME TOOLS 
ENFORCE BEHAVIOR!” 
- ME 
“YOU CAN’T DIRECTLY CHANGE 
CULTURE. BUT YOU CAN 
CHANGE BEHAVIOR, AND 
BEHAVIOR BECOMES CULTURE” 
– LLOYD TAYLOR 
VP INFRASTRUCTURE, NGMOCO
SAND THE FLOOR
Build Pipelines 
• SDLC Practices apply to Infrastructure 
Code 
• No one gets to push changes by hand 
• Set up rules for Code Review 
• Develop changes locally 
• Test (more later) 
• Check-in and submit for code review 
• CI jobs push (build) the change 
• You will feel like Daniel-san sanding 
the floor
LEARN TO STRIKE
Provisioning 
• Mr Gorbachev, tear down this server! 
• "Cloud" reduces the amount of 
blood, sweat, and tears required to 
get new infrastructure 
• Containers also reduce this effort 
• Roll out new systems often 
• Replace Production often 
• Make provisioning trivial 
• Can we be fully immutable?
“THIS IS WHAT I CALL DISPOSABLE 
COMPUTING. THROW AWAY A BROKEN 
PROCESS RATHER THAN TRYING TO FIX IT. 
MACHINES CAN BE MADE EXPENDABLE AS 
LONG AS THE TOTAL SOFTWARE IS DESIGNED 
FOR IT. NOT MUCH OF IT IS TODAY, BUT WE 
ARE GETTING THERE. NATURE SHOWS THAT 
THIS IS A GOOD WAY OF SCALING SERVICES.” 
– MARK BURGESS 
AUTHOR OF CFENGINE
LEARN BALANCE
Metrics & Analytics 
• Measure Everything 
• Log Everything 
• Then analyze it. And DISPLAY it! 
• Give access to see the data freely 
• Never argue before you have the 
data 
• Argue about what the data means
Blameless Culture 
• Failures will always happen 
• Mistakes, errors, slips, lapses: all 
opportunities to learn 
• Presume good intentions 
• Remove fear of punishment 
• Blameless Post-Mortems 
• Structured Incident Response 
• Produce actionable items to prevent 
the same thing in the future
“YOU REMEMBER L ESSON ABOUT 
BALANCE? LESSON N OT JUS T 
KARATE ONLY ; LESSON F O R 
WHOLE L IFE. WHOLE L IFE HAVE 
A BALANCE, EVERYTHING B E 
BETTER. UNDERSTAND?”
1ST L EVEL MASTERED
BUT NOW. . . 
Y O U ’RE DANGEROUS!
THE DRUM TECHNIQUE
Test Driven Infrastructure 
• Test your infrastructure like you test your 
applications: it’s ALL code! 
• Regression test during development (guards) 
• Unit test local development before commit 
• e.g. Kitchen.CI 
• Test on commit via CI, before code review 
• Test after code review passes at 1st 
integration point 
• Canary test Production 
• Test Test Test Test Test Test Test Test Test
“KARATE I S T R A I N I N G T O F I G H T . ” 
“ T HAT WHAT YOU THI N K ? ” 
“ N O . ” 
“ T HEN WHY T R A I N ? ” 
“ S O I W O N ' T HAVE T O F I G H T . ” 
“ M I Y A G I HAVE HOPE F O R Y O U . ”
CONT I NUOUS DELIVERY
. . . M O R E L I K E T H I S ?
SO TO RECAP…
• GET IN SHAPE! 
• CONFIGURATION MANAGEMENT 
• LOCAL DEVELOPMENT 
• COLLABORATIVE SOURCE CONTROL 
• BUILD PIPELINES 
• METRICS & ANALYTICS 
• BLAMELESS CULTURE 
• CONSTANT PROVISIONING 
• TEST DRIVEN INFRASTRUCTURE
• GET IN SHAPE! 
• CONFIGURATION MANAGEMENT 
• LOCAL DEVELOPMENT 
• COLLABORATIVE SOURCE CONTROL 
• BUILD PIPELINES 
• METRICS & ANALYTICS 
• BLAMELESS CULTURE 
• CONSTANT PROVISIONING 
• TEST DRIVEN INFRASTRUCTURE 
… ALL STARTABLE TODAY!
• GET IN SHAPE! 
• CONFIGURATION MANAGEMENT 
• LOCAL DEVELOPMENT 
• COLLABORATIVE SOURCE CONTROL 
• BUILD PIPELINES 
• METRICS & ANALYTICS 
• BLAMELESS CULTURE 
• CONSTANT PROVISIONING 
• TEST DRIVEN INFRASTRUCTURE 
… THEN LET’S TALK ABOUT KNOCKOUTS
AND, REMEMBER…
QUESTIONS? 
@gmiranda23 
GMIRANDA@GETCHEF.COM 
WWW.SLIDESHARE.NET/GMIRANDA23/EMERGENT-PATTERNS-IN-DEVOPS

Emergent Patterns in DevOps

  • 1.
    EMERGENT PATTERNS IN DevOps YOUR TO-DO LIST
  • 2.
    EMERGENT PATTERNS IN DevOps YOUR TO-DO LIST
  • 3.
  • 4.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
    BUT FIRST… CONTINUOUSDELIVERY … BECAUSE DEVOPS!!!
  • 12.
    HISTORY OF THEWORLD* ( PART ONE) * ABBREVIATED
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
    DevOps at itscore: • Practitioner Driven • Practitioners discussing/sharing/evolving: • State of IT • How to do it better • Working together • Humane Systems • Open Practices Fundamentally rooted in the idea that our business needs to deliver software faster, safer, and more reliably into the hands of users.
  • 21.
    DevOps at itscore: • Practitioner Driven • Practitioners discussing/sharing/evolving: • State of IT • How to do it better • Working together • Humane Systems • Open Practices Fundamentally rooted in the idea that our business needs to deliver software faster, safer, and more reliably into the hands of users.
  • 22.
    L E T’ S TALK ABOUT…
  • 23.
    “IF THERE'S ANYTHINGALL HORSES HATE, IT'S HEARING STORIES ABOUT UNICORNS.” – CHRIS LITTLE MARKETING, BMC
  • 24.
  • 26.
    BOTH OF THESEARE: • MADE OF WATER MOLECULES • 1/5000TH DEUTERIUM • CHANGING PHASES SEVERAL TIMES • SHAPED BY TEMPERATURE • FORMED BY PRESSURE • RELIANT ON PRESENCE OF DUST • SUBJECT TO NUCLEATION
  • 27.
    95 % SIMILAR ! (TOTALLY SCIENTIFIC NUMBER)
  • 28.
    “UNICORNS ARE HORSES WITH BETTER P.R.” – JEZ HUMBLE <———— WROTE THE BOOK
  • 30.
    L E T’ S TALK ABOUT CONSULTING…
  • 31.
    EVERYONE ONLY EVER TALKS ABOUT THE KNOCKOUT PUNCH
  • 32.
    EVERYTHING I EV E R NEEDED TO KNOW ABOUT DEV O P S , I L EARNED FROM MR. MIYAGI
  • 33.
    A POP-CULTURE PRIMERIN SIXTY SECONDS OR LESS… * FOR THOSE BORN AFTER DINOSAURS ROAMED THE PLANET
  • 34.
    COOL NEW KIDIN TOWN
  • 35.
    COOL NEW KIDIN TOWN
  • 36.
  • 37.
  • 38.
    A LOT OFTROUBLE
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
    TOOK KARATE ATTHE “Y”
  • 50.
    “ F IR S T L EARN STAND, THEN LEARN F L Y . NATURE RULE, DANIEL-SAN , N O T MINE”
  • 51.
    You must bethis tall • Use artifact repositories • If no internet access: host your own universe • End-to-end, granular, accurate map of the problem domain • Thorough domain expertise to build/deploy/ manage the *entire* stack • Network access to managed infrastructure • Local Admin rights on workstations • Basic scripting, working with CLIs or APIs • Dedicated resources (no context-switching)
  • 52.
    DO NOT PASSGO DO NOT COLLECT $200
  • 53.
  • 54.
    WAX ON ,WAX OFF
  • 55.
    Convergent Infrastructure •Proper use of Configuration Management frameworks • Practice on the whole stack • Converge on a regular interval • Persistent changes must be captured in configuration code • Out-of-band change will be lost • Infrastructure as Code • Use it, don’t disable it
  • 56.
  • 57.
    Local Development •Bring Production to your developers • This just in: Ops are developers too! • Disposable Dev Environments • Vagrant • Mad crazy providers! • Test on a reasonable facsimile of Production
  • 58.
  • 59.
    Collaborative SCM •Open repositories • Fork anyone’s code • Contribute back to anyone’s code • Curate contributions to your own code • Comment, fix, improve submissions • Share commit rights • Encourage a culture of openness
  • 60.
    “YOU CAN’T DIRECTLYCHANGE CULTURE. BUT YOU CAN CHANGE BEHAVIOR, AND BEHAVIOR BECOMES CULTURE” – LLOYD TAYLOR VP INFRASTRUCTURE, NGMOCO
  • 61.
    “… SOME TOOLS ENFORCE BEHAVIOR!” - ME “YOU CAN’T DIRECTLY CHANGE CULTURE. BUT YOU CAN CHANGE BEHAVIOR, AND BEHAVIOR BECOMES CULTURE” – LLOYD TAYLOR VP INFRASTRUCTURE, NGMOCO
  • 62.
  • 63.
    Build Pipelines •SDLC Practices apply to Infrastructure Code • No one gets to push changes by hand • Set up rules for Code Review • Develop changes locally • Test (more later) • Check-in and submit for code review • CI jobs push (build) the change • You will feel like Daniel-san sanding the floor
  • 64.
  • 65.
    Provisioning • MrGorbachev, tear down this server! • "Cloud" reduces the amount of blood, sweat, and tears required to get new infrastructure • Containers also reduce this effort • Roll out new systems often • Replace Production often • Make provisioning trivial • Can we be fully immutable?
  • 66.
    “THIS IS WHATI CALL DISPOSABLE COMPUTING. THROW AWAY A BROKEN PROCESS RATHER THAN TRYING TO FIX IT. MACHINES CAN BE MADE EXPENDABLE AS LONG AS THE TOTAL SOFTWARE IS DESIGNED FOR IT. NOT MUCH OF IT IS TODAY, BUT WE ARE GETTING THERE. NATURE SHOWS THAT THIS IS A GOOD WAY OF SCALING SERVICES.” – MARK BURGESS AUTHOR OF CFENGINE
  • 67.
  • 68.
    Metrics & Analytics • Measure Everything • Log Everything • Then analyze it. And DISPLAY it! • Give access to see the data freely • Never argue before you have the data • Argue about what the data means
  • 69.
    Blameless Culture •Failures will always happen • Mistakes, errors, slips, lapses: all opportunities to learn • Presume good intentions • Remove fear of punishment • Blameless Post-Mortems • Structured Incident Response • Produce actionable items to prevent the same thing in the future
  • 70.
    “YOU REMEMBER LESSON ABOUT BALANCE? LESSON N OT JUS T KARATE ONLY ; LESSON F O R WHOLE L IFE. WHOLE L IFE HAVE A BALANCE, EVERYTHING B E BETTER. UNDERSTAND?”
  • 71.
    1ST L EVELMASTERED
  • 72.
    BUT NOW. .. Y O U ’RE DANGEROUS!
  • 73.
  • 74.
    Test Driven Infrastructure • Test your infrastructure like you test your applications: it’s ALL code! • Regression test during development (guards) • Unit test local development before commit • e.g. Kitchen.CI • Test on commit via CI, before code review • Test after code review passes at 1st integration point • Canary test Production • Test Test Test Test Test Test Test Test Test
  • 75.
    “KARATE I ST R A I N I N G T O F I G H T . ” “ T HAT WHAT YOU THI N K ? ” “ N O . ” “ T HEN WHY T R A I N ? ” “ S O I W O N ' T HAVE T O F I G H T . ” “ M I Y A G I HAVE HOPE F O R Y O U . ”
  • 76.
    CONT I NUOUSDELIVERY
  • 77.
    . . .M O R E L I K E T H I S ?
  • 78.
  • 79.
    • GET INSHAPE! • CONFIGURATION MANAGEMENT • LOCAL DEVELOPMENT • COLLABORATIVE SOURCE CONTROL • BUILD PIPELINES • METRICS & ANALYTICS • BLAMELESS CULTURE • CONSTANT PROVISIONING • TEST DRIVEN INFRASTRUCTURE
  • 80.
    • GET INSHAPE! • CONFIGURATION MANAGEMENT • LOCAL DEVELOPMENT • COLLABORATIVE SOURCE CONTROL • BUILD PIPELINES • METRICS & ANALYTICS • BLAMELESS CULTURE • CONSTANT PROVISIONING • TEST DRIVEN INFRASTRUCTURE … ALL STARTABLE TODAY!
  • 81.
    • GET INSHAPE! • CONFIGURATION MANAGEMENT • LOCAL DEVELOPMENT • COLLABORATIVE SOURCE CONTROL • BUILD PIPELINES • METRICS & ANALYTICS • BLAMELESS CULTURE • CONSTANT PROVISIONING • TEST DRIVEN INFRASTRUCTURE … THEN LET’S TALK ABOUT KNOCKOUTS
  • 82.
  • 85.
    QUESTIONS? @gmiranda23 GMIRANDA@GETCHEF.COM WWW.SLIDESHARE.NET/GMIRANDA23/EMERGENT-PATTERNS-IN-DEVOPS