Your SlideShare is downloading. ×
0
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Enterprise DevOps: Scaling Build, Deploy, Test, Release

6,184

Published on

Slides from this webcast: bit.ly/mTUTq4 …

Slides from this webcast: bit.ly/mTUTq4

Discussion of what DevOps is, why we need it, what sorts of shared tooling helps it, and how it fits in to an enterprise rollout.

Published in: Technology, Business
0 Comments
15 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,184
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
0
Likes
15
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Enterprise DevOps: Scaling Build, Deploy, Test, Release<br />Eric Minick, Lead Consultant<br />
  • 2. Agenda<br />What is DevOps (and why does it exist)?<br />What do we need from DevOps?<br />Tools for DevOps<br />Adopting DevOps in the Enterprise<br />
  • 3. Agenda<br />What is DevOps (and why does it exist)?<br />What do we need from DevOps?<br />Tools for DevOps<br />Adopting DevOps in the Enterprise<br />
  • 4. What is DevOps? – the Patrick Debois Take<br />We make bad software and deliver late<br />Fear of change <br />Risky Deployments<br />It works on my machine<br />Silos<br />A DevOps Mindset Emphasizes:<br />We’re all on the same team <br />Developers, Testers, Ops, Managers…<br />Cross-Disciplinary Approach<br />Lots of Communication<br />http://www.jedi.be/blog/2010/02/12/what-is-this-devops-thing-anyway/<br />
  • 5. What is DevOps, Ctd<br />It’s Agile applied beyond Development<br />Cross-Functional Teams<br />Focus on Results<br />Embracing Change<br />
  • 6. Traditional SDLC Roles<br />
  • 7. Why?<br />Business demand for more releases<br />Growing application complexity<br />Increased controls and audit requirements<br />Economics limit headcount<br />
  • 8. Why? – Business Demand for more Releases<br />High investment in software needs returns quickly<br />Respond in a competitive landscape<br />Agile Development<br />More responsive<br />Smaller updates more quickly<br />Hasn’t addressed actually releasing these changes<br />
  • 9. Why? - Growing Application Complexity<br />Service Oriented Architectures make for more pieces that need to be released together<br />
  • 10. Why? - Increased Controls and Audit<br />We need to comply with a variety of standards and rules<br />Sarbannes-Oxley Act of 2002, SAS 70, CMMI 2/3, ISO 9001:2008, FDA and PCI compliance<br />Basically:<br />Separation of duties<br />Clear audit trails<br />Secure everything<br />
  • 11. Why? - Economics<br />Do more… but you get no more people<br />
  • 12. Agenda<br />What is DevOps (and why does it exist)?<br />What do we need from DevOps?<br />Tools for DevOps<br />Adopting DevOps in the Enterprise<br />
  • 13. What we need<br />Automate processes NOT run them manually<br />Automatic Audit Trail NOT bureaucracy<br />Cooperation NOT throwing it over the wall<br />Shared Automation NOT repeating ourselves<br />
  • 14. Automation is a big part of what we need<br />Builds – Production Ready Builds<br />Deployments – To test environments (Dev, SIT, UAT, Perf) and production (Live, DR, Training)<br />Tests – Smoke, regression, Security<br />
  • 15. But Today’s Automation is in Silos<br />Build scripts<br />Unit tests<br />Static analysis tools<br />Nightly build<br />Continuous Integration<br />Update test environment<br />Deploy test data<br />Functional tests<br />Performance/Load tests<br />Static analysis tools<br />Deployment scripts<br />Provisioning Tools<br />Archive releases in Definitive Media Library<br />
  • 16. Team-level automation has benefits<br />Save themselves time<br />Automate what they would otherwise do manually<br />Better visibility between team members<br />CI lets other developers know the build is broken<br />Smoke tests let us know if it’s worth manual testing<br />Wiki board with which build is on which lab machine<br />Ops – updating a status board<br />Consistency<br />Fewer mistakes in executing the process<br />Less time tracking down bugs<br />Higher quality products<br />
  • 17. Team-Level Automation Isn’t Enough<br />Each team manages the same things differently<br />Deployments<br />Configuration (drift)<br />Deployment verification (smoke tests)<br />Audit questions that cut across silos:<br />What source code was used to build what’s in production?<br />Is production configured the same as the test environment?<br />What build was in production on Feb. 12, what was in it, who put it there, and was it tested?<br />
  • 18. DevOps Spans Silos<br />EnterpriseDevOpsties together Development, QA, Release Management and Operations to give end-to-end traceability.<br />
  • 19. Terms relating to end-to-end automation<br />DevOps<br />Enterprise Continuous Integration<br />Build Pipeline / Build Life<br />Continuous Deployment<br />Continuous Delivery<br />
  • 20. Visualizing an SDLC Pipeline<br />
  • 21. Foundational Tools for DevOps<br />Tools should support automation and audit<br />Expand on team level automation<br />Common platform for builds, deployments, tests<br />Central reporting and improved visibility<br />No Hiding. No Heroes. <br />
  • 22. Build Promotion / Pipeline<br />Each stage can leverage existing team-level automation<br />Not all builds complete the pipeline<br />Stages are linked with shared reporting and reference same files<br />
  • 23. Continuous, quality builds<br />Need CI to produce deployable, traceable builds. <br />Artifacts + dependencies + configuration information = “The Build”<br />The Build becomes the unique identifier to provide traceability across systems.<br />Aids Audit:<br />We have one identifier for stuff from dev to ops<br />Supports Automation:<br />Consistent communication for hand-offs<br />A complete bundle of deployment “stuff” <br />
  • 24. Artifact Repository (DML)<br />Need an artifact repository<br />Traceability to source still essential<br />Repository (ITIL DML) becomes a building block of the end-to-end system<br />Aids Audit<br />What source code was used to build what’s in production?<br />Supports Automation<br />Builds populate it. Deployments retrieve from it. <br />
  • 25. Configuration Management<br />Need configuration driven by the system instead of done by hand<br />Extract configuration from one system, deploy to another<br />Can reduce deployment failures by 90%<br />Aids Audit:<br />Is production configured the same as test?<br />Supports Automation:<br />Addresses easiest part to forget when creating the manual deployment doc<br />
  • 26. Track Complex Deployments<br />How do the database, application, configuration, and content changes relate?<br />Aids Audit:<br />Did the whole change go out, or just part of it?<br />Supports Automation<br />Orders and coordinates automated workflows<br />
  • 27. Role Based Controls<br />Shared automation with rights for who does what<br />Devs build and own dev test<br />QA deploys to their environments and run tests<br />Operations runs deployments to production<br />Managers approve and monitor<br />Aids Audit<br />Clear controls and separation of duties<br />Supports Automation<br />Removes barriers to adopting shared automation<br />
  • 28. Automated Tests<br />Regression tests for shorter QA cycles<br />Smoke tests for validating deployments in ALL environments<br />Aids Audit<br />Easily demonstrable tests run against the release<br />Supports Automation<br />Quickly detects deployment problems and prompt rollback<br />
  • 29. Requirements forDevOps automation<br />Need an artifact repository to trace “The Build”<br />What source code was used to build what’s in production?<br />Need to drive configuration from the system<br />Is production configured the same as the test environment?<br />Need manage complex deployments<br />Which versions of various tiers go together?<br />Need to control & track who, did what, when<br />What build was in production on Feb. 12, what was in it, and who put it there?<br />Need to track historical information<br />Did the tests all pass for the build we put into production six months ago?<br />Need automated smoke tests<br />Did the release work?<br />
  • 30. Scaling DevOps to the Enterprise<br />Most organizations start with pilot projects for build and deployment automation<br />The enterprise will want to adopt this throughout development<br />
  • 31. Drivers for enterprise adoption<br />Seek to adopt “best practices”<br />Why have any team doing something less than the best?<br />Consistency<br />Reduce friction moving people between teams<br />Invest in training materials (help, documentation, training videos)<br />
  • 32. What’s needed for enterprise deployment?<br />Scalability<br />Find my project among 5000<br />Process flexibility (hard coded script names, certain user, certain machine, IP addresses, platform support)<br />Economies of Scale <br />Wait… does each team need its own (under-utilized) server?<br />Better solution: pool of servers<br />
  • 33. What’s needed for enterprise deployment?<br />Management<br />Licensing<br />Support<br />Keeping the system running<br />Training<br />Security<br />Keep teams from breaking each-other<br />
  • 34. The human side of enterprise adoption<br />Beware of Conway’s law:<br />Cooperation and shared automation are unnatural when you work for different bosses.<br />Solve the problem for everyone involved<br />Cast a wide net: Involve a wide audience early<br />Make it easier to get their job done within the system than outside it<br />
  • 35. Four strategies for facing Conway’s Law<br />Hire engineers that have skills in development, test and system administration<br />Put together cross functional teams with developers, testers and sys-admins<br />Create a central “DevOps Infrastructure Team.” Provides shared infrastructure as a service, facilitates Dev / Ops communication .<br />Fight through it! There’s nothing keeping you from asking, “How do I make your life easier?” <br />
  • 36. Summary<br />Document based communication and manual build and release processes are slow and broken<br />Greater cooperation between development and operations is needed<br />A common automation infrastructure helps<br /> Someone needs to make it happen<br />
  • 37. References<br />http://urbancode.com/resources<br />Enterprise CI Maturity Model<br />Death to Manual Deployments!<br />Build & Deployment Automation for the Lean Economy<br />ITIL Release Management and Automation<br />http://urbancode.com/blogs/<br />http://twitter.com/UrbanCodeSoft<br />
  • 38. Yes, we sell products for this<br />AnthillPro is becoming the DevOps Platform<br />DevOps Platform<br />End to End Automation<br />UrbanBuild<br />Build automation and CI for the hard problems<br />UrbanDeploy<br />Deployment and release management<br />
  • 39. Questions?<br />

×