Canonical ընկերությունը ծրագրային գործիքների թողարկում տեղային անջատյալ կոնտեյներների կառավարման համար , կոնտեյների կառավարիչ և վիրտուալ FS կոնտեյներներում /proc, /sys և վիրտուալ cgroupfs ներկայացման սիմուլյացիայի համար, որոնք աջակցում են տարածքների անվանման բացակայության դեպքում: 4.0 ճյուղն առանձին աջակցության շրջաններում է, որի համար թարմացումները պատրաստվում են 5 տարի:
LXC-ն runtime է, որը նախատեսված է ինչպես համակարգային կոնտեյներների, այնպես էլ առանձին ծրագրերի (OCI) կոնտեյներների գործարկման համար: LXC-ն ներառում է liblxc գրադարանը, գործիքների փաթեթ (lxc-create, lxc-start, lxc-stop, lxc-ls և այլ), կոնտեյներների ստեղծման համար հետաձգումներ և տարբեր ծրագրավորման լեզուների բարելավումներ: Իզոլացիան իրականացվում է Linux միջուկի հիմնական մեխանիզմների միջոցով: Ծրագրերը, ցանցի ծովախորշը ipc, uts, օգտատերերի կարգավորիչները և մոնտաժման կետերը շրջապատվում են տարածքների մեխանիզմներով (namespaces): Ռեսուրսների սահմանափակման համար կիրառվում են cgroups: Թույլատվությունների նվազեցման և մուտքի սահմանափակման նպատակով օգտագործվում են Linux միջուկի հնարավորությունները, ինչպիսիք են Apparmor և SELinux պրոֆիլները, Seccomp քաղաքականությունները, Chroots (pivot_root) և կարողությունները: LXC-ի կոդը գրված է C լեզվով և տարածվում է GPLv2 լիցենզիայի ներքո:
LXD-ն LXC, CRIU և QEMU-ի վերակառուցում է, որը կիրառվում է կոնտեյներների և վիրտուալ մեքենաների կենտրոնացված կառավարման համար մեկ կամ մի քանի սերվերների վրա: Եթե LXC- ը կոնտեյների մակարդակի սահմանային գործիք է, ապա LXD-ն իրականանում է ֆոնային գործընթացով, որը ընդունում է պահանջներ մեծխաբանային API-ի միջոցով և թույլ է տալիս ստեղծել մեծամաշտաբ կոնֆիգուրացիաներ, որոնք տեղադրված են մի քանի սերվերներից կազմված կլաստերում:
Անդամակցված են տարբեր պահեստների բեքենդներ (տեղեկատվության ծառ, ZFS, Btrfs, LVM), կարգավիճակի ս_snapshot-ները, կենդանի միգրացիա գործող կոնտեյներների միջև մեկ մեքենայից մյուսը և աշխատող աստղական պահեստային միջոցներ: LXD-ի կոդը գրված է Go լեզվով և տարածվում է Apache 2.0 լիցենզիայի ներքո:
Կարգավորիչ LXC 4.0-ում՝
- իրականացվել է cgroup-ով համագործակցող վարորդի ամբողջական վերաստեղծում: Ավելացված է cgroup-ի համաձայնեցված հիերարխիայի աջակցություն (cgroup2): Ավելացված է սառեցման վերահսկիչի ֆունկցիոնալություն, որը թույլ է տալիս դադարեցնել աշխատանքը cgroup-ում և ժամանակավորապես ազատել որոշ ռեսուրսներ (CPU, մուտք/արտածում և հնարավոր է նաև հիշողություն) այլ գործերի իրականացման համար;
- իրականացվել է համակարգչային կոչերի բռնելու ենթակառուցվածքը;
- Ավելացված է «pidfd» միջուկի ենթակայության աջակցություն, որը նախատեսված է PID-ի կրկնօգտագործման իրավիճակները մշակելու համար (pidfd-ն կապված է կոնկրետ գործընթացի հետ և չի փոխվում, մինչդեռ PID-ն կարող է կապված լինել այլ գործընթացի հետ՝ ընթացիկ գործընթացը ավարտվում է այն PID-ի հետ, որը կապակցված է այս PID-ի հետ):
- Նորացված է ցանցային սարքերի ստեղծման և հեռացման процесса, ինչպես նաև դրանց տեղաշարժի միջանցքային համակարգի անունների տարածքների միջև:
- Ավելի առաջադրված են անլար ցանցային սարքերի (nl80211) տեղաշարժ կորուստների հնարավորությունները կոնտեյներներում:
Կարգավորիչ LXD 4.0-ում:
- Ավելացել է ոչ միայն կոնտեյներների, այլ նաև վիրտուալ մեքենաների գործարկման աջակցություն;
- LXD սերվերների հատվածման համար առաջարկվում է նախագծերի գաղափարը, որը հեշտացնում է կոնտեյներների ու վիրտուալ մեքենաների խմբերի կառավարման գործընթացը: Յուրաքանչյուր նախագիծ կարող է ներառել իր կոնտեյներների, վիրտուալ մեքենաների, պատկերների, պրոֆիլների և պահեստային տարածքների բազմությունը: Նախագծերին կապված կարելի է սահմանել իրենց սահմանափակումներն ու փոփոխել պարամետրերը;
- Ավելացվել է համակարգային զանգվածների բռնելու աջակցություն կոնտեյների համար;
- Զարգացվել է միջավայրերի նախորդական պատճենների ստեղծման և նրանից վերականգնման գործընթացը;
- Ավտոմատացված է միջավայրերի և պահեստային տարածքների նախորդական պատճենների ստեղծումը, առկա է նախորդականի գոյության ժամանակի սահմանման հնարավորություն;
- Ավելացված է API ցանցային վիճակը հսկելու համար (lxc network info);
- Ավելացված է աջակցություն , երթևեկային FS, որը վերաբերում է տեղադրության կետերի համընկնումներին օգտատերերի անունների տարածքերում;
- Նոր `ipvlan` և `routed` ցանցային ադապտերների տեսակներ են առաջարկվել;
- Ավելացված է CephFS վրա հիմնված պահեստների համար հետին ծրագիր;
- Կլաստերների համար աջակցություն է ավելացել պատկերների կրկնօրինակման և բազմահաշվային կոնֆիգուրացիաների համար;
- Ավելացվել է մուտքի կառավարման վրա հիմնված դերերի աջակցություն (RBAC);
- Ավելացված է CGroup2-ի աջակցությունը;
- Ավելացվել է MAC-հասցեի կարգավորման և NAT-ի համար աղբյուրի հասցեի սահմանման հնարավորություն;
- Ավելացված է DHCP (leases) կապերի կառավարման API;
- Ավելացված է Nftables-ի աջակցությունը.
Ընտանիք: opennet.ru
