Eine Edge-Schicht für heterogene Kubernetes-Cluster

Heterogene Kubernetes-Cluster erhöhen die Flexibilität, verteilen aber auch Routing, TLS, Security und Failover über mehrere Implementierungen. Eine gemeinsame Edge-Schicht entkoppelt den öffentlichen Eingang von Cluster-Technologien und Compute-Providern. Die ayedo Edge Cloud übernimmt diese Funktionen providerunabhängig und ermöglicht konsistentes Backend Cloaking über Multi-Cluster-Architekturen.

Beitragsbild

TL;DR

Heterogene Kubernetes-Cluster erhöhen die Flexibilität, verteilen aber auch Routing, TLS, Security und Failover über mehrere Implementierungen. Eine gemeinsame Edge-Schicht entkoppelt den öffentlichen Eingang von Cluster-Technologien und Compute-Providern. Die ayedo Edge Cloud übernimmt diese Funktionen providerunabhängig und ermöglicht konsistentes Backend Cloaking über Multi-Cluster-Architekturen.

Einleitung

Bei Multi-Cluster-Architekturen wird der öffentliche Traffic häufig direkt an die jeweiligen Ingress-Controller der Kubernetes-Umgebungen adressiert. Das wirkt zunächst einfach, koppelt DNS, TLS, Schutzmechanismen und Failover jedoch an konkrete Cluster und Provider. Ändert sich die zugrunde liegende Infrastruktur, müssen auch externe Routing- und Sicherheitskonfigurationen angepasst werden. Der zentrale Architekturfehler besteht darin, den Cluster als öffentlichen Einstiegspunkt zu behandeln. Sinnvoller ist eine getrennte Edge-Schicht: Sie bildet den stabilen öffentlichen Eingang, während Kubernetes-Cluster und andere Workloads als austauschbare Backends dahinter betrieben werden.

Öffentlicher Eingang und Compute müssen getrennt werden

Kubernetes orchestriert Workloads, Services und interne Netzwerkpfade. Der öffentliche Eingang einer Anwendung ist jedoch eine übergreifende Infrastrukturaufgabe. Dazu gehören Anycast DNS, Routing, TLS Termination, DDoS Protection, Web Application Firewall, Health Checks und die Verteilung von Anfragen auf verfügbare Backends.

Wer diese Funktionen in jedem Cluster separat implementiert, erzeugt mehrere Betriebsmodelle. Jeder Cluster kann eigene Ingress-Regeln, Zertifikatsprozesse, Sicherheitsrichtlinien und Failover-Mechanismen verwenden. Das erschwert Standards und erhöht die Zahl der Konfigurationspunkte. Außerdem wird ein Providerwechsel schnell zu einer Routingmigration.

Eine gemeinsame Edge-Schicht entkoppelt diese Verantwortungsbereiche. Die ayedo Edge Cloud verarbeitet den öffentlichen Traffic vor den eigentlichen Backends. Diese Backends können in unterschiedlichen Kubernetes-Umgebungen, bei verschiedenen Providern oder außerhalb von Kubernetes betrieben werden. Der Cluster bleibt für die Ausführung der Anwendung verantwortlich; die Edge übernimmt den kontrollierten Zugang dorthin.

Multi-Cluster ohne providergebundenes Public Routing

Heterogene Kubernetes-Cluster entstehen aus unterschiedlichen Anforderungen: Ein Cluster kann von ayedo Managed Kubernetes betrieben werden, ein weiterer in der eigenen Infrastruktur oder bei einem anderen Cloud-Provider. Auch verschiedene Kubernetes-Versionen, Netzwerkmodelle und Ingress-Implementierungen sind möglich. Für die Anwendung sollten diese Unterschiede nicht automatisch zu unterschiedlichen öffentlichen Endpunkten führen.

Mit einem gemeinsamen Anycast-basierten Layer-4- und Layer-7-Loadbalancing lässt sich der öffentliche Service vor den Clustern adressieren. Die Edge entscheidet anhand der konfigurierten Backend-Struktur, wohin der Traffic weitergeleitet wird. Backend Health Checks ermöglichen, nicht verfügbare Ziele aus dem Routing zu nehmen. Failover kann dadurch an der Edge statt in jeder einzelnen Cluster-Implementierung abgebildet werden.

Das reduziert die Abhängigkeit von einzelnen Ingress-Controllern und Providern. Gleichzeitig bleibt die interne Clusterwahl eine Architekturentscheidung: aktiv-aktiv über mehrere Backends, priorisiertes Failover oder eine getrennte Verteilung nach Service. Die Edge Cloud bringt dafür die öffentliche Erreichbarkeit, nicht jedoch eine einheitliche interne Clustertechnologie voraus.

Backend Cloaking als Schutz- und Entkopplungsprinzip

Eine öffentliche Anwendung sollte nicht zwingend die Adressen ihrer Kubernetes-Services, Nodes oder Provider-Netze sichtbar machen. Backend Cloaking trennt die öffentliche Identität eines Services von seinen tatsächlichen Ursprungszielen. Clients kommunizieren mit dem Edge-Endpunkt, während die Backends hinter der Edge verborgen bleiben.

