0
devops jungle of tools         Infrastructure v/s Deployment automation         @rantav         CTO @ Social Studios TVMon...
What is Social Studios?Monday, January 28, 13
What is Social Studios?Monday, January 28, 13
What is Social Studios?Monday, January 28, 13
What is Social Studios?Monday, January 28, 13
Monday, January 28, 13
devops         jungle of         toolsMonday, January 28, 13
As learnt by - Myself                                   atMonday, January 28, 13
Start with a         personal         story         My goal was to:           Deploy apps           Maintain infraMonday, ...
Start with a         personal         story         That’s me 3 years         ago.Monday, January 28, 13
Confused         Start with a           Chef                      What should I do?                  Puppet         person...
Monday, January 28, 13
Aha !!!Monday, January 28, 13
Aha !!!         I need a tool         that:Monday, January 28, 13
Aha !!!         I need a tool         that:         Maintains         InfrastructureMonday, January 28, 13
Aha !!!         I need a tool         that:         Maintains         Infrastructure         AND         Deploy my apps!Mo...
Maintain         Infrastructure         AND         Deploy my apps ???Monday, January 28, 13
I didn’t find it         Maintain         Infrastructure         AND         Deploy my apps ???Monday, January 28, 13
???         Maintain         Infrastructure         AND         Deploy my apps ???Monday, January 28, 13
But Why ???         ???         Maintain         Infrastructure         AND         Deploy my apps ???Monday, January 28, 13
They are not         the same!         Infrastructure         ≠         App DeploymentMonday, January 28, 13
Oh...         They are not         the same!         Infrastructure         ≠         App DeploymentMonday, January 28, 13
Why are         they         different?         And what do they         have in common?Monday, January 28, 13
And what did I end up using?Monday, January 28, 13
What did I use?               Case 1:                     Chef                     gluMonday, January 28, 13
What does chef do?               Installs infrastructure                     java                     databases           ...
What does glu do?               Deploy our apps                     Tomcat based appsMonday, January 28, 13
What did I use?               Case 2:                     Chef                     FabricMonday, January 28, 13
What does chef do?                     Provision servers                     Install Java, Tomcat                     Inst...
What does Fabric do?                     Deploys apps                         Tomcat based                         or jett...
Isn’t it easier to use just one         tool?               Yes!Monday, January 28, 13
So why am I using two         tools?               Because they are               differentMonday, January 28, 13
Let’s take a         look at the         tools now         Infrastructure         ≠         App Deployment !!!Monday, Janu...
Chef         Recipes, Resources,         Convergence.Monday, January 28, 13
Puppet         Define Desired State         Enforce         MonitorMonday, January 28, 13
CFEngine         Desired State         Self Healing         MonitorMonday, January 28, 13
Control         Tier         Command         DispatcherMonday, January 28, 13
glu         Deployment         Automation and         MonitoringMonday, January 28, 13
fabric         Deployment         and administrationMonday, January 28, 13
Capistrano         Remote server         automationMonday, January 28, 13
Hybrid?               So - Chef, Puppet, CFEngine maintain infra                     But - can they also deploy applicatio...
Hybrid?               So - glu, fab, cap, CTier can deploy                     But - can they also maintain infra?        ...
Why awkward?               Because Infrastructure ≠ Deployment automationMonday, January 28, 13
How is it different?               Let’s see...Monday, January 28, 13
How is it different?               Infrastructure and               application are different               in a few waysM...
ConfidenceMonday, January 28, 13
Confidence               Different level of Confidence               conf(linux || mysql) > conf(in-house apps)Monday, Janua...
Confidence               Different level of Confidence               conf(linux || mysql) > conf(in-house apps)             ...
Confidence               Different level of Confidence               conf(linux || mysql) > conf(in-house apps)             ...
FrequencyMonday, January 28, 13
Frequency               Frequency of changeMonday, January 28, 13
Frequency               Frequency of change               freq(deploy database) ≪ freq(deploy new version)Monday, January ...
Frequency               Frequency of change               freq(deploy database) ≪ freq(deploy new version)               H...
Frequency               Frequency of change               freq(deploy database) ≪ freq(deploy new version)               H...
ControlMonday, January 28, 13
Control               Control over the actual processMonday, January 28, 13
Control               Control over the actual process               Deployments:Monday, January 28, 13
Control               Control over the actual process               Deployments:                     Control exactly when ...
Control               Control over the actual process               Deployments:                     Control exactly when ...
Control               Control over the actual process               Deployments:                     Control exactly when ...
Control               Control over the actual process               Deployments:                     Control exactly when ...
Control               Control over the actual process               Deployments:                     Control exactly when ...
Heterogenous         HomogenousMonday, January 28, 13
Heterogenous         Homogenous               Heterogeneous v/s HomogenousMonday, January 28, 13
Heterogenous         Homogenous               Heterogeneous v/s Homogenous               Infrastructure lives in Heterogen...
Heterogenous         Homogenous               Heterogeneous v/s Homogenous               Infrastructure lives in Heterogen...
Who’s code is it?Monday, January 28, 13
Who’s code is it?               When it’s your code you can:                     Instrument it (healthcheck, deployment ho...
Who’s code is it?               When it’s your code you can:                     Instrument it (healthcheck, deployment ho...
Take Chef and Glu               So, for example...Monday, January 28, 13
Where does Chef stand out?               Recipes for almost anything                     Databases, App Servers, Languages...
Where does Chef stand out?               Recipes for almost anything           Your code            no recipes            ...
Where does Chef stand out?               Heterogeneous environments                     Any linux, windows, osx (resource ...
Where does Chef stand out?               Heterogeneous environments           Deployment environments are Homogenous      ...
Where does Chef stand out?               Runs unattended                     to assure stateMonday, January 28, 13
Where does Chef stand out?               Runs unattended         Your want to monitor it                     to assure sta...
Where does Glu stand out?               Fine control over the deployment processMonday, January 28, 13
Where does Glu stand out?         Packaged code theNot neededprocess          Fine control over deploymentMonday, January ...
Where does Chef stand out?               Status update and monitoring during deploymentMonday, January 28, 13
Where does Chef stand out?         Infrastracture update - usually taken offline           Status update and monitoring dur...
Where does Chef stand out?               High frequency model changeMonday, January 28, 13
Where does Chef stand out?         Low Frequency model change           High frequencyMonday, January 28, 13
Compare                                  Infrastructure   Deployment                                                      ...
To sum up               Chef      Infrastructure               Glu / Fabric / Capistrano   Applications               Yes ...
To sum up               Chef      Infrastructure               Glu / Fabric / Capistrano   Applications               Yes ...
What does the future hold?               Immutable Servers?                         aka Phoenix Servers                   ...
This presentation               Is here:               https://speakerdeck.com/rantav/devops-jungle-of-toolsMonday, Januar...
Upcoming SlideShare
Loading in...5
×

DevOps Jungle of Tools, Ran Tavory

13,878

Published on

Between Chef, Puppet, Capistrano, Fabric, Pallet, Deployinator, ControlTier, how do you choose?

What tool's good for what?

In this session, Ran will present a taxonomy of deployment automation and infrastructure automation tools. Ran will further analyze their capabilities and help you make an informed decision about choosing the right tool for the right DevOps job.

Presented at DevOps Con Israel 2013

Published in: Technology
1 Comment
19 Likes
Statistics
Notes
  • This is Marvel's latest and most popular creation of these days. So
    Download Fast & Furious 6 Movie Link Here:
    http://fast-furious6moviedownload.webs.com/......movie free download.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
13,878
On Slideshare
0
From Embeds
0
Number of Embeds
19
Actions
Shares
0
Downloads
154
Comments
1
Likes
19
Embeds 0
No embeds

No notes for slide

Transcript of "DevOps Jungle of Tools, Ran Tavory"

  1. 1. devops jungle of tools Infrastructure v/s Deployment automation @rantav CTO @ Social Studios TVMonday, January 28, 13
  2. 2. What is Social Studios?Monday, January 28, 13
  3. 3. What is Social Studios?Monday, January 28, 13
  4. 4. What is Social Studios?Monday, January 28, 13
  5. 5. What is Social Studios?Monday, January 28, 13
  6. 6. Monday, January 28, 13
  7. 7. devops jungle of toolsMonday, January 28, 13
  8. 8. As learnt by - Myself atMonday, January 28, 13
  9. 9. Start with a personal story My goal was to: Deploy apps Maintain infraMonday, January 28, 13
  10. 10. Start with a personal story That’s me 3 years ago.Monday, January 28, 13
  11. 11. Confused Start with a Chef What should I do? Puppet personal What should I choose? story Control I have to maintain Tier That’s me 3 years CFEngine infrastructure ago. But I also have to deploy my apps ... Are these the ??? same?Monday, January 28, 13
  12. 12. Monday, January 28, 13
  13. 13. Aha !!!Monday, January 28, 13
  14. 14. Aha !!! I need a tool that:Monday, January 28, 13
  15. 15. Aha !!! I need a tool that: Maintains InfrastructureMonday, January 28, 13
  16. 16. Aha !!! I need a tool that: Maintains Infrastructure AND Deploy my apps!Monday, January 28, 13
  17. 17. Maintain Infrastructure AND Deploy my apps ???Monday, January 28, 13
  18. 18. I didn’t find it Maintain Infrastructure AND Deploy my apps ???Monday, January 28, 13
  19. 19. ??? Maintain Infrastructure AND Deploy my apps ???Monday, January 28, 13
  20. 20. But Why ??? ??? Maintain Infrastructure AND Deploy my apps ???Monday, January 28, 13
  21. 21. They are not the same! Infrastructure ≠ App DeploymentMonday, January 28, 13
  22. 22. Oh... They are not the same! Infrastructure ≠ App DeploymentMonday, January 28, 13
  23. 23. Why are they different? And what do they have in common?Monday, January 28, 13
  24. 24. And what did I end up using?Monday, January 28, 13
  25. 25. What did I use? Case 1: Chef gluMonday, January 28, 13
  26. 26. What does chef do? Installs infrastructure java databases etc... Installs Glu server and agentsMonday, January 28, 13
  27. 27. What does glu do? Deploy our apps Tomcat based appsMonday, January 28, 13
  28. 28. What did I use? Case 2: Chef FabricMonday, January 28, 13
  29. 29. What does chef do? Provision servers Install Java, Tomcat Install DBs Set up users, keys logstash nagios, etc...Monday, January 28, 13
  30. 30. What does Fabric do? Deploys apps Tomcat based or jetty Notifications testsMonday, January 28, 13
  31. 31. Isn’t it easier to use just one tool? Yes!Monday, January 28, 13
  32. 32. So why am I using two tools? Because they are differentMonday, January 28, 13
  33. 33. Let’s take a look at the tools now Infrastructure ≠ App Deployment !!!Monday, January 28, 13
  34. 34. Chef Recipes, Resources, Convergence.Monday, January 28, 13
  35. 35. Puppet Define Desired State Enforce MonitorMonday, January 28, 13
  36. 36. CFEngine Desired State Self Healing MonitorMonday, January 28, 13
  37. 37. Control Tier Command DispatcherMonday, January 28, 13
  38. 38. glu Deployment Automation and MonitoringMonday, January 28, 13
  39. 39. fabric Deployment and administrationMonday, January 28, 13
  40. 40. Capistrano Remote server automationMonday, January 28, 13
  41. 41. Hybrid? So - Chef, Puppet, CFEngine maintain infra But - can they also deploy applications? They could... But - it’s awkward ☹ Example: Use shef for ad-hoc tasks.Monday, January 28, 13
  42. 42. Hybrid? So - glu, fab, cap, CTier can deploy But - can they also maintain infra? They could... But - it’s awkward ☹ Example: Use fabric to deploy mysql.Monday, January 28, 13
  43. 43. Why awkward? Because Infrastructure ≠ Deployment automationMonday, January 28, 13
  44. 44. How is it different? Let’s see...Monday, January 28, 13
  45. 45. How is it different? Infrastructure and application are different in a few waysMonday, January 28, 13
  46. 46. ConfidenceMonday, January 28, 13
  47. 47. Confidence Different level of Confidence conf(linux || mysql) > conf(in-house apps)Monday, January 28, 13
  48. 48. Confidence Different level of Confidence conf(linux || mysql) > conf(in-house apps) Widely used systems (linux, mysql)Monday, January 28, 13
  49. 49. Confidence Different level of Confidence conf(linux || mysql) > conf(in-house apps) Widely used systems vs in-house apps, (linux, mysql) limited testingMonday, January 28, 13
  50. 50. FrequencyMonday, January 28, 13
  51. 51. Frequency Frequency of changeMonday, January 28, 13
  52. 52. Frequency Frequency of change freq(deploy database) ≪ freq(deploy new version)Monday, January 28, 13
  53. 53. Frequency Frequency of change freq(deploy database) ≪ freq(deploy new version) How often do you deploy a new DB? every couple of months / yearsMonday, January 28, 13
  54. 54. Frequency Frequency of change freq(deploy database) ≪ freq(deploy new version) How often do you deploy a new DB? every couple of months / years How often do you deploy new apps? Dozens a dayMonday, January 28, 13
  55. 55. ControlMonday, January 28, 13
  56. 56. Control Control over the actual processMonday, January 28, 13
  57. 57. Control Control over the actual process Deployments:Monday, January 28, 13
  58. 58. Control Control over the actual process Deployments: Control exactly when they happenMonday, January 28, 13
  59. 59. Control Control over the actual process Deployments: Control exactly when they happen Notify ppl, monitoring systems, with progressMonday, January 28, 13
  60. 60. Control Control over the actual process Deployments: Control exactly when they happen Notify ppl, monitoring systems, with progress Gradual, controlled and cautious deploymentsMonday, January 28, 13
  61. 61. Control Control over the actual process Deployments: Control exactly when they happen Notify ppl, monitoring systems, with progress Gradual, controlled and cautious deployments Test as you goMonday, January 28, 13
  62. 62. Control Control over the actual process Deployments: Control exactly when they happen Notify ppl, monitoring systems, with progress Gradual, controlled and cautious deployments Test as you go Maybe rollbackMonday, January 28, 13
  63. 63. Heterogenous HomogenousMonday, January 28, 13
  64. 64. Heterogenous Homogenous Heterogeneous v/s HomogenousMonday, January 28, 13
  65. 65. Heterogenous Homogenous Heterogeneous v/s Homogenous Infrastructure lives in Heterogeneous environments Example: install mysql on ubuntu, centos, osx, winMonday, January 28, 13
  66. 66. Heterogenous Homogenous Heterogeneous v/s Homogenous Infrastructure lives in Heterogeneous environments Example: install mysql on ubuntu, centos, osx, win Apps live in Homogenous environments. Example: Rails apps only need a Rack server Example: Java apps need only a JVMMonday, January 28, 13
  67. 67. Who’s code is it?Monday, January 28, 13
  68. 68. Who’s code is it? When it’s your code you can: Instrument it (healthcheck, deployment hooks)Monday, January 28, 13
  69. 69. Who’s code is it? When it’s your code you can: Instrument it (healthcheck, deployment hooks) If it’s not your code, you have less control hope to get lucky or hack around it...Monday, January 28, 13
  70. 70. Take Chef and Glu So, for example...Monday, January 28, 13
  71. 71. Where does Chef stand out? Recipes for almost anything Databases, App Servers, Languages...Monday, January 28, 13
  72. 72. Where does Chef stand out? Recipes for almost anything Your code no recipes Databases, App Servers, Languages...Monday, January 28, 13
  73. 73. Where does Chef stand out? Heterogeneous environments Any linux, windows, osx (resource providers)Monday, January 28, 13
  74. 74. Where does Chef stand out? Heterogeneous environments Deployment environments are Homogenous Any linux, windows, osx (resource providers)Monday, January 28, 13
  75. 75. Where does Chef stand out? Runs unattended to assure stateMonday, January 28, 13
  76. 76. Where does Chef stand out? Runs unattended Your want to monitor it to assure stateMonday, January 28, 13
  77. 77. Where does Glu stand out? Fine control over the deployment processMonday, January 28, 13
  78. 78. Where does Glu stand out? Packaged code theNot neededprocess Fine control over deploymentMonday, January 28, 13
  79. 79. Where does Chef stand out? Status update and monitoring during deploymentMonday, January 28, 13
  80. 80. Where does Chef stand out? Infrastracture update - usually taken offline Status update and monitoring during deploymentMonday, January 28, 13
  81. 81. Where does Chef stand out? High frequency model changeMonday, January 28, 13
  82. 82. Where does Chef stand out? Low Frequency model change High frequencyMonday, January 28, 13
  83. 83. Compare Infrastructure Deployment ⍻ Chef ✓ (shef) Puppet ✓ ? Glu ╳ ✓ Fabric ⍻ ✓Monday, January 28, 13
  84. 84. To sum up Chef Infrastructure Glu / Fabric / Capistrano Applications Yes - it’s more tools But - Use the right tool for the job...Monday, January 28, 13
  85. 85. To sum up Chef Infrastructure Glu / Fabric / Capistrano Applications Yes - it’s more tools But - Use the right tool for the job...Monday, January 28, 13
  86. 86. What does the future hold? Immutable Servers? aka Phoenix Servers vs Snowflake Servers Pallet?Monday, January 28, 13
  87. 87. This presentation Is here: https://speakerdeck.com/rantav/devops-jungle-of-toolsMonday, January 28, 13
  1. A particular slide catching your eye?

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

×