© 2024 WebHive

Project Atomic - ещё одна кластерная ОС

Я уже упоминал, что тестирую различные т. н. «кластерные» операционные системы. После фиаско с CoreOS ближайший претендент это Project Atomic — следующая в списке операционных систем, которые предлагает мне Digital Ocean.

Что это такое?

Это попытка компании RedHat сделать что-то похожее на CoreOS — минималистичный дистрибутив, предназначенный для запска контейнеров.

Начну с плюсов.

Что у нас хорошего?

Размер

Этот дистрибутив на удивление имеет действительно небольшой размер. В частности образа для Vagrant имеют размер около 200Мб.
Хотя т. н. облачные образа значительно толще — порядка 600Мб.

Софт

Project Atomic имеет довольно необычную систему пакетов. Все пакеты являются фактически docker образами. Которые как известно используют git в качестве бэкенда для хранения. Как результат обновление пакетов фактически происходит через git коммиты со всем вытекающими. Эти контейнеры хранятся в изолированном закрытом хранилище, а не в обычном докере.

Атомарные обновления

Собственно из предыдущего пункта вытекает использование для обновления системного окружения технологии OSTree. Идея в том, что сама операционная система (системные файлы) обновляется из git хранилища. В связи с этим обновление происходит разом для всей системы — своего рода слепок. Ну и как следствие нет обновлений отдельных каких-то компонентов системы.

Ну и т. к. софт у нас распространяется тоже контейнерами, то вся система (и системное окружение и прикладной софт) обновляется за раз и атомарно — как бы одной транзакцией.

В теории выглядит очень вкусно, но как оно на практике сказать не могу. Надо будет тестировать.

Cocpit

Возможно не стоило сюда это пихать, ну да ладно. В недрах Project Atomic вызрел ещё один проект — Cocpit — это веб интерфейс для управления узлами кластера на Fedora Atomic.

Безопасность

В Project Atimic у нас по умолчанию включен SELinux. Как по мне так это та ещё головная боль, но с другой стороны я уже пытался разбираться с SELinux — там всё не так сложно как кажется. Но по любому это лишняя головная боль.

Поддержка виртуальных машин

В особенности порадовала родная поддержка Vagrant — есть готовый box.

Минусы

Мало информации

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

Глючность

В общем я таки попробовал эту поделку и слегка разочаровался. Пробовал 28 версию fedora atomic. Сначала хотел схалявить и дал виртуалке 1 Гиг оперативы. В итоге пытаясь выполнить команды по установке софта согласно этому мануалу https://www.projectatomic.io/blog/2017/11/migrating-kubernetes-on-fedora-atomic-host-27/ постоянно получал краши. Сначала происходило выкачивание образов, а потом хлоп и куча дампов и какая-то ругань и GO кода.

Пробовал увеличивать ОЗУ до 4 Гигабайт — никакой разницы. Пробовал так-же добавлять своп и тоже ничего не помогло. В итоге откатился до 27 версии и только тогда всё заработало боле менее как надо.

В общем продолжать эксперименты желание отпало — fedora во всей красе. Постоянно что-то глючит и отваливается — фирменный стиль этого дистрибутива. Можно было бы попробовать CentoOS Atomic, но к сожалению мой любимый хостер Digital Ocean поддерживает Project Atomic только в версии для Fedora.

Требовательность к ресурсам

Рекомендованный объём ОЗУ 4 Гб. По мне мягко говоря многовато. В особенности для простой запускалки контейнеров. Я понимаю, что запуск контенеров требует ресурсов, но я ещё блин не начал их запускать, а оно уже тормозит. Пробовал включать своп и он сходу начал наполняться, что как бы намекает нам, что ОЗУ этот дистрибутив жрёт как не в себя.

Итоги

Однозначно не мой выбор. Несмотря на все вкусности самый главный косяк — крайняя нестабильность. Ну вот заработало что-то боле менее как в руководстве написано в 27 версии, а в 28 уже не работает, причём валится с крашем. И чего дальше ждать? Так и сидеть на старой версии. Да и не смогу я у Digital Ocean 27-у поставить. В общем куда не кинь — сплошной клин.

Чертовски обидно — выглядел проект очень привлекательно.

Источники

Комментарии