LXD 5.0 ​​контейнерлерді басқару жүйесінің шығарылымы

Canonical LXD 5.0 ​​контейнер менеджерінің және LXCFS 5.0 виртуалды файлдық жүйесінің шығарылымын жариялады. LXD коды Go бағдарламасында жазылған және Apache 2.0 лицензиясы бойынша таратылады. 5.0 тармағы ұзақ мерзімді қолдау шығарылымы ретінде жіктеледі - жаңартулар 2027 жылдың маусымына дейін жасалады.

Контейнерлерді іске қосу үшін жұмыс уақыты ретінде liblxc кітапханасын, утилиталар жинағын (lxc-create, lxc-start, lxc-stop, lxc-ls, т.б.), контейнерлерді салуға арналған үлгілерді және әртүрлі бағдарламалау тілдеріне арналған байланыстырулар жиынтығы. Оқшаулау Linux ядросының стандартты механизмдері арқылы жүзеге асырылады. Процестерді оқшаулау үшін ipc желі стегі, uts, пайдаланушы идентификаторлары және бекіту нүктелері, аттар кеңістігі механизмі қолданылады. топтар ресурстарды шектеу үшін пайдаланылады. Артықшылықтарды төмендету және қол жеткізуді шектеу үшін Apparmor және SELinux профильдері, Seccomp саясаттары, Chroots (pivot_root) және мүмкіндіктер сияқты ядро ​​мүмкіндіктері пайдаланылады.

LXC-тен басқа, LXD CRIU және QEMU жобаларының құрамдастарын да пайдаланады. Егер LXC жеке контейнерлер деңгейінде манипуляциялауға арналған төмен деңгейлі құралдар жинағы болса, LXD бірнеше серверлер кластерінде орналастырылған контейнерлерді орталықтандырылған басқару құралдарын қамтамасыз етеді. LXD REST API арқылы желі арқылы сұрауларды қабылдайтын және әртүрлі сақтау серверлерін (каталогтар ағашы, ZFS, Btrfs, LVM), күй тілімімен суреттерді, жұмыс істеп тұрған контейнерлерді бір машинадан екіншісіне тікелей көшіруді қолдайтын фондық процесс ретінде жүзеге асырылады. және кескін контейнерлерін сақтауға арналған құралдар. LXCFS контейнерлердегі псевдо-FS /proc және /sys модельдеу үшін, ал виртуалдандырылған көрсету cgroupfs контейнерлерге кәдімгі тәуелсіз жүйенің көрінісін беру үшін пайдаланылады.

Негізгі жақсартулар:

  • Дискілер мен USB құрылғыларын ыстық қосу және ажырату мүмкіндігі. Виртуалды машинада жаңа диск SCSI шинасында жаңа құрылғының пайда болуы арқылы анықталады, ал USB құрылғысы USB hotplug оқиғасын жасау арқылы анықталады.
  • Тіпті желілік қосылымды орнату мүмкін болмаған кезде де, мысалы, қажетті желілік құрылғының болмауына байланысты LXD іске қосуға болады. Іске қосу кезінде қатені көрсетудің орнына, LXD енді ағымдағы жағдайларда мүмкін болатын орталардың максималды санын іске қосады, ал қалған орталар желі қосылымы орнатылғаннан кейін іске қосылады.
  • Жаңа кластер мүшесі рөлі қосылды - ovn-шасси, желілік байланыс үшін OVN (Ашық виртуалды желі) пайдаланатын кластерлерге арналған (ovn-шасси рөлін тағайындау арқылы OVN маршрутизаторларының функцияларын орындау үшін серверлерді таңдауға болады).
  • Сақтау бөлімдерінің мазмұнын жаңарту үшін оңтайландырылған режим ұсынылды. Алдыңғы шығарылымдарда жаңарту алдымен контейнер данасын немесе бөлімді көшіруден тұрды, мысалы, zfs немесе btrfs жіберу/қабылдау функциясын пайдалану, содан кейін жасалған көшірме rsync бағдарламасын іске қосу арқылы үндестірілді. Виртуалды машиналарды жаңарту тиімділігін арттыру үшін жаңа шығарылым кеңейтілген тасымалдау логикасын пайдаланады, онда бастапқы және тағайындалған серверлер бірдей сақтау пулын пайдаланса, rsync орнына сурет пен жіберу/қабылдау операциялары автоматты түрде пайдаланылады.
  • Cloud-init ішіндегі орталарды анықтау логикасы қайта өңделді: орта атауларының орнына UUID енді даналық идентификатор ретінде пайдаланылады.
  • Артықшылықсыз контейнерлерге процесс басымдықтарын өзгертуге мүмкіндік беретін sched_setscheduler жүйелік шақыруын қосу үшін қосылған қолдау.
  • lvm.thinpool_metadata_size опциясы thinpool ішіндегі метадеректер өлшемін басқару үшін орындалды.
  • lxc үшін желі ақпараты бар файл пішімі қайта жасалды. Интерфейсті байланыстыру, желілік көпірлер, VLAN және OVN желісі бойынша деректерге қолдау қосылды.
  • Минималды құрамдас нұсқаларына қойылатын талаптар ұлғайтылды: Linux ядросы 5.4, Go 1.18, LXC 4.0.x және QEMU 6.0.
  • LXCFS 5 біріктірілген топтық иерархияға (cgroup2) қолдау қосты, /proc/slabinfo және /sys/devices/system/cpu енгізілді және құрастыру үшін мезон құралдар жинағын пайдаланды.

Ақпарат көзі: opennet.ru

пікір қалдыру