Das hat zwei technische Konsequenzen. Erstens werden Änderungen an Cluster-Adressen, Providern oder internen Routingpfaden nicht automatisch zu Änderungen am öffentlichen DNS. Zweitens wird die Angriffsfläche reduziert, weil die eigentlichen Backend-Endpunkte nicht als reguläre öffentliche Einstiegspunkte fungieren müssen. Backend Cloaking ersetzt keine Zugriffskontrollen im Cluster, verhindert aber, dass die Edge-Architektur die Backend-Struktur nach außen abbildet.

Für heterogene Kubernetes-Cluster ist diese Trennung besonders relevant. TLS kann an der Edge terminiert werden, während die Weiterleitung über definierte Backend-Pfade erfolgt. Proxy Protocol kann dabei Informationen zur ursprünglichen Verbindung an Backends weitergeben, sofern die nachgelagerte Infrastruktur dies unterstützt. Damit bleiben Logging, Routing und Sicherheitskontrollen zwischen Edge und Cluster technisch abgestimmt.

Einheitlicher Betrieb statt identischer Cluster

Eine gemeinsame Edge-Schicht bedeutet nicht, dass alle Kubernetes-Cluster gleich betrieben werden müssen. Sie schafft vielmehr eine gemeinsame Kontrollfläche für den öffentlichen Traffic. DNS, WAF-Regeln, DDoS Protection, TLS Termination, Backend-Status und Traffic-Statistiken können zentral vor den unterschiedlichen Compute-Umgebungen organisiert werden.

Das verändert auch die Verantwortlichkeiten. Das Plattformteam definiert den externen Service und seine Erreichbarkeitsregeln. Die Teams für die jeweiligen Cluster verantworten Deployment, Service-Discovery und interne Resilienz. Dadurch lassen sich organisatorische Grenzen sauberer abbilden, ohne dass jedes Team die vollständige öffentliche Routing- und Schutzarchitektur neu aufbauen muss.

Die ayedo Edge Cloud ist dabei nicht auf ayedo Managed Kubernetes beschränkt. Sie kann auch vor eigenen oder bei anderen Providern betriebenen Kubernetes-Clustern eingesetzt werden. Grundlage sind die eigene Netzwerk-Infrastruktur, das eigene Autonomous System und eine verteilte Multi-PoP-Architektur im Aktiv-Aktiv-Prinzip. Entscheidend ist nicht die Vereinheitlichung des Compute, sondern die Entkopplung seines öffentlichen Zugangs.

Praxisszenario: Ein Service über drei Cluster

Ein Unternehmen betreibt eine API in drei Umgebungen: in einem ayedo Managed Kubernetes Cluster, in einem eigenen Kubernetes-Cluster und bei einem weiteren Provider. Ohne gemeinsame Edge-Schicht besitzt jede Umgebung einen eigenen öffentlichen Endpunkt. DNS, TLS, WAF und Failover müssen je nach Ingress-Implementierung unterschiedlich gepflegt werden.

Alternativ wird die API über einen gemeinsamen Edge-Endpunkt veröffentlicht. Die ayedo Edge Cloud führt Health Checks auf die drei Backends aus und verteilt den Traffic nach einem definierten Aktiv-Aktiv- oder Failover-Modell. Die Clients sehen weder Cluster-Adressen noch Providerwechsel. Fällt ein Backend aus, kann es aus dem Routing genommen werden, ohne die öffentliche Service-Adresse zu verändern. Die Cluster bleiben technisch unterschiedlich, erfüllen gegenüber der Edge aber dieselbe Backend-Rolle.

FAQ

Muss jeder Cluster denselben Ingress-Controller verwenden?

Nein. Eine gemeinsame Edge-Schicht entkoppelt das öffentliche Routing von der konkreten Ingress-Implementierung. Wichtig sind erreichbare Backends und ein konsistentes Zielmodell für Health Checks und Weiterleitung.

Ist Backend Cloaking nur für Security relevant?

Nein. Es reduziert auch die Kopplung zwischen öffentlichem DNS und internen Backend-Adressen. Dadurch lassen sich Cluster, Provider und Routingpfade ändern, ohne den externen Service zwangsläufig umzubauen.

Kann die Edge auch Nicht-Kubernetes-Backends bedienen?

Ja. Die Edge Cloud kann Kubernetes-Backends mit anderen Workloads kombinieren. Entscheidend ist die Backend-Erreichbarkeit, nicht die Verwendung einer bestimmten Compute-Plattform.

Fazit

Heterogene Kubernetes-Cluster sind kein Problem, das durch identische Clusterimplementierungen gelöst werden muss. Die robustere Architektur trennt den öffentlichen Eingang von der Compute-Ausführung. Eine gemeinsame Edge-Schicht bündelt Routing, Schutz, TLS und Failover, während Cluster und Provider austauschbare Backend-Umgebungen bleiben. Die ayedo Edge Cloud unterstützt dieses Modell providerunabhängig und macht Backend Cloaking sowie Multi-Cluster-Routing zu Bestandteilen einer konsistenten öffentlichen Infrastruktur.