Continuous Delivery and Infrastructure as Code

3,451
-1

Published on

Continuous Delivery and Infrastructure as Code W-JAX 2013 slides

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

No Downloads
Views
Total Views
3,451
On Slideshare
0
From Embeds
0
Number of Embeds
18
Actions
Shares
0
Downloads
43
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide
  • ATDD: Acceptance Test Driven DevelopmentBDD: BehaviorDriven Development
  • ATDD: Acceptance Test Driven DevelopmentBDD: BehaviorDriven Development
  • Bislang:nochkeinenharten Blocker beiVerletzung der definiertenKriterien in Sonar (coming soon)
  • ATDD: Acceptance Test Driven DevelopmentBDD: BehaviorDriven Development
  • SchwarzerStrich: Deployment
  • ATDD: Acceptance Test Driven DevelopmentBDD: BehaviorDriven Development
  • ATDD: Acceptance Test Driven DevelopmentBDD: BehaviorDriven Development
  • AWS integration really goodAWS Opsworks is based on ChefAzure supportKnife Plugins fürandereAnbieterimplementierbar
  • AWS integration really goodAWS Opsworks is based on Chef
  • Vagrant für TestsIn der Vagrant-Configkönnen Cookbooks eingetragenwerden
  • Continuous Delivery and Infrastructure as Code

    1. 1. Sascha Möllering | ZANOX.de AG Continuous Delivery and Infrastructure as Code
    2. 2. About me Sascha Möllering Software Engineering Team Lead sascha.moellering@zanox.com http://www.der-maschinenstuermer.de/ @sascha242
    3. 3. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
    4. 4. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
    5. 5. Problem? • Situation two years ago: – Manual server setup – Manual deployment – Deployed files contain a lot of changes – Rollbacks difficult – Time slots for deployments (biweekly) – Windows environment – ...
    6. 6. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
    7. 7. Solution! • Now: – Automated deployments – Infrastructure as Code – Only small changes – Rollbacks are easy – Deploy whenever you want! – Linux environment – ...
    8. 8. DELIVER HIGH QUALITY SOFTWARE AT LOW RISK FAST, ANYTIME BY THE PRODUCT TEAMS THEMSELVES!!!
    9. 9. Solution! • • • • • Etsy Github Flickr Facebook Amazon 25 deployments / day 40 deployments / day 60 deployments / day Up to 100 deployments / day Deployment every 11.6 sec
    10. 10. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
    11. 11. Continuous Delivery „Reduce the cost, time, and risk of delivering incremental changes to users“ (Jez Humble, Adopting continuous delivery)
    12. 12. Continuous Delivery Releasing frequently => Reduce the risk of release (John Allspaw, Ops Meta-Metrics)
    13. 13. Continuous Delivery • Standardize – Naming conventions – Platform – Infrastructure • Fully automated release processes to Live-System • Empower teams to release by themselves
    14. 14. Continuous Delivery • • • • Automate all the tests Introduce ATDD/BDD patterns Static code analysis Automated quality gates
    15. 15. Continuous Delivery
    16. 16. Continuous Delivery
    17. 17. Continuous Delivery Metrics Monitoring Alerting
    18. 18. Continuous Delivery Metrics Monitoring Alerting
    19. 19. Continuous Delivery Monitoring
    20. 20. Continuous Delivery Monitoring
    21. 21. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
    22. 22. Infrastructure as Code • Infrastructure is treated like code – tag, branch and release – testing • Predictable outcome • Removing manual steps • Tools like Chef or Puppet
    23. 23. Infrastructure as Code "Chef is like a little system admin robot ... you tell it how you want your system configured, and it will do all the dirty work.”
    24. 24. Infrastructure as Code
    25. 25. Infrastructure as Code
    26. 26. Infrastructure as Code
    27. 27. Infrastructure as Code
    28. 28. Infrastructure as Code
    29. 29. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
    30. 30. Chef & JBoss Java Magazin 11.12: Automatisierung nach Chef-Rezept Automatisiertes Deployment von JBoss Middleware AWSAktuell: Elastic JBoss AS 7 clustering in AWS using EC2, S3, ELB and Chef
    31. 31. Chef & JBoss • Automatic deployment of JBoss AS using Chef • Components: • • • • • JBoss EAP 5/6 preconfigured in SVN Jmxtrans for monitoring DataSources managed in SVN Stage is a system-property Twiddle is used to apply node-specific configurations
    32. 32. Chef & JBoss
    33. 33. Chef & JBoss
    34. 34. Chef & JBoss EAP 5: EAP 6:
    35. 35. Chef & JBoss • Wrapper around twiddle.sh • Parameters piped into a txt-file • After server-start: • Txt-file analyzed • If file contains twiddle-commands • Twiddle-commands executed
    36. 36. Chef & JBoss Fabric
    37. 37. Chef & JBoss • Fabric – Python library and command-line tool – Streamlining the use of SSH – Application deployment – Used to deploy apps from Nexus – https://github.com/fabric/fabric
    38. 38. Lessons learned • • • • • • Infrastructure as Code is hard Continuous Delivery is hard But: mindset change is even harder Safety net is necessary Continuous improvement There is no „silver bullet“
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×