LAST Conference - Dev-Ops and Continuous Delivery

3,888 views
3,193 views

Published on

This is a talk I gave at the Lean, Agile and Systems Thinking conference in Melbourne, July 2012.

http://www.lastconference.com/

Covering DevOps as a movement. Ideas behind continuous delivery and a sample implementation covering some of those principles in practise using Puppet and Amazon Web Services.

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,888
On SlideShare
0
From Embeds
0
Number of Embeds
212
Actions
Shares
0
Downloads
58
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide
  • Bulleted list for the talk. Highlight as we progress
  • DevOps
  • Start by mapping how your organization delivers, who is involved, how do changes get promoted downstream, etcCollect metrics: lead time, process time, %CAThis will tell you where your constraints are in your delivery process. Remember that the reason uat is slow might be because of something done in coding (a completely different step)Find the bottlenecks, improve them, iterateThis is about continuous improvement. You are never done.
  • I’m only going to talk about the part from coding to release. Now that might not be the constraint in your process. It might be how you manage requirements and ideas. You should look at your highest priority constraints first.Let’s assume your constraint is in here (yellow boxes). How do you improve the delivery process.
  • to everyone in delivery process: dev, tester, dba, sysadmin, ba, etcfrom: compilation, unit tests, functional tests, integration tests, performance tests, etcfast feedback turns out to be the secret. When you achieve that you start winning.
  • Improve Feedback speeds. Testing is covered elsewhere. Dev-Ops side of things.
  • Bulleted list for the talk. Highlight as we progress
  • Application Diagram
  • Time to CI. Be good to your team. Integrate often. Fail fast.
  • Puppet uses a declarative, model-based approach to IT automation.
  • Switch to terminal Review the time of the job. Switch to AWS console. Check the instances. Ssh into the box. Cat the puppet log.
  • Switch to Go. Explain the pipeline.
  • Switch to terminal Review the time of the job. Switch to AWS console. Check the instances. Ssh into the box. Cat the puppet log.
  • Switch to terminal Review the time of the job. Switch to AWS console. Check the instances. Ssh into the box. Cat the puppet log.
  • Improve Feedback speeds. Testing is covered elsewhere. Dev-Ops side of things.
  • LAST Conference - Dev-Ops and Continuous Delivery

    1. Continuous Delivery in the cloud i.e. Applied DevOps
    2. @nigelfds github.com/nigelfds
    3. AgendaIdeas behind this workshop Ideas in practice Continuous integration System integration Production deployment Summary Questions
    4. Dev OpsOps Dev
    5. Devops is not something youbuild, it’s something you do #devops
    6. “Some people get stuck on the word ‘devops’, thinkingthat it’s just about development and operationsworking together.Systems thinking advises us to optimize the whole;therefore devops must apply to the wholeorganization, not only the part between developmentand operations.”— Patrick Debois
    7. How do you improve the delivery process?
    8. “How? By fast, automated of your on the production readiness feedback applications every time there is a change whether ” code, infrastructure, configuration or database Jez Humble Author Continuous Delivery
    9. Great Message!We shall do Continuous Delivery
    10. Automated implementation of yoursystem’s build, deploy, test, andapproval processes.
    11. AutomateInfrastructure Configuration as code Management
    12. ApplicationEnvironmentInfrastructure
    13. AgendaIdeas behind this workshop Ideas in practice Continuous integration System integration Production deployment Summary Questions
    14. Sample Application for #AWS TweetsSample App
    15. github.com/nigelfds/aws-twitter-feed
    16. I win with Continuous Integration
    17. while (true) { if (change checked into vcs) then build & test sleep 60}
    18. aws-twitter-feed repositorywhile (true) { if (change checked into vcs) then build & test sleep 60} RPM
    19. aws-twitter-feed repositorywhile (true) { if (change checked into vcs) then build & test sleep 60} RPM
    20. Building Useful Servers
    21. ApplicationEnvironmentInfrastructure
    22. Puppet is IT automation software that helps systemadministrators manage infrastructurethroughout its lifecycle, fromprovisioning and configurationto patch management and compliance.
    23. Puppet definition for our GO machine
    24. Don’t make the Version Control Sad
    25. github.com/nigelfds/configuration- masterPuppet definitionsand AWS scripts
    26. To keep things moving, lets kick it off
    27. S3 Bucket Self Configured Puppet & AWS Build scripts Server Packaged Scripts Cloud Formation APIs Create MachineBehind the scenes Nigel’s Laptop
    28. AWS CloudFormation gives developersand systems administrators an easy way tocreate and manage a collection ofrelated AWS resources.
    29. Once deployed, you can modify and update the AWS resources in acontrolled and predictable way allowing you to versioncontrol your AWS infrastructure in the same wayas you version control your software
    30. Lets see how we’re doing
    31. Repeatable & Continuous
    32. In Short
    33. Continuous Integration (Using )Declarative Env. Conf. (Using )Infrastructure as Code (Using )
    34. AgendaIdeas behind this workshop Ideas in practice Continuous integrationSystem integration Production deployment Summary Questions
    35. Everything works by itself
    36. But they need to work together
    37. Bring in the conductor =
    38. Complex !
    39. How does this look in
    40. Self Configured GO Server App Server Cloud Formation APIsBehind the scenes
    41. Lets see this on AWS
    42. Snapshot -> AMIs are awesome
    43. Boot Test QA =Speed Prod Instances
    44. Agenda Ideas behind this workshop Ideas in practice Continuous integration System integrationProduction deployment Summary Questions
    45. To keep things moving, lets kick it off
    46. ELB Remove ZERO DOWNTIME ! ID-1 ID-2 AutoscalingTerminateInstance APP APPID-1ID-2 V2.0 V1.0 V2.0 V1.0 ID-3 ID-1 ID-2 ID-4
    47. Lets see this working
    48. AgendaIdeas behind this workshop Ideas in practice Continuous integration System integration Production deployment Summary Questions
    49. This stuff is hard to get right
    50. AutomateInfrastructure Configuration as code Management
    51. Its about Risk
    52. “I do believe that complexity is the enemy.Until we better understand complexity, ourchances of building better IT systems islimited. The first thing we must understandabout complexity is that not all complexity isequal. And the complexity on which mostpeople focus is probably the least complexcomplexity of all.”Roger Sessions http://simplearchitectures.blogspot.com/2009/03/cancer-of-complexity.html

    ×