0
AUTOMATION @ HITTA.SE      and why it happened
HISTORY
INFRA 1.0   web(windows)                    unique visitors / week
INFRA 1.5   web(windows)                       unique visitors / week cache + api (windows)
INFRA 2.0 (BETA)                  web               (windows)                                         unique visitors / we...
INFRA 2.0 (REFINED)     static                     api    (linux)                  (linux)              static + api      ...
INFRA 2.0   web        web(windows)   (linux)   static      api            unique visitors / week  (linux)   (linux)
STATUSSystem load?System latency?Redundancy?
STATUSSystem load?System latency?Redundancy?
STATUSSystem load?System latency?Redundancy?
STATUSSystem load?System latency?Redundancy?
STATUSSystem load?System latency?Redundancy?
PROBLEM?                web        web 4 x web     (windows)   (linux)                                   4 x web          ...
PROBLEM?   web        web(windows)   (linux)                      4 + 4 + 3 = 11                      •11 nginx           ...
THERE MUST BE A  BETTER WAY!
AD-HOC VS DEFINED
MANUAL VS AUTOMATIC
PREDICTABILITY     PLEASE!
WE WANT
WE WANTReproducible infrastructure
WE WANTDisaster recoveryReproducible infrastructure
WE WANTDisaster recoveryReproducible infrastructure              Free expansion (3 or 100 won’t differ)
WE WANTDisaster recoveryReproducible infrastructure              Free expansion (3 or 100 won’t differ)                   ...
WE WANTDisaster recoveryReproducible infrastructure              Free expansion (3 or 100 won’t differ)                   ...
WE WANTDisaster recoveryReproducible infrastructure              Free expansion (3 or 100 won’t differ)                   ...
WE WANTDisaster recoveryReproducible infrastructure              Free expansion (3 or 100 won’t differ)                   ...
WE WANT Disaster recoveryReproducible infrastructure               Free expansion (3 or 100 won’t differ)                 ...
WE WANT Disaster recoveryReproducible infrastructure               Free expansion (3 or 100 won’t differ)                 ...
WE WANT Disaster recoveryReproducible infrastructure               Free expansion (3 or 100 won’t differ)                 ...
WE WANT Disaster recoveryReproducible infrastructure               Free expansion (3 or 100 won’t differ)                 ...
WE WANT Disaster recoveryReproducible infrastructure               Free expansion (3 or 100 won’t differ)                 ...
WE WANT Disaster recoveryReproducible infrastructure               Free expansion (3 or 100 won’t differ)                 ...
EXPERIENCEAUTOMATIONPush button deployment of     infra + solution            =     complete stack
TOOLINGhttp://en.wikipedia.org/wiki/Comparison_of_open_source_configuration_management_software
MÅRTEN STATUS:
SETUP  Search                                       WebPuppet Agent                                Puppet Agent           ...
SETUP  Search                                       WebPuppet Agent                                Puppet Agent           ...
SETUP  Search                                       WebPuppet Agent                                Puppet Agent           ...
SETUP           Search                                              Websearch     users sudo   sshd                   user...
SETUP           Search                                              Websearch     users sudo   sshd                   user...
4 1/2 daycould have been done in 2 - 3 days          we insisted on 5 days
2011-06-01-stockholm-devops-blitz
2011-06-01-stockholm-devops-blitz
2011-06-01-stockholm-devops-blitz
Upcoming SlideShare
Loading in...5
×

2011-06-01-stockholm-devops-blitz

768

Published on

