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.
Why Startups Need Automated Infrastructures Adam Jacob Senior Partner HJK Solutions [email_address] .com
Overview <ul><li>What is an “Automated Infrastructure”? </li></ul><ul><li>Why is it so important? </li></ul><ul><li>Monkey...
Disclaimer <ul><li>These are the tools we use </li></ul><ul><li>They are not the only tools </li></ul><ul><li>They may or ...
What is an “Automated Infrastructure”?
Automated <ul><li>”…a process which may once have been performed manually but has been altered in some way which allows a ...
Infrastructure <ul><li>“Infrastructure is generally a set of interconnected structural elements that provide the framework...
Automated Infrastructure <ul><li>“Having the basic services necessary for your business to operate largely without the aid...
Why is it so important?
To your Operations Staff <ul><li>Mitigates some failures </li></ul><ul><li>They want to be lazy </li></ul><ul><li>Repetiti...
For Startups <ul><li>Time </li></ul><ul><li>Efficiency </li></ul><ul><li>Scalability </li></ul><ul><li>Economics </li></ul...
The Jesse Robbins (mis)Quote <ul><li>“ Operations is the act of extracting value from your resources.” </li></ul>
MonkeyNews - A Case Study All the hottest Monkey news, as selected by your monkey-loving peers! Courtesy National Geographic
What is MonkeyNews <ul><li>Small Startup </li></ul><ul><li>“ Like Digg, only about Monkeys” </li></ul><ul><li>Going to sel...
MonkeyNews on Launch Day
Steps to Launch
Steps to Launch - OS Install  <ul><li>Manual </li></ul><ul><li>Install each system by hand </li></ul><ul><li>1 hour per sy...
Steps to Launch - OS Install  <ul><li>Automated </li></ul><ul><li>Ops1prod built manually </li></ul><ul><ul><li>1 hour </l...
Steps to Launch - OS Install
Steps to Launch - DNS  <ul><li>Manual </li></ul><ul><li>Update each machine in /etc/hosts </li></ul><ul><li>Automated </li...
Steps to Launch - Server Inventory <ul><li>Manual </li></ul><ul><li>Use a wiki </li></ul><ul><li>Automated </li></ul><ul><...
Steps to Launch - Identity Management  <ul><li>Manual </li></ul><ul><li>Add each user everywhere </li></ul><ul><li>Automat...
Steps to Launch - Version Control <ul><li>An Easy One </li></ul><ul><li>You must use version control </li></ul>Symbol From...
Steps to Launch - Configuration Management <ul><li>Manual </li></ul><ul><li>Version Control </li></ul><ul><li>Wiki </li></...
Steps to Launch - Configuration Management <ul><li>Automated </li></ul><ul><li>Puppet </li></ul><ul><li>Cfengine </li></ul...
Puppet Example - sudo
Puppet Example - sudo
Steps to Launch - Configuration Management <ul><li>Automation is Key </li></ul><ul><li>50+ Different Applications </li></u...
Steps to Launch - Monitoring <ul><li>Manual </li></ul><ul><li>Add each server by hand </li></ul><ul><li>Automated </li></u...
Steps to Launch - Trending <ul><li>Manual </li></ul><ul><li>Add each server and graph by hand </li></ul><ul><li>Automated ...
Steps to Launch - Email <ul><li>Another Easy One </li></ul><ul><li>Every server must be able to send email locally. </li><...
Steps to Launch - Application Deployment <ul><li>Manual </li></ul><ul><li>Update the application by hand </li></ul><ul><li...
Launch Day
Tech Crunched! <ul><li>Symptoms </li></ul><ul><li>Monitors alert </li></ul><ul><li>Trending shows the traffic spike </li><...
Tech Crunched! - EC2 <ul><li>Launch more capacity. </li></ul><ul><li>Two minutes later, they are up </li></ul>
Tech Crunched! - iClassify <ul><li>Classify the Servers </li></ul>
Tech Crunched! - Puppet <ul><li>Puppet applies the class that matches the tag: </li></ul>
Tech Crunched! - Deploy <ul><li>Deploy your application! </li></ul><ul><li>“ cap -S env=prod deploy” </li></ul><ul><li>One...
Tech Crunched! - Post Mortem <ul><li>Total Time: ~5 - 10 minutes </li></ul><ul><li>4 steps total! </li></ul><ul><li>We dou...
New Hire <ul><li>Issue </li></ul><ul><li>MonkeyNews hires a new engineer </li></ul><ul><li>Resolution </li></ul><ul><li>Ad...
Add SSL Support <ul><li>Issue </li></ul><ul><li>MonkeyNews has started taking micro-payments (for bananas) </li></ul><ul><...
Review
Review <ul><li>Automated Infrastructure means: </li></ul><ul><ul><li>“ Having the basic services necessary for your busine...
HJK does this for a living. But you can ask me how to do it for free. :) Adam Jacob  +1 (206) 508-4759 [email_address]
June 23-24, 2008 20% off discount: “vel08js”
Upcoming SlideShare
Loading in …5
×

Why Startups Need Automated Infrastructures

18,354 views

Published on

A walkthrough of what an Automated Infrastructure is, why it's important to a startup, and an example of how to build one yourself.

Published in: Technology, Business
  • Hi there! Get Your Professional Job-Winning Resume Here - Check our website! http://bit.ly/resumpro
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Why Startups Need Automated Infrastructures

  1. Why Startups Need Automated Infrastructures Adam Jacob Senior Partner HJK Solutions [email_address] .com
  2. Overview <ul><li>What is an “Automated Infrastructure”? </li></ul><ul><li>Why is it so important? </li></ul><ul><li>MonkeyNews - A Case Study </li></ul><ul><li>Review </li></ul><ul><li>Q & A </li></ul>
  3. Disclaimer <ul><li>These are the tools we use </li></ul><ul><li>They are not the only tools </li></ul><ul><li>They may or may not be the right tools for how you work or think </li></ul>Symbol From IIT Bombay
  4. What is an “Automated Infrastructure”?
  5. Automated <ul><li>”…a process which may once have been performed manually but has been altered in some way which allows a machine or computer to either wholly or partially manipulate the process to save time” </li></ul>
  6. Infrastructure <ul><li>“Infrastructure is generally a set of interconnected structural elements that provide the framework supporting an entire structure” </li></ul>
  7. Automated Infrastructure <ul><li>“Having the basic services necessary for your business to operate largely without the aid of a keeper.” </li></ul>
  8. Why is it so important?
  9. To your Operations Staff <ul><li>Mitigates some failures </li></ul><ul><li>They want to be lazy </li></ul><ul><li>Repetition leads to burnout </li></ul><ul><li>They want to say “Yes” </li></ul>
  10. For Startups <ul><li>Time </li></ul><ul><li>Efficiency </li></ul><ul><li>Scalability </li></ul><ul><li>Economics </li></ul><ul><li>Flexibility </li></ul>
  11. The Jesse Robbins (mis)Quote <ul><li>“ Operations is the act of extracting value from your resources.” </li></ul>
  12. MonkeyNews - A Case Study All the hottest Monkey news, as selected by your monkey-loving peers! Courtesy National Geographic
  13. What is MonkeyNews <ul><li>Small Startup </li></ul><ul><li>“ Like Digg, only about Monkeys” </li></ul><ul><li>Going to sell Advertising as a revenue model </li></ul>
  14. MonkeyNews on Launch Day
  15. Steps to Launch
  16. Steps to Launch - OS Install <ul><li>Manual </li></ul><ul><li>Install each system by hand </li></ul><ul><li>1 hour per system </li></ul>
  17. Steps to Launch - OS Install <ul><li>Automated </li></ul><ul><li>Ops1prod built manually </li></ul><ul><ul><li>1 hour </li></ul></ul><ul><li>Automated install system (PXE) </li></ul><ul><li>EC2, Cloud </li></ul>
  18. Steps to Launch - OS Install
  19. Steps to Launch - DNS <ul><li>Manual </li></ul><ul><li>Update each machine in /etc/hosts </li></ul><ul><li>Automated </li></ul><ul><li>Install a DNS Server </li></ul><ul><li>Use a service provider </li></ul>
  20. Steps to Launch - Server Inventory <ul><li>Manual </li></ul><ul><li>Use a wiki </li></ul><ul><li>Automated </li></ul><ul><li>Use iClassify </li></ul><ul><li>Roll your own </li></ul>
  21. Steps to Launch - Identity Management <ul><li>Manual </li></ul><ul><li>Add each user everywhere </li></ul><ul><li>Automated </li></ul><ul><li>Use LDAP or AD </li></ul>
  22. Steps to Launch - Version Control <ul><li>An Easy One </li></ul><ul><li>You must use version control </li></ul>Symbol From IIT Bombay
  23. Steps to Launch - Configuration Management <ul><li>Manual </li></ul><ul><li>Version Control </li></ul><ul><li>Wiki </li></ul><ul><li>Check in copies of config files </li></ul><ul><li>Try and keep a record of what you have done </li></ul>
  24. Steps to Launch - Configuration Management <ul><li>Automated </li></ul><ul><li>Puppet </li></ul><ul><li>Cfengine </li></ul><ul><li>Bcfg2 </li></ul><ul><li>Infrastructure as Code </li></ul>
  25. Puppet Example - sudo
  26. Puppet Example - sudo
  27. Steps to Launch - Configuration Management <ul><li>Automation is Key </li></ul><ul><li>50+ Different Applications </li></ul><ul><li>ad, apache2, apt-proxy, beaver, build-essential, capistrano, yum, apt, djbdns, emacs, erubis, rubygems, iclassify, imagemagick, iptables, java, logrotate, man, maradns, memcached, mongrel-runit, munin, mysql, nagios, nscd, ntp, openldap, openssh, perl, perlbal, php, postfix, postgresql, puppet, rails, resolver, rsync, ruby, runit, sqlite, subversion, sudo, trac, zsh </li></ul><ul><li>Why repeat yourself? </li></ul>
  28. Steps to Launch - Monitoring <ul><li>Manual </li></ul><ul><li>Add each server by hand </li></ul><ul><li>Automated </li></ul><ul><li>Use your System Inventory and Configuration Management Tools </li></ul>
  29. Steps to Launch - Trending <ul><li>Manual </li></ul><ul><li>Add each server and graph by hand </li></ul><ul><li>Automated </li></ul><ul><li>Use your System Inventory and Configuration Management Tools </li></ul>
  30. Steps to Launch - Email <ul><li>Another Easy One </li></ul><ul><li>Every server must be able to send email locally. </li></ul>Symbol From IIT Bombay
  31. Steps to Launch - Application Deployment <ul><li>Manual </li></ul><ul><li>Update the application by hand </li></ul><ul><li>Automated </li></ul><ul><li>Use Capistrano </li></ul><ul><li>Roll your own </li></ul><ul><li>Integrate with System Inventory </li></ul>
  32. Launch Day
  33. Tech Crunched! <ul><li>Symptoms </li></ul><ul><li>Monitors alert </li></ul><ul><li>Trending shows the traffic spike </li></ul><ul><li>Your RSS reader has the culprit </li></ul>
  34. Tech Crunched! - EC2 <ul><li>Launch more capacity. </li></ul><ul><li>Two minutes later, they are up </li></ul>
  35. Tech Crunched! - iClassify <ul><li>Classify the Servers </li></ul>
  36. Tech Crunched! - Puppet <ul><li>Puppet applies the class that matches the tag: </li></ul>
  37. Tech Crunched! - Deploy <ul><li>Deploy your application! </li></ul><ul><li>“ cap -S env=prod deploy” </li></ul><ul><li>One command. </li></ul>
  38. Tech Crunched! - Post Mortem <ul><li>Total Time: ~5 - 10 minutes </li></ul><ul><li>4 steps total! </li></ul><ul><li>We doubled capacity </li></ul><ul><li>No configuration during the issue at all </li></ul>
  39. New Hire <ul><li>Issue </li></ul><ul><li>MonkeyNews hires a new engineer </li></ul><ul><li>Resolution </li></ul><ul><li>Add the user to LDAP </li></ul><ul><li>Add the right group privileges </li></ul>
  40. Add SSL Support <ul><li>Issue </li></ul><ul><li>MonkeyNews has started taking micro-payments (for bananas) </li></ul><ul><li>Resolution </li></ul><ul><li>Update Apache Virtual Host in your Configuration Management </li></ul><ul><li>Add the SSL Certificates to Configuration Management </li></ul><ul><li>< 10 minutes from start to finish </li></ul>
  41. Review
  42. Review <ul><li>Automated Infrastructure means: </li></ul><ul><ul><li>“ Having the basic services necessary for your business to operate largely without the aid of a keeper.” </li></ul></ul><ul><li>Automated Infrastructure </li></ul><ul><ul><li>Saves time </li></ul></ul><ul><ul><li>Increases efficiency </li></ul></ul><ul><ul><li>Allows for scalability </li></ul></ul><ul><ul><li>Reduces economic impact </li></ul></ul><ul><ul><li>Improves flexibility </li></ul></ul>
  43. HJK does this for a living. But you can ask me how to do it for free. :) Adam Jacob +1 (206) 508-4759 [email_address]
  44. June 23-24, 2008 20% off discount: “vel08js”

×