Разработчики проекта SUSE сделал известным, через публикацию, первый прототип ALP (адаптивная платформа Linux), позиционируется как продолжение развития распространение SUSE Linux Enterprise.
Ключевое отличие новой системы это разделение центральной структуры дистрибутива на две части: Упрощенная «хост-операционная система» для работы поверх оборудования и уровень поддержки приложений, ориентированный на работу в контейнерах и виртуальных машинах.
О АЛП
Идея состоит в том, чтобы разработать в «хост-операционной системе» минимальную среду необходимо для поддержки и управления оборудованием, и запустить все приложения и компоненты пользовательского пространства не в смешанной среде, а в отдельных контейнерах или виртуальных машинах которые работают поверх «основной операционной системы» и изолированы друг от друга. Такая организация позволит пользователям сосредоточиться на абстрактных приложениях и рабочих процессах низкоуровневого оборудования и системной среды.
Идея ALP заключается в том, чтобы позволить пользователям сосредоточиться на своих рабочих нагрузках, абстрагируясь от аппаратного и прикладного уровня. Используя виртуальные машины и контейнерные технологии, Adaptable Linux Platform позволяет рабочим нагрузкам быть независимыми от потока кода.
Первый прототип ALP называется «Les Droites».
продукт SLEMicro, на основе наработок проекта MicroOS, используется в качестве основы для «основной операционной системы«. Для централизованного управления предлагаются системы управления конфигурациями Salt (предустановленная) и Ansible (опционально). Podman и K3s (Kubernetes) доступны для запуска изолированных контейнеров.. Компоненты контейнерной системы включают yast2, podman, k3s, cockpit, GDM (GNOME Display Manager) и KVM.
От характеристик системной среды, упоминается иl использование шифрования диска по умолчанию (FDE, полное шифрование диска) с возможность хранить ключи в TPM, в дополнение к этому разделу root монтируется только для чтения и не меняется в процессе эксплуатации.
Среда использует механизм установки атомарных обновлений, в отличие от атомарных обновлений на основе ostree и snap, используемых в Fedora и Ubuntu, ALP использует обычный менеджер пакетов и механизм моментальных снимков в файловой системе Btrfs вместо создания отдельных атомарных образов и реализации дополнительной инфраструктуры доставки.
Относительно части основных понятий ALP упоминаются следующие:
- Минимизация вмешательства пользователя (zero-touch): включает в себя автоматизацию основных процессов обслуживания, развертывания и настройки.
- Автоматическое поддержание безопасности и поиск системы в актуальном состоянии (самообновление): предоставляет настраиваемый режим автоматической установки обновлений (например, вы можете включить автоматическую установку только исправлений критических уязвимостей или вернуться к ручному подтверждению установки обновлений). Поддерживается исправление в реальном времени для обновления ядра Linux без перезагрузки или приостановки работы.
- Автоматическое применение оптимизаций (самонастройка) и поддержание живучести системы (самовосстановление): система фиксирует последнее стабильное состояние и после применения обновлений или изменения конфигурации в случае обнаружения аномалий, проблем или нарушений поведения автоматически переводится в предыдущее состояние с помощью снапшотов Btrfs.
- Многоверсионный программный стек: изоляция компонентов в контейнерах позволяет использовать разные версии инструментов и приложений одновременно. Например, вы можете запускать приложения, зависящие от разных версий Python, Java и Node.js, путем разделения несовместимых зависимостей. Базовые зависимости представлены в виде наборов BCI (образов базовых контейнеров). Пользователь может создавать, обновлять и удалять стеки программного обеспечения, не затрагивая другие среды.
В отличие от SUSE Linux Enterprise, разработка ALP изначально осуществляется в рамках открытого процесса разработки, в котором промежуточные сборки и результаты тестирования общедоступны для всех, что позволяет заинтересованным сторонам заставить монитор работать в процессе и участвовать в разработке.
Наконец, если вам интересно узнать об этом больше, вы можете ознакомиться с подробностями По следующей ссылке