Praxisbeispiel: Effiziente Softwareentwicklung mit Containern und Continuous Integration
Egal ob zum Entwickeln, Testen oder für den Produktiveinsatz: Die Inbetriebnahme einer Anwendung kann mitunter sehr aufwändig sein. Abhängigkeiten und Datensätze müssen nicht nur vorliegen, sondern oft auch auf allen Systemen gleich sein. Nicht immer ist diese Aufgabe trivial zu lösen, weshalb Entwicklungs- und Testabteilungen zum Teil sogar auf Produktivsystemen arbeiten, um ihre Aufgaben erledigen zu können.
Abgesehen davon, dass ein solches Vorgehen naturgemäß ein erhöhtes Risiko von Ausfällen des Produktivsystems birgt, stößt man spätestens dann an eine Grenze, wenn man verschiedene Versionen gleichzeitig betreiben möchte und es unweigerlich zu Abhängigkeitskonflikten kommt.
Hier kommen Container ins Spiel:
- Sie erlauben die Bündelung einer Anwendung mit allen zugehörigen Abhängigkeiten.
- Mittels Stateful Container können auch Datenbankanwendungen mit Containern umgesetzt werden.
- In Kombination mit Continuous Integration kann der Entwicklungsprozess deutlich effizienter gestaltet werden.
- Der Übergang in den Produktivbetrieb wird schneller, effizienter und robuster.
Wie diese Ansätze erfolgreich in die Praxis übertragen werden können, erläutern Markus Mechnich und Andreas Schutz von InterSystems in diesem Vortrag. Anhand eines Kundenbeispiels zeigen sie auf, wie der DevOps-Prozess in einem verteilt arbeitenden Entwicklerteam signifikant vereinfacht und beschleunigt werden konnte.
Vorkenntnisse
Grundlegendes Verständnis für Container-Technologien, Continuous Integration und agile Softwareentwicklung.
Lernziele
- Wie sich die Hürde "disparate Entwicklerteams" mithilfe einer modernen Datenplattform und eines orchestrierten DevOps-Ansatzes in der Praxis überwinden lässt.
- Welche Vorteile der Kunde durch dieses Vorgehen erzielen konnte.
- Wie man in Entwicklung und Deployment von Containern und Continuous Integration profitiert.