Aus alt mach neu mit Google Cloud Run: Migration einer in die Jahre gekommenen Microservice-Umgebung in Kubernetes hin zu Serverless
Keine Unterbrechung des Entwicklungsprozesses während der Migration.
Deutliche Reduktion der operativen Kosten – voraussichtlich um 65 %
Happy Customer! Statt des geplanten Microservice wurden insgesamt drei Microservices auf Google Cloud Run migriert und produktiv genommen.
Es entstand ein Blueprint, der unterschiedliche Problemstellungen abbildet und somit anderen Teams hilft, schneller von Google Cloud Run zu profitieren.
Den Entwicklungsteams beim börsennotierten Großkonzern standen über eine hauseigene Cloud-Plattform Laufzeit-Umgebungen zur Verfügung. Allerdings schränkte diese hauseigene Cloud-Plattform die Entwicklungsteams stark ein, insbesondere, was die Auswahl an Technologien und Kubernetes als einzige Option als Laufzeitumgebung angeht. Hierbei wurden die Kubernetes-Cluster-Ressourcen von den Teams geteilt. Besonders problematisch war dabei der zeitverzögerte Einblick in die Kosten, die nur monatlich veröffentlicht werden. Das hatte zur Folge, dass die Workloads nur schwer kosteneffizient gestaltet werden konnten.
Das Technologie-Portfolio der Google Cloud bietet vielfältige Optionen für Laufzeit-Umgebungen, zeitnahe Kostentransparenz und eine breite Auswahl an weiteren Cloud-Computing-Services. Gemeinsam mit einem Entwicklungsteam auf Kundenseite prüfte codecentric die Machbarkeit in einem Pilotprojekt. Besonders im Fokus stand die Migration von Kubernetes nach Google Cloud Run als neue Laufzeitumgebung.
Cloud Run ist eine verwaltete Computing-Plattform, mit der Unternehmen Container direkt auf der skalierbaren Infrastruktur von Google ausführen können. Google Cloud Run wurde für die Zusammenarbeit mit anderen Diensten in Google Cloud entwickelt, sodass Unternehmen Anwendungen mit vollem Funktionsumfang erstellen können.
Quelle: Google (2022)
Das Produkt, welches migriert wurde, besteht aus einer Springboot-Microservices-Landschaft, die sich aus 20 Services zusammensetzt. Der Umbau aller Services auf eine hundertprozentige Serverless-Technologie wie Google Cloud Functions hätte den Umfang einer Migration gesprengt. Mit Google Cloud Run war es jedoch möglich, die bereits auf Containern basierende Microservices-Umgebung auf Spring Boot zu belassen, aber dennoch von Serverless zu profitieren (Skalierbarkeit, Kosteneffizienz und stark vereinfachte Auslieferung).
Die Migration wurde während der normalen Weiterentwicklung der Applikation durchgeführt. Gestartet wurde mit einer Enablement- und Architekturreview-Phase, um gemeinsam mit den Entwickler*innen von Kundenseite, den Google PSO und codecentric die wichtigsten Building Blocks und Implikationen durch Google Cloud Run zu identifizieren.
Im Pilotprojekt wurden insgesamt drei Microservices nach Google Cloud Run migriert und sind bereits produktiv im Einsatz. Eine Roadmap für den weiteren Migrationspfad aller Microservices wurde erstellt und befindet sich in der Umsetzung. Bei der Umsetzung hilft ein Blueprint, der während der Migration entstand. Dieser unterstützt mit Vorlagen für unterschiedliche Problemstellungen andere Produktteams bei der Migration. Zudem können die Teams auf viele Code-Snippets und Infrastructure-as-Code-Beispiele zurückgreifen. Sie profitieren von diesen Artefakten und können weitere Migrationen um ein Vielfaches effizienter umsetzen.
Durch die Nutzung von Google Cloud Run reduzieren sich die Kosten für den Betrieb der Entwicklungsplattform voraussichtlich um 65 %.
Bei vielen unserer Kunden finden sich solche oder ähnliche hauseigene Cloud-Umgebungen. Das Projekt hat gezeigt, wie einfach in die Jahre gekommene Microservice-Projekte modernisiert werden können, um von den Vorteilen von Serverless-Konzepten zu profitieren.
Sind Sie interessiert an einer individuellen Lösung für Ihr Unternehmen? Dann lassen Sie uns unverbindlich sprechen.
Hinweis: In Ihrem Browser ist JavaScript deaktiviert. Für eine bessere und fehlerfreie Nutzung dieser Webseite, aktivieren Sie bitte JavaScript in Ihrem Browser.