Let's bring the teams back together

1,842 views

Published on

My DrupalJam 2013 talk introducing devops to the Dutch Drupal Community

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

No Downloads
Views
Total views
1,842
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
18
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Let's bring the teams back together

  1. 1. Lets bring the teamsLets bring the teamsback togetherback togetherDevops, adapt or fail@krisbuytaert
  2. 2. Kris BuytaertKris Buytaert•Chief Trolling Officer and Open SourceChief Trolling Officer and Open SourceConsultant @inuits.euConsultant @inuits.eu•Everything is an effing DNS ProblemEverything is an effing DNS Problem•Building Clouds since before the bookstoreBuilding Clouds since before the bookstore•Some books, some papers, some blogsSome books, some papers, some blogs•DrupalCon #devops global trackchairDrupalCon #devops global trackchair•Core #devopsdays organiser since day 1Core #devopsdays organiser since day 1
  3. 3. So @bertboerland ,So @bertboerland ,What is a devops ?What is a devops ?
  4. 4. devops is not a JobTitledevops is not a JobTitle
  5. 5. Whats this devops thing really about ?Whats this devops thing really about ?
  6. 6. devops, a definition:devops, a definition:
  7. 7. ● Adopt the new philosophy. We are in a new economic age. Western managementAdopt the new philosophy. We are in a new economic age. Western managementmust awaken to the challenge, must learn their responsibilities, and take onmust awaken to the challenge, must learn their responsibilities, and take onleadership for change.leadership for change.● Cease dependence on inspection to achieve quality. Eliminate the need for massiveCease dependence on inspection to achieve quality. Eliminate the need for massiveinspection by building quality into the product in the first place.inspection by building quality into the product in the first place.● Improve constantly and forever the system of production and service, to improveImprove constantly and forever the system of production and service, to improvequality and productivity, and thus constantly decrease costs.quality and productivity, and thus constantly decrease costs.● Institute training on the job.Institute training on the job.● Institute leadership The aim of supervision should be to help people and machinesInstitute leadership The aim of supervision should be to help people and machinesand gadgets do a better job.and gadgets do a better job.● Drive out fear, so that everyone may work effectively for the company.Drive out fear, so that everyone may work effectively for the company.● Break down barriers between departments. People in research, design, sales, andBreak down barriers between departments. People in research, design, sales, andproduction must work as a team, in order to foresee problems of production andproduction must work as a team, in order to foresee problems of production andusage that may be encountered with the product or service.usage that may be encountered with the product or service.● Eliminate slogans, exhortations, and targets for the work force asking for zero defectsEliminate slogans, exhortations, and targets for the work force asking for zero defectsand new levels of productivity. Such exhortations only create adversarialand new levels of productivity. Such exhortations only create adversarialrelationships, as the bulk of the causes of low quality and low productivity belong torelationships, as the bulk of the causes of low quality and low productivity belong tothe system and thus lie beyond the power of the work force.the system and thus lie beyond the power of the work force.●Eliminate management by objective. Eliminate management by numbersEliminate management by objective. Eliminate management by numbersand numerical goals. Instead substitute with leadership.and numerical goals. Instead substitute with leadership.●Remove barriers that rob the hourly worker of his right to pride ofRemove barriers that rob the hourly worker of his right to pride ofworkmanship. The responsibility of supervisors must be changed fromworkmanship. The responsibility of supervisors must be changed fromsheer numbers to quality.sheer numbers to quality.●Remove barriers that rob people in management and in engineering ofRemove barriers that rob people in management and in engineering oftheir right to pride of workmanship.their right to pride of workmanship.● Institute a vigorous program of education and self-improvement.Institute a vigorous program of education and self-improvement.● Put everybody in the company to work to accomplish the transformation. ThePut everybody in the company to work to accomplish the transformation. Thetransformation is everybodys job.transformation is everybodys job.
  8. 8. William EdwardsWilliam EdwardsDemingDeming1986, Out of the Crisis.1986, Out of the Crisis.http://en.wikipedia.org/wiki/W._Edwards_Deminghttp://en.wikipedia.org/wiki/W._Edwards_Deming
  9. 9. World , 200X-2009World , 200X-2009Patrick Debois, Gildas Le Nadan, Andrew Clay Shafer, Kris Buytaert, JezzPatrick Debois, Gildas Le Nadan, Andrew Clay Shafer, Kris Buytaert, JezzHumble, Lindsay Holmwood, John Willis, Chris Read, Julian Simpson, LukeHumble, Lindsay Holmwood, John Willis, Chris Read, Julian Simpson, LukeKanies, John Allspaw and lots of others ..Kanies, John Allspaw and lots of others ..Gent , October 2009Gent , October 2009Mountain View , June 2010Mountain View , June 2010Hamburg , October 2010Hamburg , October 2010Boston, March 2011Boston, March 2011Mountain View, June 2011Mountain View, June 2011Bangalore, Melbourne,Bangalore, Melbourne,Goteborg , October 2011Goteborg , October 2011........10+ Events being planned for 2013.10+ Events being planned for 2013.
  10. 10. ““DevOps is a cultural andDevOps is a cultural andprofessional movement”professional movement”Adam JacobAdam Jacob
  11. 11. C(L)AMSC(L)AMS● CultureCulture● (Lean)(Lean)● AutomationAutomation● MeasurementMeasurement● SharingSharingDamon Edwards and John WillisDamon Edwards and John WillisGene KimGene Kim
  12. 12. Why do we need devops ?Why do we need devops ?
  13. 13. A typical dev shopA typical dev shop● The PM:The PM:•““Put this Code Live, heres a tarball” NOW!Put this Code Live, heres a tarball” NOW!•Marketing Campain is launchedMarketing Campain is launched•We need this yesterdayWe need this yesterday•Its going on national radio at 5Its going on national radio at 5
  14. 14. An oldschool ops shopAn oldschool ops shop● What dependencies ?What dependencies ?● No machines available ?No machines available ?● What database ?What database ?● Security ?Security ?● High Availability ?High Availability ?● Scalability ?Scalability ?● My computer cant install this ?My computer cant install this ?
  15. 15. Devs vs OpsDevs vs Ops
  16. 16. 11 days into production11 days into production
  17. 17. How do we get there ?How do we get there ?
  18. 18. Culture,Culture,automation,automation,Measturement,Measturement,sharingsharing
  19. 19. Burn the SilosBurn the Silos
  20. 20. Playing TogetherPlaying TogetherGetting AlongGetting AlongOpsOpsDevsDevs
  21. 21. Build TrustBuild Trust● ExperimentExperiment•DevDev•TestTest● ProdProd● Automate all theAutomate all thethingsthings● Measure successMeasure success● Measure FailureMeasure Failure
  22. 22. Celebrate SuccessCelebrate Success
  23. 23. Culture,Culture,Automation,Automation,Measurement,Measurement,SharingSharing
  24. 24. Automate all the thingsAutomate all the things● BuildBuild• reproducable builds are undiscussablereproducable builds are undiscussable● TestTest•testing reduces risktesting reduces risk•automate deployments of your test infraautomate deployments of your test infra● DeployDeploy•Infrastructure as CodeInfrastructure as Code•100% automation100% automation•Can you rebuild your infrastructure ?Can you rebuild your infrastructure ?
  25. 25. Do you do Continuous Integration ?Do you do Continuous Integration ?
  26. 26. Do YOU test your code ?Do YOU test your code ?
  27. 27. devops (<)> continuous delilverydevops (<)> continuous delilvery
  28. 28. How many times a day ?How many times a day ?● 10 @ Flickr10 @ Flickr● Deployments used to be painDeployments used to be pain● Nobody dared to deploy a siteNobody dared to deploy a site● Practice makes perfectPractice makes perfect● Knowing you can vs constantly doing itKnowing you can vs constantly doing it
  29. 29. Infrastructure as CodeInfrastructure as Code● Treat configuration automation as codeTreat configuration automation as code● Development best practicesDevelopment best practices•Model your infrastructureModel your infrastructure•Version your cookbooks / manifestsVersion your cookbooks / manifests•Test your cookbooks/ manifestsTest your cookbooks/ manifests•Dev/ test /uat / prod for your infraDev/ test /uat / prod for your infra● Model your infrastructureModel your infrastructure● A working service = automated ( Application Code +A working service = automated ( Application Code +Infrastructure Code + Security + Monitoring )Infrastructure Code + Security + Monitoring )● Think Puppet, Chef, Cfengine, ...Think Puppet, Chef, Cfengine, ...
  30. 30. If my computer cant install yourIf my computer cant install yoursoftware, your software is broken.software, your software is broken.Luke Kanies, Fosdem 2007Luke Kanies, Fosdem 2007
  31. 31. Deploying a Drupal SiteDeploying a Drupal Site● Drush_makeDrush_make● ProfilesProfiles● Features ,strongarm , Custom codeFeatures ,strongarm , Custom code•Configuration as CodeConfiguration as Code● What with external apps and libraries?What with external apps and libraries?• Lucene – Solr – Tika – BI softwareLucene – Solr – Tika – BI software● Test before you drive!Test before you drive!
  32. 32. If my computer cant deploy your site,If my computer cant deploy your site,it isnt worth deploying.it isnt worth deploying.Kris Buytaert, DrupalCon Munich 2012Kris Buytaert, DrupalCon Munich 2012
  33. 33. Culture,Culture,Automation,Automation,Measurement :Measurement :measure all the thingsmeasure all the thingsSharingSharing
  34. 34. Self Service MetricsSelf Service Metrics● Being able to add new metricsBeing able to add new metrics● Build your own dashboardsBuild your own dashboards● Look at metrics / logs on all platformsLook at metrics / logs on all platforms● Learn from the platformLearn from the platform
  35. 35. GraphiteGraphitex
  36. 36. Graphite APIGraphite API
  37. 37. ● Collect from anywhereCollect from anywhere● FilterFilter● Send anywhereSend anywhere● QueingQueing
  38. 38. StatsdStatsd● A network daemon that runs on a zillionA network daemon that runs on a zillionplatform and listens for statistics, like countersplatform and listens for statistics, like countersand timers, sent over UDP and sendsand timers, sent over UDP and sendsaggregates to one or more pluggable backendaggregates to one or more pluggable backendservices (e.g., Graphite).services (e.g., Graphite).
  39. 39. Math 101Math 101● f(x)f(x)● f(x)f(x)● f(x)f(x)● ... statistics 101... statistics 101
  40. 40. Visualize Business MetricsVisualize Business Metrics● $revenue$revenue● #sales#sales● signupssignups● conversionsconversions● Api callsApi calls● Application useApplication use
  41. 41. Culture,Culture,Automation,Automation,Measurement,Measurement,SharingSharing
  42. 42. DashboardsDashboards
  43. 43. Sharing environmentsSharing environments● Build identical environmentsBuild identical environments● Share codeShare code● Shared ownership of content , code andShared ownership of content , code andconfigurationconfiguration
  44. 44. More SharingMore Sharing● Open SourceOpen Source● GithubGithub● Talk about ExperiencesTalk about Experiences● Open SpacesOpen Spaces
  45. 45. FoodFood
  46. 46. ConclusionsConclusions● Drupal gets it and is supportiveDrupal gets it and is supportive● Conversation happensConversation happens● Long Journey aheadLong Journey ahead● Heading in the right directionHeading in the right direction
  47. 47. Its not about the toolsIts not about the tools
  48. 48. ContactContactKris BuytaertKris BuytaertKris.Buytaert@inuits.euKris.Buytaert@inuits.euFurther ReadingFurther Reading@krisbuytaert@krisbuytaerthttp://www.krisbuytaert.be/bhttp://www.krisbuytaert.be/blog/log/http://www.inuits.eu/http://www.inuits.eu/InuitsInuitsDuboistraat 50Duboistraat 502060 Antwerpen2060 AntwerpenBelgiumBelgium+32 475 961221+32 475 961221

×