Containerisierung: Cilium 1.8 balanciert auf dem Expresspfad

Das Verwenden des eXpress Data Path für das Load Balancing soll gleichzeitig den Durchsatz verbessern und die CPU-Last verringern.

In Pocket speichern vorlesen Druckansicht
Cotnainerisierung: Cilium setzt für das Load Balancing auf XDP

(Bild: zhangyang13576997233 / Shutterstock.com)

Lesezeit: 2 Min.
Von
  • Rainald Menge-Sonnentag

Cilium, das Open-Source-Werkzeug Cilium zum Bereitstellen abgesicherter Netzwerkverbindungen zwischen containerisierten Anwendungen, ist in Version 1.8 erschienen. Eine wesentliche Neuerung findet sich unter der Haube: Die Software setzt für das Load Balancing auf den im Linux Kernel verankerten XDP (eXpress Data Path). Außerdem baut sie das Zusammenspiel mit der Hubble-Plattform aus.

Der XDP ist seit Version 4.12 Bestandteil des Linux-Kernels. Der Netzpaketprozessor nutzt den (erweiterten) Berkeley Packet Filter (eBPF) zum Abfangen von Datenpaketen direkt an der Schnittstelle zur Netzkarte. Dabei ersetzt er TCP/IP nicht, sondern dient vor allem zum Filtern und schnellen Weiterleiten von Datenpaketen.

Das Diagramm neben dem Go-Maskottchen im Cilium-Wagen auf der XDP-Spur zeigt die freien CPU-Ressourcen.

(Bild: Cilium)

Die Cilium-Entwickler haben den in Version 1.6 eingeführten Ersatz für kube-proxy, der auf eBPF aufsetzt, um die Integration von XDP erweitert. Bei internen Tests war laut Angaben des Cilium-Teams die Serviceweiterleitung (Service Forwarding) bis zu fünfmal schneller. Gleichzeitig ist wohl die CPU-Last merklich gesunken.

Der eBPF hält auch in anderen Bereichen von Cilium Einzug: Native Implementierungen ersetzen die Umsetzung über iptables unter anderem für Session Affinity, HostPort und den ip-masq-agent für das IP Masquerading.

Die Observability-Plattform Hubble hatte das Cilium-Team erstmals im November 2019 vorgestellt und mit Cilium 1.7 eine UI für das Tool veröffentlicht. Das aktuelle Release führt mit Hubble Relay eine Schnittstelle zum Cluster-weiten Überwachen der einzelnen Knoten ein. Es sitzt zwischen der Nutzerschnittstelle Hubble UI beziehungsweise dem Kommandozeilenwerkzeug Hubble CLI und den Cilium-Hubble-Instanzen.

Hubble Relay verbindet UI beziehungsweise die Kommandozeile mit dem Backend.

(Bild: Cilium)

Das Hubble Relay benötigt wohl wenig Konfiguration. Interessierte finden eine Einführung zur Netzwerküberwachung mit Hubble und dem neuen Relay in der Cilium-Dokumentation.

Weitere Neuerungen in Cilium 1.8 wie die erweiterte Integration in Microsoft Azure lassen sich dem Cilium-Blog entnehmen.

(rme)