HomeBlogAPI ManagementRed Hat Connectivity Link – Innovation und End of Life von 3Scale

Red Hat Connectivity Link – Innovation und End of Life von 3Scale

1. Einführung in Red Hat Connectivity Link

Red Hat Connectivity Link basiert auf dem Open-Source-Projekt Kuadrant und bietet eine native Lösung für das Management komplexer API- und Anwendungsverbindungen in hybriden Umgebungen. Bereits als Developer Preview auf dem Red Hat Summit 2024 vorgestellt, soll Connectivity Link noch im Herbst 2024 den Status „General Availability“ erreichen. Diese Lösung ermöglicht es, Infrastruktur-Richtlinien zentral zu definieren und flexibel auf verschiedenen Kubernetes-Clustern einzusetzen – ein entscheidender Vorteil in dynamischen, Multi-Cloud-Szenarien.


2. Architektur und Technische Grundlagen

Kubernetes-Native Integration und Operator Lifecycle Manager (OLM)

Connectivity Link ist tief in die Kubernetes-Welt integriert. Die Installation erfolgt idealerweise über den Operator Lifecycle Manager (OLM), der nicht nur die Installation, sondern auch das Lifecycle-Management der Komponenten übernimmt. Dies stellt sicher, dass alle eingesetzten CRDs (Custom Resource Definitions) – von der Gateway API bis zu spezifischen Policies – konsistent verwaltet werden.

Trennung von Control Plane und Data Plane

Die Architektur gliedert sich in zwei wesentliche Ebenen:

  • Control Plane:
    Hier werden alle Konfigurationen in Form von Kubernetes CRDs definiert. Die Control Plane übernimmt das Verwalten von Policies, die Einrichtung von Ingress-Gateways und die Anbindung an externe Services, wie DNS-Provider und Zertifikat-Manager.
  • Data Plane:
    In dieser Schicht werden die konfigurierten Richtlinien tatsächlich durchgesetzt. Komponenten wie Kuadrant’s Rate Limiter (Limitador) und Autorisierungsserver (Authorino) arbeiten hier im Request Flow mit, um Sicherheits- und Performance-Richtlinien in Echtzeit zu implementieren.

Durch diese modulare Trennung können Plattformingenieure globale Einstellungen vornehmen, während Anwendungsentwickler spezifische Anpassungen auf Applikationsebene realisieren können.


3. Voraussetzungen und Installation

Systemvoraussetzungen

  • OpenShift-Cluster:
    Idealerweise auf AWS, wobei auch Bare-Metal oder virtualisierte Umgebungen unterstützt werden. Ein einzelner Cluster reicht für erste Tests – in Multi-Cluster-Szenarien wird die Verwaltung noch zentralisierter.
  • DNS-Domäne:
    Für die Trennung der Cluster-API und der Applikationsdomains wird eine zusätzliche Hosted Zone (zum Beispiel über AWS Route53) benötigt. Dies ermöglicht eine gezielte Steuerung des DNS-Traffics und die Nutzung von globalen Load Balancing-Strategien.
  • Optional: Redis-Instanz für Global Rate Limiting:
    Für Ein-Cluster-Setups können Rate Limiting-Zähler auch im Arbeitsspeicher gespeichert werden. In Multi-Cluster-Umgebungen empfiehlt sich jedoch der Einsatz eines gemeinsamen Redis-Backends.

Installationsschritte

  1. Vorbereitung des Clusters:
    Stellen Sie sicher, dass Ihr OpenShift-Cluster den aktuellen Systemanforderungen entspricht und die notwendige Infrastruktur (z. B. zusätzliche DNS-Zonen) vorhanden ist.
  2. Installation der Operators über OLM:
    Über den Operator Lifecycle Manager werden die Connectivity Link Operatoren installiert. Dabei erfolgt die Konfiguration der benötigten CRDs, welche die Basis für DNS-Management, TLS-Policy, Authentifizierung und Rate Limiting bilden.
  3. Deployment der Connectivity Link Komponenten:
    Nach der Operator-Installation können Sie die Connectivity Link Komponenten deployen. Ein minimaler CRD-Snippet für den Start könnte wie folgt aussehen apiVersion: kuadrant.io/v1beta1 kind: Kuadrant metadata: name: kuadrant namespace: kuadrant-system spec: {} Diese Konfiguration stellt die Basisinstallation dar. Weitere Einstellungen, wie spezifische Policies oder DNS-Konfigurationen, können anschliessend hinzugefügt werden.

4. Sicherheits- und Konnektivitätsfeatures im Detail

TLS-Management und Zertifikat-Handling

Um die Kommunikation abzusichern, integriert Connectivity Link moderne TLS-Management-Lösungen. In AWS-Umgebungen empfiehlt sich der Einsatz von Let’s Encrypt in Kombination mit cert-manager. Für Umgebungen, in denen ein self-signed Ansatz bevorzugt wird, kann folgender ClusterIssuer konfiguriert werden:

apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
name: kuadrant-ca
spec:
selfSigned: {}

Diese flexible Anbindung stellt sicher, dass TLS-Zertifikate automatisch erneuert und korrekt an die Gateways verteilt werden.

Authentifizierungs- und Autorisierungs-Policies

Connectivity Link bietet mit Authorino eine leichtgewichtige Lösung für die Authentifizierung, die über CRDs gesteuert wird. Unterschiedliche Authentifizierungs-Methoden – von API-Key über JWT bis hin zu OAuth – können konfiguriert werden. Beispielhaft lässt sich eine Auth Policy wie folgt definieren:

