Warum wir eine In-House-Kubernetes-Plattform entwickelt haben

Tom Whiston Jul 20, 2022
Warum wir eine In-House-Kubernetes-Plattform entwickelt haben

 

Globale Cloud Provider ermöglichen mit der Verlässlichkeit und Maturität ihrer APIs eine massive Produktivitätssteigerung im Vergleich zur eigenen Verwaltung von grundlegenden Infrastrukturen. Wir von Nine haben mit unserem ersten Kubernetes-Produkt, Managed Google Kubernetes Engine, direkt davon profitiert. Und wir planen auch nicht, unsere Arbeit in der Cloud oder das Angebot unseres cloudbasierten Kubernetes-Produkts aufzugeben. Im Zeitalter von GKE (Google Kubernetes Engine), AKS (Azure Kubernetes Service) und EKS (Amazon Elastic Kubernetes Service) erscheint es daher vielleicht seltsam, dass ein Managed Service Provider, der sich gut mit der Cloud auskennt, viel Zeit und Arbeitsaufwand in die Entwicklung eines eigenen In-House-Kubernetes-Angebots investiert — besonders, wenn man dabei die technische Komplexität eines solchen Unterfangens betrachtet. Da sich das Platform Team von Nine in den vergangenen zwei Jahren genau damit beschäftigt hat, möchten wir in diesem Beitrag die Beweggründe für eine In-House-Kubernetes-Plattform sowie unsere weiteren Pläne mit dieser erläutern.


Schweizer Standort

Es führt kein Weg daran vorbei, dass einige unserer Kunden — ob aus Gründen des Risikomanagements, des Datenschutzes oder der Tradition — Managed Services benötigen, die komplett in Datacentern mit dem Standort Schweiz und von Schweizer Unternehmen betrieben werden. Denn angesichts des multinationalen Charakters von Cloud Providern und der Komplexität internationaler Datenschutzbestimmungen (wie etwa der CLOUD Act) ist es beim Arbeiten in der Cloud einfach nicht möglich, die gleichen Sicherheitsgarantien zu bieten, wie sie im Schweizer Recht existieren. Auch wenn Kunden aus Branchen wie dem Banken- und Versicherungswesen, die zuvor eher vorsichtig gegenüber Cloud-Services waren, mittlerweile beginnen, auf die Cloud umzusteigen, besteht hier weiterhin eindeutige Zurückhaltung.

Dies ist einer der Hauptgründe für die Entwicklung unserer In-House-Lösung, Nine Kubernetes Engine, mit der wir unseren Kunden bei der Nutzung von Kubernetes die gleichen Datenschutz- und Sicherheitsgarantien des Schweizer Rechts bieten, die sie bereits von unseren anderen Managed Service Produkten kennen.

Kosten

Auch wenn eine Kostenoptimierung bei der Cloud-Nutzung durchaus möglich ist, ist diese häufig an Bedingungen wie etwa einen hohen Zeitaufwand oder eine zugesicherte, auf Ausgaben basierte Ressourcennutzung, gekoppelt. Dies ist nicht für alle Kunden oder Anwendungen geeignet. Dank der Entwicklung eines Kubernetes-Angebots in unserem eigenen Datacenter können wir unsere hochverdichtete Nutanix-Infrastruktur nutzen, um die Kosten der Ressourcennutzung pro Minute bei den Node Pools unserer Kunden zu reduzieren, ohne dabei eine garantierte Nutzung zu verlangen. Auch können wir dadurch erstmals CPU- und RAM-Kosten anbieten, die anstelle von festen monatlichen Preisen pro Minute berechnet werden. Dadurch liegt der Ressourcenpreis nicht nur insgesamt unter dem unserer Cloud-Standorte, Kunden können damit auch Features wie etwa das Cluster Auto-Scaling mit Keda* nutzen, um eine weitere Kostenoptimierung bei ihrem Setup vorzunehmen.

