Rex ist ein Tool zur Automatisierung von Applikations- und Konfigurationsrollouts. Die gewünschte Umgebung wird mittels eines Script (Perl) beschrieben und kann somit auf unterschiedlichen Systemen ausgeführt werden. Rex verbindet sich per SSH auf das Zielsystem und führt die entsprechenden Arbeiten aus.
In diesem Vortrag wird zunächst auf die Basis von Rex eingegangen. Dann wird gezeigt, 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.
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
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...
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
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