devops e a nova cultura - tdc florianopolis 2015
TRANSCRIPT
@toff63
http://github.com/toff63
http://francesbagual.net
About me
What DevOps is not
❏ Process
❏ Methodology
❏ Set of Practices
❏ Set of Tools
❏ Certification
❏ Team / Role / Department
❏ SaaS
❏ Framework
What DevOps is
❏ A journey to a desirable state
❏ A way of thinking
❏ A continuous transformation process
❏ The result of experiences
❏ A movement ...
Start some XP Practices
Only commit in trunk
Use of SCM toolContinuous Integration
➔ unit tests #compilation➔ integration tests #runtime➔ acceptance tests #runtime
Continuous Integration
CompilationUnit Tests
Deploy em Staging
Integration Tests
Automatic AcceptanceTests
UserAcceptanceTests
Team and Application keep growing
❏ Time spent merging
❏ Time spent compiling
❏ Time spent testing
❏ Time to put a feature in production
❏ Application Response time
❏ Hardware consumption
Application grow
I cannot deploy separately!
This is safe! Only 1 line of code changed
Service Service
Service Service
SOA
Service Service
Contract
Service
➔ Dependency only depends on service contract➔ Service contract has versions➔ No branch
Service
ContractContract
Service
Contract
Contract
➔ unit tests #compilation➔ contract tests #compilation➔ integration tests #runtime➔ acceptance tests #runtime➔ performance tests #runtime
Update one service
I only deploy 1 service
This is safe! Only 1 line of code changed
ServiceContract
Conway’s Law
“Organizations which design systems … are constrained to produce designs which are
copies of this communication
structures of these organizations”Melvin Conway, 1968
Number of tickets
Need to automatize
➔ unit tests #compilation➔ contract tests #compilation➔ integration tests #runtime➔ acceptance tests #runtime➔ performance tests #runtime➔ deploy automation tests #infra
Infrastructure as a code
Continuous Delivery
CompilationUnit Tests
Deploy Staging
Integration Tests
Automatic AcceptanceTests
UserAcceptanceTests
Stress Test
Deploy Production
Local Machine
Operational System
Operational System Application
Application
Operational System
Application