LXC və LXD 4.0 konteyner idarəetmə alətləri buraxılışı

Canonical Şirkəti nəşr etdi izolyasiya olunmuş konteynerlərin idarə olunması üçün alətlər dəstinin buraxılışı LXC 4.0, konteyner meneceri LXD 4.0 və virtual FС LXCFS 4.0 konteynerlərdə /proc, /sys və cgroupfs-in virtualizasiyalı təsviri üçün adlarda məkan dəstəyi olmayan distroslar üçün. 4.0 🡪 uzunmüddətli dəstək buraxılışlarına aiddir, bu cür buraxılışlar 5 il ərzində yenilənəcəkdir.

LXC, həm sistem konteynerlərini, həm də ayrı tətbiq konteynerlərini (OCI) işə salmaq üçün runtime-dir. LXC-nin tərkibinə liblxc kitabxanası, konteynerlərin qurulması üçün şablonlar və müxtəlif proqramlaşdırma dilləri üçün bağlamalar daxildir (lxc-create, lxc-start, lxc-stop, lxc-ls və s.). İzolyasiya Linux kernelinin standart mexanizmləri tərəfindən həyata keçirilir. Prosesslərin, şəbəkə yığınının ipc, uts, istifadəçi identifikatorlarının və montaj nöqtələrinin izolyasiyası ad sahələri (namespaces) mexanizmi vasitəsilə təmin edilir. Resursların məhdudlaşdırılması cgroups istifadə edilərək həyata keçirilir. İcazələrin azaldılması və girişi məhdudlaşdırmaq üçün kernel-in Apparmor və SELinux profilləri, Seccomp siyasətləri, Chroots (pivot_root) və imkanları kimi xüsusiyyətlərdən istifadə olunur. LXC kodu yazılıb C dilində yazılmışdır və GPLv2 lisenziyası altında yayılır.

LXD, LXC, CRIU və QEMU üzərində inşa edilmiş, konteynerlərin və virtual maşınların bir və ya bir neçə serverdə mərkəzləşdirilmiş idarə olunması üçün istifadə olunan bir üst səviyyədir. LXC, ayrı konteynerlər səviyyəsində manipulyasiya aparmaq üçün aşağı səviyyəli bir alət olsa da, LXD, REST API vasitəsilə şəbəkə üzərindən sorğuları qəbul edən və bir neçə serverdən ibarət klasterə yayılmış şkalaya uyğun konfiqurasiyaların yaradılmasına imkan tanıyan bir arxa plan prosesi kimi həyata keçirilmişdir.
Fərqli saxlama backend-ləri (kataloq ağacı, ZFS, Btrfs, LVM) dəstəklənir, vəziyyətin kəsilməsi üçün snapshotlar, işlək konteynerlərin bir maşından digərinə canlı köçürülməsi və görüntü saxlanması üçün vasitələr təqdim olunur. LXD kodu yazılıb Go dilində yazılmışdır və Apache 2.0 lisenziyası altında yayılır.

Əsas təkmilləşdirmələr LXC 4.0-dakı:

  • cgroup ilə işləmək üçün sürücü tamamilə yenidən yazılmışdır. Unified cgroup ierarxiyasının (cgroup2) dəstəyi əlavə edilmişdir. Freezer controller-in funksionallığı əlavə edilmişdir, bunun vasitəsilə cgroup-da iş dayandırıla bilər və digər tapşırıqlar üçün bəzi resursların (CPU, giriş/çıxış və potensial olaraq hətta yaddaş) müvəqqəti olaraq buraxılması mümkün olur;
  • Sistem çağırışlarının ələ keçirilməsi üçün infrastruktur həyata keçirilmişdir;
  • PID-nin təkrar istifadə problemindən çıxmağa yönəlmiş kernel subsisteminin 'pidfd' dəstəyi əlavə olunmuşdur (pidfd konkret proseslə bağlıdır və dəyişmir, PID isə indiki prosesi tamamlandıqdan sonra başqa bir prosesə bağlı ola bilər).
  • Şəbəkə qurğularının yaradılması və silinməsi, eləcə də onların şəbəkə alt sisteminin ad sahələri arasında köçürülməsi yaxşılaşdırılmışdır;
  • İndi, simsiz şəbəkə qurğularının (nl80211) konteynerlərə köçürülməsi mümkündür.

Əsas təkmilləşdirmələr LXD 4.0-da:

  • Yalnız konteynerlərin deyil, həm də virtual maşınların işə salınmasına dəstək əlavə edildi;
  • LXD serverlərinin seqmentasiyası üçün konteynerlər və virtual maşın qruplarını idarə etməyi asanlaşdıran layihə konsepsiyası təqdim edilib. Hər bir layihə öz konteynerlər, virtual maşınlar, şəkillər, profillər və saxlama bölmələri dəsti ilə daxil ola bilər. Layihələrə bağlı öz məhdudiyyətlerinizi qoymaq və parametrləri dəyişmək olar;
  • Konteynerlər üçün sistem çağırışlarını tutma dəstəyi əlavə edilib;
  • Mühitlərin ehtiyat nüsxələrinin yaradılması və onların bərpası həyata keçirilib;
  • Mühitlərin və saxlama bölmələrinin avtomatlaşdırılmış snapshotlarının yaradılması təmin edilib, snapshotların mövcudluq müddətini təyin etmə imkanı verilib;
  • Şəbəkənin vəziyyətini izləmək üçün API əlavə edilib (lxc network info);
  • LLVM 10 shiftfs, istifadəçi identifikatorları (user namespace) üçün montaj nöqtələrini uyğunlaşdırmaq üçün virtual FС;
  • Yeni «ipvlan» və «routed» şəbəkə adapteri növləri təklif olunub;
  • CephFS əsaslı saxlama sistemlərinin istifadəsi üçün backend əlavə edilib;
  • Klusterlər üçün obrazların replikasiyası və çox arxitekturalı konfiqurasiyalar dəstəyi həyata keçirilib;
  • Roledə (RBAC) əsaslanan giriş idarəetməsi üçün imkan yaradılıb;
  • CGroup2 dəstəyi əlavə edilib;
  • MAC ünvanını konfiqurasiya etmə və NAT üçün mənbə ünvanını müəyyən etmə imkanı əlavə edilib;
  • DHCP (leases) bağlamalarını idarə etmək üçün API əlavə edilib;
  • Nftables dəstəyi əlavə edilib.

Mənbə: opennet.ru

DDoS qoruması olan saytlara etibarlı hosting satın alın, VPS VDS serverlər 🔥 DDoS qoruması olan saytlara etibarlı hosting satın alın, VPS VDS serverlər | ProHoster