Incus долбоорунун үчүнчү релизинин бет ачары болду, анын алкагында Linux Containers коомчулугу бир кезде LXD түзгөн эски иштеп чыгуучу топ тарабынан түзүлгөн LXD контейнер башкаруу тутумунун айрысын иштеп чыгууда. Incus коду Go программасында жазылган жана Apache 2.0 лицензиясы боюнча таратылган.
Эске салсак, Linux Containers коомчулугу Canonical LXDди корпоративдик долбоор катары өзүнчө иштеп чыгууну чечкенге чейин LXDдин өнүгүшүн көзөмөлдөгөн. Айрыкчанын максаты - Canonical тарабынан башкарылуучу LXD долбооруна коомчулук тарабынан башкарылган көз карандысыз альтернатива берүү. Incus долбоору LXDди иштеп чыгуу учурунда кетирилген кээ бир концептуалдык каталарды да чечүүнү пландаштырууда, аларды мурда артка карай шайкештикти бузбастан оңдоо мүмкүн эмес.
Incus бир хостта жана бир нече кластерде жайгаштырылган контейнерлерди жана виртуалдык машиналарды борборлоштурулган башкаруу үчүн куралдарды камсыз кылат. серверлерДолбоор REST API аркылуу тармактык суроо-талаптарды кабыл алган жана ар кандай сактоо серверлерин (каталог дарагы, ZFS, Btrfs, LVM), абал кесимдери менен сүрөттөрдү, иштеп жаткан контейнерлерди бир машинадан экинчисине түз миграциялоону жана контейнер сүрөттөрүн сактоочу куралдарды колдогон фондук процесс катары ишке ашырылат. LXC куралдар топтому контейнерлерди ишке киргизүү үчүн иштөө убактысы катары колдонулат, анын ичинде liblxc китепканасы, утилиталар топтому (lxc-create, lxc-start, lxc-stop, lxc-ls ж.б.), контейнерлерди куруу үчүн шаблондор жана ар кандай программалоо тилдери үчүн байланыштар топтому бар. Изоляция стандарттуу Linux ядро механизмдерин (namespaces, cgroups, Apparmor, SELinux, Seccomp) колдонуу менен ишке ашырылат.
Эң көрүнүктүү өзгөрүүлөр:
- Колдонуучуларга белгилүү бир ыйгарым укуктарды берүү боюнча чечимдерди кабыл алуу үчүн жооптуу болгон OpenFGA фон процессин колдонуу менен ишке ашырылган Мамилеге негизделген мүмкүндүктү башкаруу моделинин негизинде колдонуучу авторизациясын башкаруу үчүн кошумча колдоо. OpenID Connect провайдери менен бириккенде, OpenFGA колдоосу ачык идентификациялык стекти жана авторизация стекин түзөт, бул Incus'ту Canonical RBAC менен LXD конфигурацияларынын толук алмаштыруучу катары колдонууга мүмкүндүк берет. OpenFGA мүмкүнчүлүгүн конфигурациялоо үчүн төмөнкү параметрлер сунушталат: openfga.api.token, openfga.api.url, openfga.store.id жана openfga.store.model_id.
- LXDден Incusке өтүүнү автоматташтырган жакшыртылган lxd-to-incus утилитасы. Жаңы версия OpenRC инициализация системасы менен бөлүштүрүүнү колдоону кошот, Ceph сактагычтарын жана OVN тармактарын көчүрүү мүмкүнчүлүгүн ишке ашырат жана миграциялык журналдарды жана резервдик көчүрмөлөрдү түзүүнү камсыз кылат.
- В виртуалдык машиналар Хост чөйрөсүнөн картага түшүрүлгөн файл жолдорун же жеке бөлүмдөрдү ысык туташтыруу жана ысык алып салуу үчүн колдоо кошулду. Буга чейин virtio-fs драйверин же FS 9p колдонуп мындай картага түшүрүү виртуалдык машинаны токтотууну талап кылчу. Бул чектөөнү жоюу үчүн QEMU'нун PCI түзмөктөрүн ысык туташтыруу жана конок системасынын ичиндеги жолду incus-agent аркылуу орнотуу колдонулган.
Source: opennet.ru
