Softwareunternehmen

Entwicklung und Betrieb einer Private-Cloud-Plattform für ein internationales Softwareunternehmen

Cloudification unterstützte die Entwicklung, Skalierung und den laufenden Betrieb einer auf OpenStack und Kubernetes basierenden Private-Cloud-Plattform in mehr als 15 Produktions- und QA-Regionen.

100,000+

Mitarbeitende weltweit

15+

Produktions- und QA-Regionen

Unternehmen

Germany · ERP & Enterprise Software · 100,000+ Employees

Der Kunde ist ein großes internationales Unternehmen aus Deutschland, das ERP-Systeme und Unternehmenssoftware entwickelt. Das Unternehmen beschäftigt weltweit mehr als 100.000 Mitarbeitende.

Das Unternehmen nutzt eine auf OpenStack und Kubernetes basierende Private-Cloud-Plattform. Die Infrastruktur erstreckt sich über 15 Produktions- und QA-Regionen.

Herausforderung

Cloudification war an der Entwicklung, Skalierung und dem Betrieb der Cloud-Plattform des Kunden beteiligt.

Der Leistungsumfang umfasste die Erweiterung der OpenStack-Funktionalität, die Entwicklung neuer Treiber und Integrationen, Upgrades auf neuere OpenStack-Versionen sowie Anpassungen der Plattformarchitektur.

Ein weiterer wichtiger Bestandteil des Projekts war der Day-2-Betrieb, also die Aufgaben, die nach der Erstbereitstellung der Infrastruktur anfallen. In einer großen Private-Cloud-Umgebung wird die Plattform auch nach der Inbetriebnahme kontinuierlich weiterentwickelt: Neue Komponentenversionen werden eingeführt, Architekturänderungen müssen umgesetzt werden und die Infrastruktur muss aktuell und stabil gehalten werden.

In diesem Projekt erstreckten sich diese Tätigkeiten über mehr als 15 Produktions- und QA-Regionen.

ZENTRALE HERAUSFORDERUNG

Kontinuierliche Weiterentwicklung der Plattform und Day-2-Betrieb in über 15 Produktions- und QA-Regionen

Besonderheiten des Projekts

Eines der Hauptmerkmale des Projekts waren seine Größe sowie die komplexen Upgrade- und Release-Prozesse.

OpenStack besteht aus mehreren miteinander verbundenen Diensten, die unterschiedliche Funktionen innerhalb der Cloud-Plattform übernehmen. Bei der Weiterentwicklung einer solchen Umgebung können Änderungen neben einzelnen Komponenten auch die zugehörigen Integrationen, Konfigurationen und Prozesse zur Infrastrukturverwaltung beeinflussen. Aufgrund der Größe der Umgebung und der individuellen Anpassungen am OpenStack-Quellcode mussten bei Upgrades zwischen Releases häufig Hunderte von Patches zwischen verschiedenen Code-Branches portiert, komplexe End-to-End-Tests durchgeführt und neue Images mit projektspezifischen Abhängigkeiten erstellt werden.

Die zahlreichen Produktions- und QA-Regionen erhöhten die Komplexität zusätzlich. Die größten Regionen erhielten Updates in der Regel zuletzt, da aufgrund ihrer Größe ein höheres Risiko für Probleme bestand. Während in den kleinsten Regionen Hunderte bis Tausende virtuelle Maschinen (VMs) betrieben wurden, waren es in den größten Produktionsregionen mehrere Zehntausend. Daher mussten die Konfigurationen sowie die Anzahl der Dienste und Replikate an die größeren Regionen angepasst werden, um die Last bewältigen zu können.

In diesem Projekt umfassten die Arbeiten neben dem Betrieb der bestehenden Umgebung auch die kontinuierliche Weiterentwicklung der OpenStack-Plattform selbst: von der Entwicklung neuer Funktionen über Release-Upgrades und Architekturanpassungen bis hin zur Bereitstellung neuer Dienste.

Hunderte von Patches

Zwischen OpenStack-Release-Branches portiert

Komplexe End-to-End-Tests

Einschließlich neuer Images mit projektspezifischen Abhängigkeiten

Hunderte bis Zehntausende VMs

Unterschiedliche Regionsgrößen erforderten angepasste Konfigurationen

Lösung

Das Cloudification-Team war auf mehreren Ebenen an der Weiterentwicklung der OpenStack-Plattform des Kunden beteiligt.

Im Rahmen des Projekts wurden neue OpenStack-Funktionen, Treiber und Integrationen entwickelt und als Upstream-Beiträge in die OpenStack-Projekte eingebracht. Dadurch konnte die Plattform an die Anforderungen der bestehenden Infrastruktur angepasst und ihr Funktionsumfang erweitert werden.

Das Team führte außerdem OpenStack-Upgrades ab dem Train-Release durch. Bei einer großen, verteilten Infrastruktur stellt das Upgrade einer Cloud-Plattform eine eigenständige technische Aufgabe dar: Sämtliche Änderungen müssen im Kontext der bestehenden Architektur, individueller Entwicklungen und Integrationen mit anderen Komponenten überprüft werden.

Ein weiterer Arbeitsbereich umfasste Anpassungen der Plattformarchitektur und die Umsetzung komplexer Änderungen. Bei solchen Aufgaben müssen die Abhängigkeiten zwischen verschiedenen Diensten im OpenStack-Ökosystem sowie der anschließende Betrieb der aktualisierten Infrastruktur berücksichtigt werden.

Nach der Implementierung der Änderungen betreute das Team die Plattform weiterhin im Rahmen des Day-2-Betriebs und des Entwicklungssupports. Cloudification trug damit über die Jahre sowohl zur Entwicklung einzelner Lösungen als auch zum laufenden Betrieb und zur kontinuierlichen Weiterentwicklung der Infrastruktur in mehr als 15 Produktionsregionen bei.

Neue Funktionen & Integrationen

OpenStack-Funktionen, Treiber, Integrationen und Upstream-Beiträge

OpenStack-Upgrades

Release-Upgrades ab OpenStack Train

Architekturanpassungen

Komplexe Änderungen an miteinander verbundenen OpenStack-Diensten

Day-2-Betrieb

Laufender Betrieb, Entwicklungssupport und kontinuierliche Weiterentwicklung der Plattform

Ergebnis

Cloudification unterstützte die Entwicklung, Skalierung und den laufenden Betrieb der auf OpenStack und Kubernetes basierenden Private-Cloud-Plattform des Kunden.

Das Projekt umfasste die Implementierung neuer OpenStack-Funktionen, Treiber und Integrationen, OpenStack-Release-Upgrades sowie Anpassungen der Plattformarchitektur.

Die Umsetzung komplexer Änderungen und der Day-2-Betrieb erstreckten sich über mehr als 15 Produktions- und QA-Regionen..

Das Projekt ermöglichte die kontinuierliche Weiterentwicklung einer großen, verteilten OpenStack-Infrastruktur, einschließlich des laufenden Betriebs und der Weiterentwicklung der Cloud-Plattform selbst.

15+ Produktions- und QA-Regionen

Entwicklung, Upgrades, Architekturanpassungen und Day-2-Betrieb in einer großen, verteilten OpenStack-Umgebung.

Technologien

Frame 1

OpenStack

Kubernetes

Group 9

Concourse CI

Python

Golang

NetApp

Helm

Prometheus

OpenSearch

Plutono

Terraform