A 10 minute lightning talk on why and how we wound up with a certain level of infrastructure automation at Hitta.se.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
768
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • We started small.\n
  • And grew ad-hoc.\n
  • For various reasons Linux got introduced in parts of the solution\n
  • Those Linux nodes where then split out into two main node groups\n
  • The much simplified high level overview of the current solution\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • cfengine, then puppet, then chef\n
  • Right from the start it’s pretty obvious what’s being used as far as my network and “research” counts. The long timers started with cfengine and most tend to be on puppet with some on chef. Nonetheless, Puppet or Chef it is.\n
  • At the time of selecting tech we didn’t have the manpower nor the time to learn and introduce any tool ourselves. And we were unable to find anyone who could assist us with Chef - which was our first hand choice.\n
  • Stockholm, I was disappoint.\n
  • On the other hand we did find quite a few people who had experience with Puppet.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • Conceptual setup.\n
  • It need not be expensive.\n
  • Transcript of "2011-06-01-stockholm-devops-blitz"

    1. 1. AUTOMATION @ HITTA.SE and why it happened
    2. 2. HISTORY
    3. 3. INFRA 1.0 web(windows) unique visitors / week
    4. 4. INFRA 1.5 web(windows) unique visitors / week cache + api (windows)
    5. 5. INFRA 2.0 (BETA) web (windows) unique visitors / weekstatic + api cache + api (linux) (windows)
    6. 6. INFRA 2.0 (REFINED) static api (linux) (linux) static + api (linux)
    7. 7. INFRA 2.0 web web(windows) (linux) static api unique visitors / week (linux) (linux)
    8. 8. STATUSSystem load?System latency?Redundancy?
    9. 9. STATUSSystem load?System latency?Redundancy?
    10. 10. STATUSSystem load?System latency?Redundancy?
    11. 11. STATUSSystem load?System latency?Redundancy?
    12. 12. STATUSSystem load?System latency?Redundancy?
    13. 13. PROBLEM? web web 4 x web (windows) (linux) 4 x web static api3 x static (linux) (linux) 4 x API
    14. 14. PROBLEM? web web(windows) (linux) 4 + 4 + 3 = 11 •11 nginx •11 tomcat •11 sshd •11 /etc/sudoers static api (linux) (linux) •11 foo... •11 bar... All manually configured (by us or by per-ticket by provider)
    15. 15. THERE MUST BE A BETTER WAY!
    16. 16. AD-HOC VS DEFINED
    17. 17. MANUAL VS AUTOMATIC
    18. 18. PREDICTABILITY PLEASE!
    19. 19. WE WANT
    20. 20. WE WANTReproducible infrastructure
    21. 21. WE WANTDisaster recoveryReproducible infrastructure
    22. 22. WE WANTDisaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ)
    23. 23. WE WANTDisaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ) Define once
    24. 24. WE WANTDisaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ) We use X in way Y Define once
    25. 25. WE WANTDisaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ) We use X in way Y Define once Apply everywhere (it should be applied)
    26. 26. WE WANTDisaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ) We use X in way Y Define once Apply everywhere Metadata (it should be applied)
    27. 27. WE WANT Disaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ) We use X in way Y Define once Apply everywhere Metadata (it should be applied)How many X do we have?
    28. 28. WE WANT Disaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ) We use X in way Y Define once How many Z of version Y are we running? Apply everywhere Metadata (it should be applied)How many X do we have?
    29. 29. WE WANT Disaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ) We use X in way Y Define once How many Z of version Y are we running? Apply everywhere Metadata (it should be applied)How many X do we have? Query your infrastructure!
    30. 30. WE WANT Disaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ) We use X in way Y Define once How many Z of version Y are we running? Apply everywhere Metadata (it should be applied)How many X do we have? Query your infrastructure! Consistency
    31. 31. WE WANT Disaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ) We use X in way Y Define once How many Z of version Y are we running? Apply everywhere Metadata (it should be applied)How many X do we have? Query your infrastructure! Consistency Predictability
    32. 32. WE WANT Disaster recoveryReproducible infrastructure Free expansion (3 or 100 won’t differ) We use X in way Y Define once How many Z of version Y are we running? Apply everywhere Metadata (it should be applied)How many X do we have? Query your infrastructure! Consistency Predictability Confidence
    33. 33. EXPERIENCEAUTOMATIONPush button deployment of infra + solution = complete stack
    34. 34. TOOLINGhttp://en.wikipedia.org/wiki/Comparison_of_open_source_configuration_management_software
    35. 35. MÅRTEN STATUS:
    36. 36. SETUP Search WebPuppet Agent Puppet Agent Development puppet master jenkins ci subversion Puppet Agent
    37. 37. SETUP Search WebPuppet Agent Puppet Agent Development puppet master jenkins ci subversion Puppet Agent
    38. 38. SETUP Search WebPuppet Agent Puppet Agent Development puppet master jenkins ci subversion Puppet Agent
    39. 39. SETUP Search Websearch users sudo sshd users sudo sshd jvm nginx play! Puppet Agent Puppet Agent Development puppet master jenkins ci subversion Puppet Agent
    40. 40. SETUP Search Websearch users sudo sshd users sudo sshd jvm nginx play! Puppet Agent Puppet Agent Development puppet master jenkins ci subversion Puppet Agent
    41. 41. 4 1/2 daycould have been done in 2 - 3 days we insisted on 5 days
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×