Dieser Umzug löste zwar viele der Probleme, die mit dem vorherigen On-Premise-Ansatz verbunden waren, aber nicht alle. Junze Bao, Site Reliability Engineer für General Marketplaces bei der SMG Swiss Marketplace Group, gab uns einen Einblick in eine kürzlich durchgeführte Migration und die damit verbundenen Erfolge und Herausforderungen.
Kubernetes? Kubernetes!
Obwohl tutti.ch in die Cloud migriert wurde, handelte es sich eher um einen Lift-and-Shift-Ansatz. Es wurden viele, aber nicht alle Probleme gelöst, die tutti.ch hatte, als sie noch mit Legacy arbeiteten. (Hier könnt ihr alles über diesen grossen Umzug in einem unserer früheren Blogbeiträge lesen). Das Hinzufügen neuer Applikationen war immer noch relativ langsam und umständlich, und die Entwickler waren zu sehr von den Systemingenieuren abhängig, wenn es ums Deployment von Applikationen ging. Ausserdem nimmt die gemeinsame Nutzung einer einzigen Testumgebung durch alle Entwickler viel Flexibilität und Autonomie weg. Diese und andere Faktoren machten es notwendig, eine noch bessere Lösung für tutti.ch zu finden. Hier kommt Kubernetes ins Spiel. Kubernetes ist eine moderne Container-Orchestrierungsplattform. Sie wurde erstmals 2014 veröffentlicht und erleichtert die Verwaltung, das Deployment und die Skalierung unserer Applikationen. Zahlreiche Unternehmen setzen sie ein, da die Containerisierung von Applikationen eine Vielzahl von Problemen löst
Kubernetes, also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery.
From the Kubernetes website
Zusammenfassend lässt sich sagen, dass tutti.ch in die Cloud verlagert wurde, die Applikationen aber weiterhin als einzelne Prozesse auf einer virtuellen Maschine (die einen physischen Server repräsentiert) bereitgestellt sind. Das Hinzufügen neuer “Server” oder die Skalierung bestehender war mit viel manueller Arbeit verbunden, weshalb der Wechsel zu Kubernetes der nächste logische Schritt war, um Prozesse zu automatisieren.