Linux Containersi kogukond on avalikustanud LXC 6.0 tööriistade vĂ€ljaande isoleeritud konteinerite haldamiseks, pakkudes runtime, mis sobib nii konteinerite kĂ€itamiseks tĂ€is sĂŒsteemi keskkonnas, mis on lĂ€hedane virtuaalmasinatele, kui ka eraldi rakenduskonteinerite (OCI) mitteprivileegitud kĂ€itamiseks. LXC kuulub madala taseme tööriistade hulka, mis toimivad ĂŒksikute konteinerite tasemel. Mitme serveriga klastris rakendatud konteinerite tsentraliseeritud haldamiseks arendatakse LXC baasil sĂŒsteeme Incus ja LXD. LXC 6.0 haru on mÀÀratud pikaajalise toe vabastamiseks, mille uuendusi tehakse 5 aasta jooksul (kuni 2029. aastani). LXC kood on kirjutatud C keeles ja see on saadaval GPLv2 litsentsi alusel.
LXC sisaldab raamatukogu liblxc, utiliitide komplekti (lxc-create, lxc-start, lxc-stop, lxc-ls jne), malli konteinerite koostamiseks ja erinevate programmeerimiskeelte jaoks mÔeldud sidumisi. Isolatsioon toimub Linuxi tuuma standardsete mehhanismide abil. Protsesside, vÔrkude virnade ipc, uts, kasutaja id- ja mountimiseks kasutatakse nimede ruume (namespaces). Ressursside piiramise jaoks rakendatakse cgroups. Privileegide vÀhendamiseks ja juurdepÀÀsu piiramiseks kasutatakse selliseid tuuma funktsioone nagu Apparmor ja SELinuxi profiilid, Seccomp poliitikad, Chroots (pivot_root) ja capabilities.
Peamised muudatused:
- Pakutakse vĂ”imalust luua universaalne kĂ€ivitatav fail lxc, mis ĂŒhendab ĂŒhes utiliidis kĂ”ik kĂ€sud, mis varasemalt olid saadaval kui eraldi utiliidid âlxc-*â. Koondatud kĂ€ivitatava faili koostamiseks on pakutud valikut âtools-multicall=trueâ, mille korral luuakse kĂ”ik vanad eraldi utiliidid sĂŒmboolseteks linkideks utiliidile lxc. Ăhe kĂ€ivitatava faili kujul koostamine vĂ”imaldab oluliselt vĂ€hendada tööriistade ketta ruumi tarbimist, mis on aktuaalne sisse ehitatud sĂŒsteemide jaoks.
- Raamatukogule liblxc on lisatud funktsioon set_timeout, mis vÔimaldab mÀÀrata ajapiiri kÔigi operatsioonide jaoks, mis on seotud LXC monitoriga.
- LXC vÔrgusilla lxcbr0 liideses on vaikimisi aktiveeritud IPv6 toetus aadressid IPv6 ULA (Unique Local Address) alamvÔrgust.
- Utiliidile lxc-usernsexec on lisatud valikud â-uâ ja â-gâ kasutaja ja grupi identifikaatorite (UID ja GID) muutmiseks.
- LXC-checkconfig utiliidil on versiooni kuvamine tagatud ainult siis, kui kĂ€ivitus on olemas lxc-start ja on lisatud teave maksimaalselt lubatud iga tĂŒĂŒpi nimedest.
- Lisatud on konteineripiltide tugi OCI formaadis, kus teabe tihendamiseks kasutatakse Squashfs'i failisĂŒsteemi.
- Systemd'ga suhtlemiseks D-Bus'i kaudu kasutatakse eraldi teeki libdbus-1, mitte libsystemd.
- Toetuse lÔpetamine Upstart alglaadurile.
Samaaegselt avaldati projekt Incus, mille raames Linux Containeri kogukond arendab LXD konteinerite haldussĂŒsteemi fork'i, mille on loonud vana arendajate meeskond, kes kunagi LXD lĂ”i. Incuse kood on kirjutatud Go keeles ja jaotatakse Apache 2.0 litsentsi alusel. Incus 6.0 on esmakordselt positsioneeritud stabiilse haruna, mille korral tagatakse pikaajaline uuenduste tsĂŒkkel (LTS). Incus 6.0 muudatused hĂ”lmavad vĂ”imet luua vĂ”rgu liideseid API bridge.external_interfaces kaudu, parandatud JWT (JSON Web Token) autentimise tugi, USB toe ja ĂŒksikasjaliku sĂŒsteemi teabe kuvamine kĂ€su "incus info âresources" kaudu, samuti LXD 5.21 vĂ€ljaande tugi lxd-to-incus utiliidis.
Incus ja LXD pakuvad vahendeid konteinerite ja virtuaalmasinate tsentraliseeritud haldamiseks, mis on rakendatud nii ĂŒhel hostil kui ka mitme klastris. serverid. Projekt on ellu viidud taustprotsessina, mis aktsepteerib vĂ”rgupĂ€ringuid lĂ€bi REST API ja toetab erinevaid salvestustehnoloogia taustal (kaustade puu, ZFS, Btrfs, LVM), seisundi lĂ”ikega hetkeseisusid, tööriistu, mis vĂ”imaldavad kĂ€imasolevate konteinerite elava migreerimise ĂŒhest masinast teise ning konteineripiltide salvestamise vahendeid. Konteinerite kĂ€ivitamiseks kasutatakse LXC tööriistu. Isolatsioon tagatakse Linuxi tuuma standardmehhanismide (nimed, cgroups, Apparmor, SELinux, Seccomp) abil.
Linux Containersi kogukond juhtis LXD arendust enne, kui Canonical otsustas muuta LXD ettevĂ”tte projektiks. Forki eesmĂ€rk on pakkuda kogukonna poolt hallatud sĂ”ltumatut alternatiivi Canonicali kontrolli all olevale LXD-le. Incuse loomine vĂ”imaldas samuti töötada vĂ€lja lahendusi mĂ”nedele kontseptuaalsetele vigadele, mis olid LXD arendamisel tehtud ja mida varem ei olnud vĂ”imalik parandada ilma tagasipöördumise ĂŒhilduvust rikkumata.
Canonical on avaldanud uue konteinerihalduse sĂŒsteemi LXD 5.21.1 versiooni. LXD 5.21 haru on tĂ€histatud kui LTS ja seda toetatakse kuni juuni 2029. Kood, mille Canonical on LXD-sse lisanud, on litsentseeritud AGPLv3 all, kuid kolmandate osaliste kood, mille ĂŒle Canonicalil pole omandiĂ”igusi, jÀÀb Apache 2.0 alla. LXD 5.21.1 funktsionaalsetest muudatustest vĂ”ib vĂ€lja tuua snap-paketi ĂŒlemineku LXD-lt LXC 6.0 ja LXCFS 6.0 harudele. API-sse on lisatud storage_volumes_all laiendus ja sellega seotud handler \/1.0\/storage_volumes, et nĂ€idata kĂ”igi salvestusosa loendit. Lisaks on lisatud instances_files_modify_permissions laiendus, et muuta API kaudu juurdepÀÀsuĂ”igusi olemasolevatele failidele.
KĂ€esolev on vĂ€lja antud LXCFS 6.0 virtuaalset failisĂŒsteemi, mida kasutatakse konteinerites pseudo-failisĂŒsteemide \/proc ja \/sys simuleerimiseks ning virtuaalset esitlemist cgroupfs-ile jaotustes, mis ei toeta cgroup-i nimespaiku. Uues versioonis on added vĂ”imalus ââenable-cgroupâ, mis vĂ”imaldab hallata integreeritud funktsionaalsuse aktiveerimist virtuaalse cgroupfs puu loomiseks konteinerite jaoks, kasutades cgroupv1 (praegu toetavad enamik jaotusi tuuma pakutavaid nimesid cgroup'i jaoks, seetĂ”ttu on vaikimisi integreeritud alternatiivse teostuse sisselĂŒlitamine kaotanud tĂ€henduse ja on nĂŒĂŒd valikuline). Lisaks lĂ”petati LXCFS 6.0-s CPU filtreerimine /sys/devices/system/cpu faili loomisel, olenevalt staatust online\/offline.
Allikas: opennet.ru
