Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Christophe Marchal | Software Architect
DevOps e a nova Cultura
christophe.marchal@ilegra.com
@toff63
http://github.com/toff63
http://francesbagual.net
About me
www.ilegra.com
What DevOps is not
❏ Process
❏ Methodology
❏ Set of Practices
❏ Set of Tools
❏ Certification
❏ Team / Role / Department
❏ ...
What DevOps is
❏ A journey to a desirable state
❏ A way of thinking
❏ A continuous transformation process
❏ The result of ...
Start up example
Let’s
deploy!
Start up example
Open a
ticket
Start up example
Start of the success
Application grow
Let’s
deploy!
Application grow
Too
unstable!
Start some XP Practices
Only commit in trunk
Use of SCM tool
Continuous
Integration
➔ unit tests #compilation
➔ integratio...
Continuous Integration
Compilation
Unit Tests
Deploy em
Staging
Integration
Tests
Automatic
Acceptance
Tests
User
Acceptan...
Quality Improvement
Team and Application keep growing
❏ Time spent merging
❏ Time spent compiling
❏ Time spent testing
❏ Time to put a feature...
Isolation via Modularization
Move dependency from Compilation
to Runtime
New Deploy
Service
Service
Application grow
I cannot
deploy
separately!
This is safe!
Only 1 line of
code changed
Service Service
Service Service
Service dependencies
Service
Service
Service
Service
Service
SOA
SOA
Service Service
Contract
Service
➔ Dependency only depends on service contract
➔ Service contract has versions
➔ No br...
Update one service
I only
deploy 1
service
This is safe!
Only 1 line of
code changed
Service
Contract
Conway’s Law
“Organizations which design systems … are
constrained to produce designs which are
copies of this communicati...
Organize teams around services
User
User
User
BA
BA
BA
Every team working as a Lean Startup
Number of tickets
Need to
automatize
➔ unit tests #compilation
➔ contract tests #compilation
➔ integration tests #runtime
...
Continuous Deployment
➔ Availability
➔ Rollback
➔ Data synchronization
➔ Scalability
➔ Cost/Benefit
Continuous Delivery
Compilation
Unit Tests
Deploy
Staging
Integration
Tests
Automatic
Acceptance
Tests
User
Acceptance
Tes...
Monitor Everything
Feature Toggle
Isolation Build once, Deploy everywhere
Configuration Management
REST Service
Key Value database
Filesystem
Environment
Variable
Green / Blue Deployment
Canary Deploy
Deploy the same way everywhere
Virtualization
Provisioning
Operation System
Virtual box images
Local Machine
Operational System
Operational System Application
Application
Operational System
Application
Still not there
Production Local Machine
Still not there
Kernel Linux
Docker Repository
Scripting
Many, many, many servers
➔ job scheduling
➔ bind containers to physical servers
New Operational System
Failure Everywhere
Test in Production
Christophe Marchal | Software Architect
Thanks for your Attention
Upcoming SlideShare
Loading in …5
×

Devops e a nova cultura - TDC Florianopolis 2015

644 views

Published on

This presentation was created as an introduction for the DevOps day in TDC Floripa 2015. It presents the main ideas behind DevOps and the transformation in term of architecture, infrastrcture and way to think and solve problems when implementing devops in a company,

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Devops e a nova cultura - TDC Florianopolis 2015

  1. 1. Christophe Marchal | Software Architect DevOps e a nova Cultura
  2. 2. christophe.marchal@ilegra.com @toff63 http://github.com/toff63 http://francesbagual.net About me
  3. 3. www.ilegra.com
  4. 4. What DevOps is not ❏ Process ❏ Methodology ❏ Set of Practices ❏ Set of Tools ❏ Certification ❏ Team / Role / Department ❏ SaaS ❏ Framework
  5. 5. What DevOps is ❏ A journey to a desirable state ❏ A way of thinking ❏ A continuous transformation process ❏ The result of experiences ❏ A movement ...
  6. 6. Start up example Let’s deploy!
  7. 7. Start up example Open a ticket
  8. 8. Start up example
  9. 9. Start of the success
  10. 10. Application grow Let’s deploy!
  11. 11. Application grow Too unstable!
  12. 12. Start some XP Practices Only commit in trunk Use of SCM tool Continuous Integration ➔ unit tests #compilation ➔ integration tests #runtime ➔ acceptance tests #runtime
  13. 13. Continuous Integration Compilation Unit Tests Deploy em Staging Integration Tests Automatic Acceptance Tests User Acceptance Tests
  14. 14. Quality Improvement
  15. 15. 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
  16. 16. Isolation via Modularization
  17. 17. Move dependency from Compilation to Runtime
  18. 18. New Deploy Service Service
  19. 19. Application grow I cannot deploy separately! This is safe! Only 1 line of code changed Service Service Service Service
  20. 20. Service dependencies Service Service Service Service Service
  21. 21. SOA
  22. 22. SOA Service Service Contract Service ➔ Dependency only depends on service contract ➔ Service contract has versions ➔ No branch Service Contract Contract Service Contract Contract ➔ unit tests #compilation ➔ contract tests #compilation ➔ integration tests #runtime ➔ acceptance tests #runtime ➔ performance tests #runtime
  23. 23. Update one service I only deploy 1 service This is safe! Only 1 line of code changed Service Contract
  24. 24. 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
  25. 25. Organize teams around services User User User BA BA BA
  26. 26. Every team working as a Lean Startup
  27. 27. 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
  28. 28. Continuous Deployment ➔ Availability ➔ Rollback ➔ Data synchronization ➔ Scalability ➔ Cost/Benefit
  29. 29. Continuous Delivery Compilation Unit Tests Deploy Staging Integration Tests Automatic Acceptance Tests User Acceptance Tests Stress Test Deploy Production
  30. 30. Monitor Everything
  31. 31. Feature Toggle
  32. 32. Isolation Build once, Deploy everywhere
  33. 33. Configuration Management REST Service Key Value database Filesystem Environment Variable
  34. 34. Green / Blue Deployment
  35. 35. Canary Deploy
  36. 36. Deploy the same way everywhere
  37. 37. Virtualization
  38. 38. Provisioning Operation System Virtual box images
  39. 39. Local Machine Operational System Operational System Application Application Operational System Application
  40. 40. Still not there Production Local Machine
  41. 41. Still not there Kernel Linux Docker Repository
  42. 42. Scripting
  43. 43. Many, many, many servers ➔ job scheduling ➔ bind containers to physical servers
  44. 44. New Operational System
  45. 45. Failure Everywhere
  46. 46. Test in Production
  47. 47. Christophe Marchal | Software Architect Thanks for your Attention

×