Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Projektantrag: Analyse und Optimierung der CI/CD-Pipeline-Kapazitäten durch Erweiterung der GitLab-Runner-Infrastruktur bei einem mittelständischen Softwareunternehmen

Empfohlene Antworten

Geplanter Bearbeitungszeitraum

bla bla

---

Ausgangssituation

Das Ausbildungsunternehmen ist ein Softwareentwicklungsunternehmen mit rund 29 Mitarbeitern, das sich auf die Entwicklung von E-Commerce-Lösungen und webbasierten Anwendungen spezialisiert hat. Das Unternehmen gliedert sich in mehrere Entwicklungsteams sowie eine IT-Abteilung, die für den Betrieb und die Weiterentwicklung der internen Infrastruktur zuständig ist. Der Auszubildende ist in dieser IT-Abteilung eingesetzt, die Aufgaben aus den Bereichen Systemadministration und DevOps (Development Operations – die Verzahnung von Softwareentwicklung und IT-Betrieb) vereint. Die Entwicklungsteams verwalten ihre Softwareentwicklungsprozesse über eine selbst gehostete GitLab-Instanz. GitLab ist eine webbasierte Plattform zur Versionsverwaltung und Projektorganisation. Ein zentraler Bestandteil davon ist die CI/CD-Pipeline (Continuous Integration / Continuous Deployment – automatisiertes Bauen, Testen und Ausliefern von Software), die nach jedem Code-Push automatisch ausgeführt wird. Für die Ausführung dieser Pipelines betreibt die IT-Abteilung derzeit fünf sogenannte GitLab Runner – Prozesse, die auf dedizierten physischen Servern im unternehmenseigenen Serverraum laufen und die einzelnen Pipeline-Aufgabe (sog. Jobs) entgegennehmen und verarbeiten. Vier dieser Runner nutzen den Docker-Executor, bei dem jeder Job in einem isolierten Container (einer abgeschotteten Softwareumgebung) ausgeführt wird. Ein weiterer Runner arbeitet mit dem Shell-Executor, bei dem Jobs direkt auf dem Host-System ausgeführt werden. Die Verwaltung der gesamten Infrastruktur – einschließlich der Runner-Konfiguration – erfolgt über IaC (Infrastructure as Code), konkret über Ansible-Playbooks (automatisierte Konfigurationsskripte).. Im Zuge des Unternehmenswachstums und der zunehmenden Anzahl paralleler Entwicklungsprojekte kommt es vermehrt zu Engpässen in der Pipeline-Ausführung: Jobs werden in Warteschlangen eingereiht und verzögern den Entwicklungsworkflow der Teams. Auswertungen des bestehenden Monitoring-Systems – bestehend aus Prometheus (einem System zur Metrikerfassung) und Grafana (einem Werkzeug zur grafischen Darstellung von Metriken) – zeigen, dass die durchschnittliche Wartezeit eines Jobs in der Queue bei ca. 13–15 Minuten liegt. Die durchschnittliche Ausführungsdauer eines Jobs beträgt dabei lediglich ca. 3 Minuten – Jobs warten also im Schnitt etwa fünfmal länger auf ihren Start als die eigentliche Ausführung dauert. In der zuletzt betrachteten Woche wurden insgesamt 2.906 Pipeline-Jobs ausgeführt. Dies führt zu verlängerten Feedbackzeiten für Entwickler sowie einem messbaren Rückgang der Entwicklungsgeschwindigkeit. Es ist bisher ungeklärt, ob die Engpässe auf eine unzureichende Anzahl von Runnern, eine suboptimale Konfiguration der bestehenden Infrastruktur oder strukturelle Ursachen (z. B. ineffiziente Pipelines) zurückzuführen sind. Eine fundierte Analyse der Ist-Situation sowie eine Bewertung möglicher Lösungsansätze sind daher erforderlich.

---

Projektziel

