Open Source-проект containerd получил в фонде Cloud Native Computing Foundation (CNCF) наивысший статус «выпущенного» (graduated) проекта, что означает признание его стабильности, качества кода и защищенности, сообщает портал eWeek.

Проект containerd является одним из базовых для современной нативной облачной экосистемы. Это среда исполнения контейнеров, которую ежедневно используют миллионы приложений.

28 февраля проект прошел очередной рубеж, получив от фонда CNCF статус выпущенного, означающий признание его зрелости и стабильности. Начальный статус — «песочница» (sandbox), далее следуют «прогрессирующий» (progressing), «инкубационный» (incubation) и, наконец, выпущенный (graduated). В CNCF разрабатываются свыше 40 нативных облачных проектов, включая систему оркестрирования контейнеров Kubernetes.

«Для большинства внешних пользователей, особенно на уровне предприятий, статус graduated говорит зрелости проекта, — отметил координатор containerd и инженер Docker Майкл Кросби. — Мы проверили соответствие проекта всем критериям фонда как с точки зрения управляемости и объективности передачи нового кода в проект, так и управления им».

В декабре 2016 г. компания Docker объявила, что изменит порядок работы и структуру среды исполнения контейнеров. В то время движок Docker Engine объединял в одном проекте среду исполнения и все компоненты, необходимые для доставки контейнеров приложений. Выделение компанией проекта containerd имело целью создание более открытого и гибкого метода исключительно для среды исполнения контейнеров. В марте 2017 г. containerd был официально передан CNCF.

Аудит безопасности

Одним из условий присвоения проекту статуса завершенного является тщательный аудит безопасности. Кросби рассказал, что аудиторы обратили внимание на эксплойты памяти API, общее качество кода, обслуживание и многое другое.

«С точки зрения безопасности и среда исполнения контейнеров containerd, и плагин Kubernetes cri написаны очень хорошо, — говорится в заключении аудиторов. — Выбор языка Go затруднил обнаружение сбоев в памяти и других сходных ошибок во время аудита. В конечном итоге это привело к тому, что подобные проблемы не были обнаружены. Основной объем кода написан четко, что упрощает процесс его аудита».

Стабильность

Важнейшим свойством containerd является стабильность. Она особенно важна, учитывая, что этот проект представляет собой краеугольный камень миллионов нативных облачных развертываний.

«containerd — сквозная среда исполнения, так что нашими приоритетами всегда были производительность, стабильность и надежность», — сказал Кросби.

Одним из условий стабильности является способность устанавливать исправления, не нарушая работу систем. Кросби пояснил, что containerd 1.0-1.2 могут поддерживать бэкпорты исправлений, поскольку имеется хорошо налаженный процесс выпуска релизов.

«У нас действительно отличный процесс, в котором стабильность приходит со временем. Мы разработали такую архитектуру проекта, чтобы бэкпортирование осуществлялось без всяких усилий», — сказал Кросби.

Первоначально containerd был проектом компании Docker. Став проектом CNCF, он выиграл от диверсификации источников кода, который вносят такие компании как IBM, Google, Alibaba и Huawei. По словам Кросби, разработчики прекрасно сотрудничают друг с другом.

«Это жизнеспособный мультивендорный проект используется теперь в миллионы раз больше, и он является основой нашей технологии, — сказал директор Docker по маркетингу Дэйв Мессина. — Благодаря сотрудничеству мы можем сосредоточиться на тех вещах, которые относятся к более высокому уровню нашего стека и стимулируют более широкое распространение технологии через нашу технологию рабочего стола, наш движок и нашу корпоративную платформу».

containerd 1.3

Теперь, когда проект containerd считается выпущенным, Кросби не ожидает каких-либо изменений в повседневной работе, поскольку работа над проектом продолжается. Сейчас разработчики трудятся над версией 1.3, которая будет обладать новыми функциями, делающими ее доступной для Windows.

«Что касается проекта, что мы просто хотим сделать нечто действительно хорошее, что будет применяться каждым, кто использует контейнеры, — сказал Кросби. — Мы продолжим делать его быстрее и лучше и посмотрим, к чему это приведет».