Wurden sämtliche Zielsetzungen erfüllt?

Reached Goals

Quelle

Zu Beginn der Semesterarbeit wurden die Zielsetzungen bewusst offen und adaptiv formuliert. Dieser Ansatz erwies sich im Projektverlauf als zielführend, da neue Erkenntnisse, technische Einschränkungen und architektonische Fragestellungen iterativ berücksichtigt werden konnten, ohne die übergeordneten Projektziele aus den Augen zu verlieren.

Zielsetzung Kurzbeschreibung Erfüllungsgrad
Evaluation und Festlegung der Infrastruktur Analyse und Auswahl einer geeigneten Betriebsumgebung unter Berücksichtigung technischer, organisatorischer und sicherheitsrelevanter Aspekte.
Aufbau einer CI/CD-Pipeline Automatisierung von Build-, Test- und Bereitstellungsprozessen mit iterativer Toolwahl. ⚠️✅
Cloud-Native-Core-Architektur Weiterentwicklung des bestehenden Tools in Richtung Containerisierung, Modularität und Skalierbarkeit.
Datenschutz, Stabilität und Betriebssicherheit Sicherstellung eines sicheren, stabilen und reproduzierbaren Betriebs durch geeignete technische Massnahmen.

Die Bewertung des Erfüllungsgrades erfolgte dabei nicht rein technisch, sondern unter Berücksichtigung von Architekturqualität, Wartbarkeit und langfristiger Betriebssicherheit.

Im Folgenden wird erläutert, wie die einzelnen Ziele konkret umgesetzt wurden und welche Anpassungen sich im Verlauf der Arbeit ergeben haben.


Evaluation und Festlegung der Infrastruktur

Zu Projektbeginn wurde eine Evaluation möglicher Betriebsumgebungen durchgeführt. Dabei wurden sowohl lokale als auch cloudbasierte Szenarien betrachtet. Unter Berücksichtigung der verfügbaren Ressourcen, des zeitlichen Rahmens sowie der Lernziele fiel die Entscheidung auf eine lokale Kubernetes-Umgebung mit Minikube.

Diese Wahl ermöglichte es, Cloud-Native-Konzepte realitätsnah umzusetzen, ohne von externen Cloud-Anbietern abhängig zu sein. Die Infrastrukturentscheidung blieb – wie ursprünglich vorgesehen – offen für Anpassungen und wurde im Projektverlauf durch die Einführung von GitOps weiter konkretisiert.

Ziel erreicht


Aufbau einer CI/CD-Pipeline zur Automatisierung zentraler Prozesse

Ein zentrales Ziel war die Automatisierung der Build-, Test- und Deployment-Prozesse. Hierfür wurde GitHub Actions eingesetzt, um Container-Images automatisiert zu bauen und Tests auszuführen.

Im Verlauf des Projekts wurde das klassische CI/CD-Verständnis bewusst erweitert: Das eigentliche Deployment erfolgt deklarativ über GitOps mit Argo CD. Dadurch wurde der Fokus stärker auf Nachvollziehbarkeit, Stabilität und Betriebssicherheit gelegt als auf eine rein pipelinegesteuerte Auslieferung.

⚠️✅ Ziel weitgehend erreicht
(Automatisierung vorhanden, Schwerpunkt bewusst auf GitOps gelegt)


Weiterentwicklung in Richtung einer Cloud-Native-Core-Architektur

Das bestehende Lizenzüberwachungstool wurde konsequent in Richtung einer Cloud-Native-Architektur weiterentwickelt. Dabei wurden zentrale Prinzipien umgesetzt:

  • Containerisierung der Anwendung
  • Betrieb in Kubernetes
  • Stateless-Design der Services
  • Trennung von Code, Konfiguration und Secrets
  • Skalierbarkeit durch deklarative Deployments

Der offen definierte Umfang dieses Ziels erwies sich als sinnvoll, da der Fokus im Projektverlauf stärker auf Architekturqualität und Wartbarkeit gelegt wurde.

Ziel erreicht


Sicherstellung von Datenschutz, Stabilität und Betriebssicherheit

Datenschutz und Betriebssicherheit wurden während der gesamten Arbeit kontinuierlich berücksichtigt. Umgesetzt wurden unter anderem:

  • Speicherung sensibler Daten ausschliesslich in Kubernetes Secrets
  • Verzicht auf Secrets im Git-Repository -> Sealed Secrets verwendet
  • Reproduzierbarer Redeploy ohne manuelle Eingriffe
  • Nutzung von Kubernetes-Mechanismen zur Fehlerbehandlung
  • Logging zur Analyse von Fehlerfällen

Welche konkreten Lösungen eingesetzt wurden, wurde – wie geplant – iterativ evaluiert und dokumentiert.

Ziel erreicht


Gesamtbewertung der Zielerreichung

Die initial definierten Zielsetzungen wurden in wesentlichen Punkten erreicht.
Abweichungen von der ursprünglichen Planung stellten keine Zielverfehlung dar, sondern führten zu fundierteren architektonischen Entscheidungen und einer nachhaltigeren Lösung.

Die daraus gewonnenen Erkenntnisse werden im folgenden Kapitel detailliert beschrieben.


Reflexion und Projekterkenntnisse

Die Arbeit zeigte deutlich, dass Cloud-Native-Architekturen weniger durch einzelne Tools, sondern vielmehr durch klare Strukturierung, saubere Trennung von Verantwortlichkeiten und konsequente Automatisierung an Qualität gewinnen.

Besonders prägend war die Erkenntnis, dass GitOps nicht nur ein Deployment-Ansatz ist, sondern ein zentrales Betriebskonzept, welches Nachvollziehbarkeit, Stabilität und Reproduzierbarkeit signifikant verbessert. Ebenso wurde ersichtlich, dass eine bewusste Reduktion von Komplexität – etwa durch den Verzicht auf unnötige Manuelleingriffe – die Betriebssicherheit erhöht.

Insgesamt konnte mit dieser Semesterarbeit eine stabile, reproduzierbare und nachvollziehbare Cloud-Native-Betriebsplattform geschaffen werden, welche nicht nur die definierten Projektziele erfüllt, sondern auch eine belastbare Grundlage für zukünftige Erweiterungen und produktionsnahe Szenarien darstellt.