Upload
andrew-shafer
View
1.607
Download
1
Tags:
Embed Size (px)
DESCRIPTION
The prelude to the talks at Velocity and Agile 2009. A few of the same slides and sentiment, but presented in a different way. More mentions of Puppet specifically for one.
Citation preview
AGILE INFRASTRUCTURE
ANDREW CLAY SHAFER
ANDREW CLAY SHAFER
Developer Once Upon A Time
ANDREW CLAY SHAFER
Developer Once Upon A Time
Agile Team member
ANDREW CLAY SHAFER
Developer Once Upon A Time
Agile Team member
Tolerated at Salt Lake Agile Roundtable
ANDREW CLAY SHAFER
Developer Once Upon A Time
Agile Team member
Tolerated at Salt Lake Agile Roundtable
Mostly Worked For Start Ups
ANDREW CLAY SHAFER
Developer Once Upon A Time
Founding Partner Reductive Labs Inc.
Agile Team member
Tolerated at Salt Lake Agile Roundtable
Mostly Worked For Start Ups
ANDREW CLAY SHAFER
Developer Once Upon A Time
Founding Partner Reductive Labs Inc.
Agile Team member
All Around Trouble Maker
Tolerated at Salt Lake Agile Roundtable
Mostly Worked For Start Ups
ANDREW CLAY SHAFER
Developer Once Upon A Time
Founding Partner Reductive Labs Inc.
Agile Team member
All Around Trouble Maker
Tolerated at Salt Lake Agile Roundtable
Mostly Worked For Start Ups
The Rest is Complicated...
O H Y E A H , T H E R E I S A LWAY S A D U C K . . .
WHAT IS AGILE?
M A N I F E S T O , 4 VA L U E S , 1 2 P R I N C I P L E S . . .
M A N I F E S T O , 4 VA L U E S , 1 2 P R I N C I P L E S . . .
M A N I F E S T O , 4 VA L U E S , 1 2 P R I N C I P L E S . . .
M A N I F E S T O , 4 VA L U E S , 1 2 P R I N C I P L E S . . .
M A N I F E S T O , 4 VA L U E S , 1 2 P R I N C I P L E S . . .
M A N I F E S T O , 4 VA L U E S , 1 2 P R I N C I P L E S . . .
M A N I F E S T O , 4 VA L U E S , 1 2 P R I N C I P L E S . . .
M A N I F E S T O , 4 VA L U E S , 1 2 P R I N C I P L E S . . .
M A N I F E S T O , 4 VA L U E S , 1 2 P R I N C I P L E S . . .
M A N I F E S T O , 4 VA L U E S , 1 2 P R I N C I P L E S . . .
BUT WHAT IS
AGILE???
BUT WHAT IS
AGILE???PLANNING
BUT WHAT IS
AGILE???PLANNING ENGINEERING
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
TESTERS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
EXECUTIVES
TESTERS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
SYSTEM ADMINISTRATORSEXECUTIVES
TESTERS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
SYSTEM ADMINISTRATORSDATABASE ADMINISTRATORS
EXECUTIVES
TESTERS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
SYSTEM ADMINISTRATORSDATABASE ADMINISTRATORS
NETWORK ENGINEERS
EXECUTIVES
TESTERS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
SYSTEM ADMINISTRATORSDATABASE ADMINISTRATORS
NETWORK ENGINEERS
EXECUTIVES
TESTERSDESIGNERS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
SYSTEM ADMINISTRATORSDATABASE ADMINISTRATORS
NETWORK ENGINEERS
EXECUTIVES
TESTERSDESIGNERS
USABILITY EXPERTS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
CIRCLE OF HAPPINESS
SYSTEM ADMINISTRATORSDATABASE ADMINISTRATORS
NETWORK ENGINEERS
EXECUTIVES
TESTERSDESIGNERS
USABILITY EXPERTS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
CIRCLE OF HAPPINESS
SYSTEM ADMINISTRATORSDATABASE ADMINISTRATORS
NETWORK ENGINEERS
EXECUTIVES
TESTERSDESIGNERS
USABILITY EXPERTS
BUT WHAT IS
AGILE???PLANNING ENGINEERING
DEVELOPERSPRODUCTOWNERS
CIRCLE OF HAPPINESS
SYSTEM ADMINISTRATORSDATABASE ADMINISTRATORS
NETWORK ENGINEERS
EXECUTIVES
TESTERSDESIGNERS
USABILITY EXPERTS
BUT THE WAY SOFTWARE GETS DELIVERED HAS
CHANGED A LOT...
BUT THE WAY SOFTWARE GETS DELIVERED HAS
CHANGED A LOT...
...AND THINGS ARE CHANGING FAST RIGHT NOW .
WHO IS WORKING ON A
WEB APP?
END OF SHRINK WRAP
END OF SHRINK WRAP
Clouds Are Rising
END OF SHRINK WRAP
WHO IS WORKING ON A
WEB APP?
WHO IS WORKING ON A
WEB APP?WHERE DOES THAT WEB APP RUN?
WHO IS WORKING ON A
WEB APP?WHERE DOES THAT WEB APP RUN?
WHO TAKES CARE OF THOSE SERVERS?
WHO IS WORKING ON A
WEB APP?WHERE DOES THAT WEB APP RUN?
WHO TAKES CARE OF THOSE SERVERS?HOW DO YOU INTERACT WITH THEM?
WHO IS WORKING ON A
WEB APP?WHERE DOES THAT WEB APP RUN?
WHO TAKES CARE OF THOSE SERVERS?HOW DO YOU INTERACT WITH THEM?
‘THEM’ IS PEOPLE OR SERVERS?
ENGINEERINGVersion Control
Build From Source
WHO USES VERSION CONTROL FOR SYSTEM
CONFIGURATIONS?
WHO USES VERSION CONTROL FOR SYSTEM
CONFIGURATIONS?
WHO CAN AUTOMATICALLY
REBUILD SYSTEMS?
Infrastructure is Code!!!
Infrastructure is Code!!!SEMANTICS
Infrastructure is Code!!!SEMANTICS
REPRODUCIBLE
Infrastructure is Code!!!SEMANTICS
REPRODUCIBLEMAINTAINABLE
Infrastructure is Code!!!SEMANTICS
REPRODUCIBLEMAINTAINABLE
EXTENSIBLE
Infrastructure is Code!!!SEMANTICS
REPRODUCIBLEMAINTAINABLE
EXTENSIBLESHAREABLE
WHO IS USING PUPPET?
Infrastructure is Code!!!SEMANTICS
REPRODUCIBLEMAINTAINABLE
EXTENSIBLESHAREABLE
Open Source Software!
HELP ME TO SEE IT...
HELP ME TO SEE IT...
USING TRADITIONAL TECHNIQUES CONFIGURATIONS TEND TO DRIFT
BUT WHY?
BUT WHY?BACKLOG OF REQUESTS
BUT WHY?BACKLOG OF REQUESTS
CONFIGURATION OF CRITICAL SERVICES ARE OFTEN NOT DOCUMENTED AND MUST BE RECREATED
BUT WHY?
INCONSISTENCIES CAUSE CONFUSION AND MISTAKES
BACKLOG OF REQUESTS
CONFIGURATION OF CRITICAL SERVICES ARE OFTEN NOT DOCUMENTED AND MUST BE RECREATED
BUT WHY?
MORE AND MORE SYSTEMS TO MANAGE
INCONSISTENCIES CAUSE CONFUSION AND MISTAKES
BACKLOG OF REQUESTS
CONFIGURATION OF CRITICAL SERVICES ARE OFTEN NOT DOCUMENTED AND MUST BE RECREATED
BUT WHY?
MORE AND MORE SYSTEMS TO MANAGE
INCONSISTENCIES CAUSE CONFUSION AND MISTAKES
BACKLOG OF REQUESTS
CONFIGURATION OF CRITICAL SERVICES ARE OFTEN NOT DOCUMENTED AND MUST BE RECREATED
WORK ON THE BIGGEST FIRE
Dear Diary,
Dear Diary, Today I was on fire for 12 hours...
Dear Diary, Today I was on fire for 12 hours...It wasn’t as pleasant as it sounds.
Dear Diary, Today I was on fire for 12 hours...It wasn’t as pleasant as it sounds.--Eben Brinson Smith III
Dear Diary, Today I was on fire for 12 hours...It wasn’t as pleasant as it sounds.--Eben Brinson Smith III
WHAT DOES THAT REALLY MEAN?
WHAT DOES THAT REALLY MEAN?DEPLOYMENTS AND UPGRADES
ARE EXPENSIVE, TEDIOUS AND ERROR PRONE
WHAT DOES THAT REALLY MEAN?DEPLOYMENTS AND UPGRADES
ARE EXPENSIVE, TEDIOUS AND ERROR PRONE
THE CHANCE THAT DEV, TEST AND PROD ARE CONFIGURED THE SAME APPROACHES ZERO
WHAT DOES THAT REALLY MEAN?DEPLOYMENTS AND UPGRADES
ARE EXPENSIVE, TEDIOUS AND ERROR PRONE
THE CHANCE THAT DEV, TEST AND PROD ARE CONFIGURED THE SAME APPROACHES ZERO
HARDWARE FAILURE CAN BE CATASTROPHIC
WHAT DOES THAT REALLY MEAN?DEPLOYMENTS AND UPGRADES
ARE EXPENSIVE, TEDIOUS AND ERROR PRONE
THE CHANCE THAT DEV, TEST AND PROD ARE CONFIGURED THE SAME APPROACHES ZERO
HARDWARE FAILURE CAN BE CATASTROPHIC
HEAVY WEIGHT CHANGE CONTROL PROCESSES SEEM LIKE A GOOD IDEA
WHAT DOES THAT REALLY MEAN?
MORE AND MORE SYSTEMS TO MANAGE
DEPLOYMENTS AND UPGRADES ARE EXPENSIVE, TEDIOUS AND ERROR PRONE
THE CHANCE THAT DEV, TEST AND PROD ARE CONFIGURED THE SAME APPROACHES ZERO
HARDWARE FAILURE CAN BE CATASTROPHIC
HEAVY WEIGHT CHANGE CONTROL PROCESSES SEEM LIKE A GOOD IDEA
VIRTUALMACHINES
VIRTUALMACHINES
A NEW ‘MACHINE’ API
VIRTUALMACHINES
A NEW ‘MACHINE’ API
MORE MACHINES TO CONFIGURE
VIRTUALMACHINES
A NEW ‘MACHINE’ API
MORE MACHINES TO CONFIGURE
DO NOT MAKE GOLDEN IMAGES
VIRTUALMACHINES
A NEW ‘MACHINE’ API
MORE MACHINES TO CONFIGURE
DO NOT MAKE GOLDEN IMAGES
REALLY FOIL BALLS
VIRTUALMACHINES
A NEW ‘MACHINE’ API
MORE MACHINES TO CONFIGURE
DO NOT MAKE GOLDEN IMAGES
WTF?REALLY FOIL BALLS
VIRTUALMACHINES
A NEW ‘MACHINE’ API
MORE MACHINES TO CONFIGURE
DO NOT MAKE GOLDEN IMAGES
WTF?REALLY FOIL BALLS
...OR SHOULD I SAY WTD?
INFRASTRUCTUREIS CODE!
INFRASTRUCTUREIS CODE!
AUTOMATE EVERYTHING
INFRASTRUCTUREIS CODE!
AUTOMATE EVERYTHING
GET MORE DONE SPEND LESS TIME DOING IT
INFRASTRUCTUREIS CODE!
AUTOMATE EVERYTHING
GET MORE DONE SPEND LESS TIME DOING IT
PEOPLE SPEND TIME MAKING DECISIONSNOT DOING TEDIOUS WORK OVER AND OVER
INFRASTRUCTUREIS CODE!
AUTOMATE EVERYTHING
GET MORE DONE SPEND LESS TIME DOING IT
PEOPLE SPEND TIME MAKING DECISIONSNOT DOING TEDIOUS WORK OVER AND OVER
NO LONGER MANAGING SERVERS, MANAGE SERVICES
INFRASTRUCTUREIS CODE!
AUTOMATE EVERYTHING
GET MORE DONE SPEND LESS TIME DOING IT
PEOPLE SPEND TIME MAKING DECISIONSNOT DOING TEDIOUS WORK OVER AND OVER
TAKE ADVANTAGE OF THE PROCESSES AND TOOLSWE HAVE FOR SOFTWARE DEVELOPMENT
NO LONGER MANAGING SERVERS, MANAGE SERVICES
MORE AND MORESERVERS TO MANAGE
MORE AND MORESERVERS TO MANAGE
BRING IT ON!!!
PLANNINGCommunication
CollaborationEstimation
Prioritization
NON-FUNCTIONALREQUIREMENTS
NON-FUNCTIONALREQUIREMENTS
REQUIREMENTS THAT WILL RENDER THE APPLICATION NON-FUNCTIONAL IF NOT FULFILLED
NON-FUNCTIONALREQUIREMENTS
REQUIREMENTS THAT WILL RENDER THE APPLICATION NON-FUNCTIONAL IF NOT FULFILLED
WTD?
NON-FUNCTIONALREQUIREMENTS
REQUIREMENTS THAT WILL RENDER THE APPLICATION NON-FUNCTIONAL IF NOT FULFILLED
WTD?
STOP THINKING LIKE THAT
REQUIREMENTS ARE REQUIREMENTS
REQUIREMENTS ARE REQUIREMENTS
A WEB APP IS THE INFRASTRUCTURE
REQUIREMENTS ARE REQUIREMENTS
A WEB APP IS THE INFRASTRUCTURE
WITHOUT INFRASTRUCTURE THERE IS NO APP
REQUIREMENTS ARE REQUIREMENTS
A WEB APP IS THE INFRASTRUCTURE
WITHOUT INFRASTRUCTURE THERE IS NO APP
A CHANGE IN USAGE PATTERNS CAN CRUSH THE INFRASTRUCTURE
REQUIREMENTS ARE REQUIREMENTS
A WEB APP IS THE INFRASTRUCTURE
WITHOUT INFRASTRUCTURE THERE IS NO APP
A CHANGE IN USAGE PATTERNS CAN CRUSH THE INFRASTRUCTURE
REQUIRES COLLABORATION BETWEEN DEV AND OPS
DEVELOPERS OPERATIONS
DEVELOPERS OPERATIONS
DEVELOPERS OPERATIONS
DEVELOPERS OPERATIONS
DEVELOPERS OPERATIONS
DEVELOPERS OPERATIONS
DEVELOPERS OPERATIONS
DEVELOPERS OPERATIONS
BOUNDARY OBJECTS
DEVELOPERS OPERATIONS
BOUNDARY OBJECTS
COMMUNITY OF INTEREST
DEVELOPERS OPERATIONS
BOUNDARY OBJECTS
COMMUNITY OF INTEREST
DEVELOPERS OPERATIONS
BOUNDARY OBJECTS
COMMUNITY OF INTERESTWWW .VISIBLEWORKINGS.COM/ANALOGYFEST/MARICK-BOUNDARY-OBJECTS.PDF
INFRASTRUCTUREIS CODE!
INFRASTRUCTUREIS CODE!
PLAN FOR INFRASTRUCTURE REQUIREMENTS
INFRASTRUCTUREIS CODE!
PLAN FOR INFRASTRUCTURE REQUIREMENTS
...BUT BE WILLING AND ABLE TO CHANGE THEM
INFRASTRUCTUREIS CODE!
OPERATIONS’ CUSTOMER IS THE APP
PLAN FOR INFRASTRUCTURE REQUIREMENTS
...BUT BE WILLING AND ABLE TO CHANGE THEM
INFRASTRUCTUREIS CODE!
OPERATIONS’ CUSTOMER IS THE APP
PLAN FOR INFRASTRUCTURE REQUIREMENTS
...BUT BE WILLING AND ABLE TO CHANGE THEM
IF THE INFRASTRUCTURE ISN’T WORKING NOTHING IS
INFRASTRUCTUREIS CODE!
OPERATIONS’ CUSTOMER IS THE APP
CREATE A CULTURE OF COLLABORATION
PLAN FOR INFRASTRUCTURE REQUIREMENTS
...BUT BE WILLING AND ABLE TO CHANGE THEM
IF THE INFRASTRUCTURE ISN’T WORKING NOTHING IS
INFRASTRUCTUREIS CODE!
OPERATIONS’ CUSTOMER IS THE APP
CREATE A CULTURE OF COLLABORATION
PLAN FOR INFRASTRUCTURE REQUIREMENTS
TAKE ADVANTAGE OF THE PROCESSES AND TOOLSWE HAVE FOR SOFTWARE DEVELOPMENT
...BUT BE WILLING AND ABLE TO CHANGE THEM
IF THE INFRASTRUCTURE ISN’T WORKING NOTHING IS
INFRASTRUCTUREIS CODE!
OPERATIONS’ CUSTOMER IS THE APP
CREATE A CULTURE OF COLLABORATION
PLAN FOR INFRASTRUCTURE REQUIREMENTS
TAKE ADVANTAGE OF THE PROCESSES AND TOOLSWE HAVE FOR SOFTWARE DEVELOPMENT
...BUT BE WILLING AND ABLE TO CHANGE THEM
IF THE INFRASTRUCTURE ISN’T WORKING NOTHING IS
INFRASTRUCTUREIS CODE!
OPERATIONS’ CUSTOMER IS THE APP
CREATE A CULTURE OF COLLABORATION
PLAN FOR INFRASTRUCTURE REQUIREMENTS
TAKE ADVANTAGE OF THE PROCESSES AND TOOLSWE HAVE FOR SOFTWARE DEVELOPMENT
...BUT BE WILLING AND ABLE TO CHANGE THEM
IF THE INFRASTRUCTURE ISN’T WORKING NOTHING IS
THE MOST IMPORTANT STATEMENT FROM THE
MANIFESTO...
THE MOST IMPORTANT STATEMENT FROM THE
MANIFESTO......MIGHT NOT BE THE VALUES...
THE MOST IMPORTANT STATEMENT FROM THE
MANIFESTO...
...OR THE PRINCIPLES...
...MIGHT NOT BE THE VALUES...
‘We are uncovering better ways of developing software by doing it and
helping others do it.’
‘We are uncovering better ways of developing software by doing it and
helping others do it.’
K E E P U N C O V E R I N G
K E E P U N C O V E R I N G
[email protected]/littleidea
[email protected]/littleidea