Release von Kata Containers 3.4 mit Virtualisierungsbasierter Isolation

Опубликован выпуск проекта Kata Containers 3.4, развивающего стек для организации выполнения контейнеров с использованием изоляции на базе полноценных механизмов виртуализации. Проект создан компаниями Intel и Hyper путём объединения технологий Clear Containers и runV. Код проекта написан на языках Go и Rust, и распространяется под лицензией Apache 2.0. Развитие проекта курирует рабочая группа, созданная под эгидой независимой организации OpenInfra Foundation, в которой участвуют такие компании, как Canonical, China Mobile, Dell/EMC, EasyStack, Google, Huawei, NetApp, Red Hat, SUSE и ZTE.

Die Grundlage von Kata bildet ein Runtime, das die Erstellung kompakter virtueller Maschinen ermöglicht, die mit einem vollständigen Hypervisor betrieben werden, anstatt traditionelle Container zu verwenden, die einen gemeinsamen Linux-Kernel nutzen und mittels Namespaces und cgroups isoliert sind. Die Anwendung von virtuellen Maschinen ermöglicht ein höheres Maß an Sicherheit, das vor Angriffen schützt, die durch die Ausnutzung von Schwachstellen im Linux-Kernel verursacht werden.

Kata Containers ist auf die Integration in bestehende Containerisolierungsinfrastrukturen ausgerichtet und ermöglicht den Einsatz virtueller Maschinen zur Verbesserung des Schutzes traditioneller Container. Das Projekt bietet Mechanismen zur Gewährleistung der Kompatibilität von leichtgewichtigen virtuellen Maschinen mit verschiedenen Containerisolierungsinfrastrukturen, Containerorchestrierungsplattformen und Spezifikationen wie OCI (Open Container Initiative), CRI (Container Runtime Interface) und CNI (Container Networking Interface). Es stehen Integrationswerkzeuge für Docker, Kubernetes, QEMU und OpenStack zur Verfügung.

Die Integration mit Containerverwaltungsystemen erfolgt über eine Schicht, die die Containerverwaltung simuliert und über eine gRPC-Schnittstelle sowie einen speziellen Proxy auf den Verwaltungsagenten in der virtuellen Maschine zugreift. Innerhalb der von einem Hypervisor gestarteten virtuellen Umgebung wird ein speziell optimierter Linux-Kernel verwendet, der nur die minimal notwendige Funktionalität enthält.

Als Hypervisor wird Dragonball Sandbox (KVM-Edition, optimiert für Container) zusammen mit den Werkzeugen QEMU, Firecracker und Cloud Hypervisor unterstützt. Die Systemumgebung beinhaltet einen Initialisierungsdaemon und einen Agenten. Der Agent ermöglicht die Ausführung bestimmter benutzerdefinierter Container-Images im OCI-Format für Docker und CRI für Kubernetes. Bei gleichzeitiger Verwendung mit Docker wird für jeden Container eine separate virtuelle Maschine, d.h. die Umgebung, die über den Hypervisor läuft, wird für das verschachtelte Starten von Containern verwendet.

Release von Kata Containers 3.4 mit Virtualisierungsbasierter Isolation

Zur Reduzierung des Speicherverbrauchs kommt der DAX-Mechanismus (Direkter Zugriff auf das Dateisystem ohne Seiten-Cache und ohne Verwendung von Blockgeräteschichten) zum Einsatz, während KSM (Kernel Samepage Merging) zur Deduplication identischer Speicherbereiche eingesetzt wird. Dies ermöglicht eine gemeinsame Nutzung der Ressourcen des Hosts und die Verbindung eines gemeinsamen Systemumgebungs-Templates zu verschiedenen Gastsystemen.

Для организации доступа к образам контейнеров задействована файловая система Nydus, в которой используется адресация по содержимому для эффективной совместной работы с типовыми образами. Nydus поддерживает загрузку образов на лету (загружает только при возникновении необходимости), обеспечивает дедупликацию повторяющихся данных и может использовать разные бэкенды для фактического хранения. Предоставляется совместимость с POSIX (по аналогии с Composefs, реализация Nydus совмещает возможности OverlayFS c EROFS или FUSE-модулем).

In der neuen Version:

  • В менеджер виртуальных машин Dragonball добавлена поддержка горячего подключения GPU и возможность использования регистров MTRR (Memory-Type Range Registers) для организации доступа к областям физической памяти.
  • В runtime-rs, реализации runtime на языке Rust, обеспечена полная обработка потоков, pid и tid, а также переработан драйвер qemu, который задействован на системах с архитектурой s390 (IBM Z).
  • Обновлён серсис для создания снапшотов с использованием ФС Nydus.
  • В сервисе управления образами контейнеров повышена эффективность работы с памятью.
  • Включено по умолчанию монтирование иерархии cgroups-v2 во время загрузки при помощи systemd.
  • Добавлена возможность определения таймаута для ограничения времени получения очень больших образов в гостевых системах.
  • Добавлена поддержка сборки OPA-агента (Open Policy Agent) для архитектур ppc64le и s390x.

Quelle: opennet.ru

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster