Sai devops - the art of being specializing generalist

1,376 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,376
On SlideShare
0
From Embeds
0
Number of Embeds
62
Actions
Shares
0
Downloads
27
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Sai devops - the art of being specializing generalist

  1. 1. Devops - The Art of being Specializing Generalist Sai *Venkatakrishnan
  2. 2. About Me <ul><li>Am a developer in Test in Thoughtworks
  3. 3. I love Linux, Lisp, Python & Opensource
  4. 4. Open Source Contributor
  5. 5. Former Watir team member
  6. 6. Currently part of Multiverse STM team
  7. 7. Love to work on Opensource, Databases, Concurrency, Scalability and Performance problems & Lisp
  8. 8. Budding Devop... </li></ul>
  9. 9. DevOps... Why?
  10. 10. Why now? LinkedIn Signal's Architecture - http://sna-projects.com/blog/2010/10/linkedin-signal-a-look-under-the-hood/
  11. 11. The community of developers whose work you see on the Web, who probably don’t know what ADO or UML or JPA even stand for, deploy better systems at less cost in less time at lower risk than we see in the Enterprise. This is true even when you factor in the greater flexibility and velocity of startups. Tim Bray , on his blog January 2010
  12. 12. The Good Ole Days <ul><li>“Put this Code Live, here's a tarball” NOW!
  13. 13. What dependencies ?
  14. 14. No machines available ?
  15. 15. What database ?
  16. 16. Security ?
  17. 17. High Availability ?
  18. 18. Scalability ?
  19. 19. My computer can't install this ? </li></ul>
  20. 20. Devs vs Ops
  21. 21. 10 days into operation <ul><li>What High Load ? What Memory usage ?
  22. 22. Are these Logs ? Or this is actualy customer data ?
  23. 23. How many users are there , should they launch 100 queries each ?? Oh we're having 10K users
  24. 24. Why is debugging enabled ?
  25. 25. Who wrote this ? Why are we doing that?
  26. 26. There is a firewall b/w webserver & DB?
  27. 27. The filesystem is encrypted? </li></ul>
  28. 28. 11 days into operations
  29. 29. We can solve this ! <ul><li>Some people think the Ops work starts on deployment </li><ul><li>Ops = both system, app as platform ! </li></ul><li>It starts much earlier
  30. 30. Get Devs and Ops to talk asap or keep them as one :) </li></ul>
  31. 31. Talk about Cross Functional Reqs <ul><li>Performance & Scalability
  32. 32. Security
  33. 33. Backups
  34. 34. High Availability
  35. 35. Upgradability
  36. 36. Configuration Mgmt
  37. 37. Monitoring </li></ul>
  38. 38. During Development <ul><li>Version Control
  39. 39. Continous integration
  40. 40. Build Pipelines
  41. 41. Configuration Management
  42. 42. Automated deployment on test/staging platforms
  43. 43. Virtualization & Cloud
  44. 44. Continuous Deployment <-- Holy Grail </li></ul>
  45. 45. Devministration ? <ul><li>For Both Devs and Ops
  46. 46. Automate & test your infrastructure & deployment not just your code and tests
  47. 47. Knowing as much as about deployment & production environment eliminates assumptions.
  48. 48. Repetability and openness is good </li></ul>
  49. 49. Going Live
  50. 50. Deploying <ul><li>Automated Deployments
  51. 51. If my computer can't install it , the installer is borken
  52. 52. Reproducable
  53. 53. Think: </li><ul><li>Kickstart, FAI, Preseeding, SystemImager Suite, Vagarant </li></ul></ul>
  54. 54. Configuration Mgmt <ul><li>Configure 1000 nodes,
  55. 55. Modify 2000 files,
  56. 56. Cluster management
  57. 57. Think : </li><ul><li>Cfengine, Puppet, Chef </li></ul><li>Put configs under version control </li></ul>
  58. 58. Test Drive <ul><li>Code as well as infrastructure, deployment & configuration
  59. 59. Think </li><ul><li>Cucumber-nagios </li></ul></ul>
  60. 60. Deploy Apps <ul><li>Code vs Config
  61. 61. Think: </li><ul><li>Fabric, Capistrano, Controltier, ..
  62. 62. Supervisord, God, Monit, Scout </li></ul><li>Test your deployment ! </li></ul>
  63. 63. Deployment isn't the End <ul><li>The job isn't done yet
  64. 64. Monitoring
  65. 65. Upgrading
  66. 66. Continuous deployment
  67. 67. Feed it back to development. Make effective business & design decisions. </li></ul>
  68. 68. High Availabilty
  69. 69. Scalability
  70. 70. Monitor
  71. 71. Devop, definition <ul><li>Join the movement ! </li><ul><li>Devopsdays.org </li></ul></ul>
  72. 72. <ul><li>Blog </li><ul><li>http://wickedwukong.wordpress.com </li></ul><li>Github </li><ul><li>http://github.com/saivenkat </li></ul><li>Twitter </li><ul><li>http://twitter.com/sai_venkat </li></ul><li>LinkedIn </li><ul><li>http://cn.linkedin.com/in/saivenkat </li></ul></ul>
  73. 73. Thank You...
  74. 74. Images: http://www.flickr.com/photos/huffstutterrobertl/4135257384/ http://www.flickr.com/photos/brighton/2153602543/ http://www.flickr.com/photos/gchorus/2074271352/ http://www.flickr.com/photos/49024304@N00/2951673691/sizes/l/ http://www.flickr.com/photos/30302096@N06/2953698548/ http://www.flickr.com/photos/jamescridland/613445810/ http://www.flickr.com/photos/johnmcga/4468003947/

×