There is no 'My Machine'

88 Aufrufe

Veröffentlicht am

[German]
Präsentation bei der BedCon 2013
http://bed-con.org/2013/talks/There-is-no-My-Machine

“It works on my machine” ist ein Fluch der Softwareentwicklung seit nicht mehr gemeinsam auf Großrechnern entwickelt wird.

Continuous Integration hat in den letzten Jahren viel dafür getan, dieses Problem zu entschärfen. Eigentlich ist der Aufwand aber nur aus der Integrationsphase in die Verantwortung des einzelnen Entwicklers verlagert worden. Gleichzeitig steigt die Heterogenität weiter an. Mehrere Projekte mit unterschiedlichen Technologiestacks und verschiedenen Betriebssystemen sind Alltag. Das Ergebnis ist ein Verwaltungsalptraum auf dem Entwicklerrechner.

Vagrant bietet hier eine elegante Lösung. Mit Hilfe von Virtualisierung schafft es einen Weg, eine einheitliche Umgebung zu definieren. Dazu nutzt es textbasierte Konfigurationsdateien, die auch ohne Weiteres in das Code-Repository des Projektes eingecheckt werden können. Konsequent umgesetzt nutzt am Ende hat jeder Entwickler die gleiche Konfiguration und “It works on my Machine” verliert den Schrecken.

Veröffentlicht in: Software
0 Kommentare
1 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
88
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
7
Aktionen
Geteilt
0
Downloads
0
Kommentare
0
Gefällt mir
1
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

There is no 'My Machine'

  1. 1. There is no 'My Machine' Jörg Müller, Hypoport AG___ @joergm http://blog-it.hypoport.de
  2. 2. The truth is ... ... there is no spoon.
  3. 3. Problem 1 ... It works on my machine!
  4. 4. Problem 2 ... viele Projekte
  5. 5. Problem 3 ... Experimente
  6. 6. Sweetspot Vagrant ... Virtuell und trotzdem leicht zu verwalten
  7. 7. Sweetspot Vagrant ... Textuelle Definition, ideal für VCS
  8. 8. Sweetspot Vagrant ... Einfach die VM löschen, wenn kein Platz mehr
  9. 9. Sweetspot Vagrant ... Mehrere VMs gleichzeitig
  10. 10. Voraussetzungen ... Windows, Mac oder Linux Host
  11. 11. Voraussetzungen ... Virtual Box
  12. 12. Voraussetzungen ... ruby
  13. 13. Installation ... http://vagrantup.com
  14. 14. Box installieren $> vagrant box add <boxname> <url>
  15. 15. Erste Schritte $> vagrant init <boxname> $> vagrant up $> vagrant ssh
  16. 16. Stoppen $> vagrant halt|suspend
  17. 17. VM loswerden $> vagrant destroy
  18. 18. Die Doku ist wirklich gut ... http://docs.vagrantup.com/v2/
  19. 19. Die Vagrant Box ... Image einer Virtuellen Maschine
  20. 20. Unterstützte OS ...Alles, was der Provider kann
  21. 21. Neue Box erstellen ... manuell
  22. 22. Neue Box erstellen ... mit veewee
  23. 23. Vorhandene Boxen ... http://www.vagrantbox.es/
  24. 24. Standards in Boxen ... vagrant user, ssh, synced folder
  25. 25. Provisioning ... nicht alles gehört in die Box
  26. 26. Shell ... erstmal einfach
  27. 27. Puppet ... nutzen wir
  28. 28. Chef ... dritte Variante
  29. 29. Provisioning starten $> vagrant provision
  30. 30. Die Developer Box ... Alles zum entwickeln
  31. 31. Ziel ... Setup mit einem Kommando
  32. 32. Verwaltung ... alles im VCS
  33. 33. Pakete ... gleich Produktion
  34. 34. Demo ... github.com/JoergM/
 vagrant-demo
  35. 35. Demo $> vagrant up $> ...
  36. 36. Weiterer Ausbau ...ActiveMQ, SMTP, LDAP
  37. 37. Vagrant im CI ... z.B. für Spezial-Runtime
  38. 38. MultiVM Setup ... github.com/MUGBerlin/
 vagrant-machines
  39. 39. Vagrant ... ist einfach
  40. 40. Vagrant ... schnell installiert
  41. 41. Try it! ... start small
  42. 42. There is no 'My Machine' Jörg Müller, Hypoport AG___ @joergm http://blog-it.hypoport.de

×