На конференции KubeCon в Остине (шт. Техас) организация OpenStack Foundation представила Open Source-проект Kata Containers. Этот новый проект контейнеризации объединяет Intel Clear Containers с runV компании Hyper. Какова цель? Соединить безопасность, присущую виртуальным машинам (VM), с быстродействием и управляемостью технологий контейнеров.
Изоляция контейнеров и их безопасность при этом должны обеспечиваться без издержек для производительности, возникающих, когда контейнеры запускаются в VM. Обычно контейнеры эксплуатируют в VM для безопасности, но при этом теряется ряд преимуществ использования контейнеров, связанных с малыми затратами ресурсов. Цель проекта runV была сделать так, чтобы VM работали наподобие контейнеров. В Kata этот подход комбинируется с проектом Intel Clear Containers, использующим внутрипроцессорную Intel Virtualization Technology (VT) для запуска контейнеров в облегченных виртуальных машинах. С Kata эти контейнеры должны запускаться в runV.
При этом проект Kata Containers предполагает независимость от аппаратуры. Он также рассчитан на совместимость со спецификацией Open Container Initiative (OCI) и CRI (интерфейсом исполняемой среды контейнеров) Kubernetes.
Kata Containers предлагает пользователям мощную возможность запускать инструменты управления контейнерами прямо на «голом железе» без ущерба для изоляции рабочих нагрузок. При сравнении с эксплуатацией контейнеров в виртуализованной инфраструктуре, как это обычно сегодня делают, новый подход сулит такие плюсы, как ускорение времени загрузки и эффективность по затратам.
Проект Kata Containers составлен из шести компонентов: Agent, Runtime, Proxy, Shim, Kernel и упаковки QEMU 2.9, VM-гипервизора с открытым кодом. Несмотря на присутствие QEMU и runV, проект предполагает использование разнообразных гипервизоров.
Может возникнуть естественный вопрос: «А почему группа, занимающаяся облаками по модели IaaS (инфраструктура как сервис), такая как OpenStack, вдруг занялась контейнерами?» Именно это я и спросил у Джонатана Брайса, исполнительного директора OpenStack Foundation. Он ответил следующее: «Kata Containers нацелен на операторов. Вам не надо знать, что находится внутри. Проект решает реальные проблемы максимального использования облачных ресурсов и безопасности».
Короче говоря, это поможет пользователям OpenStack. При этом Брайс добавил: «Хотя пользователи OpenStack могут извлечь преимущества новой технологии, Kata Containers является независимым проектом с собственным техническим руководством и базой контрибуторов. Помимо облаков на основе OpenStack сообщество Kata Containers ориентируется на всех популярных провайдеров инфраструктуры и все фреймворки оркестровки контейнеров, рассчитывая на сотрудничество с соответствующими организациями».
Кроме Intel и Hyper с момента запуска проекта его поддерживают следующие компании: 99cloud, AWcloud, Canonical, China Mobile, City Network, CoreOS, Dell EMC, EasyStack, Fiberhome, Google, Huawei, JD.com, Mirantis, Netapp, Red Hat, SUSE, Tencent, Ucloud, UnitedStack и ZTE. Короче говоря, он изначально заручился широкой поддержкой.
Комбинируя две Open Source-кодовые базы и ставя проект под открытое управление, сообщество Kata Containers преследует изначальную цель привлекать больше контрибуторов, поддерживать разнообразные аппаратные архитектуры и содействовать внедрению технологии. Контрибуторы смогут рассчитывать на возможности сотрудничества с различными upstream-сообществами, занимающимися инфраструктурой и оркестровкой контейнеров, включая Kubernetes, Docker, OCI, CRI, CNI, QEMU, KVM, HyperV и OpenStack.
Название Kata Containers происходит от греческого слова Καταπίστευμα (катапистевма), означающего «доверять что-то кому-либо». Оно также ассоциируется с японским словом для системы упражнений по обучению боевым искусствам. В любом смысле оно обещает сделать контейнеры более эффективными для их пользователей.