infrastructure as code: why it matters
TRANSCRIPT
![Page 1: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/1.jpg)
Infrastructure as Code
Why it matters
![Page 2: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/2.jpg)
Carl CaumPuppet LabsTechnical Marketing (I don’t know what that means either)
@ccaum
![Page 3: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/3.jpg)
DevOps
![Page 4: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/4.jpg)
DevOps is a response to the adversarial culture found in traditional IT organizations
![Page 5: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/5.jpg)
“Why won’t Ops just make this change? It’s small”
“Don’t the developers know anything about logging?”
“Why does it take so long for Ops to deploy this code?”
“Why can’t the developers build packages?”
“The devs don’t care that this code doesn’t scale.”
“Ops won’t let us use the latest Ruby for some reason.”
![Page 6: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/6.jpg)
Dev Ops
The cause
![Page 7: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/7.jpg)
Dev Ops
The solution
DevOps
![Page 8: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/8.jpg)
Product Delivery Process
ProblemStatement
ProblemPrioritization
Design /Development Deployment Monitoring
DevDevOps
Ops
Product Management
![Page 9: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/9.jpg)
The Three Ways -- Gene Kim
![Page 10: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/10.jpg)
Systems Thinking
Understand the performance of the entire system, not each individual silo
![Page 11: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/11.jpg)
Amplify Feedback Loops
Build quick, short, feedback into the process
![Page 12: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/12.jpg)
Culture of Experimentation and Learning
Enforce a culture of continuous experimentation, risk taking, and learning.
![Page 13: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/13.jpg)
Top 5 Predictors of IT PerformancePuppet Labs DevOps Survey
![Page 14: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/14.jpg)
● When teams hold themselves accountable for the quality of its code through peer review, performance increases. Change Approval Boards (CABs) decrease performance.
● CABs have negligible impact on system stability while significant negative impact on throughput.
Peer reviewed change process
![Page 15: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/15.jpg)
● Single source of truth
● Causality is easily determined
● Benefits extend to both system and application configuration
Version Control
![Page 16: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/16.jpg)
● Diagnose problems faster
● Test the application, not just the infrastructure
● Post deploy tests
Proactive Monitoring
![Page 17: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/17.jpg)
● Bureaucracy kills (productivity)
● Trust increases throughputHigh Trust Culture
![Page 18: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/18.jpg)
● Act with expertise, not authority
● Interactions are about both teams achieving the shared business goals
Win-Win culture
![Page 19: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/19.jpg)
Empathy rarely extends beyond our
line of sight
![Page 20: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/20.jpg)
[ops] Empathy
● Help devs set up the development environment
● Help devs set up the CI system
● Understand the required infrastructure throughout the feature’s development
![Page 21: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/21.jpg)
● Understand the constant fires Ops deals with
● Help develop the deployment process for the feature
● Be on call
● Monitor the application post deployment
[dev] Empathy
![Page 22: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/22.jpg)
The Business
![Page 23: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/23.jpg)
● Speed
● Innovation
● Availability
● Stability
Business Goals
![Page 24: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/24.jpg)
● Time-to-market matters
● Cycle time matters
● Dependable cadence matters
[Business] Speed
![Page 25: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/25.jpg)
● Collaboration
● Experimentation
● Rapid validation
● Market clarity
[Business] Innovation
![Page 26: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/26.jpg)
● 70% of all downtime is caused by configuration drift and unauthorized configuration change*
● Downtime costs $2.5 billion for Fortune 1000*
*Wiley Global Research
[Business] Availability
![Page 27: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/27.jpg)
● Infrastructure Trust
● Mean-time to recovery[Business] Stability
![Page 28: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/28.jpg)
Infrastructure as Code
![Page 29: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/29.jpg)
DevOps is to Infrastructure as Code
as Agile is to Scrum
![Page 30: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/30.jpg)
Infrastructure as Code is a requirement for DevOps,
but is not sufficient
![Page 31: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/31.jpg)
Pragmatism
![Page 32: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/32.jpg)
● Production-like Dev Env● Peer Review and Pairing● Continuous Delivery● Policy Driven Development● Auditing
Pragmatic Goals
![Page 33: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/33.jpg)
● Code is portable
● Code is reusable
● Code is version controlled
(Vagrant is awesome)
Production-like Dev Env
![Page 34: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/34.jpg)
● Code can be contributed by anyone
● Code changes can be reviewed by anyone
● Code can be worked on as a team
(give me git or give me death)
Peer Review and Pairing
![Page 35: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/35.jpg)
● Code is repeatable
● Code is shareable
● Code is promotable
● Code is testable
Continuous Delivery
![Page 36: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/36.jpg)
● Policies are for humans, not computers
● Constraints can be tested and enforced with code
● Tests can be run in any environment since code is portable
Policy Driven Development
![Page 37: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/37.jpg)
● Code execution can provide detailed, accurate reports on actions taken
● Code promotion and execution provide authorization records
● Code run reports provide defensible audit trails
Auditing
![Page 38: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/38.jpg)
Tips
![Page 39: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/39.jpg)
● Automate the most repetitive tasks in Ops
● Use Law of Accelerating Returns to increase admins’ free time
● Once a FTE’s worth of time is gained, have sysadmins spend more and more time working alongside developers
Start
![Page 40: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/40.jpg)
● Approachability
● Opinionated
● Declarative
● Idempotency
● Reporting
The Language
![Page 41: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/41.jpg)
Conclusion
![Page 42: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/42.jpg)
but requires pragmatismDevOps is about culture
![Page 43: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/43.jpg)
in relation to the product delivery process
Collaboration is key
![Page 44: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/44.jpg)
but is insufficientInfrastructure as Code is necessary
![Page 45: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/45.jpg)
(period)The language matters
![Page 46: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/46.jpg)
Check out the Puppet Labs DevOps survey
https://puppetlabs.com/2014-devops-report
Data Is Awesome
![Page 47: Infrastructure as Code: Why it Matters](https://reader030.vdocuments.mx/reader030/viewer/2022032514/55d6e042bb61ebac7a8b466d/html5/thumbnails/47.jpg)
fin