Bemutatásra került az Incus projekt harmadik kiadása, amely keretében a Linux Containers közössége egy LXD konténerkezelő rendszer fork-ját fejleszti, amelyet a régi fejlesztői csapat hozott létre, akik valaha az LXD-t készítették. Az Incus kódja Go nyelven íródott, és az Apache 2.0 licenc alatt terjesztik.
Emlékeztetünk arra, hogy a Linux Containers közösség irányította a LXD fejlesztését, mielőtt a Canonical úgy döntött, hogy külön fejleszti a LXD-t, mint vállalati projektet. A fork célja, hogy független közösség által irányított alternatívát kínáljon a Canonical által ellenőrzött LXD projekthez. Az Incus projekt keretében tervezik a LXD fejlesztése során elkövetett néhány koncepcionális hiba kijavítását is, amelyeket korábban nem lehetett javítani a visszafelé kompatibilitás megsértése nélkül.
Az Incus eszközöket biztosít a konténerek és virtuális gépek központosított kezeléséhez, amelyek egyetlen hoszton, valamint több hosztot tartalmazó klaszterben is futnak. szerverek. A projekt háttérfolyamattal valósul meg, amely hálózaton keresztüli REST API-n keresztül fogadja a kéréseket, és különböző tárolóháttér-támogatásokat nyújt (könyvtárfa, ZFS, Btrfs, LVM), pillanatképekkel a állapotok rögzítésére, élő migrációval futó konténerek áthelyezésére egyik gépről a másikra, valamint eszközöket a konténerképek tárolásához. A konténerek futtatásához az LXC eszközkészletet használják, amely magában foglalja a liblxc könyvtárat, egy készlet segédprogramot (lxc-create, lxc-start, lxc-stop, lxc-ls stb.), mintákat a konténerek létrehozásához, és különböző programozási nyelvekhez tartozó bind-eket. Az izolációt a Linux kernel szokásos mechanizmusai (névterek, cgroups, Apparmor, SELinux, Seccomp) biztosítják.
A legjelentősebb változások:
- Hozzáadva a felhasználói hitelesítés kezelésének támogatása a Relationship-Based Access Control modell alapján, amelyet az OpenFGA háttérfolyamata valósít meg, és amely a felhasználói jogosultságok meghatározásáért felelős. Az OpenID Connect szolgáltatóval együtt az OpenFGA támogatása lehetővé teszi egy nyílt azonosítási és hitelesítési stack kialakítását, amely lehetővé teszi az Incus használatát a Canonical RBAC LXD konfigurációjának teljes helyettesítéseként. Az OpenFGA hozzáférési beállításához az openfga.api.token, openfga.api.url, openfga.store.id és openfga.store.model_id paraméterek javasoltak.
- Javítva lett az lxd-to-incus segédprogram, amely automatizálja az LXD-ről Incusra való migrálást. Az új verzió támogatást kapott az OpenRC inicializáló rendszerrel rendelkező disztribúciókhoz, megvalósítva a Ceph tárolók és az OVN hálózatok átkonfigurálásának lehetőségét, valamint a migrálási naplózás és biztonsági mentések készítésének bevezetését.
- A virtuális gépekben Hozzáadva a forró csatlakoztatás és forró eltávolítás (hot-plug/hot-remove) támogatása a gépeltúrázott fájlútvonalak vagy egyes partíciók vonatkozásában, amelyeket a host környezetből közvetlenül hoztak létre. Korábban a hasonló közvetítés a virtio-fs meghajtó vagy a 9p fájlrendszer használatával a virtuális gép leállítását igényelte. E korlátozás megkerülése érdekében a QEMU PCI-eszközök forró csatlakoztatásának lehetőségét és a fájlútvonal hostoldali mappájának szerveroldali csatolását alkalmazták az incus-agent segítségével.
Forrás: opennet.ru
