Eerste release van Incus, een fork van het LXD containermanagementsysteem

De eerste versie van het Incus-project is gepresenteerd, in het kader waarvan de gemeenschap Linux Containers is een fork van het LXD-containermanagementsysteem, gemaakt door het oorspronkelijke team dat LXD ontwikkelde. Containers is geschreven in Go en valt onder de Apache 2.0-licentie.

We willen u er nogmaals op wijzen dat de gemeenschap Linux Containers hield toezicht op de ontwikkeling van LXD voordat Canonical besloot LXD als een apart bedrijfsproject verder te ontwikkelen. Het doel van de fork is om een ​​onafhankelijk, door de community gedreven alternatief te bieden voor het door Canonical gecontroleerde LXD-project. Het Incus-project is ook van plan om enkele conceptuele fouten aan te pakken die tijdens de ontwikkeling van LXD zijn gemaakt en die voorheen niet te herstellen waren zonder de achterwaartse compatibiliteit te verbreken.

Incus biedt tools voor gecentraliseerd beheer van containers en virtuele machines die zowel op één host als in een cluster van meerdere hosts worden ingezet. serversHet project is geïmplementeerd als een achtergrondproces dat netwerkverzoeken ontvangt via een REST API en verschillende opslagbackends ondersteunt (directory tree, ZFS, Btrfs, LVM), snapshots met state slices, live migratie van draaiende containers van de ene machine naar de andere, en tools voor het opslaan van containerimages. De LXC-toolkit wordt gebruikt als runtime voor het starten van containers. Deze toolkit omvat de liblxc-bibliotheek, een set hulpprogramma's (lxc-create, lxc-start, lxc-stop, lxc-ls, enz.), templates voor het bouwen van containers en een set bindings voor verschillende programmeertalen. Isolatie wordt bereikt met behulp van standaard kernelmechanismen. Linux (namespaces, cgroups, Apparmor, SELinux, Seccomp).

Wat de functionaliteit betreft volgt de eerste Incus-release de onlangs uitgebrachte LXD 5.18-update en richt deze zich voornamelijk op het hernoemen en reorganiseren van de codebase, evenals het verwijderen van verouderde functies. Tegelijkertijd bevat de nieuwe versie ook Incus-specifieke wijzigingen in de opdrachtregelinterface en API, die vanwege achterwaartse compatibiliteitsvereisten niet in LXD konden worden opgenomen. In de toekomst zijn de ontwikkelaars van plan om nuttige verbeteringen en oplossingen uit de LXD-codebasis over te dragen, en ook hun eigen originele innovaties toe te voegen, die, als Canonical dat wenst, naar LXD kunnen worden geport.

De meest opvallende veranderingen:

  • Er is een overstap gemaakt naar de ingebedde SQL-engine Cowsql - een fork van Dqlite, gemaakt door de oorspronkelijke auteur van Dqlite om dezelfde redenen als Incus (terugtrekking uit de invloed van Canonical). Cowsql is compatibel met SQLite, ondersteunt gegevensreplicatie, automatisch herstel na fouten en biedt fouttolerantie door handlers over meerdere knooppunten te verdelen.
  • De opdracht β€œincus snapshot” is toegevoegd aan de opdrachtregelinterface voor het beheren van snapshots (ter vervanging van de afzonderlijke opdrachten voor snapshot en herstel van lxc). Via β€œincus snapshot” kunt u de bewerkingen uitvoeren voor het maken, verwijderen, weergeven van een lijst, het hernoemen en herstellen van een snapshot.
  • De logica voor het verwerken van de opdrachten β€œincus config trust add” en β€œincus cluster add” is gewijzigd, waarbij nu één argument met een naam wordt gebruikt en het juiste token wordt geretourneerd. Bewerkingen met een certificaat via de opdracht β€œincus config trust add” zijn verplaatst naar een afzonderlijke opdracht β€œincus config trust add-certificate”.
  • De opdracht "incus admin" is toegevoegd, waardoor de beheerder geen directe toegang meer hoeft te hebben tot de opdrachten lxc en lxd. De volgende subopdrachten zijn beschikbaar:
    • incus-beheercluster
    • incus admin init
    • incus beheerder herstellen
    • incus-beheerder wordt afgesloten
    • incus admin wacht klaar
  • De verouderde API-toegangspunten /1.0/containers en /1.0/virtual-machines zijn verwijderd en vervangen door /1.0/instances.
  • Het /dev/lxd-apparaat is vervangen door /dev/incus, verwijzingen naar lxd in de code zijn vervangen door incus.
  • Type serverconfiguraties "map[string]any" is vervangen door "map[string]string". De authenticatiemethode core.trust_password is afgeschaft (vervangen door authenticatie op basis van tokens), waardoor het gebruik van het type "map[string]string" werd voorkomen.
  • Verouderde *Container-functies zijn verwijderd uit de API, die zijn vervangen door *Instance-functies na de implementatie van het beheer van virtuele machines (CreateInstance moet bijvoorbeeld worden gebruikt in plaats van CreateContainer).
  • Lxd-to-incus hulpprogramma toegevoegd voor migratie van LXD naar Incus (automatische conversie van configuratiebestanden wordt ondersteund vanaf LXD 4.0 tot 5.18). Clustermigratie wordt nog niet ondersteund.
  • Release 1.20 wordt vermeld als de minimaal ondersteunde versie van de Go-taal.
  • Ondersteuning voor bepaalde functies met betrekking tot Ubuntu of afhankelijk van verouderde of niet-ondersteunde software:
    • Ondersteuning voor bindingen verwijderd. Ubuntu Ventilator (bridge.mode, fan.overlay_subnet, fan.underlay_subnet, fan.type), afhankelijk van kernelpatches, wordt alleen gebruikt in Ubuntu.
    • De ondersteuning voor shiftfs, dat is opgenomen in kernelpakketten, is verwijderd. Ubuntu Virtueel bestandssysteem voor het koppelen van mountpunten aan gebruikersnamespaces.
    • Ondersteuning verwijderd voor het Canonical-specifieke Candid-authenticatiesysteem.
    • Ondersteuning verwijderd voor de eigen implementatie van het RBAC-authenticatiemechanisme (Role Based Access Control), gecreΓ«erd door Canonical op basis van Macaroons en Candid.
    • Componenten verwijderd voor integratie met MAAS (Metal-as-a-Service), een tool voor het snel implementeren van configuraties. Ubuntu.
    • Het concept van toegang tot de server met een vertrouwd wachtwoord (core.trust_password) is verwijderd.

Bron: opennet.ru

Koop betrouwbare hosting voor sites met DDoS-bescherming, VPS VDS-servers πŸ”₯ Koop betrouwbare websitehosting met DDoS-bescherming, VPS- en VDS-servers | ProHoster