F5 Friday: Ingress versus ingress

F5-Ökosystem | 28. Dezember 2018

Da die Welten von DevOps und NetOps aufeinandertreffen und Container-Umgebungen Begriffsdefinitionen übernehmen, die traditionell im Netzwerkbereich verwendet werden, erscheint es sinnvoll, die Verwendung des häufig missverständlichen Begriffs „Ingress“ im Zusammenhang mit dem Datenpfad und Container-Umgebungen näher zu betrachten.

Die Begriffe Ingress und Egress werden traditionell verwendet, um die Richtung des Netzwerkverkehrs aus Sicht des Rechenzentrums zu beschreiben. Ingress bezeichnet eingehenden, Egress ausgehenden Datenverkehr.

Mit der zunehmenden Reife von Container-Umgebungen hat der Begriff „Ingress“ eine sehr spezifische, anwendungsbezogene Definition erhalten.

Ingress. Ein API-Objekt, das den externen Zugriff auf die Dienste in einem Cluster verwaltet, in der Regel über HTTP. Ingress kann Lastverteilung, SSL-Terminierung und namensbasiertes virtuelles Hosting bereitstellen.

An dieser Stelle ist es wichtig, kurz innezuhalten und festzuhalten, dass eine Ingress-Ressource, wie sie in einer Kubernetes-Umgebung definiert ist, Funktionen beschreibt, die innerhalb der Container-Grenzen selbst ausgeführt werden sollen.

Jeder Ingress ist ein Reverse-Proxy, der externe Anfragen entgegennimmt und sie anhand der in der Kubernetes-Ingress-Ressource festgelegten Regeln an den richtigen Kubernetes-Service weiterleitet. Der Service verteilt die Anfragen wiederum auf mehrere zugehörige Container, üblicherweise mithilfe nativer Load-Balancing-Algorithmen auf Schicht 4 (TCP). Auf diese Weise kann unter anderem eine einheitliche API nach außen bereitgestellt werden. Der Ingress analysiert die API-Aufrufe (den URI-Pfad) und verteilt sie an die entsprechenden, in Containern ausgeführten Microservices innerhalb des Container-Clusters.

F5 bietet dieselben Funktionen wie ein klassischer Kubernetes-Ingress, ergänzt diese jedoch um SNI-Routing und Layer-4-(TCP-)Lastverteilung. Die Möglichkeit zum SNI-Routing (Server Name Indication) ist insbesondere für diejenigen von Vorteil, die eine Ende-zu-Ende-TLS-Verschlüsselung des Nachrichtenaustauschs benötigen. Sie ermöglicht es F5, Anfragen anhand der Informationen in den Headern korrekt weiterzuleiten, ohne die eigentlichen Nutzdaten bzw. Nachrichten zu entschlüsseln. Dies schränkt zwar den Funktionsumfang ein, der auf die Anfrage angewendet werden kann – beispielsweise kann sie nicht auf schädliche Inhalte überprüft werden –, bietet jedoch die erforderliche Unterstützung für Architekturen, bei denen Inhalte aus regulatorischen oder betrieblichen Gründen verschlüsselt bleiben müssen. Layer-4-(TCP-)Lastverteilung wird häufig außerhalb einer Containerumgebung eingesetzt, um Ingress-Dienste nach Kubernetes-Art zu skalieren.

F5 wird in der Regel außerhalb der Container-Umgebung bereitgestellt. Es wird häufig als Load-Balancing-Lösung eingesetzt, um Cluster nach außen zugänglich zu machen, d. h. öffentlichen Zugriff auf Dienste zu ermöglichen, die aus einem Container-Cluster bestehen. Eine CNCF-Umfrage ergab, dass 67 % der Befragten eine Load-Balancer-Option wählen, um Cluster-Dienste nach außen zugänglich zu machen, während weitere 33 % Ingress-Funktionen (L7) nutzen.

Damit wir dieselben Funktionen wie ein Kubernetes-Ingress bereitstellen können, wird ein container-nativer „Connector“ verwendet, der die Aktualisierung der Richtlinien zur Steuerung des Datenverkehrs ermöglicht. Dieser Connector wird innerhalb des Container-Orchestrators ausgeführt und ist in diesen integriert (in der Regel Kubernetes, aber auch Red Hat OpenShift ist weit verbreitet). Die Kommunikation mit F5 Ingress erfolgt über eine API. Zu den Aktualisierungen gehören Änderungen an Ingress-Ressourcendefinitionen (HTTP-Routing-Richtlinien) sowie Konfigurationsänderungen, etwa das Starten oder Entfernen einer Container-Instanz, die sich auf eine bestehende Dienstdefinition auswirkt.

Der Vorteil von F5 gegenüber einfachen Ingress-Diensten besteht darin, dass sich erweiterte Funktionen auf den ein- und ausgehenden Datenverkehr anwenden lassen. Mit F5 können Sicherheitsfunktionen, Header-Anreicherung und clientspezifische Leistungsoptimierungen umgesetzt werden, ohne die Container-Umgebung, die Architektur oder die Anwendung selbst zu ändern.

