Incusos — новая минималистичная система linux для контейнерной серверной инфраструктуры

Проект Linux Containers объявил о выпуске нового дистрибутива под названием IncusOS — минималистичной, атомарно обновляемой операционной системы, спроектированной специально для развёртывания серверов и управления ими через инфраструктуру контейнеров. Дистрибутив опирается на контейнерную платформу Incus — форк ранее популярного LXD, и разрабатывается под руководством Стефана Грабе, одного из ключевых разработчиков LXC и участника релизной команды Ubuntu.

IncusOS предлагает современный подход к управлению серверной инфраструктурой, предоставляя пользователям системный образ, обновляемый атомарно. Это означает, что при обновлении системы изменения применяются целиком и неделимым образом, минимизируя риски повреждения системы или возникновения проблем при обновлении. Такой подход обеспечивает высокую устойчивость и предсказуемость поведения ОС в продакшене. В основе IncusOS лежит минимизированная версия Debian 13, дополненная ядром Linux из репозитория Zabbly, в котором ядро собирается с оптимизациями для работы в окружении контейнеров и виртуальных машин.

Образы IncusOS доступны для архитектур x86_64 и ARM64. В качестве основной файловой системы используется ZFS — надёжное и гибкое решение с поддержкой моментальных снимков, дедупликации и других функций, полезных при работе с контейнерами и виртуальными машинами. Сборка образов осуществляется с помощью инструментария mkosi, созданного Леннартом Поттерингом, известным по проекту systemd. Это позволяет формировать образы с точным контролем над содержимым и конфигурацией.

Системное окружение IncusOS монтируется в режиме только для чтения, а дополнительные приложения добавляются через механизм systemd-sysext. Этот инструмент позволяет подключать системные расширения (System Extensions) в виде образов, которые накладываются на иерархию /usr с использованием OverlayFS. Такой подход упрощает обновление и развёртывание приложений, исключая вмешательство в основную систему. Также предусмотрены функции резервного копирования и восстановления, а также возможность сброса системы или отдельных приложений к заводским настройкам.

Для обновлений IncusOS применяет systemd-sysupdate — механизм, реализующий атомарное переключение между двумя системными разделами. Один раздел работает, пока второй используется для установки обновлений. После завершения обновления система просто переключается на новый раздел, сохраняя предыдущую версию в качестве резервной. Это обеспечивает безопасное и откатное обновление без перезагрузки с риском повреждения.

Безопасность системы усиливается использованием UEFI Secure Boot, шифрованием всего диска с помощью LUKS и хранением ключей в модуле TPM 2.0. Эти меры обеспечивают целостность загрузочного процесса и защиту данных даже при физическом доступе к устройству.

IncusOS принципиально отличается от традиционных Linux-дистрибутивов отсутствием интерфейсов командной строки и поддержки SSH-подключений. Все управление осуществляется централизовано через REST API Incus, с аутентификацией по TLS-сертификатам или с использованием OIDC. Визуальный контроль и настройка серверов выполняются через web-интерфейс Operations Center или CLI-утилиту Incus, обеспечивая масштабируемое и унифицированное управление инфраструктурой.

Для миграции контейнеров и виртуальных машин из других систем, включая VMware vCenter, предоставляется инструмент Migration Manager, который упрощает переезд в экосистему Incus без необходимости полных переустановок.

Создание загрузочного образа осуществляется через онлайн-инструмент, позволяющий на лету сгенерировать ISO на основе выбранных параметров. Пользователь может указать seed-архив с настройками, включая TLS-сертификаты, информацию об устройстве установки и параметры сети. Интерактивная установка не предусмотрена — всё конфигурирование происходит на этапе первой загрузки с помощью встроенного конфигурационного блока. Это делает процесс развёртывания предсказуемым и пригодным для автоматизации.

IncusOS можно устанавливать как на физическое оборудование, так и в виртуальные машины в средах libvirt, Incus, Proxmox, VirtualBox и VMware. Такая гибкость делает дистрибутив удобным выбором для разнообразных сценариев — от локального тестирования до масштабных продакшн-развёртываний.

С точки зрения работы с хранилищами, ZFS обеспечивает высокую надёжность данных и возможность быстрого восстановления. Сетевые функции конфигурируются автоматически через DHCPv4 или SLAAC, но могут быть заданы вручную через seed-конфигурацию. Это упрощает начальную настройку и делает систему более универсальной.

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

Также стоит подчеркнуть, что использование языка Go для разработки компонентов IncusOS и Incus может вызывать опасения у части сообщества, особенно учитывая, что в Debian стабильные релизы часто содержат устаревшие версии Go. Однако такая архитектура позволяет создавать независимые, переносимые и легко обновляемые компоненты, что особенно важно для облачных решений.

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

Таким образом, IncusOS представляет собой современное решение для тех, кто строит инфраструктуру с нуля или переходит на контейнерно-ориентированную модель управления, где важны автоматизация, безопасность и предсказуемость обновлений.

Прокрутить вверх