Categories: Open SourceSoftware

Solo BumbleBee erleichtert Linux eBPF-Programmierung

Seit 1992 gibt es den Berkeley Packet Filter (BPF) für Unix als verbesserten Netzwerk-Paketfilter. Im Jahr 2014 wurde er geändert und als erweiterter BPF (eBPF) in den Linux-Kernel aufgenommen. Bald darauf begannen Entwickler jedoch, es zur Ausführung von Userspace-Code innerhalb einer virtuellen Maschine (VM) auf dem Linux-Kernel zu verwenden.  Und dann war es eine große Sache. Wie der Netflix-Experte für Computerleistung, Brendan Gregg, sagte, sind mit eBPF „die Supermächte endlich zu Linux gekommen“.

Welche Superkräfte? eBPF gibt Ihnen die Möglichkeit, Programme im Linux-Kernel auszuführen, ohne den Kernel-Quellcode zu verändern oder zusätzliche Module hinzuzufügen. Es handelt sich dabei um eine leichtgewichtige Umgebung (VM) innerhalb des Linux-Kernels. Programme, die in eBPF ausgeführt werden können, laufen viel schneller und profitieren von Kernel-Funktionen, die anderen Linux-Programmen auf höherer Ebene nicht zur Verfügung stehen.

Natürlich ist es nicht einfach, Anwendungen so nah am Kernel auszuführen, selbst mit eBPF. An dieser Stelle kommt Solo.io, ein Unternehmen für Anwendungsnetzwerke, mit seinem neuen Open-Source-Projekt BumbleBee ins Spiel. BumbleBee vereinfacht das Erstellen, Verpacken und Verteilen von eBPF-Tools durch die automatische Generierung von Boilerplate-User-Space-Code für die Entwicklung von eBPF-Tools.

Es gibt dabei Ähnlichkeiten zu Docker. Das ist so gewollt. Der Code von BumbleBee ermöglicht es Ihnen auch, seine Programme in andere Image-Workflows der Open Container Initiative (OCI) zur Veröffentlichung und Verteilung einzubinden. Das bedeutet, dass Sie eBPF-Programme in einen Continuous Integration/Continuous Development (CI/CD)-Workflow einbinden können.

Normalerweise wird eBPF als sicherer Weg verwendet, um den Kernel mit Beobachtbarkeit, Netzwerk- und Sicherheitstechnologien zu erweitern. Diese Programme werden als Reaktion auf Ereignisse wie eintreffende Netzwerkpakete ausgeführt. eBPF-Programme werden in der Regel in einer höheren Sprache, wie beispielsweise C, geschrieben und dann Just in Time (JIT) in x86-Assembler kompiliert, um maximale Leistung und Sicherheit zu gewährleisten.

Die eBPF-Architektur erwartet, dass eBPF-Programme als Bytecode geladen werden, und der Kernel hat Datenstrukturen und Formate, die für jede Kernelversion spezifisch sind. Das ist, in Großbuchstaben, nicht einfach. Darüber hinaus ist das Verpacken und Verteilen dieser Binärprogramme mühsam, zeitaufwändig und fehleranfällig. Das Ziel von BumbleBee ist es, die Entwicklung, die Paketierung und den Austausch von eBPF-Tools zu vereinfachen und die Verbreitung von eBPF zu beschleunigen.

„Bei Solo.io sehen wir eBPF als eine entscheidende Technologie, die die Vernetzung von Anwendungen verbessern wird. Wir haben im letzten Jahr daran gearbeitet, die eBPF-Technologie mit Gloo Mesh zu nutzen, unserem Istio-basierten Service-Mesh-Angebot für Unternehmen“, erklärt Idit Levine, Gründer und CEO von Solo.io. „Während der Entwicklung von eBPF-Erweiterungen sahen wir uns mit vielen technischen Herausforderungen konfrontiert, was uns dazu brachte, BumbleBee zu entwickeln, um unsere eBPF-Bemühungen zu rationalisieren. Da wir von den Vorteilen von eBPF überzeugt sind, freuen wir uns, BumbleBee mit der Community zu teilen, um die Einführung von eBPF zu beschleunigen.“

BumbleBee enthält eine Befehlszeilenschnittstelle (CLI), die automatisch den User-Space-Code für eBPF-Programme generiert, indem sie die Maps automatisch als Logs, Metriken und Histogramme darstellt. Der Entwickler muss sich nur um das Schreiben des eBPF-Codes kümmern.

Solo.io hat BumbleBee unter Verwendung von libbpf entwickelt, einem neuen Toolset für die Erstellung von BPG-Programmen. Damit können Sie zum Beispiel eBPF-Sonden mit null Userspace-Code schreiben. BumbleBee erkennt und zeigt automatisch Karten in Ihrem Programm an, die es dem User-Space- und dem Kernel-Space-Programm ermöglichen, Daten gemeinsam zu nutzen. Dies wird durch die Verwendung von speziellen BPF-Konventionen und Schlüsselwörtern erreicht.

Wenn Sie mit eBPF arbeiten, verdient BumbleBee Ihre Aufmerksamkeit. Selbst in diesem frühen Stadium kann es Ihnen helfen, eBPF-Programme schneller und sicherer zu schreiben.

ZDNet.de Redaktion

Recent Posts

Starbucks von Cyberattacke betroffen

Ransomware-Angriff auf die KI-gesteuerte Lieferkettenplattform Blue Yonder hat weitreichende Auswirkungen.

13 Stunden ago

Was kann die Apple Watch Series 10?

Seit Ende September ist sie also verfügbar: die Apple Watch 10. Auch in Deutschland kann…

17 Stunden ago

Microsoft-Clouds: GenAI verändert Servicegeschäft

ISG sieht engere Vernetzung zwischen Hyperscaler, IT-Partnern und Endkunden. Treiber ist das Zusammenspiel von KI…

17 Stunden ago

Agentforce Testing Center: Management autonomer KI-Agenten

Mit dem Tool können Unternehmen KI-Agenten mithilfe synthetisch generierter Daten testen, um präzise Antworten und…

2 Tagen ago

NiPoGi AM06 PRO Mini PC: Perfekte Kombination aus Leistung, Flexibilität und Portabilität

Kostengünstiger Mini-PC mit AMD Ryzen 7 5825U-Prozessor, 16 GB Arbeitsspeicher (RAM) und 512 GB SSD.

2 Tagen ago

Black Friday: Vorsicht vor schädlichen QR-Codes

Bösartige QR-Codes, die per E-Mail versendet werden, eignen sich sehr gut, um Spam-Filter zu umgehen.

5 Tagen ago