Von Test nach Live mit Rex
Nächste SlideShare
Wird geladen in ...5
×

Das gefällt Ihnen? Dann teilen Sie es mit Ihrem Netzwerk

Teilen

Von Test nach Live mit Rex

  • 759 Views
Hochgeladen am

Rex ist ein Tool zur Automatisierung von Applikations- und Konfigurationsrollouts. Die gewünschte Umgebung wird mittels einem Script (Perl) beschrieben und kann somit auf unterschiedlichen Systemen......

Rex ist ein Tool zur Automatisierung von Applikations- und Konfigurationsrollouts. Die gewünschte Umgebung wird mittels einem Script (Perl) beschrieben und kann somit auf unterschiedlichen Systemen ausgefuehrt werden. Rex verbindet sich per SSH auf das Zielsystem und führt die entsprechenden Arbeiten aus.

In diesem Vortrag will ich zuerst auf die Basics von Rex eingehen. Um dann zu zeigen wie man mit Hilfe von Rex sich und seinem Team schnell eine Testumgebung mit VirtualBox zur Verfügung stellen kann und wie man - in Zusammenarbeit mit den Systemadministratoren - die gleichen Scripte zum Aufbau und dem Deployment der Produktionsumgebung verwenden kann.

Mehr in: Technologie
  • Full Name Full Name Comment goes here.
    Sind Sie sicher, dass Sie...
    Ihre Nachricht erscheint hier
    Hinterlassen Sie den ersten Kommentar
    Be the first to like this
Keine Downloads

Views

Gesamtviews
759
Bei Slideshare
707
Aus Einbettungen
52
Anzahl an Einbettungen
1

Aktionen

Geteilt
Downloads
2
Kommentare
0
Gefällt mir
0

Einbettungen 52

http://rexfile.github.workspaces.ws 52

Inhalte melden

Als unangemessen gemeldet Als unangemessen melden
Als unangemessen melden

Wählen Sie Ihren Grund, warum Sie diese Präsentation als unangemessen melden.

Löschen
    No notes for slide

Transcript

  • 1. Von Test nach Live mit Rex
  • 2. Wer bin ich?• Jan Gehring• Angestellt bei inovex als Systems Architect• Design, Aufbau & Betrieb von Serverlandschaften• Web- und Mailcluster• Perl seit 1998
  • 3. Wer bin ich?• Jan Gehring• Angestellt bei inovex als Systems Architect• Design, Aufbau & Betrieb von Serverlandschaften• Web- und Mailcluster• Perl seit 1998• https://github.com/krimdomu• @jfried83
  • 4. Also bei mir funktionierts...
  • 5. Fail early - Fail hard
  • 6. Rex - Was ist das?• der Name steht für "Remote Execution"• Automatisierung• Serverorchestrierung• Konfigurationsmanagement• Deployments
  • 7. Rex - Etwas Geschichte• wird entwickelt seit 2010• wurde entwickelt für Softwaredeployments• wird seitdem kontinuierlich weiterentwickelt
  • 8. Philosophie• Getting Things Done o Schnell o Zuverlässig bzw. Nachvollziehbar• Bruch der Kompatibilität = Bug
  • 9. Philosophie• Getting Things Done o Schnell o Zuverlässig bzw. Nachvollziehbar• Bruch der Kompatibilität = Bug• Feature Flags
  • 10. Juhu ein neues Projekt
  • 11. Ein neues Projekt• 2 Wege
  • 12. Ein neues Projekt• 2 Wege o Wir fangen gleich an zu implementieren
  • 13. http://www.terminus-notfallmedizin.de/blog/
  • 14. Ein neues Projekt• 2 Wege o Wir fangen gleich an zu implementieren o Wir fragen nach den Anforderungen
  • 15. Ein neues Projekt• 2 Wege o Wir fangen gleich an zu implementieren o Wir fragen nach den Anforderungen  Software Architektur  Gibt es Vorgaben bzgl. Perl Versionen oder Modulversionen  Unter welchem OS soll es laufen?  Clusterbetrieb? Hochverfügbarkeit?  und vieles mehr...
  • 16. Die Entwicklungsumgebung
  • 17. Die Entwicklungsumgebung• im Normalfall virtuell• so nah wie möglich an Produktion• Rex/Boxes um schnell VMs zu erstellen• Rex zum provisionieren und deployen
  • 18. Basics - der Aufbau• Make = Makefile• Rex = Rexfile• Taskbasiert• SSH• Keine Vorgabe der Authentifizierung• Protokollunabhängig• Es gibt auch einen HTTP/s Modus
  • 19. Der Start
  • 20. System vorbereiten• Beispielprojekt o Webserver o Memcache o Datenbank
  • 21. Die Entwicklungsumgebung
  • 22. Die Entwicklungsumgebung
  • 23. Die Entwicklungsumgebung
  • 24. Die Entwicklungsumgebung
  • 25. Die Entwicklungsumgebung
  • 26. Die Entwicklungsumgebung
  • 27. Die Entwicklungsumgebung
  • 28. Die Entwicklungsumgebung
  • 29. bash# rex box
  • 30. modules.rexify.org
  • 31. Die Entwicklungsumgebung
  • 32. Die Entwicklungsumgebung
  • 33. Die Entwicklungsumgebung
  • 34. Die Entwicklungsumgebung
  • 35. Die Entwicklungsumgebung
  • 36. Die Entwicklungsumgebung
  • 37. Die Entwicklungsumgebung
  • 38. Die Entwicklungsumgebung
  • 39. Die Entwicklungsumgebung
  • 40. Die Entwicklungsumgebung
  • 41. Die Entwicklungsumgebung
  • 42. Die Entwicklungsumgebung
  • 43. Die Entwicklungsumgebung
  • 44. Es gibt mehr...• Environments• Verwaltung von Diensten o starten o stoppen o runlevel manipulation• Arbeiten mit Dateien / Config-Management o Templates• Benutzerverwaltung• Filesystemoperationen• Partitionierung von Festplatten• ...• http://rexify.org/api
  • 45. Deployments
  • 46. Deployments• mittels Git• mittels Paketmanager• mittels Symlinks
  • 47. Deployments• mittels Git• mittels Paketmanager• mittels Symlinks• Rex::Apache::Deploy
  • 48. Deployment der Anwendung
  • 49. Deployment der Anwendung
  • 50. Deployment der Anwendung
  • 51. Deployment der Anwendung
  • 52. Deployment der Anwendung
  • 53. Deployment der Anwendung
  • 54. Deployment der Anwendung bash# rex deploy --commit=abcd1234
  • 55. Deployment der Anwendung
  • 56. Deployment der Anwendung
  • 57. Deployment der Anwendung
  • 58. Deployment der Anwendung
  • 59. Deployment der Anwendung
  • 60. Deployment der Anwendung
  • 61. Deployment der Anwendung
  • 62. Environments
  • 63. Environmentsbash# rex -E live deploy --commit=abcd1234
  • 64. Vielen Dank fürs Zuhören.● http://rexify.org/● http://modules.rexify.org/● http://box.rexify.org/