• Teilen
  • E-Mail
  • Einbetten
  • Gefällt mir
  • Speichern
  • Privater Inhalt
Von Test nach Live mit Rex
 

Von Test nach Live mit Rex

on

  • 613 Views

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.

Statistiken

Views

Gesamtviews
613
Views auf SlideShare
561
Views einbetten
52

Actions

Gefällt mir
0
Downloads
2
Kommentare
0

1 Einbettung 52

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

Zugänglichkeit

Kategorien

Details hochladen

Uploaded via as OpenOffice

Benutzerrechte

© Alle Rechte vorbehalten

Report content

Als unangemessen gemeldet Als unangemessen melden
Als unangemessen melden

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

Löschen
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Ihre Nachricht erscheint hier
    Processing...
Kommentar posten
Kommentar bearbeiten

    Von Test nach Live mit Rex Von Test nach Live mit Rex Presentation Transcript

    • Von Test nach Live mit Rex
    • Wer bin ich?• Jan Gehring• Angestellt bei inovex als Systems Architect• Design, Aufbau & Betrieb von Serverlandschaften• Web- und Mailcluster• Perl seit 1998
    • 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
    • Also bei mir funktionierts...
    • Fail early - Fail hard
    • Rex - Was ist das?• der Name steht für "Remote Execution"• Automatisierung• Serverorchestrierung• Konfigurationsmanagement• Deployments
    • Rex - Etwas Geschichte• wird entwickelt seit 2010• wurde entwickelt für Softwaredeployments• wird seitdem kontinuierlich weiterentwickelt
    • Philosophie• Getting Things Done o Schnell o Zuverlässig bzw. Nachvollziehbar• Bruch der Kompatibilität = Bug
    • Philosophie• Getting Things Done o Schnell o Zuverlässig bzw. Nachvollziehbar• Bruch der Kompatibilität = Bug• Feature Flags
    • Juhu ein neues Projekt
    • Ein neues Projekt• 2 Wege
    • Ein neues Projekt• 2 Wege o Wir fangen gleich an zu implementieren
    • http://www.terminus-notfallmedizin.de/blog/
    • Ein neues Projekt• 2 Wege o Wir fangen gleich an zu implementieren o Wir fragen nach den Anforderungen
    • 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...
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung• im Normalfall virtuell• so nah wie möglich an Produktion• Rex/Boxes um schnell VMs zu erstellen• Rex zum provisionieren und deployen
    • Basics - der Aufbau• Make = Makefile• Rex = Rexfile• Taskbasiert• SSH• Keine Vorgabe der Authentifizierung• Protokollunabhängig• Es gibt auch einen HTTP/s Modus
    • Der Start
    • System vorbereiten• Beispielprojekt o Webserver o Memcache o Datenbank
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • bash# rex box
    • modules.rexify.org
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • Die Entwicklungsumgebung
    • 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
    • Deployments
    • Deployments• mittels Git• mittels Paketmanager• mittels Symlinks
    • Deployments• mittels Git• mittels Paketmanager• mittels Symlinks• Rex::Apache::Deploy
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Deployment der Anwendung bash# rex deploy --commit=abcd1234
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Deployment der Anwendung
    • Environments
    • Environmentsbash# rex -E live deploy --commit=abcd1234
    • Vielen Dank fürs Zuhören.● http://rexify.org/● http://modules.rexify.org/● http://box.rexify.org/