Компания Canonical перевела проект LXD на лицензию AGPLv3

Автор Сообщение
news_bot ®

Стаж: 6 лет 2 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
13-Дек-2023 14:49

Компания Canonical опубликовала новую версию системы управления контейнерами LXD 5.20, которая примечательна изменением лицензии на проект и введением необходимости подписания CLA-соглашения о передаче имущественных прав на код при приёме изменений в LXD. Лицензия на код, добавленный в LXD сотрудниками Canonical, изменена с Apache 2.0 на AGPLv3, а код сторонних участников, на который у Canonical нет имущественных прав, остаётся под Apache 2.0. Так как Canonical не имеет возможность изменить лицензию на весь код LXD, проект теперь будет поставляться под смешанными условиями - часть кода под AGPLv3, а часть под Apache 2.0. Переход на новую лицензию объясняется желанием унифицировать лицензию с другими серверными продуктами Canonical, в которых используется AGPLv3.
Код старых выпусков как и раньше остаётся доступен под лицензией Apache 2.0, но все вносимые в перелицензированные компоненты изменения будут публиковаться только под лицензией AGPLv3, что не позволит форку Incus переносить изменения из LXD без перевода своей кодовой базы на лицензию AGPLv3. Лицензии Apache 2.0 и AGPLv3 имеют одностороннюю совместимость, которая сводится к тому, что код под лицензией Apache 2.0 может включаться в код под лицензией AGPLv3, но не наоборот. Изменение означает полное прекращение сотрудничества между проектами LXD и Incus, так как переносу изменений из LXD в Incus мешает новая лицензия, а из Incus в LXD необходимость подписания СLA-соглашения, которое разработчики Incus подписывать не намерены.
Особенностью лицензии AGPLv3 является введение дополнительных ограничений для приложений, обеспечивающих функционирование сетевых сервисов. При использовании AGPL-компонентов в работе сетевых сервисов, разработчик обязан предоставить пользователю исходный код всех внесённых в эти компоненты изменений, даже если лежащее в основе сервиса программное обеспечение не распространяется и используется исключительно во внутренней инфраструктуре для организации работы сервиса. Лицензия AGPL также накладывает условия копилефта, т.е. для включении AGPL-кода из LXD в свой проект, кодовая база собственного проекта должна быть перелицензирована под лицензией AGPL.
LXD предоставляет средства для централизованного управления контейнерами и виртуальными машинами, развёрнутыми в кластере из нескольких серверов. LXD реализован в виде фонового процесса, принимающего запросы по сети через REST API и поддерживающего различные бэкенды хранилищ (дерево директорий, ZFS, Btrfs, LVM), снапшоты со срезом состояния, live-миграцию работающих контейнеров с одной машины на другую и средства для хранения образов контейнеров. В качестве runtime для запуска контейнеров используется инструментарий LXC, в состав которого входит библиотека liblxc, набор утилит (lxc-create, lxc-start, lxc-stop, lxc-ls и т.п.), шаблоны для построения контейнеров и набор привязок для различных языков программирования. Изоляция осуществляется при помощи штатных механизмов ядра Linux (пространства имён, cgroups, Apparmor, SELinux, Seccomp). Помимо LXC в LXD также применяются компоненты от проектов CRIU и QEMU.
Среди добавленных в LXD 5.20 возможностей:
  • Во время создания пулов хранения на базе Cephfs предоставлена возможность создания метаданных и данных для пулов OSD (Object Storage Daemon), используя параметры cephfs.create_missing, cephfs.meta_pool и cephfs.data_pool. Например:
    lxc storage create mypool cephfs source=cephfs \
         cephfs.create_missing=true \
         cephfs.data_pool=xyz_data \
         cephfs.meta_pool=xyz_meta
  • В snap-пакете LXD в прошивку EDK2 добавлена возможность настройки приоритета загрузки с разных дисков при использовании режима security.csm.
  • В прошивку EDK2 UEFI добавлен отладочный режим (boot.debug_edk2=true) для диагностики проблем при загрузке виртуальных машин. Отладочный лог сохраняется в файл $LXD_DIR/logs/<instance_name>/edk2.log.
  • Код авторизации переведён на модульную основу, позволившую обеспечить поддержку OpenFGA в дополнение к авторизации по сертификатам TLS и Canonical RBAC.
  • Для компиляции LXD теперь требуется как минимум версия языка Go 1.20.
  • Удалена поддержка Shiftfs. Для маппинга идентификаторов пользователей следует использовать монтирование с idmap, поддерживаемое для Ext4, XFS, Btrfs, ZFS и Cephfs.
  • Удалена поддержка прошивок UEFI, размером 2MB (необходимо использовать прошивки, размером 4MB).
  • Из кодовой базы форка Incus перенесена поддержка создания хранилищ на базе технологии NVME. Для указания типа диска добавлен новый параметр конфигурации "io.bus", который по умолчанию выставлен в значение "virtio-scsi". При изменении значения на "nvme", накопитель в виртуальной машине будет виден как NVME SSD.
  • Из кодовой базы форка Incus перенесена поддержка горячего подключения и горячего удаления (hot-plug/hot-remove) файловых путей или отдельных разделов, проброшенных из хост-окружения. Ранее подобный проброс при помощи драйвера virtio-fs или ФС 9p требовал остановки виртуальной машины. Для обхода этого ограничения задействована возможность QEMU по горячему подключению PCI-устройств и монтирование пути внутри гостевой системы через incus-agent.
  • Идентификатор устройства org.linuxcontainers.lxd переименован в com.canonical.lxd (для сохранения обратной совместимости поддержка старого идентификатора сохранена).

===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_lxd, #_agpl
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 28-Апр 21:44
Часовой пояс: UTC + 5