После двух лет разработки опубликован релиз проекта Kata Containers 3.0, что развивается стек для организации запущенных контейнеров использование изоляции на основе полных механизмов виртуализации.
В основе Kata лежит среда выполнения, которая предоставляет возможность создавать компактные виртуальные машины, работающие с использованием полноценного гипервизора, а не с использованием традиционных контейнеров, использующих общее ядро Linux и изолированных с помощью пространств имен и контрольных групп.
Использование виртуальных машин позволяет достичь более высокого уровня безопасности, защищающего от атак, вызванных эксплуатацией уязвимостей в ядре Linux.
О контейнерах Ката
Ката Контейнеры фокусируется на интеграции в изолированные инфраструктуры существующих контейнеров с возможностью использования этих виртуальных машин для улучшения защиты традиционных контейнеров.
В рамках проекта предоставляет механизмы для обеспечения совместимости легковесных виртуальных машин с различными платформами изоляции. контейнеры, платформы оркестрации контейнеров и спецификации, такие как OCI, CRI и CNI. Доступны интеграции с Docker, Kubernetes, QEMU и OpenStack.
Интеграция с системами управления контейнерамиЭто достигается за счет слоя, имитирующего управление контейнерами., который через интерфейс gRPC и специальный прокси обращается к управляющему агенту на виртуальной машине. В качестве гипервизора поддерживается использование Dragonball Sandbox. (версия KVM, оптимизированная для контейнеров) с QEMU, а также Firecracker и Cloud Hypervisor. Системная среда включает загрузочный демон и агент.
Агент запускает пользовательские образы контейнеров в формате OCI для Docker и CRI для Kubernetes. Для уменьшения потребления памяти используется механизм DAX. а технология KSM используется для дедупликации идентичных областей памяти, что позволяет совместно использовать ресурсы хост-системы и подключать разные гостевые системы к общему шаблону системной среды.
Основные новинки Kata Containers 3.0
В новой версии предлагается альтернативная среда выполнения (runtime-rs), который формирует отступы-оболочки, написанные на языке Rust (предоставленная выше среда выполнения написана на языке Go). время выполнения поддерживает OCI, CRI-O и Containerd, что делает его совместимым с Docker и Kubernetes.
Еще одно изменение, которое выделяется в этой новой версии Kata Containers 3.0, заключается в том, что теперь также имеет поддержку графического процессора, это включает поддержку ввода-вывода виртуальных функций (VFIO), что позволяет использовать безопасные непривилегированные устройства PCIe и контроллеры пользовательского пространства.
Также подчеркивается, что реализована поддержка изменения настроек без изменения основного файла конфигурации путем замены блоков в отдельных файлах, расположенных в каталоге «config.d/». Компоненты Rust используют новую библиотеку для безопасной работы с путями к файлам.
Кроме того, Появился новый проект Kata Containers. Это Confidential Containers, проект песочницы Cloud-Native Computing Foundation (CNCF) с открытым исходным кодом. Это последствие изоляции контейнеров Kata Containers интегрирует инфраструктуру Trusted Execution Environments (TEE).
Из другие изменения которые выделяются:
- Предложен новый гипервизор Dragonball на основе KVM и rust-vmm.
- Добавлена поддержка cgroup v2.
- Компонент virtiofsd (написанный на C) заменен на virtiofsd-rs (написанный на Rust).
- Добавлена поддержка изоляции компонентов QEMU в песочнице.
- QEMU использует API io_uring для асинхронного ввода-вывода.
- Реализована поддержка Intel TDX (Trusted Domain Extensions) для QEMU и Cloud-гипервизора.
- Обновленные компоненты: QEMU 6.2.0, Cloud-гипервизор 26.0, Firecracker 1.1.0, Linux 5.19.2.
В конце концов для тех, кому интересен проект, вы должны знать, что он был создан Intel и Hyper, объединив технологии Clear Containers и runV.
Код проекта написан на Go и Rust и выпущен под лицензией Apache 2.0. За развитием проекта следит рабочая группа, созданная под эгидой независимой организации OpenStack Foundation.
Вы можете узнать больше об этом на по следующей ссылке.