cloud so much more than a tools fest
play

Cloud... so much more than a tools fest Qcon London 2012 Patrick - PowerPoint PPT Presentation

Cloud... so much more than a tools fest Qcon London 2012 Patrick Debois http://localizationlocalisation.files.wordpress.com/2010/08/rolling-out-old-tools.jpg Vagrant & http://jedi.be/blog Veewee @patrickdebois Freelancer Context: a


  1. Cloud... so much more than a tools fest Qcon London 2012 Patrick Debois http://localizationlocalisation.files.wordpress.com/2010/08/rolling-out-old-tools.jpg

  2. Vagrant & http://jedi.be/blog Veewee

  3. @patrickdebois

  4. Freelancer

  5. Context: a traditional enterprise

  6. With a developer group on a mission to innovate http://1.bp.blogspot.com/-dJydLIEZCQA/TtO26OpjywI/AAAAAAAADBg/wo3Vpl-eesc/s800/Cat%2BArmy.jpg

  7. Realtime TV - Web interaction

  8. Second Screen Applications

  9. http://www.twylah.com/billycoover/topics/xamarin

  10. TV-show +/- 1 million concurrent viewers http://icanhascheezburger.files.wordpress.com/2011/09/2afc3f14-2ab1-49dc-819e-87490c58b16f.jpg

  11. http://www.twylah.com/billycoover/topics/xamarin

  12. Google App Engine

  13. Abstraction is AWESOME

  14. If it fails hard to debug/ understand

  15. Too generic Java Rails Esper Redis Hadoop ETL tools Python Nodejs Mongodb Mysql

  16. Need more control

  17. IAAS http://3.bp.blogspot.com/-TgmC6DkVNiU/TzCTP_BxWqI/AAAAAAAAAb8/797iiSLQ3FY/s1600/funny-pictures-cat-fixes-your-computer.jpg

  18. I never did any cloud before. Only enterprise stuff http://meowcheese.com/files/lolpics/2010/05/dog-not-cat.jpg

  19. What I learned from managing Production Servers http://www.collthings.co.uk/2008/06/10-very-rare-clouds.html

  20. A Single Server WEB APP DB

  21. Starts Growing WEB WEB WEB APP APP APP DB

  22. Generic Servers become Specific Servers WEB WEB WEB APP APP APP DB

  23. Physical becomes Virtual WEB WEB WEB APP APP APP DB xen/vsphere/kvm/...

  24. We learned cloning isn’t working WEBvI WEBv2 WEBv1 APP APP APP DB

  25. We introduce config management APP WEB DB = = = WEB APP DB Config Config Config JEOS JEOS JEOS

  26. Infrastructure as code WEB APP DB Config Config Config JEOS JEOS JEOS Config Management Code Repository Cfengine/Puppet/Chef

  27. What I learned from managing Test Servers http://www.collthings.co.uk/2008/06/10-very-rare-clouds.html

  28. Reuse Across Environments DEV TEST PROD WEB WEB APP APP DB DB Infrastructure Code Repository

  29. Explosion of VM creation DEV TEST PROD APP WEB DB APP WEB DB APP WEB DB APP WEB DB APP WEB DB APP WEB DB APP WEB DB APP WEB DB Infrastructure Application Code Repository Code Repository

  30. UI Interface to Automated Provisioning of VMS APP APP WEB DB INFRA APP WEB DB VM VM VM Cobbler,Spacewalk, ...

  31. Metadata Registry for Systems APP APP WEB DB Config Puppet/Chef INFRA Management Server APP WEB DB VM VM VM

  32. I’VE NEVER INSTALLED A GUI FOR THAT.

  33. $ knife ec2 server create \ -r 'role[webserver]' -I ami-7000f019 \ -f m1.small \ -A 'Your AWS Access Key ID' \ -K 'Your AWS Secret Access Key'

  34. $ ¡puppet ¡node ¡create ¡-­‑-­‑image ¡ami-­‑XxXXxXXX ¡\ -­‑-­‑keypair ¡puppetlabs.admin ¡-­‑-­‑type ¡m1.small aka “cloudpack”

  35. Security Elastic Load groups balancers Servers S3 Storage Keys E-Mail service http://fog.io @geemus Custom Scripts

  36. AWS Network Constraints Security Only 1 ELB Groups only on network not on non- creation interface standard ports http://iruntheinternet.com/lulzdump/images/cat-in-jar-cok-stuck-1298144751i.jpg

  37. Dynamic Monitoring nodes ¡= ¡search(:node, ¡"hostname:[* ¡ TO ¡*] ¡AND ¡ chef_environment:#{node.chef_enviro nment}")

  38. VM creation failure, network hickups, disk erratic behavior http://icanhascheezburger.files.wordpress.com/2009/09/funny-pictures-cat-is-squished.jpg

  39. Embrace

  40. Re-architect

  41. “Quis custodiet ipsos Custodes” who watches the watchers

  42. Noops

  43. What I learned working in the (Amazon)cloud

  44. what’s the difference ? Cloud Internal Web,App,DB Web,App,DB Config Mgmt Config Mgmt Metadata Registry Metadata Registry AMI JEOS Xen VM AWS Console UI Provision

  45. From console to API Web UI AWS Console AWS API “Internals” API Fog Abstracted Jclouds API Boto

  46. Beyond Servers Components Server(s) + Loadbalancers DNS Service IP Address Email Service EBS Volume Firewall Keys

  47. From server to stack Cloudformation Json file specifying order of component creation and dependencies

  48. What I learned from managing development Servers http://www.collthings.co.uk/2008/06/10-very-rare-clouds.html

  49. Development moves from host into virtual machines VM WEB WEB APP APP DB DB HOST HOST

  50. Development starts using config mgt VM VM WEB WEB APP APP DB DB Config HOST JEOS HOST

  51. Reuse “code” across Environments DEV TEST PROD WEB WEB WEB APP APP APP DB DB DB Infrastructure Code Repository

  52. Vagrant VM UP PROVISION HALT VM Management DESTROY WEB Simple CLI APP Vagrantfile DB Puppet/Chef Config Basebox JEOS HOST http://vagrantup.com/

  53. Integrate with Continuous Integration DEV TEST PROD APP APP WEB DB APP WEB DB APP WEB DB INFRA APP WEB DB APP WEB DB APP WEB DB Infrastructure Application Code Repository Code Repository

  54. Development/VM workflow WEB APP DB Config PROVISION JEOS VM UP HALT DESTROY

  55. TEST APP WEB DB APP WEB DB APP WEB DB DEV PROD APP WEB DB APP APP WEB DB APP WEB DB APP WEB DB INFRA APP WEB DB APP WEB DB APP WEB DB Setup Outgrew Peak Capacity Setup Outgrew VM on Laptop needed in Prod Test Lab CLOUD

  56. Reuse “workflow” across Environments “If it’s hard to it more often” DEV TEST PROD Web,App,DB Web,App,DB Web,App,DB Config Mgmt Config Mgmt Config Mgmt JEOS JEOS JEOS AWS AWS AWS Fog Library (API) Mccloud (simple CLI)

  57. +Reuse workflow across hypervisors customers Web,App,DB Web,App,DB Web,App,DB Config Mgmt Config Mgmt Config Mgmt JEOS JEOS JEOS Virtualbox KVM AWS Fog Library

  58. Cloud Libs (Jclouds/Fog/Boto) embracing old and personal “personal” “old” “hybrid” “new” Vsphere Virtualbox Openstack AWS Kvm VM Fusion Eucalyptus Rackspace Libvirt

  59. Abstracting OS Installation Debian Ubuntu Solaris Win Redhat Archlinux Suse Centos Kickstart Preseed Unattended.xml Virtualbox KVM Fusion Parallels http://github.com/jedi4ever/veewee

  60. Cloud Libs (Jclouds/Fog/Boto) beyond servers DNS Keys IPs Storage Securitygroups Loadbalancer

  61. Workflow beyond servers up provision VM halt destroy ip balance Other sorry

  62. Self Servicing

  63. Continuous Integration to Continuous Delivery Faster/Delivery DEV TEST PROD APP APP WEB DB APP WEB DB APP WEB DB INFRA APP WEB DB APP WEB DB APP WEB DB Faster/Feedback Infrastructure Application Code Repository Code Repository

  64. Confidence

  65. Faster/Delivery DEV OPS Faster/Feedback

  66. Infrastructure ~ Code

  67. TDD Cycle Add Test Watch Refactor Test Fail Run tests Write Code

  68. Testing ~ Monitoring Cucumber-nagios

  69. Debugging ~ Metrics

  70. Metrics Reuse Traditional Ops TEST PROD APP WEB DB APP WEB DB APP WEB DB APP WEB DB Collectd,Ganglia, Graphite, Opentsdb

  71. Extend “metrics” to Development TEST PROD DEV APP WEB DB APP APP WEB DB WEB DB APP WEB DB APP APP WEB DB WEB DB Collectd,Ganglia, Graphite, Opentsdb

  72. Extend “logs” to Development TEST PROD DEV APP WEB DB APP APP WEB DB WEB DB APP WEB DB APP APP WEB DB WEB DB Logstash, Graylog

  73. Selfservicing “metrics injection” TEST PROD DEV APP WEB DB APP APP WEB DB WEB DB APP WEB DB APP APP WEB DB WEB DB StatsD

  74. Selfservicing “alerts” TEST PROD DEV APP WEB DB APP APP WEB DB WEB DB APP WEB DB APP APP WEB DB WEB DB Tatle

  75. Selfservicing “graphs” TEST PROD DEV APP WEB DB APP APP WEB DB WEB DB APP WEB DB APP APP WEB DB WEB DB Graphite

  76. App App Continuous Load App Monitoring Alerting Metrics Logging Deployment Integration Testing Metrics Pingdom Loggly Heroku Cloudbees Blitz.io New Relic Pager Duty DatadogHQ Repeating Service Pattern Simple API/CLI , Self-Servicing

  77. +Reuse workflow across monitoring tools Collectd Ganglia Graphite Nagios Zenoss Sensu “my dream” Library

  78. Workflow reuse Monitoring UP

  79. Abstracting It’s all events Timestamp - Key - Value Logs Metrics Monitoring Meta Ops

  80. Social IT radiate information to where it’s needed Business ‘Pulse’

  81. So maybe you don’t have unlimited resources http://www.collthings.co.uk/2008/06/10-very-rare-clouds.html

  82. But you can shape your internal IT as a cloud

  83. Questions?

  84. Thank you! http://www.collthings.co.uk/2008/06/10-very-rare-clouds.html

Recommend


More recommend