Wir haben ausserdem stark investiert, um die Architektur unseres Kubernetes Service Stacks zu überholen. So sind zusätzliche Services im Rahmen des Service Stacks nun optional. Damit ermöglichen wir es Kunden, nur die Services aufzusetzen, die sie auch nutzen, sodass sie weniger Ressourcen verbrauchen (und entsprechend bezahlen). Dazu kommt, dass eine Reihe dieser Services nun ausserhalb der Cluster unserer Kunden liegen. Dadurch können wir nicht nur das Deployment, die Konfiguration und Verwaltung von Applikationen, sondern auch die Kosteneffektivität optimieren. Die Verlagerung von Nine Services weg von Kunden-Clustern trägt auch dazu bei, das potenzielle Risiko von Sicherheits- und Stabilitätsproblemen in der Nähe der Anwendungsumgebungen unserer Kunden zu minimieren.

Als Resultat dieser Veränderungen haben wir ein neues Kostenmodell für Nine Kubernetes Engine entwickelt, welches eine geringe, feste Cluster-Gebühr, Gebühren für zusätzliche optionale Services sowie dynamische Kosten für die Ressourcennutzung umfasst**. 

Self-Service

Bei der Entwicklung von Nine Kubernetes Engine haben wir uns ein weiteres Ziel gesetzt: Es sollte unser erstes Produkt sein, das ein Self-Service-Portal mit allen Features bietet. Dabei wollten wir es Kunden ermöglichen, alltägliche Aufgaben selbst zu erledigen, für die zuvor ein Nine Engineer kontaktiert werden musste, was mit Wartezeiten verbunden war. Bei Kubernetes Clustern können Kunden dank Self-Service ihre Cluster und Node Pools, ihren Speicher, die Konfiguration zusätzlicher Services sowie Nutzer-Accounts selbst verwalten.

Self-Service für alle unsere Produkte anzubieten ist Teil der Vision von Nine. Wir planen, dieses Feature sowohl über unser Nine Cockpit als auch über eine API Schnittstelle anzubieten. Dadurch wird nicht nur die Verwaltung von Services schneller und einfacher. Auch die Nutzung des Serviceangebots von Nine für automatisierte und DevOps-Workflows wird damit möglich. Da es sich hier um grundlegende Veränderungen der Kundeninteraktion mit Nine handelt, werden wir diese Funktionalitäten schrittweise ausrollen, wobei das Nutzerportal für Nine Kubernetes Engine bereits jetzt verfügbar ist. Wir gehen davon aus, dass die Schnittstelle im 4. Quartal 2022 für alle Kunden zugänglich sein wird. Weitere Produkte und Services aus dem Angebot von Nine werden fortlaufend hinzugefügt***.

Zukünftige Produkte

Unsere komplett automatisierbare, im Self-Service zu verwaltende In-House-Kubernetes-Plattform stellt die Grundlage für die weitere Produktentwicklung bei Nine dar. Sie ermöglicht es uns, Konzepte wie etwa Function as a Service oder Namespace as a Service zu erforschen. Ausserdem haben wir durch die Plattform die Freiheit zu entscheiden, wo wir Managed Services betreiben, um im passenden Fall Kubernetes Features wie etwa Auto-Scaling in Anspruch zu nehmen und damit eine bessere Kundenerfahrung zu bieten. Dazu kommt, dass wir durch die Entwicklung eines skalierbaren und flexiblen Self-Service-Systems auf Basis von Kubernetes auch unsere bestehenden Services in eine Self-Service-Umgebung integrieren können, ohne dabei grössere Unterbrechungen für unsere Kunden zu verursachen. Dadurch wird die Arbeit mit Nine für alle Teilnehmer schneller, praktischer und effizienter.

Wenn Sie mehr über unser Kubernetes-Angebot erfahren möchten, besuchen Sie bitte https://www.nine.ch/de/kubernetes oder kontaktieren Sie uns.

 

 *Verfügbar für Nine Kubernetes Engine ab Q3/2022
**Weitere Details dieses Preismodells sind auf unserer Website zu finden: https://www.nine.ch/de/kubernetes
*** Sollte es ein bestimmtes Produkt geben, das für Ihre Anwendungszwecke im Self-Service hilfreich wäre, nehmen Sie gerne mit uns Kontakt auf.


 

Kontaktieren Sie Nine, wenn Sie weitere Informationen zu Kubernetes erhalten wollen:

Jetzt nine  kontaktieren

 

Tom Whiston

Strategic & Agile Consultant @ Nine
Find me on Github