Weitere Ressourcen:

Teilen
Schlagwörter: 2018, DevOps

Über den Autor

Lori Mac Vittie
Lori Mac VittieDistinguished Engineer und Chief Evangelist | F5

Lori MacVittie ist Distinguished Engineer und Chief Evangelist im Office of the CTO von F5 und verfügt über umfassende Expertise in den Bereichen Anwendungsbereitstellung, Automatisierungsstrategie und Infrastruktur. Sie ist dafür bekannt, Komplexität verständlich zu machen – ob sie Leitplanken für KI-Agenten definiert, fragile Multicloud-Architekturen analysiert oder die Grenzen skalierbarer Systeme auslotet. Sie verfügt über mehr als dreißig Jahre Branchenerfahrung in der Anwendungsentwicklung, IT-Architektur sowie im Netzwerk- und Systembetrieb. Bevor sie zu F5 kam, war sie als mehrfach ausgezeichnete Technologie-Redakteurin tätig. MacVittie hat einen Masterabschluss in Informatik und ist eine produktive Autorin, deren Veröffentlichungen die Bereiche Sicherheit, Cloud und Unternehmensarchitektur abdecken. Außerdem spielt sie leidenschaftlich gern Brett- und Videospiele und vertritt mit voller Überzeugung klare Ansichten zum Thema Käse.

Weitere Blogbeiträge von Lori Mac Vittie

Ähnliche Blogbeiträge

Ein umfassender Leitfaden zur Bereitstellung und Sicherheit von KI-Anwendungen
F5-Ökosystem | 11.08.2024

Ein umfassender Leitfaden zur Bereitstellung und Sicherheit von KI-Anwendungen

Entdecken Sie optimale Strategien für die Absicherung und Bereitstellung von KI-Anwendungen.

KI zulassen und einführen? Lehren aus der Public Cloud
F5-Ökosystem | 06.04.2023

KI zulassen und einführen? Lehren aus der Public Cloud

Die Einführung von KI steht unmittelbar bevor und könnte entscheidend sein, um wettbewerbsfähig zu bleiben. Daher muss die IT-Sicherheit proaktiv handeln und der KI-Einführung schon jetzt einen Schritt voraus sein, um sie auf einen risikogerechten Weg zu lenken.

Stand der Anwendungsstrategie 2022: Zeit für die Modernisierung des Betriebs
F5-Ökosystem | 12.04.2022

Stand der Anwendungsstrategie 2022: Zeit für die Modernisierung des Betriebs

Es ist deutlich geworden, dass Unternehmen ihren Fokus erneut auf die Geschäftsfunktionen richten müssen, um die Dynamik ihrer digitalen Transformation aufrechtzuerhalten. Kundenerlebnisse haben zwar weiterhin Priorität, doch auch Geschäftsfunktionen wie Recht, Personalwesen und Finanzen müssen digitalisiert werden. Das bedeutet, dass CIOs das Steuer übernehmen, während sich die digitale Transformation von der Modernisierung von Anwendungen hin zur Modernisierung von Betriebsabläufen verlagert.

F5s Weg zu einer vielseitigen Plattform für Anwendungsanalysen
F5-Ökosystem | 26.05.2020

F5s Weg zu einer vielseitigen Plattform für Anwendungsanalysen

F5 bietet heute die umfassendsten Anwendungsdienste entlang des gesamten Weges vom Code bis zum Kunden. Künftig werden wir verstärkt auf Anwendungstelemetrie und -analysen setzen, damit unsere Kunden wertvolle Erkenntnisse über ihre Anwendungen, Geschäftsabläufe und Benutzererlebnisse gewinnen können. Beim Ausbau unserer Cloud-Analysefunktionen werden wir ML und KI noch stärker nutzen, um unsere Kunden bei der Verbesserung ihrer Geschäftsdienste zu unterstützen.

Telemetrie: Eine andere Art von Daten
F5-Ökosystem | 24.02.2020

Telemetrie: Eine andere Art von Daten

Verwenden wir den Begriff „Telemetrie“ nur, weil er attraktiver klingt als „Daten“? Letztlich sind sowohl Daten als auch Telemetrie strukturierte Informationseinheiten. Es ist kein Verbrechen, die Begriffe synonym zu verwenden. Doch wenn man es genau nimmt, gibt es einen Unterschied. Und dieser Unterschied wird immer wichtiger werden, je weiter Unternehmen in die Datenökonomie vordringen.

MTTR bedeutet nicht „Mean Time to Reboot“
F5-Ökosystem | 14.03.2019

MTTR bedeutet nicht „Mean Time to Reboot“

„Schnell scheitern“ lautet heute das Mantra für mehr Geschwindigkeit. Ob in DevOps oder im Geschäftsleben: Wer in einer digitalen Wirtschaft agiert, muss eine möglichst perfekte Verfügbarkeit gewährleisten.