apiVersion: kuadrant.io/v1beta2
kind: AuthPolicy
metadata:
name: secure-api
spec:
targetRef:
group: gateway.networking.k8s.io
kind: HTTPRoute
name: my-api-route
rules:
authentication:
"jwt-auth":
jwt:
issuerUrl: "https://sso.meincluster.ch/realms/default"

Diese Policy ermöglicht es, spezifische Authentifizierungsregeln pro HTTPRoute zu definieren, sodass nur autorisierte Zugriffe zugelassen werden.

Rate Limiting und Policy Hierarchien

Ein zentraler Aspekt der Lösung ist die Implementierung von Rate Limiting Policies. Mit Hilfe von Kuadrant können sowohl globale als auch spezifische Limits definiert werden. Dabei kommt das Konzept von Defaults und Overrides zum Einsatz, welches sicherstellt, dass globale Richtlinien durch spezifische Anwendungsanforderungen bei Bedarf angepasst werden können. Ein Beispiel für eine RateLimitPolicy könnte folgendermaßen aussehen:

apiVersion: kuadrant.io/v1beta2
kind: RateLimitPolicy
metadata:
name: global-rlp
namespace: kuadrant-system
spec:
targetRef:
group: gateway.networking.k8s.io
kind: Gateway
name: external-gateway
limits:
"global":
rates:
- limit: 5
duration: 10
unit: second

Diese Konfiguration schützt Ihre API-Endpunkte effektiv vor Überlastung, indem sie die Anzahl der Requests innerhalb eines bestimmten Zeitraums begrenzt.


5. Integration in Hybride und Multi-Cloud Umgebungen

Ein besonderer Vorteil von Red Hat Connectivity Link liegt in der Unterstützung von Multi-Cluster- und Multi-Cloud-Szenarien. Durch die Integration von DNS-Provider-Anbindungen (wie AWS Route53, Google Cloud DNS oder Azure DNS) können Sie globale Load Balancing-Strategien implementieren, die den Datenverkehr intelligent auf verschiedene Cluster verteilen. Dies minimiert Ausfallzeiten und optimiert die Performance Ihrer Anwendungen.

Die Möglichkeit, Konfigurationen über alle Cluster hinweg zu spiegeln (Configuration Mirroring), sorgt dafür, dass nicht nur die Produktionsumgebung, sondern auch Entwicklungs- und Testumgebungen konsistent und reproduzierbar aufgebaut werden können.


6. Use Cases und Praktische Anwendungsbeispiele

Szenario 1: Zentrale Verwaltung in einem Multi-Cluster-Setup

Plattformingenieure können über die Control Plane zentrale Policies definieren, die für alle Cluster gelten. So wird sichergestellt, dass beispielsweise Authentifizierungsregeln, Rate Limiting und TLS-Konfigurationen konsistent umgesetzt werden – unabhängig davon, in welchem Cluster eine Anwendung betrieben wird.

Szenario 2: Flexible Anpassung für spezifische Anwendungen

Während globale Richtlinien den Rahmen abstecken, haben Anwendungsentwickler die Freiheit, eigene HTTPRoutes zu konfigurieren und spezifische Policies (z. B. individuelle Auth Policies) direkt an ihren Applikationen anzubringen. Dies ermöglicht eine hohe Agilität, ohne dass die übergreifende Sicherheit leidet.

Szenario 3: Dynamische Anpassung bei Lastspitzen

Dank der integrierten Rate Limiting-Funktionalitäten können Sie in Echtzeit reagieren, wenn es zu Lastspitzen kommt. Die Möglichkeit, Limits sowohl auf Gateway- als auch auf HTTPRoute-Ebene zu definieren, erlaubt es, den Datenverkehr granular zu steuern und Ausfälle zu vermeiden.


7. Fazit und Ausblick

Red Hat Connectivity Link stellt eine zukunftsweisende Lösung dar, die moderne API- und Anwendungs-Konnektivität in hybriden und Multi-Cloud-Umgebungen ermöglicht. Durch den Einsatz von Kubernetes-nativen Mechanismen und einer klaren Trennung zwischen Control und Data Plane profitieren Unternehmen von:

  • Konsistenter Verwaltung von Ingress-Gateways und Sicherheitsrichtlinien über alle Cluster hinweg
  • Hoher Flexibilität bei der Anpassung an spezifische Anwendungsanforderungen
  • Verbesserter Sicherheit durch moderne TLS-, Auth- und Rate Limiting-Mechanismen
  • Effizienter Skalierung in dynamischen Multi-Cloud-Szenarien

Die geplante GA-Veröffentlichung im Herbst 2024 verspricht, die Möglichkeiten von Connectivity Link noch weiter zu erweitern. Bei ONLU AG unterstützen wir Sie gerne dabei, diese Technologie in Ihre bestehende IT-Landschaft zu integrieren und Ihre Infrastruktur zukunftssicher zu gestalten.

Kontaktieren Sie uns, um mehr über die Implementierung und die vielfältigen Einsatzmöglichkeiten von Red Hat Connectivity Link zu erfahren. Gemeinsam entwickeln wir individuelle Lösungen, die Ihre IT-Strategie auf das nächste Level heben.


ONLU AG – Ihr verlässlicher Partner für innovative IT-Consulting-Lösungen in der Schweiz.


Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert