Your SlideShare is downloading. ×
  • Like
Continuous Delivery and Infrastructure as Code
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Continuous Delivery and Infrastructure as Code

  • 2,390 views
Published

Continuous Delivery and Infrastructure as Code W-JAX 2013 slides

Continuous Delivery and Infrastructure as Code W-JAX 2013 slides

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,390
On SlideShare
0
From Embeds
0
Number of Embeds
16

Actions

Shares
Downloads
20
Comments
0
Likes
2

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
  • 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

Transcript

  • 1. Sascha Möllering | ZANOX.de AG Continuous Delivery and Infrastructure as Code
  • 2. About me Sascha Möllering Software Engineering Team Lead sascha.moellering@zanox.com http://www.der-maschinenstuermer.de/ @sascha242
  • 3. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
  • 4. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
  • 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. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
  • 7. Solution! • Now: – Automated deployments – Infrastructure as Code – Only small changes – Rollbacks are easy – Deploy whenever you want! – Linux environment – ...
  • 8. DELIVER HIGH QUALITY SOFTWARE AT LOW RISK FAST, ANYTIME BY THE PRODUCT TEAMS THEMSELVES!!!
  • 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. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
  • 11. Continuous Delivery „Reduce the cost, time, and risk of delivering incremental changes to users“ (Jez Humble, Adopting continuous delivery)
  • 12. Continuous Delivery Releasing frequently => Reduce the risk of release (John Allspaw, Ops Meta-Metrics)
  • 13. Continuous Delivery • Standardize – Naming conventions – Platform – Infrastructure • Fully automated release processes to Live-System • Empower teams to release by themselves
  • 14. Continuous Delivery • • • • Automate all the tests Introduce ATDD/BDD patterns Static code analysis Automated quality gates
  • 15. Continuous Delivery
  • 16. Continuous Delivery
  • 17. Continuous Delivery Metrics Monitoring Alerting
  • 18. Continuous Delivery Metrics Monitoring Alerting
  • 19. Continuous Delivery Monitoring
  • 20. Continuous Delivery Monitoring
  • 21. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
  • 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. 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. Infrastructure as Code
  • 25. Infrastructure as Code
  • 26. Infrastructure as Code
  • 27. Infrastructure as Code
  • 28. Infrastructure as Code
  • 29. TABLE OF CONTENTS • • • • • • Problem? Solution! Continuous Delivery Infrastructure as Code Chef and JBoss Q&A
  • 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. 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. Chef & JBoss
  • 33. Chef & JBoss
  • 34. Chef & JBoss EAP 5: EAP 6:
  • 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. Chef & JBoss Fabric
  • 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. 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“