Ziel des Projekts ist die systematische Analyse der bestehenden GitLab-Runner-Infrastruktur sowie die Identifikation und Behebung der Pipeline-Engpässe. Dabei wird zunächst geprüft, ob Optimierungspotenzial in der bestehenden Konfiguration besteht, bevor eine Erweiterung der Infrastruktur in Betracht gezogen wird. Verschiedene Lösungsansätze – darunter physische Erweiterungen, virtualisierungsbasierte Konzepte sowie containerbasierte und autoskalierbare Architekturen – werden anhand eines strukturierten Kriterienkatalogs evaluiert. Die Bewertung berücksichtigt technische Anforderungen (Skalierbarkeit, Build-Isolation, Netzwerkintegration), Sicherheitsaspekte (Host-Härtung, Secret Management) sowie wirtschaftliche Faktoren (Beschaffungs- und Betriebskosten,TCO-Vergleich).

Erfolgskriterien:

- Reduktion der durchschnittlichen Pipeline-Wartezeit

- Steigerung der parallelen Pipeline-Kapazität

- Einhaltung der Sicherheitsanforderungen gemäß Schutzbedarfsanalyse

- Wirtschaftliche Vertretbarkeit der gewählten Lösung

---

Zeitplanung (gesamt 40 Stunden)

1. Analysephase (10 h)

- Erhebung der Ist-Situation (Metriken, Logs, Konfiguration): 3 h

- Identifikation der Engpass-Ursachen (Rootcause-Analyse): 3 h

- Anforderungserhebung mit Stakeholdern: 2 h

- Recherche möglicher Lösungsansätze: 2 h

2. Planungsphase (10 h)

- Erstellung eines Kriterienkatalogs: 2 h

- Evaluation der Lösungsalternativen: 3 h

- Wirtschaftlichkeitsbetrachtung (TCO-Analyse): 2 h

- Schutzbedarfsanalyse & Sicherheitskonzept: 2 h

- Entscheidungsdokumentation & Detailplanung: 1 h

3. Durchführungsphase (13 h)

- Vorbereitung der Infrastruktur: 3 h

- Installation & Konfiguration des/der neuen Runner(s): 3 h

- Netzwerkintegration (VLAN, Firewall-Regeln): 3 h

- Integration in GitLab & Anbindung an bestehende Infrastruktur: 2 h

- Funktionstests & Lasttest: 2 h

4. Abschlussphase (7 h)

- Soll-Ist-Vergleich & Qualitätssicherung: 1 h

- Projektdokumentation: 6 h

---

Anlagen

bla bla

---

Präsentationsmittel

Laptop, Beamer, Präsentation (Slides), ggf. Live-Demo der optimierten Pipeline-Ausführung, KI?

Wow das ist mal ein richtig praxisnahes Projekt!!!
Genau so eine Infrastruktur gibt es in vielen mittelständigen Betrieben und genau das sind die Projekte an denen Azubis ebenfalls arbeiten sollten, um einmal hinter die Kulissen zu schauen.

vor 3 Stunden, charmanta hat gesagt:

Boah das ist schwierg. Auch wenn formal alles drin ist seh ich das als FIDV Thema und würde das ablehnen. Dazu kommt dass das nicht jeder Prüfer fachlich beurteilen kann ( vermute ich )

Wenn solche Projekte nicht zugelassen werden, dann spiegelt genau das doch das Kernproblem der Ausbildung wider. Azubis müssen auch einmal praxisnahe Projekte angehen dürfen und nicht nur immer den 0815 easy Kram, den dann auch Prüfer verstehen. So lösen wir nie das Fachkräfteproblem...

vor 23 Minuten, Morrigan hat gesagt:

Wenn solche Projekte nicht zugelassen werden, dann spiegelt genau das doch das Kernproblem der Ausbildung wider. Azubis müssen auch einmal praxisnahe Projekte angehen dürfen und nicht nur immer den 0815 easy Kram, den dann auch Prüfer verstehen

Ich habe nur EINE von drei Meinungen und bei uns könnte das benotet werden. Aber in meinem Post steht dass dieses Thema nicht so sehr in den Fachbereich des FISI passt und DAS ist das Problem. Ein Thema für ein Projekt muss dem Lehrberuf entsprechen und für mich ( das ist meine private Meinung ) ist das FIDV ...

0815 Easy haben aktuell ( wir hatten grade heute Zulassungsgespräche ) eher nur noch 1/3 der eingereichten Projekte. Da ist durchaus hippes Zeug drin

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Konto

Navigation

Suchen

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.