Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

DevOps: Automatisierte Deployments mit TFS & Octopus Deploy

2,568 views

Published on

DevOps: Automatisierte Deployments mit TFS & Octopus Deploy

Published in: Technology
  • Be the first to comment

DevOps: Automatisierte Deployments mit TFS & Octopus Deploy

  1. 1. DevOps: Automatische Deployments mit TFS & Octopus Deploy CHRISTOPH BODE DSPACE GMBH
  2. 2. Was wollen wir uns heute ansehen? • Was ist DevOps? • Tools:TFS und Octopus Deploy • Beschreibung der Demo • Demo • Ausblick
  3. 3. DevOps AUTOMATISIERT IN PRODUKTION
  4. 4. Was ist DevOps? (1/2) • Prozessverbesserungs-Ansatz • DevOps = Development + Operations • Anreize, Prozesse undTools für eine effektivere und effizientere Zusammenarbeit • Ziel istVerbesserung von • Qualität der Software • Geschwindigkeit der Entwicklung • Geschwindigkeit der Auslieferung • Miteinander der beteiligtenTeams Quelle: https://de.wikipedia.org/wiki/DevOps https://commons.wikimedia.org/wiki/File:Devops.svg
  5. 5. Was ist DevOps? (2/2) Quelle: https://en.wikipedia.org/wiki/File:Devops-toolchain.svg Heute: Fokus auf denTools!
  6. 6. Heute eingesetzte Tools TFS UND OCTOPUS DEPLOY
  7. 7. Team Foundation Server • Von Microsoft • Versionskontrolle:TFVC, git • Projektplanung (Kanban, Scrum, Dashboards) • Erweiterbares Build-System • Cloud oder On-Premises • VM zumAusprobieren: https://almvm.azurewebsites.net/
  8. 8. Tentacle (DeployTarget) Octopus Deploy Tentacle (DeployTarget) • Gegründet 2011 in Brisbane, Australien • Wird von 9000 Organisationen verwendet • Fokus auf .NET Entwicklung • Kostenlos für kleine Installationen • Alternativen: Chef, Puppet, Ansible, GoCD Octopus Server Tentacle (DeployTarget) ???
  9. 9. Problembeschreibung WARUM TUN WIR UNS DAS ALLES AN?
  10. 10. Szenario • Entwicklung einer API (z.B. für eine App) • Hosting des Servers im Rechenzentrum der Firma • Server mit ASP.NET Core, gehostet auf IIS
  11. 11. Was haben wir vor? Development Staging Production Server Dev Main TFS Octopus CI CI R R BuildRepos
  12. 12. Environment Staging • Abnahme auf Staging • Sollte identisch zu Production aufgebaut sein Development Staging Production Environment Production • Identisches Deployment wie bei Staging • Paket / Binary • Deployment-Prozedur
  13. 13. Terminologie von Octopus Deploy Development Staging Production CI CI R R Schritte: • Create Package • Push Package • Create Release 1. Package Repository 2. Environment 3. Role 4. Project 5. Channel 6. Lifecycle / Promote 1 2 4 6 5 3
  14. 14. Demo JETZT MAL IN ECHT
  15. 15. Ausblick DAS SZENARIO WEITERGEDACHT
  16. 16. Und wenn… (1/2) • … ich aufAzure deployen will? -> out of the box • … ich auf Linux deployen will? -> nur per SSH • … der Server keinTentacle sein darf? -> Offline Package Drop • … ich komplexere Deployment-Strategien brauche? • Rolling Deployments • Canary Deployments • Blue-Green Deployments
  17. 17. Und wenn… (2/2) • … ich mein Datenbank-Schema mit deployen möchte? • Keine direkte Schema-Migration durch Octopus Deploy • Z.B. Nutzung von DbUp: https://dbup.github.io/ • Zweites Package mit SQL-Files + DbUp • SQL-Files durchnummeriert • EigeneTabelle für dieVersion • Ausführung auf Server mit Rolle „DB“
  18. 18. Danke für Eure Aufmerksamkeit

×