Rust macht Kata Containers 2.0 schneller und kompakter

Eine höhere Leistung und erweitere Metriken für bessere Überwachung sind die wichtigsten Neuerungen im Major Release der quelloffenen Container Runtime.

Lesezeit: 1 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen

(Bild: Travel mania/Shutterstock.com)

Von
  • Matthias Parbel

Das von der Open Infrastructure Foundation (vormals OpenStack Foundation) unterstützte Community-Projekt Kata Containers liegt als Major-Release 2.0 vor. Die quelloffene Container-Runtime verspricht in der neuen Version höhere Performance bei gleichzeitig deutlich verringerter Größe. Dazu hat das Entwicklerteam den Kata Containers Agent komplett neu in Rust geschrieben und dabei den Binärcode auf ein Zehntel seiner bisherigen Größe geschrumpft – rund 300 KByte sollen es nur noch sein.

Das ursprünglich auf der KubeCon im Dezember 2017 erstmals vorgestellte Projekt verfolgt das Ziel, die Vorteile virtueller Maschinen (VMs) mit denen von Containern zu verbinden, um einerseits Hardware-basierte Virtualisierung nutzen zu können und höhere Sicherheit durch strengere Isolation einzelner Workloads zu erreichen. Um dabei den typischen Overhead von VMs zu vermeiden, werden die Container nicht innerhalb der VMs ausgeführt, sondern in einer kompakteren Form direkt auf der Hardwareinfrastruktur. Dazu kombiniert Kata Containers Intels Clear Containers mit Hyper.sh RunV für Plattformen wie x86_64, AMD64, ARM, aber auch IBM p- und z-Series.

In Verbindung mit dem refaktorierten Kata Containers Agent nimmt das Entwicklerteam in Version 2.0 auch Abschied vom bisher verwendeten Protokoll gRPC und wechselt auf die speziell für Umgebungen mit wenig Speicher ausgelegte Alternative ttRPC – von der zudem auch eine Rust-Implementierung vorliegt. Das neue Protokoll soll nicht nur zu den geringeren Binärcodegrößen beitragen, sondern verspricht auch weniger Overhead gegenüber gRPC.

Neben dem Virtualisierer QEMU unterstützt die Container Runtime nun auch den Cloud Hypervisor. Dieser Open Source VMM läuft direkt auf KVM und ist insbesondere für Cloud-Workloads in Umgebungen mit begrenzten Ressourcen optimiert. Cloud Hypervisor ist in Rust implementiert und setzt auf den rust-vmm-Crates auf.

Mehr zum Thema

Tiefergehende Informationen zu Containern und deren Orchestrierung bieten verschiedene Thementage im Rahmen der Continuous Lifecycle / ContainerConf – darunter der Kubernetes Professionals Day am 4. November und der Container Deep Dive am 9. Dezember 2020.

Um Anwendern verbesserte Observability bieten zu können, stellt Kata Containers 2.0 mehr Metriken im Prometheus-Format bereit. Damit lassen sich sowohl die Container Runtime wie auch der Virtual Machine Monitor (VMM) und der Guest Kernel gezielter überwachen. Entwickler und Administratoren erhalten dadurch genaueren Einblick in die Infrastruktur, um etwaige Leistungsengpässe schneller erkennen und beheben zu können.

Weitere Informationen zu den Neuerungen des Major Release bietet der Blogbeitrag zur Veröffentlichung. Eine vollständige Liste aller Verbesserungen findet sich in den Release Notes zu Kata Containers 2.0 auf GitHub.

(map)